diff options
author | Alyssa Ross <hi@alyssa.is> | 2019-01-07 02:18:36 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2019-01-07 02:18:47 +0000 |
commit | 36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2 (patch) | |
tree | b3faaf573407b32aa645237a4d16b82778a39a92 /nixpkgs/pkgs/development/libraries/eigen | |
parent | 4e31070265257dc67d120c27e0f75c2344fdfa9a (diff) | |
parent | abf060725d7614bd3b9f96764262dfbc2f9c2199 (diff) | |
download | nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.gz nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.bz2 nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.lz nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.xz nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.zst nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.zip |
Add 'nixpkgs/' from commit 'abf060725d7614bd3b9f96764262dfbc2f9c2199'
git-subtree-dir: nixpkgs git-subtree-mainline: 4e31070265257dc67d120c27e0f75c2344fdfa9a git-subtree-split: abf060725d7614bd3b9f96764262dfbc2f9c2199
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/eigen')
4 files changed, 107 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/eigen/2.0.nix b/nixpkgs/pkgs/development/libraries/eigen/2.0.nix new file mode 100644 index 000000000000..015aeaed55ba --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/eigen/2.0.nix @@ -0,0 +1,25 @@ +{stdenv, fetchurl, cmake}: + +let + v = "2.0.17"; +in +stdenv.mkDerivation { + name = "eigen-${v}"; + + src = fetchurl { + url = "https://bitbucket.org/eigen/eigen/get/${v}.tar.bz2"; + name = "eigen-${v}.tar.bz2"; + sha256 = "0q4ry2pmdb9lvm0g92wi6s6qng3m9q73n5flwbkfcz1nxmbfhmbj"; + }; + + nativeBuildInputs = [ cmake ]; + + meta = with stdenv.lib; { + description = "C++ template library for linear algebra: vectors, matrices, and related algorithms"; + license = licenses.lgpl3Plus; + homepage = http://eigen.tuxfamily.org ; + maintainers = with stdenv.lib.maintainers; [ sander raskin ]; + branch = "2"; + platforms = with stdenv.lib.platforms; unix; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/eigen/default.nix b/nixpkgs/pkgs/development/libraries/eigen/default.nix new file mode 100644 index 000000000000..c48f8e4c9732 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/eigen/default.nix @@ -0,0 +1,29 @@ +{stdenv, fetchurl, fetchpatch, cmake}: + +let + version = "3.3.5"; +in +stdenv.mkDerivation { + name = "eigen-${version}"; + + src = fetchurl { + url = "https://bitbucket.org/eigen/eigen/get/${version}.tar.gz"; + name = "eigen-${version}.tar.gz"; + sha256 = "13p60x6k61zq2y2in7g4fy5p55cr5dbmj3zvw10zcazxraxbcm04"; + }; + + patches = [ + ./include-dir.patch + ]; + + nativeBuildInputs = [ cmake ]; + + meta = with stdenv.lib; { + description = "C++ template library for linear algebra: vectors, matrices, and related algorithms"; + license = licenses.lgpl3Plus; + homepage = http://eigen.tuxfamily.org ; + platforms = platforms.unix; + maintainers = with stdenv.lib.maintainers; [ sander raskin ]; + inherit version; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/eigen/default.upstream b/nixpkgs/pkgs/development/libraries/eigen/default.upstream new file mode 100644 index 000000000000..c0c05efc466c --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/eigen/default.upstream @@ -0,0 +1,4 @@ +url http://eigen.tuxfamily.org/ +ensure_choice +version '.*/([-0-9.]+)[.]tar[.].*' '\1' +do_overwrite() { do_overwrite_just_version; } diff --git a/nixpkgs/pkgs/development/libraries/eigen/include-dir.patch b/nixpkgs/pkgs/development/libraries/eigen/include-dir.patch new file mode 100644 index 000000000000..7f3bd88557ec --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/eigen/include-dir.patch @@ -0,0 +1,49 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,6 +1,6 @@ + project(Eigen3) + +-cmake_minimum_required(VERSION 2.8.5) ++cmake_minimum_required(VERSION 3.7) + + # guard against in-source builds + +@@ -408,13 +408,6 @@ install(FILES + DESTINATION ${INCLUDE_INSTALL_DIR} COMPONENT Devel + ) + +-if(EIGEN_BUILD_PKGCONFIG) +- configure_file(eigen3.pc.in eigen3.pc @ONLY) +- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/eigen3.pc +- DESTINATION ${PKGCONFIG_INSTALL_DIR} +- ) +-endif() +- + add_subdirectory(Eigen) + + add_subdirectory(doc EXCLUDE_FROM_ALL) +@@ -510,8 +503,15 @@ set ( EIGEN_VERSION_MAJOR ${EIGEN_WORLD_VERSION} ) + set ( EIGEN_VERSION_MINOR ${EIGEN_MAJOR_VERSION} ) + set ( EIGEN_VERSION_PATCH ${EIGEN_MINOR_VERSION} ) + set ( EIGEN_DEFINITIONS "") +-set ( EIGEN_INCLUDE_DIR "${CMAKE_INSTALL_PREFIX}/${INCLUDE_INSTALL_DIR}" ) + set ( EIGEN_ROOT_DIR ${CMAKE_INSTALL_PREFIX} ) ++GNUInstallDirs_get_absolute_install_dir(EIGEN_INCLUDE_DIR INCLUDE_INSTALL_DIR) ++ ++if(EIGEN_BUILD_PKGCONFIG) ++ configure_file(eigen3.pc.in eigen3.pc @ONLY) ++ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/eigen3.pc ++ DESTINATION ${PKGCONFIG_INSTALL_DIR} ++ ) ++endif() + + # Interface libraries require at least CMake 3.0 + if (NOT CMAKE_VERSION VERSION_LESS 3.0) +--- a/eigen3.pc.in ++++ b/eigen3.pc.in +@@ -6,4 +6,4 @@ Description: A C++ template library for linear algebra: vectors, matrices, and r + Requires: + Version: @EIGEN_VERSION_NUMBER@ + Libs: +-Cflags: -I${prefix}/@INCLUDE_INSTALL_DIR@ ++Cflags: -I@EIGEN_INCLUDE_DIR@ |