fontconfig: split into multiple outputs

Fixed all 'fontconfig}' references as well, hopefully, ugh!

+54 -45
+1 -1
nixos/modules/config/fonts/fontconfig.nix
··· 228 228 # Versioned fontconfig > 2.10. Take shared fonts.conf from fontconfig. 229 229 # Otherwise specify only font directories. 230 230 environment.etc."fonts/${pkgs.fontconfig.configVersion}/fonts.conf".source = 231 - "${pkgs.fontconfig}/etc/fonts/fonts.conf"; 231 + "${pkgs.fontconfig.out}/etc/fonts/fonts.conf"; 232 232 233 233 environment.etc."fonts/${pkgs.fontconfig.configVersion}/conf.d/00-nixos.conf".text = 234 234 ''
+3 -3
pkgs/applications/editors/eclipse/default.nix
··· 1 - { stdenv, fetchurl, makeDesktopItem, makeWrapper 1 + { stdenv, lib, fetchurl, makeDesktopItem, makeWrapper 2 2 , freetype, fontconfig, libX11, libXext, libXrender, zlib 3 3 , glib, gtk, libXtst, jre 4 4 , webkitgtk2 ? null # for internal web browser ··· 37 37 interpreter=$(echo ${stdenv.glibc.out}/lib/ld-linux*.so.2) 38 38 libCairo=$out/eclipse/libcairo-swt.so 39 39 patchelf --set-interpreter $interpreter $out/eclipse/eclipse 40 - [ -f $libCairo ] && patchelf --set-rpath ${freetype}/lib:${fontconfig}/lib:${libX11}/lib:${libXrender}/lib:${zlib}/lib $libCairo 40 + [ -f $libCairo ] && patchelf --set-rpath ${lib.makeLibraryPath [ freetype fontconfig libX11 libXrender zlib ]} "$libCairo" 41 41 42 42 # Create wrapper script. Pass -configuration to store 43 43 # settings in ~/.eclipse/org.eclipse.platform_<version> rather ··· 47 47 48 48 makeWrapper $out/eclipse/eclipse $out/bin/eclipse \ 49 49 --prefix PATH : ${jre}/bin \ 50 - --prefix LD_LIBRARY_PATH : ${glib}/lib:${gtk}/lib:${libXtst}/lib${stdenv.lib.optionalString (webkitgtk2 != null) ":${webkitgtk2}/lib"} \ 50 + --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath ([ glib gtk libXtst ] ++ lib.optional (webkitgtk2 != null) webkitgtk2)} \ 51 51 --add-flags "-configuration \$HOME/.eclipse/''${productId}_$productVersion/configuration" 52 52 53 53 # Create desktop item.
+2 -2
pkgs/applications/misc/calibre/default.nix
··· 37 37 export POPPLER_LIB_DIR=${poppler_utils}/lib 38 38 export MAGICK_INC=${imagemagick}/include/ImageMagick 39 39 export MAGICK_LIB=${imagemagick}/lib 40 - export FC_INC_DIR=${fontconfig}/include/fontconfig 41 - export FC_LIB_DIR=${fontconfig}/lib 40 + export FC_INC_DIR=${fontconfig.dev}/include/fontconfig 41 + export FC_LIB_DIR=${fontconfig.lib}/lib 42 42 export PODOFO_INC_DIR=${podofo}/include/podofo 43 43 export PODOFO_LIB_DIR=${podofo}/lib 44 44 export SIP_BIN=${sip_4_16}/bin/sip
+1 -1
pkgs/applications/science/logic/hol/default.nix
··· 32 32 buildCommand = '' 33 33 34 34 mkdir chroot-fontconfig 35 - cat ${fontconfig}/etc/fonts/fonts.conf > chroot-fontconfig/fonts.conf 35 + cat ${fontconfig.out}/etc/fonts/fonts.conf > chroot-fontconfig/fonts.conf 36 36 sed -e 's@</fontconfig>@@' -i chroot-fontconfig/fonts.conf 37 37 echo "<dir>${liberation_ttf}</dir>" >> chroot-fontconfig/fonts.conf 38 38 echo "</fontconfig>" >> chroot-fontconfig/fonts.conf
+2
pkgs/development/libraries/fontconfig/default.nix
··· 36 36 }) 37 37 ]; 38 38 39 + outputs = [ "dev" "lib" "bin" "out" ]; # $out contains all the config 40 + 39 41 propagatedBuildInputs = [ freetype ]; 40 42 buildInputs = [ pkgconfig expat ]; 41 43
+3 -3
pkgs/development/libraries/fontconfig/make-fonts-conf.nix
··· 8 8 } 9 9 '' 10 10 xsltproc --stringparam fontDirectories "$fontDirectories" \ 11 - --stringparam fontconfig "${fontconfig}" \ 11 + --stringparam fontconfig "${fontconfig.out}" \ 12 12 --stringparam fontconfigConfigVersion "${fontconfig.configVersion}" \ 13 - --path ${fontconfig}/share/xml/fontconfig \ 14 - ${./make-fonts-conf.xsl} ${fontconfig}/etc/fonts/fonts.conf \ 13 + --path ${fontconfig.out}/share/xml/fontconfig \ 14 + ${./make-fonts-conf.xsl} ${fontconfig.out}/etc/fonts/fonts.conf \ 15 15 > $out 16 16 ''
+3 -3
pkgs/development/libraries/qt-3/default.nix
··· 49 49 ${if cursorSupport then "-L${libXcursor}/lib -I${libXcursor}/include" else ""} 50 50 ${if mysqlSupport then "-qt-sql-mysql -L${mysql.lib}/lib/mysql -I${mysql.lib}/include/mysql" else ""} 51 51 ${if xftSupport then "-xft 52 - -L${libXft}/lib -I${libXft}/include 53 - -L${libXft.freetype}/lib -I${libXft.freetype}/include 54 - -L${libXft.fontconfig}/lib -I${libXft.fontconfig}/include" else "-no-xft"} 52 + -L${libXft.out}/lib -I${libXft.dev}/include 53 + -L${libXft.freetype.lib}/lib -I${libXft.freetype.dev}/include 54 + -L${libXft.fontconfig.lib}/lib -I${libXft.fontconfig.dev}/include" else "-no-xft"} 55 55 "; 56 56 57 57 patches = [
+9 -7
pkgs/development/mobile/androidenv/androidsdk.nix
··· 7 7 }: 8 8 {platformVersions, abiVersions, useGoogleAPIs, useExtraSupportLibs?false, useGooglePlayServices?false}: 9 9 10 + with { inherit (stdenv.lib) makeLibraryPath; }; 11 + 10 12 stdenv.mkDerivation rec { 11 13 name = "android-sdk-${version}"; 12 14 version = "24.1.2"; ··· 57 59 # The following wrapper ensures that they can be found: 58 60 wrapProgram `pwd`/android \ 59 61 --prefix PATH : ${jdk}/bin \ 60 - --prefix LD_LIBRARY_PATH : ${glib}/lib:${gtk}/lib:${libXtst}/lib 62 + --prefix LD_LIBRARY_PATH : ${makeLibraryPath [ glib gtk libXtst ]} 61 63 62 64 # The emulators need additional libraries, which are dynamically loaded => let's wrap them 63 65 ··· 65 67 do 66 68 wrapProgram `pwd`/$i \ 67 69 --prefix PATH : ${file}/bin \ 68 - --suffix LD_LIBRARY_PATH : `pwd`/lib:${libX11_32bit}/lib:${libxcb_32bit}/lib:${libXau_32bit}/lib:${libXdmcp_32bit}/lib:${libXext_32bit}/lib:${mesa_32bit}/lib 70 + --suffix LD_LIBRARY_PATH : `pwd`/lib:${makeLibraryPath [ libX11_32bit libxcb_32bit libXau_32bit libXdmcp_32bit libXext_32bit mesa_32bit ]} 69 71 done 70 72 71 73 ${stdenv.lib.optionalString (stdenv.system == "x86_64-linux") '' ··· 73 75 do 74 76 wrapProgram `pwd`/$i \ 75 77 --prefix PATH : ${file}/bin \ 76 - --suffix LD_LIBRARY_PATH : `pwd`/lib:${libX11}/lib:${libxcb}/lib:${libXau}/lib:${libXdmcp}/lib:${libXext}/lib:${mesa}/lib:${alsaLib}/lib 78 + --suffix LD_LIBRARY_PATH : `pwd`/lib:${makeLibraryPath [ libX11 libxcb libXau libXdmcp libXext mesa alsaLib ]} 77 79 done 78 80 ''} 79 81 ''} ··· 86 88 87 89 cd lib/monitor-x86 88 90 patchelf --set-interpreter ${stdenv.cc.libc.out}/lib/ld-linux.so.2 monitor 89 - patchelf --set-rpath ${libX11}/lib:${libXext}/lib:${libXrender}/lib:${freetype}/lib:${fontconfig}/lib libcairo-swt.so 91 + patchelf --set-rpath ${makeLibraryPath [ libX11 libXext libXrender freetype fontconfig ]} libcairo-swt.so 90 92 91 93 wrapProgram `pwd`/monitor \ 92 - --prefix LD_LIBRARY_PATH : ${gtk}/lib:${atk}/lib:${stdenv.cc.cc}/lib:${libXtst}/lib 94 + --prefix LD_LIBRARY_PATH : ${makeLibraryPath [ gtk atk stdenv.cc.cc libXtst ]} 93 95 94 96 cd ../.. 95 97 '' ··· 99 101 100 102 cd lib/monitor-x86_64 101 103 patchelf --set-interpreter ${stdenv.cc.libc.out}/lib/ld-linux-x86-64.so.2 monitor 102 - patchelf --set-rpath ${libX11}/lib:${libXext}/lib:${libXrender}/lib:${freetype}/lib:${fontconfig}/lib libcairo-swt.so 104 + patchelf --set-rpath ${makeLibraryPath [ libX11 libXext libXrender freetype fontconfig ]} libcairo-swt.so 103 105 104 106 wrapProgram `pwd`/monitor \ 105 - --prefix LD_LIBRARY_PATH : ${gtk}/lib:${atk}/lib:${stdenv.cc.cc}/lib::${libXtst}/lib 107 + --prefix LD_LIBRARY_PATH : ${makeLibraryPath [ gtk atk stdenv.cc.cc libXtst ]} 106 108 107 109 cd ../.. 108 110 ''
+11 -8
pkgs/development/tools/phantomjs/default.nix
··· 1 - { stdenv, fetchurl, freetype, fontconfig, openssl, unzip }: 1 + { stdenv, lib, fetchurl, freetype, fontconfig, openssl, unzip }: 2 2 3 - assert stdenv.lib.elem stdenv.system [ "i686-linux" "x86_64-linux" "x86_64-darwin" ]; 3 + let 4 + platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ]; 5 + in 6 + assert lib.elem stdenv.system platforms; 4 7 5 8 stdenv.mkDerivation rec { 6 9 name = "phantomjs-1.9.8"; ··· 27 30 sha256 = "0j0aq8dgzmb210xdrh0v3d4nblskl3zsckl8bzf1a603wcx085cg"; 28 31 }; 29 32 30 - buildInputs = if stdenv.isDarwin then [ unzip ] else []; 33 + buildInputs = lib.optional stdenv.isDarwin unzip; 31 34 32 - buildPhase = if stdenv.isDarwin then "" else '' 35 + buildPhase = lib.optionalString (!stdenv.isDarwin) '' 33 36 patchelf \ 34 37 --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ 35 - --set-rpath "${freetype}/lib:${fontconfig}/lib:${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib:${openssl}/lib" \ 38 + --set-rpath "${stdenv.lib.makeLibraryPath [ freetype fontconfig stdenv.cc.cc stdenv.cc.cc openssl ]}" \ 36 39 bin/phantomjs 37 40 ''; 38 41 ··· 60 63 ''; 61 64 62 65 homepage = http://phantomjs.org/; 63 - license = stdenv.lib.licenses.bsd3; 66 + license = lib.licenses.bsd3; 64 67 65 - maintainers = [ stdenv.lib.maintainers.bluescreen303 ]; 66 - platforms = ["i686-linux" "x86_64-linux" "x86_64-darwin" ]; 68 + maintainers = [ lib.maintainers.bluescreen303 ]; 69 + inherit platforms; 67 70 }; 68 71 }
+1 -1
pkgs/development/tools/selenium/chromedriver/default.nix
··· 25 25 mv chromedriver $out/bin 26 26 patchelf --set-interpreter ${glibc.out}/lib/ld-linux-x86-64.so.2 $out/bin/chromedriver 27 27 wrapProgram "$out/bin/chromedriver" \ 28 - --prefix LD_LIBRARY_PATH : "$(cat ${stdenv.cc}/nix-support/orig-cc)/lib64:${cairo}/lib:${fontconfig}/lib:${freetype}/lib:${gdk_pixbuf}/lib:${glib}/lib:${gtk}/lib:${libX11}/lib:${nspr}/lib:${nss}/lib:${pango}/lib:${libXrender}/lib:${gconf}/lib:${libXext}/lib:${libXi}/lib:\$LD_LIBRARY_PATH" 28 + --prefix LD_LIBRARY_PATH : "$(cat ${stdenv.cc}/nix-support/orig-cc)/lib64:${stdenv.lib.makeLibraryPath [ cairo fontconfig freetype gdk_pixbuf glib gtk libX11 nspr nss pango libXrender gconf libXext libXi ]}:\$LD_LIBRARY_PATH" 29 29 ''; 30 30 31 31 meta = with stdenv.lib; {
+8 -6
pkgs/games/oilrush/default.nix
··· 1 1 { stdenv, config, fetchurl, libX11, libXext, libXinerama, libXrandr 2 2 , libXrender, fontconfig, freetype, openal }: 3 3 4 + with { inherit (stdenv.lib) makeLibraryPath; }; 5 + 4 6 stdenv.mkDerivation { 5 7 name = "oilrush"; 6 8 src = ··· 25 27 do 26 28 patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $f 27 29 done 28 - patchelf --set-rpath ${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib:${libX11}/lib:${libXext}/lib:${libXrender}/lib:${fontconfig}/lib:${freetype}/lib\ 30 + patchelf --set-rpath ${stdenv.cc.cc}/lib64:${makeLibraryPath [ stdenv.cc.cc libX11 libXext libXrender fontconfig freetype ]}\ 29 31 launcher_$arch 30 32 patchelf --set-rpath ${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib\ 31 33 libNetwork_$arch.so 32 34 patchelf --set-rpath ${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib\ 33 35 libQtCoreUnigine_$arch.so.4 34 - patchelf --set-rpath ${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib:${libX11}/lib:${libXext}/lib:${libXrender}/lib:${fontconfig}/lib:${freetype}/lib\ 36 + patchelf --set-rpath ${stdenv.cc.cc}/lib64:${makeLibraryPath [ stdenv.cc.cc libX11 libXext libXrender fontconfig freetype ]}\ 35 37 libQtGuiUnigine_$arch.so.4 36 38 patchelf --set-rpath ${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib\ 37 39 libQtNetworkUnigine_$arch.so.4 38 - patchelf --set-rpath ${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib:${libX11}/lib:${libXext}/lib:${libXrender}/lib:${fontconfig}/lib:${freetype}/lib\ 40 + patchelf --set-rpath ${stdenv.cc.cc}/lib64:${makeLibraryPath [ stdenv.cc.cc libX11 libXext libXrender fontconfig freetype ]}\ 39 41 libQtWebKitUnigine_$arch.so.4 40 42 patchelf --set-rpath ${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib\ 41 43 libQtXmlUnigine_$arch.so.4 42 44 patchelf --set-rpath ${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib\ 43 45 libRakNet_$arch.so 44 - patchelf --set-rpath ${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib:${libX11}/lib:${libXext}/lib:${libXinerama}/lib:${libXrandr}/lib\ 46 + patchelf --set-rpath ${stdenv.cc.cc}/lib64:${makeLibraryPath [ stdenv.cc.cc libX11 libXext libXinerama libXrandr ]}\ 45 47 libUnigine_$arch.so 46 - patchelf --set-rpath ${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib:${libX11}/lib:${libXext}/lib:${libXinerama}/lib:${libXrandr}/lib\ 48 + patchelf --set-rpath ${stdenv.cc.cc}/lib64:${makeLibraryPath [ stdenv.cc.cc libX11 libXext libXinerama libXrandr ]}\ 47 49 OilRush_$arch 48 50 ''; 49 51 installPhase = '' ··· 53 55 mkdir -p "$out/bin" 54 56 cat << EOF > "$out/bin/oilrush" 55 57 #! /bin/sh 56 - LD_LIBRARY_PATH=.:${openal}/lib:\$LD_LIBRARY_PATH 58 + LD_LIBRARY_PATH=.:${makeLibraryPath [ openal ]}:\$LD_LIBRARY_PATH 57 59 cd "$out/opt/oilrush" 58 60 exec ./launcher_$arch.sh "\$@" 59 61 EOF
+1 -1
pkgs/games/sdlmame/default.nix
··· 23 23 installPhase = '' 24 24 patchelf \ 25 25 --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ 26 - --set-rpath "${alsaLib}/lib:${qt48}/lib:${SDL}/lib:${fontconfig}/lib:${freetype}/lib:${SDL_ttf}/lib:${xorg.libX11}/lib:${xorg.libXinerama}/lib:${stdenv.cc.cc}/lib" \ 26 + --set-rpath "${stdenv.lib.makeLibraryPath [ alsaLib qt48 SDL fontconfig freetype SDL_ttf xorg.libX11 xorg.libXinerama stdenv.cc.cc ]}" \ 27 27 share/sdlmame/sdlmame 28 28 29 29 mkdir -p "$out/bin"
+1 -1
pkgs/servers/x11/xquartz/default.nix
··· 152 152 --replace "@ENCODINGSDIR@" "${xorg.encodings}/share/fonts/X11/encodings" \ 153 153 --replace "@MKFONTDIR@" "${xorg.mkfontdir}/bin/mkfontdir" \ 154 154 --replace "@MKFONTSCALE@" "${xorg.mkfontscale}/bin/mkfontscale" \ 155 - --replace "@FC_CACHE@" "${fontconfig}/bin/fc-cache" \ 155 + --replace "@FC_CACHE@" "${fontconfig.bin}/bin/fc-cache" \ 156 156 --replace "@FONTCONFIG_FILE@" "$fontsConfPath" 157 157 158 158 cp ${./xinitrc} $out/etc/X11/xinit/xinitrc
+1 -1
pkgs/tools/graphics/gnuplot/default.nix
··· 46 46 wrapProgram $out/bin/gnuplot \ 47 47 --prefix PATH : '${gnused}/bin' \ 48 48 --prefix PATH : '${coreutils}/bin' \ 49 - --prefix PATH : '${fontconfig}/bin' \ 49 + --prefix PATH : '${fontconfig.bin}/bin' \ 50 50 --run '. ${./set-gdfontpath-from-fontconfig.sh}' 51 51 ''; 52 52
+1 -1
pkgs/tools/system/plan9port/builder.sh
··· 5 5 6 6 configurePhase() 7 7 { 8 - echo CFLAGS=\"-I${fontconfig}/include -I${libXt_dev}/include\" > LOCAL.config 8 + echo CFLAGS=\"-I${fontconfig_dev}/include -I${libXt_dev}/include\" > LOCAL.config 9 9 echo X11=\"${libXt_dev}/include\" >> LOCAL.config 10 10 11 11 for f in `grep -l -r /usr/local/plan9`; do
+1 -1
pkgs/tools/system/plan9port/default.nix
··· 48 48 }; 49 49 50 50 libXt_dev = libXt.dev; 51 - inherit fontconfig; 51 + fontconfig_dev = fontconfig.dev; 52 52 }
+4 -4
pkgs/tools/typesetting/tex/dblatex/default.nix
··· 37 37 sed -i 's|self.install_layout == "deb"|False|' setup.py 38 38 '' + stdenv.lib.optionalString enableAllFeatures '' 39 39 for file in $(find -name "*.py"); do 40 - sed -e 's|cmd = \["xsltproc|cmd = \["${libxslt}/bin/xsltproc|g' \ 41 - -e 's|Popen(\["xsltproc|Popen(\["${libxslt}/bin/xsltproc|g' \ 40 + sed -e 's|cmd = \["xsltproc|cmd = \["${libxslt.bin}/bin/xsltproc|g' \ 41 + -e 's|Popen(\["xsltproc|Popen(\["${libxslt.bin}/bin/xsltproc|g' \ 42 42 -e 's|cmd = \["texindy|cmd = ["nixpkgs_is_missing_texindy|g' \ 43 43 -e 's|cmd = "epstopdf|cmd = "${tex}/bin/epstopdf|g' \ 44 44 -e 's|cmd = \["makeindex|cmd = ["${tex}/bin/makeindex|g' \ 45 45 -e 's|doc.program = "pdflatex"|doc.program = "${tex}/bin/pdflatex"|g' \ 46 46 -e 's|self.program = "latex"|self.program = "${tex}/bin/latex"|g' \ 47 47 -e 's|Popen("pdflatex|Popen("${tex}/bin/pdflatex|g' \ 48 - -e 's|"fc-match"|"${fontconfig}/bin/fc-match"|g' \ 49 - -e 's|"fc-list"|"${fontconfig}/bin/fc-list"|g' \ 48 + -e 's|"fc-match"|"${fontconfig.bin}/bin/fc-match"|g' \ 49 + -e 's|"fc-list"|"${fontconfig.bin}/bin/fc-list"|g' \ 50 50 -e 's|cmd = "inkscape|cmd = "${inkscape}/bin/inkscape|g' \ 51 51 -e 's|cmd = "fig2dev|cmd = "${transfig}/bin/fig2dev|g' \ 52 52 -e 's|cmd = \["ps2pdf|cmd = ["${ghostscript}/bin/ps2pdf|g' \
+1 -1
pkgs/top-level/perl-packages.nix
··· 4777 4777 # tests fail 4778 4778 doCheck = false; 4779 4779 4780 - makeMakerFlags = "--lib_png_path=${pkgs.libpng} --lib_jpeg_path=${pkgs.libjpeg} --lib_zlib_path=${pkgs.zlib} --lib_ft_path=${pkgs.freetype} --lib_fontconfig_path=${pkgs.fontconfig} --lib_xpm_path=${pkgs.xorg.libXpm}"; 4780 + makeMakerFlags = "--lib_png_path=${pkgs.libpng.out} --lib_jpeg_path=${pkgs.libjpeg.out} --lib_zlib_path=${pkgs.zlib.out} --lib_ft_path=${pkgs.freetype.out} --lib_fontconfig_path=${pkgs.fontconfig.lib} --lib_xpm_path=${pkgs.xorg.libXpm.out}"; 4781 4781 }; 4782 4782 4783 4783 GDSecurityImage = buildPerlPackage {