1
1
Fork 0
mirror of https://github.com/NixOS/nix.git synced 2025-11-15 15:02:42 +01:00

Build tarball per system

This catches any build failures that otherwise users might encounter.

For example libseccomp package doesn't build on darwin.
This commit is contained in:
Domen Kožar 2017-07-12 16:31:31 +02:00
parent 1888f7889b
commit 555f283064
No known key found for this signature in database
GPG key ID: C2FFBCAFD2C24246

View file

@ -13,8 +13,8 @@ let
jobs = rec { jobs = rec {
tarball = tarball = pkgs.lib.genAttrs systems (system:
with pkgs; with import <nixpkgs> { inherit system; };
releaseTools.sourceTarball { releaseTools.sourceTarball {
name = "nix-tarball"; name = "nix-tarball";
@ -30,8 +30,7 @@ let
docbook5 docbook5_xsl docbook5 docbook5_xsl
autoconf-archive autoconf-archive
git git
libseccomp ] ++ lib.optional stdenv.isLinux libseccomp;
];
configureFlags = "--enable-gc"; configureFlags = "--enable-gc";
@ -60,7 +59,8 @@ let
make install docdir=$out/share/doc/nix makefiles=doc/manual/local.mk make install docdir=$out/share/doc/nix makefiles=doc/manual/local.mk
echo "doc manual $out/share/doc/nix/manual" >> $out/nix-support/hydra-build-products echo "doc manual $out/share/doc/nix/manual" >> $out/nix-support/hydra-build-products
''; '';
}; }
);
build = pkgs.lib.genAttrs systems (system: build = pkgs.lib.genAttrs systems (system:
@ -71,7 +71,7 @@ let
releaseTools.nixBuild { releaseTools.nixBuild {
name = "nix"; name = "nix";
src = tarball; src = tarball.${system};
buildInputs = buildInputs =
[ curl [ curl
@ -109,7 +109,7 @@ let
releaseTools.nixBuild { releaseTools.nixBuild {
name = "nix-perl"; name = "nix-perl";
src = tarball; src = tarball.${system};
buildInputs = buildInputs =
[ (builtins.getAttr system jobs.build) curl bzip2 xz pkgconfig pkgs.perl ] [ (builtins.getAttr system jobs.build) curl bzip2 xz pkgconfig pkgs.perl ]
@ -170,7 +170,7 @@ let
releaseTools.coverageAnalysis { releaseTools.coverageAnalysis {
name = "nix-build"; name = "nix-build";
src = tarball; src = tarball.${system};
buildInputs = buildInputs =
[ curl bzip2 openssl pkgconfig sqlite xz libsodium libseccomp [ curl bzip2 openssl pkgconfig sqlite xz libsodium libseccomp
@ -265,7 +265,7 @@ let
# Aggregate job containing the release-critical jobs. # Aggregate job containing the release-critical jobs.
release = pkgs.releaseTools.aggregate { release = pkgs.releaseTools.aggregate {
name = "nix-${tarball.version}"; name = "nix-${tarball."x86_64-linux".version}";
meta.description = "Release-critical builds"; meta.description = "Release-critical builds";
constituents = constituents =
[ tarball [ tarball
@ -302,7 +302,7 @@ let
releaseTools.rpmBuild rec { releaseTools.rpmBuild rec {
name = "nix-rpm"; name = "nix-rpm";
src = jobs.tarball; src = jobs.tarball.${system};
diskImage = (diskImageFun vmTools.diskImageFuns) diskImage = (diskImageFun vmTools.diskImageFuns)
{ extraPackages = { extraPackages =
[ "sqlite" "sqlite-devel" "bzip2-devel" "emacs" "libcurl-devel" "openssl-devel" "xz-devel" "libseccomp-devel" ] [ "sqlite" "sqlite-devel" "bzip2-devel" "emacs" "libcurl-devel" "openssl-devel" "xz-devel" "libseccomp-devel" ]
@ -324,7 +324,7 @@ let
releaseTools.debBuild { releaseTools.debBuild {
name = "nix-deb"; name = "nix-deb";
src = jobs.tarball; src = jobs.tarball.${system};
diskImage = (diskImageFun vmTools.diskImageFuns) diskImage = (diskImageFun vmTools.diskImageFuns)
{ extraPackages = { extraPackages =
[ "libsqlite3-dev" "libbz2-dev" "libcurl-dev" "libcurl3-nss" "libssl-dev" "liblzma-dev" "libseccomp-dev" ] [ "libsqlite3-dev" "libbz2-dev" "libcurl-dev" "libcurl3-nss" "libssl-dev" "liblzma-dev" "libseccomp-dev" ]