Unverified Commit 7d4cd942 authored by Arne Keller's avatar Arne Keller Committed by GitHub
Browse files

apt, dpkg: fix cross build (#372955)

parents ef56e777 e289913b
Loading
Loading
Loading
Loading
+19 −14
Original line number Diff line number Diff line
@@ -49,12 +49,22 @@ stdenv.mkDerivation (finalAttrs: {
    "man"
  ];

  nativeBuildInputs = [
  nativeBuildInputs =
    [
      cmake
      dpkg # dpkg-architecture
      gettext # msgfmt
      gtest
      (lib.getBin libxslt)
      pkg-config
      triehash
      perlPackages.perl
    ]
    ++ lib.optionals withDocs [
      docbook_xml_dtd_45
      doxygen
      perlPackages.Po4a
      w3m
    ];

  buildInputs =
@@ -64,30 +74,25 @@ stdenv.mkDerivation (finalAttrs: {
      db
      dpkg
      gnutls
      gtest
      libgcrypt
      libgpg-error
      libseccomp
      libtasn1
      lz4
      p11-kit
      perlPackages.perl
      udev
      xxHash
      xz
      zstd
    ]
    ++ lib.optionals withDocs [
      docbook_xml_dtd_45
      doxygen
      perlPackages.Po4a
      w3m
    ]
    ++ lib.optionals withNLS [
      gettext
    ];

  cmakeFlags = [
    (lib.cmakeOptionType "filepath" "BERKELEY_INCLUDE_DIRS" "${lib.getDev db}/include")
    (lib.cmakeOptionType "filepath" "DPKG_DATADIR" "${dpkg}/share/dpkg")
    (lib.cmakeOptionType "filepath" "DOCBOOK_XSL" "${docbook_xsl}/share/xml/docbook-xsl")
    (lib.cmakeOptionType "filepath" "GNUTLS_INCLUDE_DIR" "${lib.getDev gnutls}/include")
    (lib.cmakeFeature "DROOT_GROUP" "root")
+5 −1
Original line number Diff line number Diff line
@@ -49,10 +49,14 @@ stdenv.mkDerivation rec {
    for i in $(find . -name Makefile.in); do
      substituteInPlace $i --replace "install-data-local:" "disabled:" ;
    done

    # Skip check broken when cross-compiling.
    substituteInPlace configure \
      --replace-fail 'as_fn_error $? "cannot find a GNU tar program"' "#"
  '';

  postPatch = ''
    patchShebangs .
    patchShebangs --host .

    # Dpkg commands sometimes calls out to shell commands
    substituteInPlace lib/dpkg/dpkg.h \