···251251252252 <varlistentry>
253253 <term><varname>enableParallelBuilding</varname></term>
254254- <listitem><para>If set, <literal>stdenv</literal> will pass specific
255255- flags to <literal>make</literal> and other build tools to enable
256256- parallel building with up to <literal>build-cores</literal>
257257- workers.</para></listitem>
254254+ <listitem>
255255+ <para>If set to <literal>true</literal>, <literal>stdenv</literal> will
256256+ pass specific flags to <literal>make</literal> and other build tools to
257257+ enable parallel building with up to <literal>build-cores</literal>
258258+ workers.</para>
259259+260260+ <para>Unless set to <literal>false</literal>, some build systems with good
261261+ support for parallel building including <literal>cmake</literal>,
262262+ <literal>meson</literal>, and <literal>qmake</literal> will set it to
263263+ <literal>true</literal>.</para>
264264+ </listitem>
258265 </varlistentry>
259266260267 <varlistentry>
+1-1
nixos/tests/printing.nix
···3939 $client->waitForUnit("cups.service");
4040 $client->sleep(10); # wait until cups is fully initialized
4141 $client->succeed("lpstat -r") =~ /scheduler is running/ or die;
4242- $client->succeed("lpstat -H") =~ "/var/run/cups/cups.sock" or die;
4242+ $client->succeed("lpstat -H") =~ "localhost:631" or die;
4343 $client->succeed("curl --fail http://localhost:631/");
4444 $client->succeed("curl --fail http://server:631/");
4545 $server->fail("curl --fail --connect-timeout 2 http://client:631/");
+4
pkgs/applications/altcoins/memorycoin.nix
···3131 then "install -D bitcoin-qt $out/bin/memorycoin-qt"
3232 else "install -D bitcoind $out/bin/memorycoind";
33333434+ # `make build/version.o`:
3535+ # make: *** No rule to make target 'build/build.h', needed by 'build/version.o'. Stop.
3636+ enableParallelBuilding = false;
3737+3438 meta = {
3539 description = "Peer-to-peer, CPU-based electronic cash system";
3640 longDescription= ''
+4
pkgs/applications/altcoins/primecoin.nix
···3131 then "install -D bitcoin-qt $out/bin/primecoin-qt"
3232 else "install -D bitcoind $out/bin/primecoind";
33333434+ # `make build/version.o`:
3535+ # make: *** No rule to make target 'build/build.h', needed by 'build/version.o'. Stop.
3636+ enableParallelBuilding = false;
3737+3438 meta = {
3539 description = "A new type cryptocurrency which is proof-of-work based on searching for prime numbers";
3640 longDescription= ''
+2-1
pkgs/applications/gis/qgis/default.nix
···14141515 nativeBuildInputs = [ cmake makeWrapper ];
16161717+ # `make -f src/providers/wms/CMakeFiles/wmsprovider_a.dir/build.make src/providers/wms/CMakeFiles/wmsprovider_a.dir/qgswmssourceselect.cpp.o`:
1718 # fatal error: ui_qgsdelimitedtextsourceselectbase.h: No such file or directory
1818- #enableParallelBuilding = true;
1919+ enableParallelBuilding = false;
19202021 # To handle the lack of 'local' RPATH; required, as they call one of
2122 # their built binaries requiring their libs, in the build process.
···2525, libpthread ? null, libpthreadCross ? null # required for GNU/Hurd
2626, stripped ? true
2727, buildPlatform, hostPlatform, targetPlatform
2828+, buildPackages
2829}:
29303031assert langJava -> zip != null && unzip != null
···258259 "--with-mpc=${libmpc}"
259260 ] ++
260261 optional (libelf != null) "--with-libelf=${libelf}" ++
262262+ optional (!(crossMingw && crossStageStatic))
263263+ "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include" ++
261264262265 # Basic configuration
263266 [
···349352 STRIP_FOR_TARGET = "${targetPlatform.config}-strip";
350353 CC_FOR_TARGET = "${targetPlatform.config}-gcc";
351354 CXX_FOR_TARGET = "${targetPlatform.config}-g++";
352352- # If we are making a cross compiler, cross != null
353353- NIX_CC_CROSS = optionalString (targetPlatform == hostPlatform) builtins.toString stdenv.cc;
355355+354356 dontStrip = true;
355357 };
356358359359+ NIX_BUILD_CC = buildPackages.stdenv.cc;
357360358361 # Needed for the cross compilation to work
359362 AR = "ar";
360363 LD = "ld";
361364 CC = "gcc";
362365363363- # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
364364- # the library headers and binaries, regarless of the language being
365365- # compiled.
366366-367367- # Note: When building the Java AWT GTK+ peer, the build system doesn't
368368- # honor `--with-gmp' et al., e.g., when building
369369- # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just
370370- # add them to $CPATH and $LIBRARY_PATH in this case.
366366+ # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
367367+ # library headers and binaries, regarless of the language being compiled.
368368+ #
369369+ # Note: When building the Java AWT GTK+ peer, the build system doesn't honor
370370+ # `--with-gmp' et al., e.g., when building
371371+ # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
372372+ # them to $CPATH and $LIBRARY_PATH in this case.
371373 #
372374 # Likewise, the LTO code doesn't find zlib.
375375+ #
376376+ # Cross-compiling, we need gcc not to read ./specs in order to build the g++
377377+ # compiler (after the specs for the cross-gcc are created). Having
378378+ # LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
373379374374- CPATH = makeSearchPathOutput "dev" "include" ([]
380380+ CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
375381 ++ optional (zlib != null) zlib
376382 ++ optional langJava boehmgc
377383 ++ optionals javaAwtGtk xlibs
···382388 # On GNU/Hurd glibc refers to Mach & Hurd
383389 # headers.
384390 ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
385385- libcCross.propagatedBuildInputs);
391391+ libcCross.propagatedBuildInputs
392392+ ));
386393387387- LIBRARY_PATH = makeLibraryPath ([]
394394+ LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
388395 ++ optional (zlib != null) zlib
389396 ++ optional langJava boehmgc
390397 ++ optionals javaAwtGtk xlibs
391398 ++ optionals javaAwtGtk [ gmp mpfr ]
392392- ++ optional (libpthread != null) libpthread);
399399+ ++ optional (libpthread != null) libpthread)
400400+ );
393401394394- EXTRA_TARGET_CFLAGS =
395395- if targetPlatform != hostPlatform && libcCross != null then [
396396- "-idirafter ${libcCross.dev}/include"
397397- ]
398398- ++ optionals (! crossStageStatic) [
399399- "-B${libcCross.out}/lib"
400400- ]
401401- else null;
402402+ EXTRA_TARGET_FLAGS = optionals
403403+ (targetPlatform != hostPlatform && libcCross != null)
404404+ ([
405405+ "-idirafter ${libcCross.dev}/include"
406406+ ] ++ optionals (! crossStageStatic) [
407407+ "-B${libcCross.out}/lib"
408408+ ]);
402409403403- EXTRA_TARGET_LDFLAGS =
404404- if targetPlatform != hostPlatform && libcCross != null then [
405405- "-Wl,-L${libcCross.out}/lib"
406406- ]
407407- ++ (if crossStageStatic then [
410410+ EXTRA_TARGET_LDFLAGS = optionals
411411+ (targetPlatform != hostPlatform && libcCross != null)
412412+ ([
413413+ "-Wl,-L${libcCross.out}/lib"
414414+ ] ++ (if crossStageStatic then [
408415 "-B${libcCross.out}/lib"
409416 ] else [
410417 "-Wl,-rpath,${libcCross.out}/lib"
411418 "-Wl,-rpath-link,${libcCross.out}/lib"
412412- ])
413413- ++ optionals (libpthreadCross != null) [
414414- "-L${libpthreadCross}/lib"
415415- "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
416416- ]
417417- else null;
419419+ ]) ++ optionals (libpthreadCross != null) [
420420+ "-L${libpthreadCross}/lib"
421421+ "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
422422+ ]);
418423419424 passthru = { inherit langC langCC langAda langFortran langVhdl
420425 enableMultilib version; isGNU = true; };
+38-41
pkgs/development/compilers/gcc/4.8/default.nix
···3333, gnused ? null
3434, darwin ? null
3535, buildPlatform, hostPlatform, targetPlatform
3636+, buildPackages
3637}:
37383839assert langJava -> zip != null && unzip != null
···316317 "--with-mpc=${libmpc}"
317318 ] ++
318319 optional (libelf != null) "--with-libelf=${libelf}" ++
320320+ optional (!(crossMingw && crossStageStatic))
321321+ "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include" ++
319322320323 # Basic configuration
321324 [
···371374372375 # Ada
373376 optional langAda "--enable-libada" ++
374374-375375- # Cross-compilation
376376- optional (targetPlatform == hostPlatform) (
377377- let incDir = if hostPlatform.isDarwin
378378- then "${darwin.usr-include}"
379379- else "${getDev stdenv.cc.libc}/include";
380380- in "--with-native-system-header-dir=${incDir}"
381381- ) ++
382377383378 platformFlags ++
384379 optional (targetPlatform != hostPlatform) crossConfigureFlags ++
···444439 STRIP_FOR_TARGET = "${targetPlatform.config}-strip";
445440 CC_FOR_TARGET = "${targetPlatform.config}-gcc";
446441 CXX_FOR_TARGET = "${targetPlatform.config}-g++";
447447- # If we are making a cross compiler, targetPlatform != hostPlatform
448448- NIX_CC_CROSS = optionalString (targetPlatform == hostPlatform) builtins.toString stdenv.cc;
442442+449443 dontStrip = true;
450444 buildFlags = "";
451445 };
452446447447+ NIX_BUILD_CC = buildPackages.stdenv.cc;
453448454449 # Needed for the cross compilation to work
455450 AR = "ar";
···457452 # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
458453 CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" else "gcc";
459454460460- # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
461461- # the library headers and binaries, regarless of the language being
462462- # compiled.
463463-464464- # Note: When building the Java AWT GTK+ peer, the build system doesn't
465465- # honor `--with-gmp' et al., e.g., when building
466466- # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just
467467- # add them to $CPATH and $LIBRARY_PATH in this case.
455455+ # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
456456+ # library headers and binaries, regarless of the language being compiled.
457457+ #
458458+ # Note: When building the Java AWT GTK+ peer, the build system doesn't honor
459459+ # `--with-gmp' et al., e.g., when building
460460+ # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
461461+ # them to $CPATH and $LIBRARY_PATH in this case.
468462 #
469463 # Likewise, the LTO code doesn't find zlib.
464464+ #
465465+ # Cross-compiling, we need gcc not to read ./specs in order to build the g++
466466+ # compiler (after the specs for the cross-gcc are created). Having
467467+ # LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
470468471471- CPATH = makeSearchPathOutput "dev" "include" ([]
469469+ CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
472470 ++ optional (zlib != null) zlib
473471 ++ optional langJava boehmgc
474472 ++ optionals javaAwtGtk xlibs
···479477 # On GNU/Hurd glibc refers to Mach & Hurd
480478 # headers.
481479 ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
482482- libcCross.propagatedBuildInputs);
480480+ libcCross.propagatedBuildInputs
481481+ ));
483482484484- LIBRARY_PATH = makeLibraryPath ([]
483483+ LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
485484 ++ optional (zlib != null) zlib
486485 ++ optional langJava boehmgc
487486 ++ optionals javaAwtGtk xlibs
488487 ++ optionals javaAwtGtk [ gmp mpfr ]
489489- ++ optional (libpthread != null) libpthread);
488488+ ++ optional (libpthread != null) libpthread)
489489+ );
490490491491- EXTRA_TARGET_CFLAGS =
492492- if targetPlatform != hostPlatform && libcCross != null then [
493493- "-idirafter ${getDev libcCross}/include"
494494- ]
495495- ++ optionals (! crossStageStatic) [
496496- "-B${libcCross.out}/lib"
497497- ]
498498- else null;
491491+ EXTRA_TARGET_FLAGS = optionals
492492+ (targetPlatform != hostPlatform && libcCross != null)
493493+ ([
494494+ "-idirafter ${libcCross.dev}/include"
495495+ ] ++ optionals (! crossStageStatic) [
496496+ "-B${libcCross.out}/lib"
497497+ ]);
499498500500- EXTRA_TARGET_LDFLAGS =
501501- if targetPlatform != hostPlatform && libcCross != null then [
502502- "-Wl,-L${libcCross.out}/lib"
503503- ]
504504- ++ (if crossStageStatic then [
499499+ EXTRA_TARGET_LDFLAGS = optionals
500500+ (targetPlatform != hostPlatform && libcCross != null)
501501+ ([
502502+ "-Wl,-L${libcCross.out}/lib"
503503+ ] ++ (if crossStageStatic then [
505504 "-B${libcCross.out}/lib"
506505 ] else [
507506 "-Wl,-rpath,${libcCross.out}/lib"
508507 "-Wl,-rpath-link,${libcCross.out}/lib"
509509- ])
510510- ++ optionals (libpthreadCross != null) [
511511- "-L${libpthreadCross}/lib"
512512- "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
513513- ]
514514- else null;
508508+ ]) ++ optionals (libpthreadCross != null) [
509509+ "-L${libpthreadCross}/lib"
510510+ "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
511511+ ]);
515512516513 passthru =
517514 { inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo version; isGNU = true; };
+38-41
pkgs/development/compilers/gcc/4.9/default.nix
···3333, gnused ? null
3434, darwin ? null
3535, buildPlatform, hostPlatform, targetPlatform
3636+, buildPackages
3637}:
37383839assert langJava -> zip != null && unzip != null
···314315 "--with-mpc=${libmpc}"
315316 ] ++
316317 optional (libelf != null) "--with-libelf=${libelf}" ++
318318+ optional (!(crossMingw && crossStageStatic))
319319+ "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include" ++
317320318321 # Basic configuration
319322 [
···369372370373 # Ada
371374 optional langAda "--enable-libada" ++
372372-373373- # Cross-compilation
374374- optional (targetPlatform == hostPlatform) (
375375- let incDir = if hostPlatform.isDarwin
376376- then "${darwin.usr-include}"
377377- else "${getDev stdenv.cc.libc}/include";
378378- in "--with-native-system-header-dir=${incDir}"
379379- ) ++
380375381376 platformFlags ++
382377 optional (targetPlatform != hostPlatform) crossConfigureFlags ++
···442437 STRIP_FOR_TARGET = "${targetPlatform.config}-strip";
443438 CC_FOR_TARGET = "${targetPlatform.config}-gcc";
444439 CXX_FOR_TARGET = "${targetPlatform.config}-g++";
445445- # If we are making a cross compiler, targetPlatform != hostPlatform
446446- NIX_CC_CROSS = optionalString (targetPlatform == hostPlatform) builtins.toString stdenv.cc;
440440+447441 dontStrip = true;
448442 buildFlags = "";
449443 };
450444445445+ NIX_BUILD_CC = buildPackages.stdenv.cc;
451446452447 # Needed for the cross compilation to work
453448 AR = "ar";
···455450 # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
456451 CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" else "gcc";
457452458458- # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
459459- # the library headers and binaries, regarless of the language being
460460- # compiled.
461461-462462- # Note: When building the Java AWT GTK+ peer, the build system doesn't
463463- # honor `--with-gmp' et al., e.g., when building
464464- # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just
465465- # add them to $CPATH and $LIBRARY_PATH in this case.
453453+ # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
454454+ # library headers and binaries, regarless of the language being compiled.
455455+ #
456456+ # Note: When building the Java AWT GTK+ peer, the build system doesn't honor
457457+ # `--with-gmp' et al., e.g., when building
458458+ # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
459459+ # them to $CPATH and $LIBRARY_PATH in this case.
466460 #
467461 # Likewise, the LTO code doesn't find zlib.
462462+ #
463463+ # Cross-compiling, we need gcc not to read ./specs in order to build the g++
464464+ # compiler (after the specs for the cross-gcc are created). Having
465465+ # LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
468466469469- CPATH = makeSearchPathOutput "dev" "include" ([]
467467+ CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
470468 ++ optional (zlib != null) zlib
471469 ++ optional langJava boehmgc
472470 ++ optionals javaAwtGtk xlibs
···477475 # On GNU/Hurd glibc refers to Mach & Hurd
478476 # headers.
479477 ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
480480- libcCross.propagatedBuildInputs);
478478+ libcCross.propagatedBuildInputs
479479+ ));
481480482482- LIBRARY_PATH = makeLibraryPath ([]
481481+ LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
483482 ++ optional (zlib != null) zlib
484483 ++ optional langJava boehmgc
485484 ++ optionals javaAwtGtk xlibs
486485 ++ optionals javaAwtGtk [ gmp mpfr ]
487487- ++ optional (libpthread != null) libpthread);
486486+ ++ optional (libpthread != null) libpthread)
487487+ );
488488489489- EXTRA_TARGET_CFLAGS =
490490- if targetPlatform != hostPlatform && libcCross != null then [
491491- "-idirafter ${getDev libcCross}/include"
492492- ]
493493- ++ optionals (! crossStageStatic) [
494494- "-B${libcCross.out}/lib"
495495- ]
496496- else null;
489489+ EXTRA_TARGET_FLAGS = optionals
490490+ (targetPlatform != hostPlatform && libcCross != null)
491491+ ([
492492+ "-idirafter ${getDev libcCross}/include"
493493+ ] ++ optionals (! crossStageStatic) [
494494+ "-B${libcCross.out}/lib"
495495+ ]);
497496498498- EXTRA_TARGET_LDFLAGS =
499499- if targetPlatform != hostPlatform && libcCross != null then [
500500- "-Wl,-L${libcCross.out}/lib"
501501- ]
502502- ++ (if crossStageStatic then [
497497+ EXTRA_TARGET_LDFLAGS = optionals
498498+ (targetPlatform != hostPlatform && libcCross != null)
499499+ ([
500500+ "-Wl,-L${libcCross.out}/lib"
501501+ ] ++ (if crossStageStatic then [
503502 "-B${libcCross.out}/lib"
504503 ] else [
505504 "-Wl,-rpath,${libcCross.out}/lib"
506505 "-Wl,-rpath-link,${libcCross.out}/lib"
507507- ])
508508- ++ optionals (libpthreadCross != null) [
509509- "-L${libpthreadCross}/lib"
510510- "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
511511- ]
512512- else null;
506506+ ]) ++ optionals (libpthreadCross != null) [
507507+ "-L${libpthreadCross}/lib"
508508+ "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
509509+ ]);
513510514511 passthru =
515512 { inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo version; isGNU = true; };
+37-41
pkgs/development/compilers/gcc/5/default.nix
···329329 "--with-mpc=${libmpc}"
330330 ] ++
331331 optional (libelf != null) "--with-libelf=${libelf}" ++
332332+ optional (!(crossMingw && crossStageStatic))
333333+ "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include" ++
332334333335 # Basic configuration
334336 [
···379381380382 # Ada
381383 optional langAda "--enable-libada" ++
382382-383383- # Cross-compilation
384384- optional (targetPlatform == hostPlatform) (
385385- let incDir = if hostPlatform.isDarwin
386386- then "${darwin.usr-include}"
387387- else "${getDev stdenv.cc.libc}/include";
388388- in "--with-native-system-header-dir=${incDir}"
389389- ) ++
390384391385 platformFlags ++
392386 optional (targetPlatform != hostPlatform) crossConfigureFlags ++
···452446 STRIP_FOR_TARGET = "${targetPlatform.config}-strip";
453447 CC_FOR_TARGET = "${targetPlatform.config}-gcc";
454448 CXX_FOR_TARGET = "${targetPlatform.config}-g++";
455455- # If we are making a cross compiler, targetPlatform != hostPlatform
456456- NIX_CC_CROSS = optionalString (targetPlatform == hostPlatform) builtins.toString stdenv.cc;
449449+457450 dontStrip = true;
458451 buildFlags = "";
459452 };
460453454454+ NIX_BUILD_CC = buildPackages.stdenv.cc;
461455462456 # Needed for the cross compilation to work
463457 AR = "ar";
···465459 # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
466460 CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" else "gcc";
467461468468- # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
469469- # the library headers and binaries, regarless of the language being
470470- # compiled.
471471-472472- # Note: When building the Java AWT GTK+ peer, the build system doesn't
473473- # honor `--with-gmp' et al., e.g., when building
474474- # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just
475475- # add them to $CPATH and $LIBRARY_PATH in this case.
462462+ # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
463463+ # library headers and binaries, regarless of the language being compiled.
464464+ #
465465+ # Note: When building the Java AWT GTK+ peer, the build system doesn't honor
466466+ # `--with-gmp' et al., e.g., when building
467467+ # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
468468+ # them to $CPATH and $LIBRARY_PATH in this case.
476469 #
477470 # Likewise, the LTO code doesn't find zlib.
471471+ #
472472+ # Cross-compiling, we need gcc not to read ./specs in order to build the g++
473473+ # compiler (after the specs for the cross-gcc are created). Having
474474+ # LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
478475479479- CPATH = makeSearchPathOutput "dev" "include" ([]
476476+ CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
480477 ++ optional (zlib != null) zlib
481478 ++ optional langJava boehmgc
482479 ++ optionals javaAwtGtk xlibs
···487484 # On GNU/Hurd glibc refers to Mach & Hurd
488485 # headers.
489486 ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
490490- libcCross.propagatedBuildInputs);
487487+ libcCross.propagatedBuildInputs
488488+ ));
491489492492- LIBRARY_PATH = makeLibraryPath ([]
490490+ LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
493491 ++ optional (zlib != null) zlib
494492 ++ optional langJava boehmgc
495493 ++ optionals javaAwtGtk xlibs
496494 ++ optionals javaAwtGtk [ gmp mpfr ]
497497- ++ optional (libpthread != null) libpthread);
495495+ ++ optional (libpthread != null) libpthread)
496496+ );
498497499499- EXTRA_TARGET_CFLAGS =
500500- if targetPlatform != hostPlatform && libcCross != null then [
501501- "-idirafter ${getDev libcCross}/include"
502502- ]
503503- ++ optionals (! crossStageStatic) [
504504- "-B${libcCross.out}/lib"
505505- ]
506506- else null;
498498+ EXTRA_TARGET_FLAGS = optionals
499499+ (targetPlatform != hostPlatform && libcCross != null)
500500+ ([
501501+ "-idirafter ${getDev libcCross}/include"
502502+ ] ++ optionals (! crossStageStatic) [
503503+ "-B${libcCross.out}/lib"
504504+ ]);
507505508508- EXTRA_TARGET_LDFLAGS =
509509- if targetPlatform != hostPlatform && libcCross != null then [
510510- "-Wl,-L${libcCross.out}/lib"
511511- ]
512512- ++ (if crossStageStatic then [
506506+ EXTRA_TARGET_LDFLAGS = optionals
507507+ (targetPlatform != hostPlatform && libcCross != null)
508508+ ([
509509+ "-Wl,-L${libcCross.out}/lib"
510510+ ] ++ (if crossStageStatic then [
513511 "-B${libcCross.out}/lib"
514512 ] else [
515513 "-Wl,-rpath,${libcCross.out}/lib"
516514 "-Wl,-rpath-link,${libcCross.out}/lib"
517517- ])
518518- ++ optionals (libpthreadCross != null) [
519519- "-L${libpthreadCross}/lib"
520520- "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
521521- ]
522522- else null;
515515+ ]) ++ optionals (libpthreadCross != null) [
516516+ "-L${libpthreadCross}/lib"
517517+ "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
518518+ ]);
523519524520 passthru =
525521 { inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo version; isGNU = true; };
+38-41
pkgs/development/compilers/gcc/6/default.nix
···3434, cloog # unused; just for compat with gcc4, as we override the parameter on some places
3535, darwin ? null
3636, buildPlatform, hostPlatform, targetPlatform
3737+, buildPackages
3738}:
38393940assert langJava -> zip != null && unzip != null
···330331 "--with-mpc=${libmpc}"
331332 ] ++
332333 optional (libelf != null) "--with-libelf=${libelf}" ++
334334+ optional (!(crossMingw && crossStageStatic))
335335+ "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include" ++
333336334337 # Basic configuration
335338 [
···380383381384 # Ada
382385 optional langAda "--enable-libada" ++
383383-384384- # Cross-compilation
385385- optional (targetPlatform == hostPlatform) (
386386- let incDir = if hostPlatform.isDarwin
387387- then "${darwin.usr-include}"
388388- else "${getDev stdenv.cc.libc}/include";
389389- in "--with-native-system-header-dir=${incDir}"
390390- ) ++
391386392387 platformFlags ++
393388 optional (targetPlatform != hostPlatform) crossConfigureFlags ++
···452447 STRIP_FOR_TARGET = "${targetPlatform.config}-strip";
453448 CC_FOR_TARGET = "${targetPlatform.config}-gcc";
454449 CXX_FOR_TARGET = "${targetPlatform.config}-g++";
455455- # If we are making a cross compiler, targetPlatform != hostPlatform
456456- NIX_CC_CROSS = optionalString (targetPlatform == hostPlatform) builtins.toString stdenv.cc;
450450+457451 dontStrip = true;
458452 buildFlags = "";
459453 };
460454455455+ NIX_BUILD_CC = buildPackages.stdenv.cc;
461456462457 # Needed for the cross compilation to work
463458 AR = "ar";
···465460 # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
466461 CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" else "gcc";
467462468468- # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
469469- # the library headers and binaries, regarless of the language being
470470- # compiled.
471471-472472- # Note: When building the Java AWT GTK+ peer, the build system doesn't
473473- # honor `--with-gmp' et al., e.g., when building
474474- # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just
475475- # add them to $CPATH and $LIBRARY_PATH in this case.
463463+ # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
464464+ # library headers and binaries, regarless of the language being compiled.
465465+ #
466466+ # Note: When building the Java AWT GTK+ peer, the build system doesn't honor
467467+ # `--with-gmp' et al., e.g., when building
468468+ # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
469469+ # them to $CPATH and $LIBRARY_PATH in this case.
476470 #
477471 # Likewise, the LTO code doesn't find zlib.
472472+ #
473473+ # Cross-compiling, we need gcc not to read ./specs in order to build the g++
474474+ # compiler (after the specs for the cross-gcc are created). Having
475475+ # LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
478476479479- CPATH = makeSearchPathOutput "dev" "include" ([]
477477+ CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
480478 ++ optional (zlib != null) zlib
481479 ++ optional langJava boehmgc
482480 ++ optionals javaAwtGtk xlibs
···487485 # On GNU/Hurd glibc refers to Mach & Hurd
488486 # headers.
489487 ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
490490- libcCross.propagatedBuildInputs);
488488+ libcCross.propagatedBuildInputs
489489+ ));
491490492492- LIBRARY_PATH = makeLibraryPath ([]
491491+ LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
493492 ++ optional (zlib != null) zlib
494493 ++ optional langJava boehmgc
495494 ++ optionals javaAwtGtk xlibs
496495 ++ optionals javaAwtGtk [ gmp mpfr ]
497497- ++ optional (libpthread != null) libpthread);
496496+ ++ optional (libpthread != null) libpthread)
497497+ );
498498499499- EXTRA_TARGET_CFLAGS =
500500- if targetPlatform != hostPlatform && libcCross != null then [
501501- "-idirafter ${getDev libcCross}/include"
502502- ]
503503- ++ optionals (! crossStageStatic) [
504504- "-B${libcCross.out}/lib"
505505- ]
506506- else null;
499499+ EXTRA_TARGET_FLAGS = optionals
500500+ (targetPlatform != hostPlatform && libcCross != null)
501501+ ([
502502+ "-idirafter ${getDev libcCross}/include"
503503+ ] ++ optionals (! crossStageStatic) [
504504+ "-B${libcCross.out}/lib"
505505+ ]);
507506508508- EXTRA_TARGET_LDFLAGS =
509509- if targetPlatform != hostPlatform && libcCross != null then [
510510- "-Wl,-L${libcCross.out}/lib"
511511- ]
512512- ++ (if crossStageStatic then [
507507+ EXTRA_TARGET_LDFLAGS = optionals
508508+ (targetPlatform != hostPlatform && libcCross != null)
509509+ ([
510510+ "-Wl,-L${libcCross.out}/lib"
511511+ ] ++ (if crossStageStatic then [
513512 "-B${libcCross.out}/lib"
514513 ] else [
515514 "-Wl,-rpath,${libcCross.out}/lib"
516515 "-Wl,-rpath-link,${libcCross.out}/lib"
517517- ])
518518- ++ optionals (libpthreadCross != null) [
519519- "-L${libpthreadCross}/lib"
520520- "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
521521- ]
522522- else null;
516516+ ]) ++ optionals (libpthreadCross != null) [
517517+ "-L${libpthreadCross}/lib"
518518+ "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
519519+ ]);
523520524521 passthru =
525522 { inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo version; isGNU = true; };
+38-41
pkgs/development/compilers/gcc/7/default.nix
···3535, darwin ? null
3636, flex ? null
3737, buildPlatform, hostPlatform, targetPlatform
3838+, buildPackages
3839}:
39404041assert langJava -> zip != null && unzip != null
···323324 "--with-mpc=${libmpc}"
324325 ] ++
325326 optional (libelf != null) "--with-libelf=${libelf}" ++
327327+ optional (!(crossMingw && crossStageStatic))
328328+ "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include" ++
326329327330 # Basic configuration
328331 [
···373376374377 # Ada
375378 optional langAda "--enable-libada" ++
376376-377377- # Cross-compilation
378378- optional (targetPlatform == hostPlatform) (
379379- let incDir = if hostPlatform.isDarwin
380380- then "${darwin.usr-include}"
381381- else "${getDev stdenv.cc.libc}/include";
382382- in "--with-native-system-header-dir=${incDir}"
383383- ) ++
384379385380 platformFlags ++
386381 optional (targetPlatform != hostPlatform) crossConfigureFlags ++
···446441 STRIP_FOR_TARGET = "${targetPlatform.config}-strip";
447442 CC_FOR_TARGET = "${targetPlatform.config}-gcc";
448443 CXX_FOR_TARGET = "${targetPlatform.config}-g++";
449449- # If we are making a cross compiler, targetPlatform != hostPlatform
450450- NIX_CC_CROSS = optionalString (targetPlatform == hostPlatform) builtins.toString stdenv.cc;
444444+451445 dontStrip = true;
452446 buildFlags = "";
453447 };
454448449449+ NIX_BUILD_CC = buildPackages.stdenv.cc;
455450456451 # Needed for the cross compilation to work
457452 AR = "ar";
···459454 # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
460455 CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" else "gcc";
461456462462- # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
463463- # the library headers and binaries, regarless of the language being
464464- # compiled.
465465-466466- # Note: When building the Java AWT GTK+ peer, the build system doesn't
467467- # honor `--with-gmp' et al., e.g., when building
468468- # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just
469469- # add them to $CPATH and $LIBRARY_PATH in this case.
457457+ # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
458458+ # library headers and binaries, regarless of the language being compiled.
459459+ #
460460+ # Note: When building the Java AWT GTK+ peer, the build system doesn't honor
461461+ # `--with-gmp' et al., e.g., when building
462462+ # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
463463+ # them to $CPATH and $LIBRARY_PATH in this case.
470464 #
471465 # Likewise, the LTO code doesn't find zlib.
466466+ #
467467+ # Cross-compiling, we need gcc not to read ./specs in order to build the g++
468468+ # compiler (after the specs for the cross-gcc are created). Having
469469+ # LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
472470473473- CPATH = makeSearchPathOutput "dev" "include" ([]
471471+ CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
474472 ++ optional (zlib != null) zlib
475473 ++ optional langJava boehmgc
476474 ++ optionals javaAwtGtk xlibs
···481479 # On GNU/Hurd glibc refers to Mach & Hurd
482480 # headers.
483481 ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
484484- libcCross.propagatedBuildInputs);
482482+ libcCross.propagatedBuildInputs
483483+ ));
485484486486- LIBRARY_PATH = makeLibraryPath ([]
485485+ LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
487486 ++ optional (zlib != null) zlib
488487 ++ optional langJava boehmgc
489488 ++ optionals javaAwtGtk xlibs
490489 ++ optionals javaAwtGtk [ gmp mpfr ]
491491- ++ optional (libpthread != null) libpthread);
490490+ ++ optional (libpthread != null) libpthread)
491491+ );
492492493493- EXTRA_TARGET_CFLAGS =
494494- if targetPlatform != hostPlatform && libcCross != null then [
495495- "-idirafter ${getDev libcCross}/include"
496496- ]
497497- ++ optionals (! crossStageStatic) [
498498- "-B${libcCross.out}/lib"
499499- ]
500500- else null;
493493+ EXTRA_TARGET_FLAGS = optionals
494494+ (targetPlatform != hostPlatform && libcCross != null)
495495+ ([
496496+ "-idirafter ${getDev libcCross}/include"
497497+ ] ++ optionals (! crossStageStatic) [
498498+ "-B${libcCross.out}/lib"
499499+ ]);
501500502502- EXTRA_TARGET_LDFLAGS =
503503- if targetPlatform != hostPlatform && libcCross != null then [
504504- "-Wl,-L${libcCross.out}/lib"
505505- ]
506506- ++ (if crossStageStatic then [
501501+ EXTRA_TARGET_LDFLAGS = optionals
502502+ (targetPlatform != hostPlatform && libcCross != null)
503503+ ([
504504+ "-Wl,-L${libcCross.out}/lib"
505505+ ] ++ (if crossStageStatic then [
507506 "-B${libcCross.out}/lib"
508507 ] else [
509508 "-Wl,-rpath,${libcCross.out}/lib"
510509 "-Wl,-rpath-link,${libcCross.out}/lib"
511511- ])
512512- ++ optionals (libpthreadCross != null) [
513513- "-L${libpthreadCross}/lib"
514514- "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
515515- ]
516516- else null;
510510+ ]) ++ optionals (libpthreadCross != null) [
511511+ "-L${libpthreadCross}/lib"
512512+ "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
513513+ ]);
517514518515 passthru =
519516 { inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo version; isGNU = true; };
+94-106
pkgs/development/compilers/gcc/builder.sh
···11source $stdenv/setup
223344-export NIX_FIXINC_DUMMY=$NIX_BUILD_TOP/dummy
55-mkdir $NIX_FIXINC_DUMMY
44+oldOpts="$(shopt -po nounset)" || true
55+set -euo pipefail
66+77+88+export NIX_FIXINC_DUMMY="$NIX_BUILD_TOP/dummy"
99+mkdir "$NIX_FIXINC_DUMMY"
610711812if test "$staticCompiler" = "1"; then
···131714181519# GCC interprets empty paths as ".", which we don't want.
1616-if test -z "$CPATH"; then unset CPATH; fi
1717-if test -z "$LIBRARY_PATH"; then unset LIBRARY_PATH; fi
1818-echo "\$CPATH is \`$CPATH'"
1919-echo "\$LIBRARY_PATH is \`$LIBRARY_PATH'"
2020+if test -z "${CPATH-}"; then unset CPATH; fi
2121+if test -z "${LIBRARY_PATH-}"; then unset LIBRARY_PATH; fi
2222+echo "\$CPATH is \`${CPATH-}'"
2323+echo "\$LIBRARY_PATH is \`${LIBRARY_PATH-}'"
20242125if test "$noSysDirs" = "1"; then
22262323- if test -e $NIX_CC/nix-support/orig-libc; then
2424-2525- # Figure out what extra flags to pass to the gcc compilers
2626- # being generated to make sure that they use our glibc.
2727- extraFlags="$(cat $NIX_CC/nix-support/libc-cflags)"
2828- extraLDFlags="$(cat $NIX_CC/nix-support/libc-ldflags) $(cat $NIX_CC/nix-support/libc-ldflags-before || true)"
2929-3030- # Use *real* header files, otherwise a limits.h is generated
3131- # that does not include Glibc's limits.h (notably missing
3232- # SSIZE_MAX, which breaks the build).
3333- export NIX_FIXINC_DUMMY=$libc_dev/include
2727+ declare \
2828+ EXTRA_BUILD_FLAGS EXTRA_FLAGS EXTRA_TARGET_FLAGS \
2929+ EXTRA_BUILD_LDFLAGS EXTRA_TARGET_LDFLAGS
34303535- # The path to the Glibc binaries such as `crti.o'.
3636- glibc_libdir="$(cat $NIX_CC/nix-support/orig-libc)/lib"
3131+ for pre in 'BUILD_' ''; do
3232+ curCC="NIX_${pre}CC"
3333+ curFIXINC="NIX_${pre}FIXINC_DUMMY"
37343838- else
3939- # Hack: support impure environments.
4040- extraFlags="-isystem /usr/include"
4141- extraLDFlags="-L/usr/lib64 -L/usr/lib"
4242- glibc_libdir="/usr/lib"
4343- export NIX_FIXINC_DUMMY=/usr/include
4444- fi
4545-4646- extraFlags="-I$NIX_FIXINC_DUMMY $extraFlags"
4747- extraLDFlags="-L$glibc_libdir -rpath $glibc_libdir $extraLDFlags"
4848-4949- # BOOT_CFLAGS defaults to `-g -O2'; since we override it below,
5050- # make sure to explictly add them so that files compiled with the
5151- # bootstrap compiler are optimized and (optionally) contain
5252- # debugging information (info "(gccinstall) Building").
5353- if test -n "$dontStrip"; then
5454- extraFlags="-O2 -g $extraFlags"
5555- else
5656- # Don't pass `-g' at all; this saves space while building.
5757- extraFlags="-O2 $extraFlags"
5858- fi
3535+ declare -a extraFlags=() extraLDFlags=()
3636+ if [[ -e "${!curCC}/nix-support/orig-libc" ]]; then
3737+ # Figure out what extra flags to pass to the gcc compilers being
3838+ # generated to make sure that they use our glibc.
3939+ extraFlags=($(cat "${!curCC}/nix-support/libc-cflags"))
4040+ extraLDFlags=($(cat "${!curCC}/nix-support/libc-ldflags") $(cat "${!curCC}/nix-support/libc-ldflags-before" || true))
59416060- EXTRA_FLAGS="$extraFlags"
6161- for i in $extraLDFlags; do
6262- EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,$i"
6363- done
4242+ # The path to the Glibc binaries such as `crti.o'.
4343+ glibc_libdir="$(cat "${!curCC}/nix-support/orig-libc")/lib"
4444+ glibc_devdir="$(cat "${!curCC}/nix-support/orig-libc-dev")"
64456565- if test -n "$targetConfig"; then
6666- # Cross-compiling, we need gcc not to read ./specs in order to build
6767- # the g++ compiler (after the specs for the cross-gcc are created).
6868- # Having LIBRARY_PATH= makes gcc read the specs from ., and the build
6969- # breaks. Having this variable comes from the default.nix code to bring
7070- # gcj in.
7171- unset LIBRARY_PATH
7272- unset CPATH
7373- else
7474- if test -z "$NIX_CC_CROSS"; then
7575- EXTRA_TARGET_CFLAGS="$EXTRA_FLAGS"
7676- EXTRA_TARGET_CXXFLAGS="$EXTRA_FLAGS"
7777- EXTRA_TARGET_LDFLAGS="$EXTRA_LDFLAGS"
4646+ # Use *real* header files, otherwise a limits.h is generated that
4747+ # does not include Glibc's limits.h (notably missing SSIZE_MAX,
4848+ # which breaks the build).
4949+ declare NIX_${pre}FIXINC_DUMMY="$glibc_devdir/include"
7850 else
7979- # This the case of cross-building the gcc.
8080- # We need special flags for the target, different than those of the build
8181- # Assertion:
8282- test -e $NIX_CC_CROSS/nix-support/orig-libc
8383-8484- # Figure out what extra flags to pass to the gcc compilers
8585- # being generated to make sure that they use our glibc.
8686- extraFlags="$(cat $NIX_CC_CROSS/nix-support/libc-cflags)"
8787- extraLDFlags="$(cat $NIX_CC_CROSS/nix-support/libc-ldflags) $(cat $NIX_CC_CROSS/nix-support/libc-ldflags-before)"
5151+ # Hack: support impure environments.
5252+ extraFlags=("-isystem" "/usr/include")
5353+ extraLDFlags=("-L/usr/lib64" "-L/usr/lib")
5454+ glibc_libdir="/usr/lib"
5555+ declare NIX_${pre}FIXINC_DUMMY=/usr/include
5656+ fi
88578989- # The path to the Glibc binaries such as `crti.o'.
9090- glibc_dir="$(cat $NIX_CC_CROSS/nix-support/orig-libc)"
9191- glibc_libdir="$glibc_dir/lib"
9292- glibc_devdir="$(cat $NIX_CC_CROSS/nix-support/orig-libc-dev)"
9393- configureFlags="$configureFlags --with-native-system-header-dir=$glibc_devdir/include"
5858+ extraFlags=("-I${!curFIXINC}"
5959+ "${extraFlags[@]}")
6060+ extraLDFlags=("-L$glibc_libdir" "-rpath" "$glibc_libdir"
6161+ "${extraLDFlags[@]}")
94629595- # Use *real* header files, otherwise a limits.h is generated
9696- # that does not include Glibc's limits.h (notably missing
9797- # SSIZE_MAX, which breaks the build).
9898- NIX_FIXINC_DUMMY_CROSS="$glibc_devdir/include"
6363+ # BOOT_CFLAGS defaults to `-g -O2'; since we override it below, make
6464+ # sure to explictly add them so that files compiled with the bootstrap
6565+ # compiler are optimized and (optionally) contain debugging information
6666+ # (info "(gccinstall) Building").
6767+ if test -n "${dontStrip-}"; then
6868+ extraFlags=("-O2" "-g" "${extraFlags[@]}")
6969+ else
7070+ # Don't pass `-g' at all; this saves space while building.
7171+ extraFlags=("-O2" "${extraFlags[@]}")
7272+ fi
9973100100- extraFlags="-I$NIX_FIXINC_DUMMY_CROSS $extraFlags"
101101- extraLDFlags="-L$glibc_libdir -rpath $glibc_libdir $extraLDFlags"
7474+ declare EXTRA_${pre}FLAGS="${extraFlags[*]}"
7575+ for i in "${extraLDFlags[@]}"; do
7676+ declare EXTRA_${pre}LDFLAGS+=" -Wl,$i"
7777+ done
7878+ done
10279103103- EXTRA_TARGET_CFLAGS="$extraFlags"
104104- for i in $extraLDFlags; do
105105- EXTRA_TARGET_LDFLAGS="$EXTRA_TARGET_LDFLAGS -Wl,$i"
106106- done
107107- fi
8080+ if test -z "${targetConfig-}"; then
8181+ # host = target, so the flags are the same
8282+ EXTRA_TARGET_FLAGS="$EXTRA_FLAGS"
8383+ EXTRA_TARGET_LDFLAGS="$EXTRA_LDFLAGS"
10884 fi
1098511086 # CFLAGS_FOR_TARGET are needed for the libstdc++ configure script to find
11187 # the startfiles.
11288 # FLAGS_FOR_TARGET are needed for the target libraries to receive the -Bxxx
11389 # for the startfiles.
114114- makeFlagsArray+=( \
115115- NATIVE_SYSTEM_HEADER_DIR="$NIX_FIXINC_DUMMY" \
116116- SYSTEM_HEADER_DIR="$NIX_FIXINC_DUMMY" \
117117- CFLAGS_FOR_BUILD="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
118118- CXXFLAGS_FOR_BUILD="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
119119- CFLAGS_FOR_TARGET="$EXTRA_TARGET_CFLAGS $EXTRA_TARGET_LDFLAGS" \
120120- CXXFLAGS_FOR_TARGET="$EXTRA_TARGET_CFLAGS $EXTRA_TARGET_LDFLAGS" \
121121- FLAGS_FOR_TARGET="$EXTRA_TARGET_CFLAGS $EXTRA_TARGET_LDFLAGS" \
122122- LDFLAGS_FOR_BUILD="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
123123- LDFLAGS_FOR_TARGET="$EXTRA_TARGET_LDFLAGS $EXTRA_TARGET_LDFLAGS" \
124124- )
9090+ makeFlagsArray+=(
9191+ "BUILD_SYSTEM_HEADER_DIR=$NIX_BUILD_FIXINC_DUMMY"
9292+ "SYSTEM_HEADER_DIR=$NIX_BUILD_FIXINC_DUMMY"
9393+ "NATIVE_SYSTEM_HEADER_DIR=$NIX_FIXINC_DUMMY"
9494+9595+ "LDFLAGS_FOR_BUILD=$EXTRA_BUILD_LDFLAGS"
9696+ #"LDFLAGS=$EXTRA_LDFLAGS"
9797+ "LDFLAGS_FOR_TARGET=$EXTRA_TARGET_LDFLAGS"
9898+9999+ "CFLAGS_FOR_BUILD=$EXTRA_BUILD_FLAGS $EXTRA_BUILD_LDFLAGS"
100100+ "CXXFLAGS_FOR_BUILD=$EXTRA_BUILD_FLAGS $EXTRA_BUILD_LDFLAGS"
101101+ "FLAGS_FOR_BUILD=$EXTRA_BUILD_FLAGS $EXTRA_BUILD_LDFLAGS"
102102+103103+ # It seems there is a bug in GCC 5
104104+ #"CFLAGS=$EXTRA_FLAGS $EXTRA_LDFLAGS"
105105+ #"CXXFLAGS=$EXTRA_FLAGS $EXTRA_LDFLAGS"
125106126126- if test -z "$targetConfig"; then
127127- makeFlagsArray+=( \
128128- BOOT_CFLAGS="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
129129- BOOT_LDFLAGS="$EXTRA_TARGET_CFLAGS $EXTRA_TARGET_LDFLAGS" \
130130- )
107107+ "CFLAGS_FOR_TARGET=$EXTRA_TARGET_FLAGS $EXTRA_TARGET_LDFLAGS"
108108+ "CXXFLAGS_FOR_TARGET=$EXTRA_TARGET_FLAGS $EXTRA_TARGET_LDFLAGS"
109109+ "FLAGS_FOR_TARGET=$EXTRA_TARGET_FLAGS $EXTRA_TARGET_LDFLAGS"
110110+ )
111111+112112+ if test -z "${targetConfig-}"; then
113113+ makeFlagsArray+=(
114114+ "BOOT_CFLAGS=$EXTRA_FLAGS $EXTRA_LDFLAGS"
115115+ "BOOT_LDFLAGS=$EXTRA_TARGET_FLAGS $EXTRA_TARGET_LDFLAGS"
116116+ )
131117 fi
132118133133- if test -n "$targetConfig" -a "$crossStageStatic" == 1; then
119119+ if test -n "${targetConfig-}" -a "$crossStageStatic" == 1; then
134120 # We don't want the gcc build to assume there will be a libc providing
135121 # limits.h in this stagae
136136- makeFlagsArray+=( \
137137- LIMITS_H_TEST=false \
138138- )
122122+ makeFlagsArray+=(
123123+ 'LIMITS_H_TEST=false'
124124+ )
139125 else
140140- makeFlagsArray+=( \
141141- LIMITS_H_TEST=true \
142142- )
126126+ makeFlagsArray+=(
127127+ 'LIMITS_H_TEST=true'
128128+ )
143129 fi
144130fi
145131146146-if test -n "$targetConfig"; then
132132+if test -n "${targetConfig-}"; then
147133 # The host strip will destroy some important details of the objects
148134 dontStrip=1
149135fi
136136+137137+eval "$oldOpts"
150138151139providedPreConfigure="$preConfigure";
152140preConfigure() {
···33}:
4455stdenv.mkDerivation rec {
66- name = "gstreamer-editing-services-1.12.2";
66+ name = "gstreamer-editing-services-1.12.3";
7788 meta = with stdenv.lib; {
99 description = "Library for creation of audio/video non-linear editors";
···1414 buildInputs = [ pcre ];
1515 nativeBuildInputs = [ cmake doxygen ];
16161717+ # Multiple doxygen can not generate man pages in the same base directory in
1818+ # parallel: https://bugzilla.gnome.org/show_bug.cgi?id=791153
1919+ enableParallelBuilding = false;
2020+1721 meta = with stdenv.lib; {
1822 homepage = http://editorconfig.org/;
1923 description = "EditorConfig core library written in C";