tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
febio: init at 3.5.1
Scriptkiddi
4 years ago
e1edefa1
e2762830
+83
3 changed files
expand all
collapse all
unified
split
pkgs
development
libraries
febio
default.nix
fix-cmake.patch
top-level
all-packages.nix
+55
pkgs/development/libraries/febio/default.nix
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
{ lib, stdenv, fetchFromGitHub, cmake, boost, eigen, libxml2, mpi, python3
2
+
, mklSupport ? true, mkl
3
+
}:
4
+
5
+
stdenv.mkDerivation rec {
6
+
pname = "FEBio";
7
+
version = "3.6";
8
+
9
+
src = fetchFromGitHub {
10
+
owner = "febiosoftware";
11
+
repo = pname;
12
+
rev = "v${version}";
13
+
sha256 = "187s4lyzr806xla3smq3lsvj3f6wxlhfkban89w0fnyfmfb8w9am";
14
+
};
15
+
16
+
patches = [
17
+
./fix-cmake.patch # cannot find mkl libraries without this
18
+
];
19
+
20
+
cmakeFlags = lib.optional mklSupport "-DUSE_MKL=On"
21
+
++ lib.optional mklSupport "-DMKLROOT=${mkl}"
22
+
;
23
+
24
+
installPhase = ''
25
+
runHook preInstall
26
+
27
+
mkdir -p $out/include
28
+
cp -R lib bin $out/
29
+
cp -R ../FECore \
30
+
../FEBioFluid \
31
+
../FEBioLib \
32
+
../FEBioMech \
33
+
../FEBioMix \
34
+
../FEBioOpt \
35
+
../FEBioPlot \
36
+
../FEBioXML \
37
+
../NumCore \
38
+
$out/include
39
+
40
+
runHook postInstall
41
+
'';
42
+
43
+
nativeBuildInputs = [ cmake ];
44
+
buildInputs = [ boost eigen libxml2 mpi python3 python3.pkgs.numpy ]
45
+
++ lib.optional mklSupport mkl
46
+
;
47
+
48
+
meta = {
49
+
description = "FEBio Suite Solver";
50
+
license = with lib.licenses; [ mit ];
51
+
homepage = "https://febio.org/";
52
+
platforms = lib.platforms.unix;
53
+
maintainers = with lib.maintainers; [ Scriptkiddi ];
54
+
};
55
+
}
+26
pkgs/development/libraries/febio/fix-cmake.patch
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
--- a/CMakeLists.txt
2
+
+++ b/CMakeLists.txt
3
+
@@ -47,7 +47,7 @@ function(findLib libName libDir libOut)
4
+
find_library(TEMP NAMES ${libName}.lib ${ARGV3}.lib ${ARGV4}.lib ${ARGV5}.lib ${ARGV6}.lib
5
+
PATHS ${${libDir}} NO_DEFAULT_PATH)
6
+
else()
7
+
- find_library(TEMP NAMES lib${libName}.a lib${ARGV3}.a lib${ARGV4}.a lib${ARGV5}.a lib${ARGV6}.a
8
+
+ find_library(TEMP NAMES lib${libName}.a lib${ARGV3}.a lib${ARGV4}.a lib${ARGV5}.a lib${ARGV6}.a lib${libName}.so lib${ARGV3}.so lib${ARGV4}.so lib${ARGV5}.so lib${ARGV6}.so
9
+
PATHS ${${libDir}} NO_DEFAULT_PATH)
10
+
endif()
11
+
12
+
diff --git a/FindDependencies.cmake b/FindDependencies.cmake
13
+
index 2d644005f..7261ba923 100644
14
+
--- a/FindDependencies.cmake
15
+
+++ b/FindDependencies.cmake
16
+
@@ -46,8 +46,8 @@ if(MKLROOT)
17
+
NO_DEFAULT_PATH)
18
+
19
+
find_library(MKL_OMP_LIB
20
+
- NAMES iomp5 iomp5md libiomp5md.lib
21
+
- PATHS ${MKLROOT}/../lib ${MKLROOT}/../compiler/lib
22
+
+ NAMES libiomp5.so libiomp5 iomp5 iomp5md libiomp5md.lib
23
+
+ PATHS ${MKLROOT}/lib ${MKLROOT}/../lib ${MKLROOT}/../compiler/lib
24
+
PATH_SUFFIXES "intel64" "intel32"
25
+
NO_DEFAULT_PATH
26
+
DOC "MKL OMP Library")
+2
pkgs/top-level/all-packages.nix
···
16523
16524
fcl = callPackage ../development/libraries/fcl { };
16525
0
0
16526
ffcast = callPackage ../tools/X11/ffcast { };
16527
16528
fflas-ffpack = callPackage ../development/libraries/fflas-ffpack { };
···
16523
16524
fcl = callPackage ../development/libraries/fcl { };
16525
16526
+
febio = callPackage ../development/libraries/febio { };
16527
+
16528
ffcast = callPackage ../tools/X11/ffcast { };
16529
16530
fflas-ffpack = callPackage ../development/libraries/fflas-ffpack { };