From 2e4124c8c9acaaee44e543d563401f4f5229e423 Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Fri, 27 Oct 2017 18:23:15 -0400 Subject: [PATCH 01/10] libdaemon: Enable cross-compilation --- pkgs/development/libraries/libdaemon/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libdaemon/default.nix b/pkgs/development/libraries/libdaemon/default.nix index 07d5b77efc4..af832a70a73 100644 --- a/pkgs/development/libraries/libdaemon/default.nix +++ b/pkgs/development/libraries/libdaemon/default.nix @@ -8,7 +8,11 @@ stdenv.mkDerivation rec { sha256 = "0d5qlq5ab95wh1xc87rqrh1vx6i8lddka1w3f1zcqvcqdxgyn8zx"; }; - configureFlags = [ "--disable-lynx" ]; + configureFlags = [ "--disable-lynx" ] + ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) + [ # Can't run this test while cross-compiling + "ac_cv_func_setpgrp_void=yes" + ]; meta = { description = "Lightweight C library that eases the writing of UNIX daemons"; From 0235539dfe46ee0c72a620430c41f8fd7d19af53 Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Mon, 18 Dec 2017 16:59:44 -0500 Subject: [PATCH 02/10] po4a: Docbook dependencies are nativeBuildInputs --- pkgs/top-level/perl-packages.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index ff74410ffbd..656f68cd891 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -11263,7 +11263,8 @@ let self = _self // overrides; _self = with self; { url = "https://alioth.debian.org/frs/download.php/file/4142/po4a-0.47.tar.gz"; sha256 = "5010e1b7df1115cbd475f46587fc05fefc97301f9bba0c2f15106005ca017507"; }; - propagatedBuildInputs = [ pkgs.docbook_xml_xslt TextWrapI18N LocaleGettext TermReadKey SGMLSpm ModuleBuild UnicodeLineBreak ModuleBuild ]; + nativeBuildInputs = [ pkgs.docbook_xml_xslt pkgs.docbook_xsl pkgs.docbook_xsl_ns ]; + propagatedBuildInputs = [ TextWrapI18N LocaleGettext TermReadKey SGMLSpm ModuleBuild UnicodeLineBreak ModuleBuild ]; buildInputs = [ pkgs.gettext pkgs.libxslt pkgs.glibcLocales pkgs.docbook_xml_dtd_412 pkgs.docbook_sgml_dtd_41 pkgs.texlive.combined.scheme-basic pkgs.jade ]; LC_ALL="en_US.UTF-8"; SGML_CATALOG_FILES = "${pkgs.docbook_xml_dtd_412}/xml/dtd/docbook/catalog.xml"; From 6719bf5a743f3e29e2e9e2520012146a22182a8b Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Fri, 27 Oct 2017 17:53:50 -0400 Subject: [PATCH 03/10] libxslt: Explicitly specify libxml prefix Otherwise configure seems not to find xml2-config while cross-compiling. --- pkgs/development/libraries/libxslt/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libxslt/default.nix b/pkgs/development/libraries/libxslt/default.nix index 2f913093873..62b68ff9ab8 100644 --- a/pkgs/development/libraries/libxslt/default.nix +++ b/pkgs/development/libraries/libxslt/default.nix @@ -41,7 +41,10 @@ stdenv.mkDerivation rec { propagatedBuildInputs = [ findXMLCatalogs ]; # TODO move cryptoSupport as last flag, when upgrading libxslt - configureFlags = optional (!cryptoSupport) "--without-crypto" ++ [ + configureFlags = [] + ++ optional (buildPlatform != hostPlatform) "--with-libxml-prefix=${libxml2.dev}" + ++ optional (!cryptoSupport) "--without-crypto" + ++ [ "--without-debug" "--without-mem-debug" "--without-debugger" From a4179bf45f4e171ea0fa4c633e2f75e17dfa8565 Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Sun, 17 Dec 2017 00:33:20 -0500 Subject: [PATCH 04/10] zip: Enable cross-compilation --- pkgs/tools/archivers/zip/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/tools/archivers/zip/default.nix b/pkgs/tools/archivers/zip/default.nix index 3c841aa621f..cb2d29e239d 100644 --- a/pkgs/tools/archivers/zip/default.nix +++ b/pkgs/tools/archivers/zip/default.nix @@ -12,6 +12,9 @@ stdenv.mkDerivation { ]; sha256 = "0sb3h3067pzf3a7mlxn1hikpcjrsvycjcnj9hl9b1c3ykcgvps7h"; }; + patchPhase = '' + substituteInPlace unix/Makefile --replace 'CC = cc' "" + ''; hardeningDisable = [ "format" ]; From 8f8b836bce23bbdc4fb9b6e4d9bcc0cd793bb6cb Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Wed, 18 Oct 2017 00:02:38 -0400 Subject: [PATCH 05/10] libtool2: Enable cross-compilation --- pkgs/development/tools/misc/libtool/libtool2.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/tools/misc/libtool/libtool2.nix b/pkgs/development/tools/misc/libtool/libtool2.nix index bf134c459d9..85821ee2089 100644 --- a/pkgs/development/tools/misc/libtool/libtool2.nix +++ b/pkgs/development/tools/misc/libtool/libtool2.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { outputs = [ "out" "lib" ]; - nativeBuildInputs = [ perl help2man ]; + nativeBuildInputs = [ perl help2man m4 ]; propagatedBuildInputs = [ m4 ]; # Don't fixup "#! /bin/sh" in Libtool, otherwise it will use the From 289365701490fcb3d3d06fa3a24733fec9ea9fa7 Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Sun, 10 Dec 2017 10:51:05 -0500 Subject: [PATCH 06/10] automake: Enable cross-compilation --- pkgs/development/tools/misc/automake/automake-1.15.x.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/tools/misc/automake/automake-1.15.x.nix b/pkgs/development/tools/misc/automake/automake-1.15.x.nix index d6399e128a3..507df5def0c 100644 --- a/pkgs/development/tools/misc/automake/automake-1.15.x.nix +++ b/pkgs/development/tools/misc/automake/automake-1.15.x.nix @@ -8,7 +8,8 @@ stdenv.mkDerivation rec { sha256 = "1bzd9g32dfm4rsbw93ld9x7b5nc1y6i4m6zp032qf1i28a8s6sxg"; }; - buildInputs = [ perl autoconf ]; + nativeBuildInputs = [ autoconf perl ]; + buildInputs = [ autoconf ]; setupHook = ./setup-hook.sh; From c3bf521f188f2b71b0d74b6722ecf922b65033c9 Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Sun, 29 Oct 2017 13:50:33 -0400 Subject: [PATCH 07/10] procps: Enable cross-compilation --- pkgs/os-specific/linux/procps-ng/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/procps-ng/default.nix b/pkgs/os-specific/linux/procps-ng/default.nix index 4023ea5c69f..cc5e3dd5190 100644 --- a/pkgs/os-specific/linux/procps-ng/default.nix +++ b/pkgs/os-specific/linux/procps-ng/default.nix @@ -16,7 +16,10 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; # Too red - configureFlags = [ "--disable-modern-top" ]; + configureFlags = [ "--disable-modern-top" ] + ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) + [ "ac_cv_func_malloc_0_nonnull=yes" + "ac_cv_func_realloc_0_nonnull=yes" ]; meta = { homepage = https://sourceforge.net/projects/procps-ng/; From 2a5bf4cb4039e39d6253e450afd3cab63b0d3387 Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Sat, 16 Dec 2017 23:06:59 -0500 Subject: [PATCH 08/10] alsa-utils: Enable cross-compilation --- pkgs/os-specific/linux/alsa-utils/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/alsa-utils/default.nix b/pkgs/os-specific/linux/alsa-utils/default.nix index c9b5b0d2e2d..e2340939fce 100644 --- a/pkgs/os-specific/linux/alsa-utils/default.nix +++ b/pkgs/os-specific/linux/alsa-utils/default.nix @@ -17,7 +17,8 @@ stdenv.mkDerivation rec { --replace "which" "type -p" \ --replace "lspci" "${pciutils}/bin/lspci" ''; - buildInputs = [ gettext alsaLib ncurses libsamplerate fftw ]; + nativeBuildInputs = [ gettext ]; + buildInputs = [ alsaLib ncurses libsamplerate fftw ]; configureFlags = "--disable-xmlto --with-udev-rules-dir=$(out)/lib/udev/rules.d"; From 2b04cddf7e9e485e7ee69390cd76710099bcf768 Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Sun, 24 Dec 2017 16:16:26 -0500 Subject: [PATCH 09/10] nix-prefetch-scripts: makeWrapper is a nativeBuildInput --- pkgs/tools/package-management/nix-prefetch-scripts/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/package-management/nix-prefetch-scripts/default.nix b/pkgs/tools/package-management/nix-prefetch-scripts/default.nix index 95280bf60b3..a2ff38ab300 100644 --- a/pkgs/tools/package-management/nix-prefetch-scripts/default.nix +++ b/pkgs/tools/package-management/nix-prefetch-scripts/default.nix @@ -6,7 +6,7 @@ let mkPrefetchScript = tool: src: deps: stdenv.mkDerivation { name = "nix-prefetch-${tool}"; - buildInputs = [ makeWrapper ]; + nativeBuildInputs = [ makeWrapper ]; unpackPhase = ":"; From 16b6e5a45295765071ad0bef3845d7b829a7cbd5 Mon Sep 17 00:00:00 2001 From: Will Dietz Date: Mon, 22 Jan 2018 18:57:13 -0600 Subject: [PATCH 10/10] libxslt: make configureFlags unconditional, re-org to address comment --- pkgs/development/libraries/libxslt/default.nix | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/libxslt/default.nix b/pkgs/development/libraries/libxslt/default.nix index 62b68ff9ab8..8c72ce2c086 100644 --- a/pkgs/development/libraries/libxslt/default.nix +++ b/pkgs/development/libraries/libxslt/default.nix @@ -40,15 +40,13 @@ stdenv.mkDerivation rec { propagatedBuildInputs = [ findXMLCatalogs ]; - # TODO move cryptoSupport as last flag, when upgrading libxslt - configureFlags = [] - ++ optional (buildPlatform != hostPlatform) "--with-libxml-prefix=${libxml2.dev}" - ++ optional (!cryptoSupport) "--without-crypto" - ++ [ + configureFlags = [ + "--with-libxml-prefix=${libxml2.dev}" "--without-debug" "--without-mem-debug" "--without-debugger" - ] ++ optional pythonSupport "--with-python=${python2}"; + ] ++ optional pythonSupport "--with-python=${python2}" + ++ optional (!cryptoSupport) "--without-crypto"; postFixup = '' moveToOutput bin/xslt-config "$dev"