simple-dftd3: add option to build with cmake in addition to meson

This commit is contained in:
Phillip Seeber
2025-08-25 12:32:47 +02:00
parent 7834ece92e
commit 9eeef143e2
2 changed files with 34 additions and 2 deletions
@@ -0,0 +1,13 @@
diff --git a/config/template.pc b/config/template.pc
index 3d6efbb..e338a42 100644
--- a/config/template.pc
+++ b/config/template.pc
@@ -1,6 +1,6 @@
prefix=@CMAKE_INSTALL_PREFIX@
-libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
-includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
+libdir=@CMAKE_INSTALL_FULL_LIBDIR@
+includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
Name: @PROJECT_NAME@
Description: @PROJECT_DESCRIPTION@
@@ -5,14 +5,22 @@
gfortran,
meson,
ninja,
cmake,
pkg-config,
mctc-lib,
mstore,
toml-f,
blas,
buildType ? "meson",
}:
assert !blas.isILP64;
assert (
builtins.elem buildType [
"meson"
"cmake"
]
);
stdenv.mkDerivation rec {
pname = "simple-dftd3";
@@ -25,12 +33,19 @@ stdenv.mkDerivation rec {
hash = "sha256-c4xctcMcPQ70ippqbwtinygmnZ5en6ZGF5/v0ZWtzys=";
};
patches = [
./cmake.patch
];
nativeBuildInputs = [
gfortran
pkg-config
]
++ lib.optionals (buildType == "meson") [
meson
ninja
pkg-config
];
]
++ lib.optional (buildType == "cmake") cmake;
buildInputs = [
mctc-lib
@@ -44,6 +59,10 @@ stdenv.mkDerivation rec {
"dev"
];
cmakeFlags = [
(lib.strings.cmakeBool "BUILD_SHARED_LIBS" (!stdenv.hostPlatform.isStatic))
];
doCheck = true;
preCheck = ''
export OMP_NUM_THREADS=2