diff options
author | Qyriad <qyriad@qyriad.me> | 2024-03-05 16:26:46 -0700 |
---|---|---|
committer | Qyriad <qyriad@qyriad.me> | 2024-03-11 04:26:35 -0600 |
commit | 4ad3446311de5fc7a1f254dcda7634126d87435c (patch) | |
tree | 10c0c8ce8dac0aef05cdf5079e14d34d57635faf | |
parent | 875b76d0c7ab596ad26830a80ab63dc2869e83db (diff) |
package: migrate testNixVersions
Change-Id: I71845f8a6d7b77c3617d055e726ed4a28cd05fa3
-rw-r--r-- | flake.nix | 51 | ||||
-rw-r--r-- | package.nix | 4 |
2 files changed, 22 insertions, 33 deletions
@@ -243,51 +243,40 @@ echo "file installer $out/install" >> $out/nix-support/hydra-build-products ''; - testNixVersions = pkgs: client: daemon: with commonDeps { inherit pkgs; }; with pkgs.lib; pkgs.stdenv.mkDerivation { - NIX_DAEMON_PACKAGE = daemon; - NIX_CLIENT_PACKAGE = client; - name = - "nix-tests" - + optionalString - (versionAtLeast daemon.version "2.4pre20211005" && - versionAtLeast client.version "2.4pre20211005") + testNixVersions = pkgs: client: daemon: let + nix = pkgs.callPackage ./package.nix { + pname = + "nix-tests" + + lib.optionalString + (lib.versionAtLeast daemon.version "2.4pre20211005" && + lib.versionAtLeast client.version "2.4pre20211005") "-${client.version}-against-${daemon.version}"; - inherit version; - - src = fileset.toSource { - root = ./.; - fileset = fileset.intersection baseFiles (fileset.unions [ - configureFiles - topLevelBuildFiles - functionalTestFiles - ]); - }; - - VERSION_SUFFIX = versionSuffix; - nativeBuildInputs = nativeBuildDeps; - buildInputs = buildDeps ++ awsDeps ++ checkDeps; - propagatedBuildInputs = propagatedDeps; - - enableParallelBuilding = true; + inherit fileset; + }; + in nix.overrideAttrs (prevAttrs: { + NIX_DAEMON_PACKAGE = daemon; + NIX_CLIENT_PACKAGE = client; - configureFlags = - testConfigureFlags # otherwise configure fails - ++ [ "--disable-build" ]; dontBuild = true; doInstallCheck = true; + configureFlags = prevAttrs.configureFlags ++ [ + # We don't need the actual build here. + "--disable-build" + ]; + installPhase = '' mkdir -p $out ''; - installCheckPhase = (optionalString pkgs.stdenv.hostPlatform.isDarwin '' + installCheckPhase = lib.optionalString pkgs.stdenv.hostPlatform.isDarwin '' export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES - '') + '' + '' + '' mkdir -p src/nix-channel make installcheck -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES ''; - }; + }); binaryTarball = nix: pkgs: let diff --git a/package.nix b/package.nix index f809ae67b..a6933b0ab 100644 --- a/package.nix +++ b/package.nix @@ -178,10 +178,10 @@ in stdenv.mkDerivation (finalAttrs: { mkdir -p $out/lib cp -pd ${boost}/lib/{libboost_context*,libboost_thread*,libboost_system*} $out/lib rm -f $out/lib/*.a - '' + lib.optionalString stdenv.hostPlatform.isLinux '' + '' + lib.optionalString (!finalAttrs.dontBuild && stdenv.hostPlatform.isLinux) '' chmod u+w $out/lib/*.so.* patchelf --set-rpath $out/lib:${stdenv.cc.cc.lib}/lib $out/lib/libboost_thread.so.* - '' + lib.optionalString stdenv.hostPlatform.isDarwin '' + '' + lib.optionalString (!finalAttrs.dontBuild && stdenv.hostPlatform.isDarwin) '' for LIB in $out/lib/*.dylib; do chmod u+w $LIB install_name_tool -id $LIB $LIB |