53 lines
1.3 KiB
Nix
53 lines
1.3 KiB
Nix
|
|
{
|
||
|
|
lib,
|
||
|
|
stdenv,
|
||
|
|
substitute,
|
||
|
|
fetchurl,
|
||
|
|
}:
|
||
|
|
|
||
|
|
stdenv.mkDerivation {
|
||
|
|
pname = "libamplsolver";
|
||
|
|
version = "20211109";
|
||
|
|
|
||
|
|
src = fetchurl {
|
||
|
|
url = "https://ampl.com/netlib/ampl/solvers.tgz";
|
||
|
|
sha256 = "sha256-LVmScuIvxmZzywPSBl9T9YcUBJP7UFAa3eWs9r4q3JM=";
|
||
|
|
};
|
||
|
|
|
||
|
|
patches = [
|
||
|
|
(substitute {
|
||
|
|
src = ./libamplsolver-sharedlib.patch;
|
||
|
|
substitutions = [
|
||
|
|
"--replace"
|
||
|
|
"@sharedlibext@"
|
||
|
|
"${stdenv.hostPlatform.extensions.sharedLibrary}"
|
||
|
|
];
|
||
|
|
})
|
||
|
|
];
|
||
|
|
|
||
|
|
installPhase = ''
|
||
|
|
runHook preInstall
|
||
|
|
pushd sys.$(uname -m).$(uname -s)
|
||
|
|
install -D -m 0644 *.h -t $out/include
|
||
|
|
install -D -m 0644 *${stdenv.hostPlatform.extensions.sharedLibrary}* -t $out/lib
|
||
|
|
install -D -m 0644 *.a -t $out/lib
|
||
|
|
popd
|
||
|
|
''
|
||
|
|
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||
|
|
install_name_tool -id $out/lib/libamplsolver.dylib $out/lib/libamplsolver.dylib
|
||
|
|
''
|
||
|
|
+ ''
|
||
|
|
runHook postInstall
|
||
|
|
'';
|
||
|
|
|
||
|
|
meta = with lib; {
|
||
|
|
description = "Library of routines that help solvers work with AMPL";
|
||
|
|
homepage = "https://ampl.com/netlib/ampl/";
|
||
|
|
license = [ licenses.mit ];
|
||
|
|
platforms = platforms.unix;
|
||
|
|
maintainers = with maintainers; [ aanderse ];
|
||
|
|
# generates header at compile time
|
||
|
|
broken = !stdenv.buildPlatform.canExecute stdenv.hostPlatform;
|
||
|
|
};
|
||
|
|
}
|