From b3d96378e1c6fb89d3dfd41b32f5f4ec9e4f424e Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Wed, 21 Aug 2024 22:10:12 +0800 Subject: [PATCH 01/11] molsketch: fix cmakeFlags for __structuredAttrs --- pkgs/applications/editors/molsketch/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/editors/molsketch/default.nix b/pkgs/applications/editors/molsketch/default.nix index abbedff17c16..dd3ee9bcdbb1 100644 --- a/pkgs/applications/editors/molsketch/default.nix +++ b/pkgs/applications/editors/molsketch/default.nix @@ -33,9 +33,9 @@ stdenv.mkDerivation rec { --replace "CXX_STANDARD 14" "CXX_STANDARD 17" ''; - preConfigure = '' - cmakeFlags="$cmakeFlags -DMSK_PREFIX=$out" - ''; + cmakeFlags = [ + "-DMSK_PREFIX=${placeholder "out"}" + ]; postFixup = '' ln -s $out/lib/molsketch/* $out/lib/. From f4c1b6f205aa4bff93199e283575d24158bb151b Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Wed, 21 Aug 2024 22:12:26 +0800 Subject: [PATCH 02/11] python3Packages.pymeshlab: fix cmakeFlags --- pkgs/applications/graphics/pymeshlab/default.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkgs/applications/graphics/pymeshlab/default.nix b/pkgs/applications/graphics/pymeshlab/default.nix index 255b14f09211..4a4653b45227 100644 --- a/pkgs/applications/graphics/pymeshlab/default.nix +++ b/pkgs/applications/graphics/pymeshlab/default.nix @@ -88,12 +88,10 @@ stdenv.mkDerivation (finalAttrs: { substituteInPlace src/meshlab/src/external/ssynth.cmake \ --replace-fail '$'{SSYNTH_LINK} ${structuresynth.src} \ --replace-warn "MD5 ''${SSYNTH_MD5}" "" - export cmakeFlags="cmakeFlags - -DCMAKE_INSTALL_PREFIX=$out/${python3Packages.python.sitePackages}/pymeshlab - " ''; cmakeFlags = [ + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}/${python3Packages.python.sitePackages}/pymeshlab" "-DVCGDIR=${vcg.src}" ]; From 1e8290ea5f4e9cfd6d4a6bbc427394e15a4e1f6d Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Wed, 21 Aug 2024 22:14:31 +0800 Subject: [PATCH 03/11] yarp: fix cmakeFlags for __structuredAttrs --- pkgs/applications/science/robotics/yarp/default.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkgs/applications/science/robotics/yarp/default.nix b/pkgs/applications/science/robotics/yarp/default.nix index 3b33096dc683..4f2e45384b76 100644 --- a/pkgs/applications/science/robotics/yarp/default.nix +++ b/pkgs/applications/science/robotics/yarp/default.nix @@ -18,11 +18,9 @@ stdenv.mkDerivation rec { "-DYARP_COMPILE_UNMAINTAINED:BOOL=ON" "-DCREATE_YARPC:BOOL=ON" "-DCREATE_YARPCXX:BOOL=ON" + "-DCMAKE_INSTALL_LIBDIR=${placeholder "out"}/lib" ]; - # since we cant expand $out in cmakeFlags - preConfigure = ''cmakeFlags="$cmakeFlags -DCMAKE_INSTALL_LIBDIR=$out/lib"''; - postInstall = "mv ./$out/lib/*.so $out/lib/"; meta = { From 8fa3649f99a3438d9236020fe761d22eae893d51 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Wed, 21 Aug 2024 22:15:25 +0800 Subject: [PATCH 04/11] aws-c-common: fix setup hook cmakeFlags for __structuredAttrs --- pkgs/development/libraries/aws-c-common/setup-hook.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/aws-c-common/setup-hook.sh b/pkgs/development/libraries/aws-c-common/setup-hook.sh index e670f7cf8529..174933621f00 100644 --- a/pkgs/development/libraries/aws-c-common/setup-hook.sh +++ b/pkgs/development/libraries/aws-c-common/setup-hook.sh @@ -1,5 +1,5 @@ addAwsCCommonModuleDir() { - cmakeFlags="-DCMAKE_MODULE_PATH=@out@/lib/cmake ${cmakeFlags:-}" + prependToVar cmakeFlags "-DCMAKE_MODULE_PATH=@out@/lib/cmake" } postHooks+=(addAwsCCommonModuleDir) From 8b93d36ef7a879368a6c64c5db090883ee3654f4 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Wed, 21 Aug 2024 22:18:25 +0800 Subject: [PATCH 05/11] openwsman: fix cmakeFlags for __structuredAttrs --- pkgs/development/libraries/openwsman/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/openwsman/default.nix b/pkgs/development/libraries/openwsman/default.nix index 4df98d28fd09..a12abd5db557 100644 --- a/pkgs/development/libraries/openwsman/default.nix +++ b/pkgs/development/libraries/openwsman/default.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { ]; preConfigure = '' - cmakeFlags="$cmakeFlags -DPACKAGE_ARCHITECTURE=$(uname -m)"; + appendToVar cmakeFlags "-DPACKAGE_ARCHITECTURE=$(uname -m)" ''; configureFlags = [ "--disable-more-warnings" ]; From 13d2eec8108c8854438ccdedfe0ddc486c2c70a8 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Wed, 21 Aug 2024 22:22:13 +0800 Subject: [PATCH 06/11] vigra: format with nixfmt-rfc-style --- pkgs/development/libraries/vigra/default.nix | 38 +++++++++++--------- 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/pkgs/development/libraries/vigra/default.nix b/pkgs/development/libraries/vigra/default.nix index 7db1d0d49195..100bdf2caa79 100644 --- a/pkgs/development/libraries/vigra/default.nix +++ b/pkgs/development/libraries/vigra/default.nix @@ -1,17 +1,18 @@ -{ lib -, stdenv -, fetchFromGitHub -, boost -, cmake -, fftw -, fftwSinglePrec -, hdf5 -, ilmbase -, libjpeg -, libpng -, libtiff -, openexr -, python3 +{ + lib, + stdenv, + fetchFromGitHub, + boost, + cmake, + fftw, + fftwSinglePrec, + hdf5, + ilmbase, + libjpeg, + libpng, + libtiff, + openexr, + python3, }: let @@ -46,9 +47,12 @@ stdenv.mkDerivation rec { preConfigure = "cmakeFlags+=\" -DVIGRANUMPY_INSTALL_DIR=$out/${python.sitePackages}\""; - cmakeFlags = [ "-DWITH_OPENEXR=1" ] - ++ lib.optionals (stdenv.hostPlatform.system == "x86_64-linux") - [ "-DCMAKE_CXX_FLAGS=-fPIC" "-DCMAKE_C_FLAGS=-fPIC" ]; + cmakeFlags = + [ "-DWITH_OPENEXR=1" ] + ++ lib.optionals (stdenv.hostPlatform.system == "x86_64-linux") [ + "-DCMAKE_CXX_FLAGS=-fPIC" + "-DCMAKE_C_FLAGS=-fPIC" + ]; meta = with lib; { description = "Novel computer vision C++ library with customizable algorithms and data structures"; From 80dd13fbc1681f84eb72910fb2897af071f06fcd Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Wed, 21 Aug 2024 22:22:58 +0800 Subject: [PATCH 07/11] vigra: fix cmakeFlags for __structuredAttrs --- pkgs/development/libraries/vigra/default.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/vigra/default.nix b/pkgs/development/libraries/vigra/default.nix index 100bdf2caa79..34bd608de8e2 100644 --- a/pkgs/development/libraries/vigra/default.nix +++ b/pkgs/development/libraries/vigra/default.nix @@ -45,10 +45,11 @@ stdenv.mkDerivation rec { python ]; - preConfigure = "cmakeFlags+=\" -DVIGRANUMPY_INSTALL_DIR=$out/${python.sitePackages}\""; - cmakeFlags = - [ "-DWITH_OPENEXR=1" ] + [ + "-DWITH_OPENEXR=1" + "-DVIGRANUMPY_INSTALL_DIR=${placeholder "out"}/${python.sitePackages}" + ] ++ lib.optionals (stdenv.hostPlatform.system == "x86_64-linux") [ "-DCMAKE_CXX_FLAGS=-fPIC" "-DCMAKE_C_FLAGS=-fPIC" From c0d35f87337d9bfb33af08d910fda5f4a564afa4 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Wed, 21 Aug 2024 22:28:48 +0800 Subject: [PATCH 08/11] python3Packages.hoomd-blue: fix cmakeFlags for __structuredAttrs --- pkgs/development/python-modules/hoomd-blue/default.nix | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/hoomd-blue/default.nix b/pkgs/development/python-modules/hoomd-blue/default.nix index e48cc94bccc4..248a2f8cb258 100644 --- a/pkgs/development/python-modules/hoomd-blue/default.nix +++ b/pkgs/development/python-modules/hoomd-blue/default.nix @@ -49,13 +49,9 @@ buildPythonPackage rec { "-DBUILD_HPMC=${onOffBool components.hpmc}" "-DBUILD_MD=${onOffBool components.md}" "-DBUILD_METAL=${onOffBool components.metal}" + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}/${python.sitePackages}" ]; - preConfigure = '' - # Since we can't expand $out in `cmakeFlags` - cmakeFlags="$cmakeFlags -DCMAKE_INSTALL_PREFIX=$out/${python.sitePackages}" - ''; - # tests fail but have tested that package runs properly doCheck = false; checkTarget = "test"; From 263be5c8519ba553abbe5e0bde08c4c772907793 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Wed, 21 Aug 2024 22:30:05 +0800 Subject: [PATCH 09/11] python3Packages.rdkit: fix cmakeFlags for __structuredAttrs --- pkgs/development/python-modules/rdkit/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/rdkit/default.nix b/pkgs/development/python-modules/rdkit/default.nix index 44096b6910c0..248f212f0abe 100644 --- a/pkgs/development/python-modules/rdkit/default.nix +++ b/pkgs/development/python-modules/rdkit/default.nix @@ -100,10 +100,10 @@ buildPythonPackage rec { preConfigure = '' # Since we can't expand with bash in cmakeFlags - cmakeFlags="$cmakeFlags -DPYTHON_NUMPY_INCLUDE_PATH=$(${python}/bin/python -c 'import numpy; print(numpy.get_include())')" - cmakeFlags="$cmakeFlags -DFREESASA_DIR=$PWD/External/FreeSASA/freesasa" - cmakeFlags="$cmakeFlags -DFREESASA_SRC_DIR=$PWD/External/FreeSASA/freesasa" - cmakeFlags="$cmakeFlags -DAVALONTOOLS_DIR=$PWD/External/AvalonTools/avalon" + appendToVar cmakeFlags "-DPYTHON_NUMPY_INCLUDE_PATH=$(${python}/bin/python -c 'import numpy; print(numpy.get_include())')" + appendToVar cmakeFlags "-DFREESASA_DIR=$PWD/External/FreeSASA/freesasa" + appendToVar cmakeFlags "-DFREESASA_SRC_DIR=$PWD/External/FreeSASA/freesasa" + appendToVar cmakeFlags "-DAVALONTOOLS_DIR=$PWD/External/AvalonTools/avalon" ''; cmakeFlags = [ From 2d66a0bf73a0dd3d54d2da4cc5a6c7fc5e703f55 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Wed, 21 Aug 2024 22:31:10 +0800 Subject: [PATCH 10/11] commandergenius: fix cmakeFlags and makeFlags for __structuredAttrs --- pkgs/games/commandergenius/default.nix | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pkgs/games/commandergenius/default.nix b/pkgs/games/commandergenius/default.nix index 568dcc7e51e1..d3549fd211f2 100644 --- a/pkgs/games/commandergenius/default.nix +++ b/pkgs/games/commandergenius/default.nix @@ -28,10 +28,14 @@ stdenv.mkDerivation rec { buildInputs = [ SDL2 SDL2_image SDL2_mixer SDL2_ttf libGL boost libvorbis zlib curl python3 ]; - preConfigure = '' - export cmakeFlags="$cmakeFlags -DCMAKE_INSTALL_PREFIX=$out -DSHAREDIR=$out/share" - export makeFlags="$makeFlags DESTDIR=$(out)" - ''; + cmakeFlags = [ + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" + "-DSHAREDIR=${placeholder "out"}/share" + ]; + + makeFlags = [ + "DESTDIR=${placeholder "out"}" + ]; nativeBuildInputs = [ cmake pkg-config ]; From e44a479b1a5c9865dbb6ed0c56440b61c3450724 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Wed, 21 Aug 2024 22:34:50 +0800 Subject: [PATCH 11/11] irods: fix cmakeFlags for __structuredAttrs --- pkgs/tools/filesystems/irods/common.nix | 8 +++----- pkgs/tools/filesystems/irods/default.nix | 11 ++++++----- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/pkgs/tools/filesystems/irods/common.nix b/pkgs/tools/filesystems/irods/common.nix index 33edc0e4a05b..c2e09220a957 100644 --- a/pkgs/tools/filesystems/irods/common.nix +++ b/pkgs/tools/filesystems/irods/common.nix @@ -27,15 +27,13 @@ "-DCPACK_GENERATOR=TGZ" "-DCMAKE_CXX_FLAGS=-I${lib.getDev libcxx}/include/c++/v1" "-DPAM_LIBRARY=${pam}/lib/libpam.so" + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" + "-DIRODS_HOME_DIRECTORY=${placeholder "out"}" + "-DCMAKE_INSTALL_SBINDIR=${placeholder "out"}/sbin" ]; postPatch = '' patchShebangs ./packaging ./scripts - export cmakeFlags="$cmakeFlags - -DCMAKE_INSTALL_PREFIX=$out - -DIRODS_HOME_DIRECTORY=$out - -DCMAKE_INSTALL_SBINDIR=$out/sbin - " ''; meta = with lib; { diff --git a/pkgs/tools/filesystems/irods/default.nix b/pkgs/tools/filesystems/irods/default.nix index 5db0ed453eab..beddb6959ba4 100644 --- a/pkgs/tools/filesystems/irods/default.nix +++ b/pkgs/tools/filesystems/irods/default.nix @@ -32,6 +32,12 @@ rec { # fix build with recent llvm versions env.NIX_CFLAGS_COMPILE = "-Wno-deprecated-register -Wno-deprecated-declarations"; + cmakeFlags = common.cmakeFlags or [ ] ++ [ + "-DCMAKE_EXE_LINKER_FLAGS=-Wl,-rpath,${placeholder "out"}/lib" + "-DCMAKE_MODULE_LINKER_FLAGS=-Wl,-rpath,${placeholder "out"}/lib" + "-DCMAKE_SHARED_LINKER_FLAGS=-Wl,-rpath,${placeholder "out"}/lib" + ]; + postPatch = common.postPatch + '' patchShebangs ./test substituteInPlace plugins/database/CMakeLists.txt --replace-fail "COMMAND cpp" "COMMAND ${gcc.cc}/bin/cpp" @@ -39,11 +45,6 @@ rec { do substituteInPlace $file --replace-quiet "CATCH2}/include" "CATCH2}/include/catch2" done - export cmakeFlags="$cmakeFlags - -DCMAKE_EXE_LINKER_FLAGS=-Wl,-rpath,$out/lib - -DCMAKE_MODULE_LINKER_FLAGS=-Wl,-rpath,$out/lib - -DCMAKE_SHARED_LINKER_FLAGS=-Wl,-rpath,$out/lib - " substituteInPlace server/auth/CMakeLists.txt --replace-fail SETUID "" '';