diff options
author | Alyssa Ross <hi@alyssa.is> | 2023-06-16 06:56:35 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2023-06-16 06:56:35 +0000 |
commit | 99fcaeccb89621dd492203ce1f2d551c06f228ed (patch) | |
tree | 41cb730ae07383004789779b0f6e11cb3f4642a3 /nixpkgs/pkgs/development/libraries/libsvm | |
parent | 59c5f5ac8682acc13bb22bc29c7cf02f7d75f01f (diff) | |
parent | 75a5ebf473cd60148ba9aec0d219f72e5cf52519 (diff) | |
download | nixlib-99fcaeccb89621dd492203ce1f2d551c06f228ed.tar nixlib-99fcaeccb89621dd492203ce1f2d551c06f228ed.tar.gz nixlib-99fcaeccb89621dd492203ce1f2d551c06f228ed.tar.bz2 nixlib-99fcaeccb89621dd492203ce1f2d551c06f228ed.tar.lz nixlib-99fcaeccb89621dd492203ce1f2d551c06f228ed.tar.xz nixlib-99fcaeccb89621dd492203ce1f2d551c06f228ed.tar.zst nixlib-99fcaeccb89621dd492203ce1f2d551c06f228ed.zip |
Merge branch 'nixos-unstable' of https://github.com/NixOS/nixpkgs
Conflicts: nixpkgs/nixos/modules/config/console.nix nixpkgs/nixos/modules/services/mail/mailman.nix nixpkgs/nixos/modules/services/mail/public-inbox.nix nixpkgs/nixos/modules/services/mail/rss2email.nix nixpkgs/nixos/modules/services/networking/ssh/sshd.nix nixpkgs/pkgs/applications/networking/instant-messengers/dino/default.nix nixpkgs/pkgs/applications/networking/irc/weechat/default.nix nixpkgs/pkgs/applications/window-managers/sway/default.nix nixpkgs/pkgs/build-support/go/module.nix nixpkgs/pkgs/build-support/rust/build-rust-package/default.nix nixpkgs/pkgs/development/interpreters/python/default.nix nixpkgs/pkgs/development/node-packages/overrides.nix nixpkgs/pkgs/development/tools/b4/default.nix nixpkgs/pkgs/servers/dict/dictd-db.nix nixpkgs/pkgs/servers/mail/public-inbox/default.nix nixpkgs/pkgs/tools/security/pinentry/default.nix nixpkgs/pkgs/tools/text/unoconv/default.nix nixpkgs/pkgs/top-level/all-packages.nix
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libsvm')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libsvm/default.nix | 62 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libsvm/openmp.patch | 13 |
2 files changed, 52 insertions, 23 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libsvm/default.nix b/nixpkgs/pkgs/development/libraries/libsvm/default.nix index fbc9bc4d3314..4274ad047910 100644 --- a/nixpkgs/pkgs/development/libraries/libsvm/default.nix +++ b/nixpkgs/pkgs/development/libraries/libsvm/default.nix @@ -1,39 +1,55 @@ -{lib, stdenv, fetchurl}: +{ lib +, stdenv +, fetchurl +, fixDarwinDylibNames +, llvmPackages +, withOpenMP ? true +}: stdenv.mkDerivation rec { pname = "libsvm"; - version = "3.25"; + version = "3.31"; src = fetchurl { url = "https://www.csie.ntu.edu.tw/~cjlin/libsvm/libsvm-${version}.tar.gz"; - sha256 = "sha256-UjUOiqdAsXbh13Pp3AjxNAIYw34BvsN6uQ2wEn5LteU="; + sha256 = "sha256-AKtWH0jfX8kqhCCa2P5Rmery5Rmzwnm6z8k1l4p1zx8="; }; - buildPhase = '' - make - make lib - ''; - - installPhase = let - libSuff = stdenv.hostPlatform.extensions.sharedLibrary; - in '' - install -D libsvm.so.2 $out/lib/libsvm.2${libSuff} - ln -s $out/lib/libsvm.2${libSuff} $out/lib/libsvm${libSuff} - install -Dt $out/bin/ svm-scale svm-train svm-predict - install -Dm644 -t $out/include svm.h - mkdir $out/include/libsvm - ln -s $out/include/svm.h $out/include/libsvm/svm.h - ''; - - postFixup = lib.optionalString stdenv.isDarwin '' - install_name_tool -id libsvm.2.dylib $out/lib/libsvm.2.dylib; - ''; + patches = lib.optionals withOpenMP [ ./openmp.patch ]; + + buildInputs = lib.optionals (stdenv.cc.isClang && withOpenMP) [ llvmPackages.openmp ]; + + buildFlags = [ "lib" "all" ]; + + outputs = [ "out" "bin" "dev" ]; + + nativeBuildInputs = lib.optionals stdenv.isDarwin [ fixDarwinDylibNames ]; + + installPhase = + let + libSuff = stdenv.hostPlatform.extensions.sharedLibrary; + soVersion = "3"; + in + '' + runHook preInstall + + install -D libsvm.so.${soVersion} $out/lib/libsvm.${soVersion}${libSuff} + ln -s $out/lib/libsvm.${soVersion}${libSuff} $out/lib/libsvm${libSuff} + + install -Dt $bin/bin/ svm-scale svm-train svm-predict + + install -Dm644 -t $dev/include svm.h + mkdir $dev/include/libsvm + ln -s $dev/include/svm.h $dev/include/libsvm/svm.h + + runHook postInstall + ''; meta = with lib; { description = "A library for support vector machines"; homepage = "https://www.csie.ntu.edu.tw/~cjlin/libsvm/"; license = licenses.bsd3; - maintainers = [ maintainers.spwhitt ]; + maintainers = [ ]; platforms = platforms.unix; }; } diff --git a/nixpkgs/pkgs/development/libraries/libsvm/openmp.patch b/nixpkgs/pkgs/development/libraries/libsvm/openmp.patch new file mode 100644 index 000000000000..b48fbae1f43f --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libsvm/openmp.patch @@ -0,0 +1,13 @@ +--- /Makefile 1970-01-01 01:00:01.000000000 +0100 ++++ /Makefile 1970-01-01 01:00:01.000000000 +0100 +@@ -9,8 +9,8 @@ + endif + + # Uncomment the following lines to enable parallelization with OpenMP +-# CFLAGS += -fopenmp +-# SHARED_LIB_FLAG += -fopenmp ++CFLAGS += -fopenmp ++SHARED_LIB_FLAG += -fopenmp + + all: svm-train svm-predict svm-scale + |