diff options
Diffstat (limited to 'sci-libs')
1322 files changed, 60744 insertions, 0 deletions
diff --git a/sci-libs/Fiona/Fiona-1.5.1.ebuild b/sci-libs/Fiona/Fiona-1.5.1.ebuild new file mode 100644 index 000000000000..756a8aaa0c5c --- /dev/null +++ b/sci-libs/Fiona/Fiona-1.5.1.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +PYTHON_COMPAT=( python2_7 python3_{3,4} ) + +inherit distutils-r1 + +DESCRIPTION="OGR's neat, nimble, no-nonsense API" +HOMEPAGE="https://pypi.python.org/pypi/Fiona" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="test" + +RDEPEND=" + >=sci-libs/gdal-1.8 + dev-python/click[${PYTHON_USEDEP}]" +DEPEND="${RDEPEND} + dev-python/setuptools[${PYTHON_USEDEP}] + dev-python/six[${PYTHON_USEDEP}] + test? ( + dev-python/nose[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + )" + +PATCHES=( "${FILESDIR}"/scriptname.patch ) + +python_test() { + esetup.py test +} diff --git a/sci-libs/Fiona/Fiona-9999.ebuild b/sci-libs/Fiona/Fiona-9999.ebuild new file mode 100644 index 000000000000..ee2ff80c4e48 --- /dev/null +++ b/sci-libs/Fiona/Fiona-9999.ebuild @@ -0,0 +1,36 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +PYTHON_COMPAT=( python2_7 python3_{3,4} ) + +inherit distutils-r1 git-r3 + +DESCRIPTION="OGR's neat, nimble, no-nonsense API" +HOMEPAGE="https://pypi.python.org/pypi/Fiona" +SRC_URI="" +EGIT_REPO_URI="http://github.com/Toblerity/${PN}.git" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="" +IUSE="test" + +RDEPEND=" + >=sci-libs/gdal-1.8 + dev-python/click[${PYTHON_USEDEP}]" +DEPEND="${RDEPEND} + dev-python/setuptools[${PYTHON_USEDEP}] + dev-python/six[${PYTHON_USEDEP}] + test? ( + dev-python/nose[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + )" + +PATCHES=( "${FILESDIR}"/scriptname.patch ) + +python_test() { + esetup.py test +} diff --git a/sci-libs/Fiona/Manifest b/sci-libs/Fiona/Manifest new file mode 100644 index 000000000000..aaea88699c76 --- /dev/null +++ b/sci-libs/Fiona/Manifest @@ -0,0 +1 @@ +DIST Fiona-1.5.1.tar.gz 1117361 SHA256 2e2469190107dc671b4aa05d5b8bed5c01ffeb9de79525c91129bad76915e095 SHA512 06a2f091138b455355aa24bdd3cace48a3ccbbcb8b680f8009862a9ef3bdc217b68ba4596c51caaa9d09d2fad606a581d50f2fc9f2d0636bfec459e2022546a7 WHIRLPOOL 47d274f1755aa875273f1c8b4ce8949fe9a22b237fff90bdf71aa3ff7a6a4a18ff9016ebe3cdf8b323a2d67fa45b6cb8c8e8bfc20c2c57e01df0aa7cf8733330 diff --git a/sci-libs/Fiona/files/scriptname.patch b/sci-libs/Fiona/files/scriptname.patch new file mode 100644 index 000000000000..227e644f0759 --- /dev/null +++ b/sci-libs/Fiona/files/scriptname.patch @@ -0,0 +1,11 @@ +--- setup.py.orig 2015-03-27 21:34:22.790592037 +0100 ++++ setup.py 2015-03-27 21:34:54.247259049 +0100 +@@ -150,7 +150,7 @@ + packages=['fiona', 'fiona.fio'], + entry_points=''' + [console_scripts] +- fio=fiona.fio.fio:cli ++ Fiona=fiona.fio.fio:cli + ''', + install_requires=requirements, + tests_require=['nose'], diff --git a/sci-libs/Fiona/metadata.xml b/sci-libs/Fiona/metadata.xml new file mode 100644 index 000000000000..027d25f6a2b4 --- /dev/null +++ b/sci-libs/Fiona/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>slis@gentoo.org</email> + </maintainer> + <upstream> + <remote-id type="pypi">Fiona</remote-id> + </upstream> +</pkgmetadata> diff --git a/sci-libs/Rtree/Manifest b/sci-libs/Rtree/Manifest new file mode 100644 index 000000000000..23b42c9017d2 --- /dev/null +++ b/sci-libs/Rtree/Manifest @@ -0,0 +1 @@ +DIST Rtree-0.8.2.tar.gz 55813 SHA256 064ecd9791fe170a8492f4ae75b0cbe8e62b5392f136a159a24d1b70c86d3c3f SHA512 c0c1091c21e92022540a0aed09c00f3b2b6abb2869757e0cb7a68a120e3a289f275cea824a72172ea5b327696a67024894f5f01354f0cd5ec5b05d9b3ec130e0 WHIRLPOOL 3167258f8a1480b2af65ebe6b6070870f6ad8dd2c5045285cb4babdff64a0bd85a4c434bf9b2a7908e211ec16be268482eacf2de8390afb27f06e8084c7b8db4 diff --git a/sci-libs/Rtree/Rtree-0.8.2.ebuild b/sci-libs/Rtree/Rtree-0.8.2.ebuild new file mode 100644 index 000000000000..f15d40e7e25f --- /dev/null +++ b/sci-libs/Rtree/Rtree-0.8.2.ebuild @@ -0,0 +1,21 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" +PYTHON_COMPAT=( python2_7 ) + +inherit distutils-r1 + +DESCRIPTION="R-Tree spatial index for Python GIS" +HOMEPAGE="https://pypi.python.org/pypi/Rtree" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="LGPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +RDEPEND="sci-libs/libspatialindex + sci-libs/scipy" +DEPEND="dev-python/setuptools" diff --git a/sci-libs/Rtree/metadata.xml b/sci-libs/Rtree/metadata.xml new file mode 100644 index 000000000000..1d955686c636 --- /dev/null +++ b/sci-libs/Rtree/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>slis@gentoo.org</email> + </maintainer> + <upstream> + <remote-id type="pypi">Rtree</remote-id> + </upstream> +</pkgmetadata> diff --git a/sci-libs/Shapely/Manifest b/sci-libs/Shapely/Manifest new file mode 100644 index 000000000000..6d0ebde8b8d9 --- /dev/null +++ b/sci-libs/Shapely/Manifest @@ -0,0 +1,2 @@ +DIST Shapely-1.3.0.tar.gz 118863 SHA256 297df004aec27e38ed93987e93ff5f8187cd0299394fe8b0b9028566015a9bb5 SHA512 106f9773a5b00e7269a84c760f3a2b867c48139c48eebeecd524c8216d75c28daaf46eff45c118c1809999e33a317e9aca278a8d83605dc7273877a7ed3edd82 WHIRLPOOL ddf42cab233b0950a4a955070c5a2a7791a7f259ba857778689944c7799484f7c1aa710926c37c8c66deaae5ab4f03d79fa2f407e8e6d05238217b529e7b1b15 +DIST Shapely-1.3.2.tar.gz 120179 SHA256 9f0de51c71373fcee4962f79f4813d67ea1e711f4394d7636c929a4019c5c2ff SHA512 23d65c5a7137726e05e0399dc49f05e5ad9b582d4adcdf30215f72ae75989e85daf30ea2a5010d6a5a086cb6bbb5b4599b5065080b845c833776812f6e46566d WHIRLPOOL 37836bd5597e485fe4ac8bb0994724fd7cde59bc2d57becd0e89547c0b561d147ff9bea3d99b1429c8a163538a7af7deb8416a4e5dfb8c9f7dff5322e81b2fb6 diff --git a/sci-libs/Shapely/Shapely-1.3.0.ebuild b/sci-libs/Shapely/Shapely-1.3.0.ebuild new file mode 100644 index 000000000000..aca63508a63c --- /dev/null +++ b/sci-libs/Shapely/Shapely-1.3.0.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +PYTHON_COMPAT=( python2_7 python3_{3,4} ) + +inherit distutils-r1 + +DESCRIPTION="Geometric objects, predicates, and operations" +HOMEPAGE="https://pypi.python.org/pypi/Shapely" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="test" + +RDEPEND=">=sci-libs/geos-3.1" +DEPEND="${RDEPEND} + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( dev-python/pytest[${PYTHON_USEDEP}] )" + +PATCHES=( "${FILESDIR}"/setup_unicode.patch ) + +python_test() { + esetup.py test +} diff --git a/sci-libs/Shapely/Shapely-1.3.2.ebuild b/sci-libs/Shapely/Shapely-1.3.2.ebuild new file mode 100644 index 000000000000..aca63508a63c --- /dev/null +++ b/sci-libs/Shapely/Shapely-1.3.2.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +PYTHON_COMPAT=( python2_7 python3_{3,4} ) + +inherit distutils-r1 + +DESCRIPTION="Geometric objects, predicates, and operations" +HOMEPAGE="https://pypi.python.org/pypi/Shapely" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="test" + +RDEPEND=">=sci-libs/geos-3.1" +DEPEND="${RDEPEND} + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( dev-python/pytest[${PYTHON_USEDEP}] )" + +PATCHES=( "${FILESDIR}"/setup_unicode.patch ) + +python_test() { + esetup.py test +} diff --git a/sci-libs/Shapely/Shapely-9999.ebuild b/sci-libs/Shapely/Shapely-9999.ebuild new file mode 100644 index 000000000000..1b3020d48ddd --- /dev/null +++ b/sci-libs/Shapely/Shapely-9999.ebuild @@ -0,0 +1,28 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +PYTHON_COMPAT=( python2_7 python3_{3,4} ) + +inherit distutils-r1 git-r3 + +DESCRIPTION="Geometric objects, predicates, and operations" +HOMEPAGE="https://pypi.python.org/pypi/Shapely" +SRC_URI="" +EGIT_REPO_URI="https://github.com/Toblerity/${PN}.git" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="" +IUSE="test" + +RDEPEND=">=sci-libs/geos-3.1" +DEPEND="${RDEPEND} + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( dev-python/pytest[${PYTHON_USEDEP}] )" + +python_test() { + esetup.py test +} diff --git a/sci-libs/Shapely/files/setup_unicode.patch b/sci-libs/Shapely/files/setup_unicode.patch new file mode 100644 index 000000000000..89e1b058f0f8 --- /dev/null +++ b/sci-libs/Shapely/files/setup_unicode.patch @@ -0,0 +1,23 @@ +--- setup.py.orig 2014-06-20 10:27:26.638779565 +0200 ++++ setup.py 2014-06-20 10:27:29.885446151 +0200 +@@ -1,4 +1,5 @@ + #!/usr/bin/env python ++# -*- coding: utf-8 -*- + + from __future__ import print_function + +@@ -74,8 +75,12 @@ + readme_text = fp.read() + readme_text = readme_text.replace(".. include:: CREDITS.txt", "") + +-with open('CREDITS.txt', 'r') as fp: +- credits = fp.read() ++if sys.version_info[0] == 3: ++ with open('CREDITS.txt', 'r', encoding='utf-8') as fp: ++ credits = fp.read() ++elif sys.version_info[0] == 2: ++ with open('CREDITS.txt', 'r') as fp: ++ credits = fp.read().decode('utf-8') + + with open('CHANGES.txt', 'r') as fp: + changes_text = fp.read() diff --git a/sci-libs/Shapely/metadata.xml b/sci-libs/Shapely/metadata.xml new file mode 100644 index 000000000000..ed7978de6acf --- /dev/null +++ b/sci-libs/Shapely/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>slis@gentoo.org</email> + </maintainer> + <upstream> + <remote-id type="pypi">Shapely</remote-id> + </upstream> +</pkgmetadata> diff --git a/sci-libs/ViSP/Manifest b/sci-libs/ViSP/Manifest new file mode 100644 index 000000000000..ee4b922b24ac --- /dev/null +++ b/sci-libs/ViSP/Manifest @@ -0,0 +1 @@ +DIST ViSP-2.10.0.tar.gz 20745399 SHA256 1c8a37cadd0012526be9ceaa182eb21fb0d45aac622a1f0f2d255225e85797aa SHA512 485bad6aea1dddf51c1edd162e22f5f00205947b67b57843207902ea3b97b683828031338282861be495d66cc79bde3a7af09c075aa9c6b783652d5d3bd4f9ef WHIRLPOOL d3d7e29076231fd581346f7de37ef49afed22f48198673d08268b1a298121d8a9bd8a9bc6e34cf2a5655cf45575599b09c5cb56e78961340122ca6f95ee275e3 diff --git a/sci-libs/ViSP/ViSP-2.10.0.ebuild b/sci-libs/ViSP/ViSP-2.10.0.ebuild new file mode 100644 index 000000000000..9bc5ac3e2a0c --- /dev/null +++ b/sci-libs/ViSP/ViSP-2.10.0.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit cmake-utils + +DESCRIPTION="Visual Servoing Platform: visual tracking and visual servoing library" +HOMEPAGE="http://www.irisa.fr/lagadic/visp/visp.html" +SRC_URI="http://gforge.inria.fr/frs/download.php/latestfile/475/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm" +IUSE=" + demos +dmtx doc examples ffmpeg gsl ieee1394 jpeg lapack ogre ois opencv png + test tutorials usb v4l X xml +zbar zlib +" + +RDEPEND=" + dmtx? ( media-libs/libdmtx ) + ffmpeg? ( virtual/ffmpeg ) + gsl? ( sci-libs/gsl ) + ieee1394? ( media-libs/libdc1394 ) + jpeg? ( virtual/jpeg:0 ) + lapack? ( virtual/lapack ) + ogre? ( dev-games/ogre[ois?] dev-libs/boost:=[threads] ) + opencv? ( media-libs/opencv ) + png? ( media-libs/libpng:0= ) + usb? ( virtual/libusb:1 ) + v4l? ( media-libs/libv4l ) + X? ( x11-libs/libX11 ) + xml? ( dev-libs/libxml2 ) + zbar? ( media-gfx/zbar ) + zlib? ( sys-libs/zlib ) +" +DEPEND="${RDEPEND} + doc? ( app-doc/doxygen virtual/latex-base media-gfx/graphviz ) + virtual/pkgconfig + test? ( sci-misc/ViSP-images ) + v4l? ( virtual/os-headers )" +RDEPEND="${RDEPEND} + demos? ( sci-misc/ViSP-images )" +REQUIRED_USE="ffmpeg? ( opencv ) ois? ( ogre )" +PATCHES=( "${FILESDIR}/opencv.patch" "${FILESDIR}/opencv3.patch" ) + +src_configure() { + local mycmakeargs=( + "-DBUILD_EXAMPLES=$(usex examples ON OFF)" + "-DBUILD_TESTS=$(usex test ON OFF)" + "-DBUILD_DEMOS=$(usex demos ON OFF)" + "-DBUILD_TUTORIALS=$(usex tutorials ON OFF)" + "-DUSE_V4L2=$(usex v4l ON OFF)" + "-DUSE_DC1394=$(usex ieee1394 ON OFF)" + "-DUSE_LAPACK=$(usex lapack ON OFF)" + "-DUSE_GSL=$(usex gsl ON OFF)" + "-DUSE_OGRE=$(usex ogre ON OFF)" + "-DUSE_OIS=$(usex ois ON OFF)" + "-DUSE_LIBUSB_1=$(usex usb ON OFF)" + "-DUSE_XML2=$(usex xml ON OFF)" + "-DUSE_OPENCV=$(usex opencv ON OFF)" + "-DUSE_ZLIB=$(usex zlib ON OFF)" + "-DUSE_X11=$(usex X ON OFF)" + "-DUSE_LIBJPEG=$(usex jpeg ON OFF)" + "-DUSE_LIBPNG=$(usex png ON OFF)" + "-DUSE_FFMPEG=$(usex ffmpeg ON OFF)" + "-DUSE_ZBAR=$(usex zbar ON OFF)" + "-DUSE_DMTX=$(usex dmtx ON OFF)" + ) + cmake-utils_src_configure +} + +src_compile() { + cmake-utils_src_compile + cd "${BUILD_DIR}" + use doc && emake visp_doc +} + +src_install() { + cmake-utils_src_install + if use tutorials ; then + dodoc -r tutorial + docompress -x /usr/share/doc/${PF}/tutorial + fi + cd "${BUILD_DIR}" + use doc && dohtml -r doc/html/* +} diff --git a/sci-libs/ViSP/files/opencv.patch b/sci-libs/ViSP/files/opencv.patch new file mode 100644 index 000000000000..c8cafe0a5c97 --- /dev/null +++ b/sci-libs/ViSP/files/opencv.patch @@ -0,0 +1,13 @@ +Index: ViSP-2.10.0/CMakeLists.txt +=================================================================== +--- ViSP-2.10.0.orig/CMakeLists.txt ++++ ViSP-2.10.0/CMakeLists.txt +@@ -1450,7 +1450,7 @@ if(USE_OPENCV) + list(APPEND VISP_EXTERN_LIBRARIES ${OpenCV_LIBS})
+ endif()
+ list(APPEND VISP_EXTERN_INCLUDE_DIRS ${OpenCV_INCLUDE_DIRS})
+- #LIST(APPEND VISP_EXTERN_LIBRARIES ${OpenCV_LIBS})
++ LIST(APPEND VISP_EXTERN_LIBRARIES ${OpenCV_LIBRARIES})
+ #MESSAGE("OpenCV_INCLUDE_DIRS = ${OpenCV_INCLUDE_DIRS}")
+ #MESSAGE("OpenCV_LIBS = ${OpenCV_LIBS}")
+ #MESSAGE("OpenCV_LIB_DIR = ${OpenCV_LIB_DIR}")
diff --git a/sci-libs/ViSP/files/opencv3.patch b/sci-libs/ViSP/files/opencv3.patch new file mode 100644 index 000000000000..8f7f9ee269cd --- /dev/null +++ b/sci-libs/ViSP/files/opencv3.patch @@ -0,0 +1,67 @@ +Index: ViSP-2.10.0/src/key-point/vpKeyPoint.h +=================================================================== +--- ViSP-2.10.0.orig/src/key-point/vpKeyPoint.h ++++ ViSP-2.10.0/src/key-point/vpKeyPoint.h +@@ -494,6 +494,7 @@ public: + initDetector(detectorName); + } + ++#if (VISP_HAVE_OPENCV_VERSION >= 0x020400 && VISP_HAVE_OPENCV_VERSION < 0x030000) + /*! + Template function to set to a \p parameterName a value for a specific detector named by his \p detectorName. + +@@ -507,6 +508,7 @@ public: + m_detectors[detectorName]->set(parameterName, value); + } + } ++#endif + + /*! + Set and initialize a list of detectors denominated by their names \p detectorNames. +@@ -532,6 +534,7 @@ public: + initExtractor(extractorName); + } + ++#if (VISP_HAVE_OPENCV_VERSION >= 0x020400 && VISP_HAVE_OPENCV_VERSION < 0x030000) + /*! + Template function to set to a \p parameterName a value for a specific extractor named by his \p extractorName. + +@@ -545,6 +548,7 @@ public: + m_extractors[extractorName]->set(parameterName, value); + } + } ++#endif + + /*! + Set and initialize a list of extractors denominated by their names \p extractorNames. +@@ -700,7 +704,7 @@ public: + m_useAffineDetection = useAffine; + } + +-#if (VISP_HAVE_OPENCV_VERSION >= 0x020400) ++#if (VISP_HAVE_OPENCV_VERSION >= 0x020400 && VISP_HAVE_OPENCV_VERSION < 0x030000) + /*! + Set if cross check method must be used to eliminate some false matches with a brute-force matching method. + +Index: ViSP-2.10.0/src/key-point/vpKeyPoint.cpp +=================================================================== +--- ViSP-2.10.0.orig/src/key-point/vpKeyPoint.cpp ++++ ViSP-2.10.0/src/key-point/vpKeyPoint.cpp +@@ -868,7 +868,7 @@ void vpKeyPoint::detect(const vpImage<un + (int) rectangle.getBottom()); + cv::rectangle(mask, leftTop, rightBottom, cv::Scalar(255), CV_FILLED); + } else { +- mask = cv::Mat::ones(matImg.rows, matImg.cols, CV_8U); ++ mask = cv::Mat::ones(matImg.rows, matImg.cols, CV_8U) * 255; + } + + detect(matImg, keyPoints, elapsedTime, mask); +@@ -1544,7 +1544,7 @@ void vpKeyPoint::initExtractors(const st + void vpKeyPoint::initMatcher(const std::string &matcherName) { + m_matcher = cv::DescriptorMatcher::create(matcherName); + +-#if (VISP_HAVE_OPENCV_VERSION >= 0x020400) ++#if (VISP_HAVE_OPENCV_VERSION >= 0x020400 && VISP_HAVE_OPENCV_VERSION < 0x030000) + if(m_matcher != NULL && !m_useKnn && matcherName == "BruteForce") { + m_matcher->set("crossCheck", m_useBruteForceCrossCheck); + } diff --git a/sci-libs/ViSP/metadata.xml b/sci-libs/ViSP/metadata.xml new file mode 100644 index 000000000000..6e275638c4ce --- /dev/null +++ b/sci-libs/ViSP/metadata.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer> +<email>aballier@gentoo.org</email> +<name>Alexis Ballier</name> +</maintainer> +<use> + <flag name="dmtx">Enables barcode data matrix support.</flag> + <flag name="demos">Installs demo programs.</flag> + <flag name="ogre">Enables <pkg>dev-games/ogre</pkg> support.</flag> + <flag name="ois">Enables <pkg>dev-games/ois</pkg> support via ogre.</flag> + <flag name="opencv">Enables <pkg>media-libs/opencv</pkg> support.</flag> + <flag name="tutorials">Installs tutorials.</flag> + <flag name="zbar">Enables barcodes reading.</flag> +</use> +<longdescription lang="en"> + ViSP standing for Visual Servoing Platform is a modular cross platform library that allows prototyping and developing applications using visual tracking and visual servoing technics at the heart of the researches done by Inria Lagadic team. + ViSP is able to compute control laws that can be applied to robotic systems. + It provides a set of visual features that can be tracked using real time image processing or computer vision algorithms. + ViSP provides also simulation capabilities. + + ViSP can be useful in robotics, computer vision, augmented reality and computer animation. +</longdescription> +</pkgmetadata> diff --git a/sci-libs/acml/Manifest b/sci-libs/acml/Manifest new file mode 100644 index 000000000000..1bc390d246ba --- /dev/null +++ b/sci-libs/acml/Manifest @@ -0,0 +1,6 @@ +DIST acml-4-1-0-gfortran-32bit.tgz 18258099 SHA256 52580576c3a425635eccb19fc5df38c3139fbc44fd669799bc8ffd0e2d82ccc7 +DIST acml-4-1-0-gfortran-64bit-int64.tgz 29351223 SHA256 825ae742df873cf6d41fbaaecff08941badb2b43a7021ba6c8af7abc75a6d14d +DIST acml-4-1-0-gfortran-64bit.tgz 29995624 SHA256 50f64687b86556123538e1f2bd4c185ff1d018501a5a5834ec8acf7487c817c4 +DIST acml-4-1-0-ifort-32bit.tgz 18797527 SHA256 5dfa768c12e96d2d25678e85cf2e0eea3bd427ddd94f417bcad09abe25369375 +DIST acml-4-1-0-ifort-64bit-int64.tgz 36135363 SHA256 3da0ded50ab25e44f531ac58b469344fed0f6af4ae70aa58b1286cf8de9731a4 +DIST acml-4-1-0-ifort-64bit.tgz 36577689 SHA256 b5b60425fccb624e3baf48f5d51ae68ccdc3e9852a4a50661bb3e45a6f25be40 diff --git a/sci-libs/acml/acml-4.1.0-r2.ebuild b/sci-libs/acml/acml-4.1.0-r2.ebuild new file mode 100644 index 000000000000..05a9a11930c0 --- /dev/null +++ b/sci-libs/acml/acml-4.1.0-r2.ebuild @@ -0,0 +1,200 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils fortran-2 multilib toolchain-funcs versionator + +MY_P=${PN}-$(replace_all_version_separators -) + +DESCRIPTION="AMD Core Math Library for x86 and amd64 CPUs" +HOMEPAGE="http://developer.amd.com/acml.jsp" +SRC_URI=" + amd64? ( + ifc? ( ${MY_P}-ifort-64bit.tgz + int64? ( ${MY_P}-ifort-64bit-int64.tgz ) ) + gfortran? ( ${MY_P}-gfortran-64bit.tgz + int64? ( ${MY_P}-gfortran-64bit-int64.tgz ) ) + !ifc? ( + !gfortran? ( ${MY_P}-gfortran-64bit.tgz + int64? ( ${MY_P}-gfortran-64bit-int64.tgz ) ) ) ) + x86? ( + ifc? ( ${MY_P}-ifort-32bit.tgz ) + gfortran? ( ${MY_P}-gfortran-32bit.tgz ) + !ifc? ( !gfortran? ( ${MY_P}-gfortran-32bit.tgz ) ) )" + +SLOT="0" +LICENSE="ACML" +KEYWORDS="-* ~amd64 ~x86" +IUSE="doc examples gfortran ifc int64 openmp test" + +RESTRICT="strip fetch" + +CDEPEND=" + ifc? ( dev-lang/ifc ) + gfortran? ( =sys-devel/gcc-4.2* ) + !gfortran? ( !ifc? ( =sys-devel/gcc-4.2* ) )" + +DEPEND=" + app-eselect/eselect-blas + app-eselect/eselect-lapack + test? ( ${CDEPEND} )" + +RDEPEND="${CDEPEND} + app-eselect/eselect-blas + app-eselect/eselect-lapack + doc? ( app-doc/blas-docs app-doc/lapack-docs )" + +S="${WORKDIR}" + +pkg_nofetch() { + einfo "Please download the ACML from:" + einfo "${HOMEPAGE}" + einfo "and place it in ${DISTDIR}." + einfo "The previous versions could be found at" + einfo "http://developer.amd.com/acmlarchive.jsp" + einfo "SRC=${A} $SRC_URI" +} + +get_fcomp() { + case $(tc-getFC) in + *gfortran* ) + FCOMP="gfortran" ;; + ifort ) + FCOMP="ifc" ;; + * ) + FCOMP=$(tc-getFC) ;; + esac +} + +pkg_setup() { + if use test; then + # work around incomplete fortran eclass + if use gfortran && + [[ $(tc-getFC) =~ gfortran ]] && + [[ $(gcc-version) != 4.2 ]] + then + eerror "You need gfortran-4.2 to test acml" + eerror "Please use gcc-config to switch gcc version 4.2" + die "gfortran check failed" + fi + fi + if use openmp; then + tc-has-openmp || die "Please ensure your compiler has openmp support" + FORTRAN_NEED_OPENMP=1 + fi + fortran-2_pkg_setup + get_fcomp + # construct default profile dprof from default ddir + local ddir=gfortran + use ifc && ddir=ifort + use x86 && ddir=${ddir}32 || ddir=${ddir}64 + use openmp && ddir=${ddir}_mp + use int64 && ddir=${ddir}_int64 + ACML_DEFAULT_DIR=${ddir} +} + +src_unpack() { + unpack ${A} + unpack ./contents-acml-*.tgz + use openmp || rm -rf *_mp* +} + +src_test() { + # only testing with current chosen compiler + for fdir in ${ACML_DEFAULT_DIR/_mp}*; do + einfo "Testing acml in ${fdir}" + for d in . acml_mv; do + cd "${S}"/${fdir}/examples/${d} + emake \ + ACMLDIR="${S}"/${fdir} \ + F77=$(tc-getFC) \ + CC="$(tc-getCC)" \ + CPLUSPLUS="$(tc-getCXX)" + emake clean + done + done +} + +make_acml_profile_name() { + local fort=${1%%[[:digit:]]*} + local opt=${1#*[0-9][0-9]} + echo ${PN}-${fort}${opt/mp/openmp} | tr '_' '-' +} + +src_install() { + # respect acml default install dir (and FHS) + local instdir=/opt/${PN}${PV} + dodir ${instdir} + + for lib in */lib; do + local fdir=${lib%/*} + # install acml + use examples || rm -rf "${S}"/${fdir}/examples + cp -pPR "${S}"/${fdir} "${D}"${instdir} || die "copy ${fdir} failed" + + # install profiles + local prof=$(make_acml_profile_name ${fdir}) + local acmldir=${instdir}/${fdir} + local acmllibs="-lacml" + local libname=${acmldir}/lib/libacml + local extlibs + local extflags + [[ ${fdir} =~ int64 ]] && extflags="${extflags} -fdefault-integer-8" + [[ ${fdir} =~ gfortran ]] && extlibs="${extlibs} -lgfortran" + if [[ ${fdir} =~ _mp ]]; then + [[ ${fdir} =~ ifort ]] && extlibs="${extlibs} -lguide" + extlibs="${extlibs} -lpthread" + extflags="${extflags} -fopenmp" + acmllibs="-lacml_mp" + libname=${libname}_mp + fi + use amd64 && acmllibs="${acmllibs} -lacml_mv" + for x in blas lapack; do + # pkgconfig files + sed -e "s:@LIBDIR@:$(get_libdir):" \ + -e "s:@PV@:${PV}:" \ + -e "s:@ACMLDIR@:${acmldir}:g" \ + -e "s:@ACMLLIBS@:${acmllibs}:g" \ + -e "s:@EXTLIBS@:${extlibs}:g" \ + -e "s:@EXTFLAGS@:${extflags}:g" \ + "${FILESDIR}"/${x}.pc.in > ${x}.pc \ + || die "sed ${x}.pc failed" + insinto ${acmldir}/lib + doins ${x}.pc + + # eselect files + cat > eselect.${prof}.${x} <<-EOF + ${libname}.so /usr/@LIBDIR@/lib${x}.so.0 + ${libname}.so /usr/@LIBDIR@/lib${x}.so + ${libname}.a /usr/@LIBDIR@/lib${x}.a + ${acmldir}/lib/${x}.pc /usr/@LIBDIR@/pkgconfig/${x}.pc + EOF + eselect ${x} add $(get_libdir) eselect.${prof}.${x} ${prof} + done + done + + echo "LDPATH=${instdir}/${ACML_DEFAULT_DIR}/lib" > 35acml + doenvd "${S}"/35acml + use doc || rm -rf "${S}"/Doc/acml.pdf "${S}"/Doc/html + cp -pPR "${S}"/Doc "${D}"${instdir} || die "copy doc failed" +} + +pkg_postinst() { + local dprof="$(make_acml_profile_name ${ACML_DEFAULT_DIR})" + for x in blas lapack; do + local cprof=$(eselect ${x} show | cut -d' ' -f2) + if [[ ${cprof} == ${dprof} || -z ${cprof} ]]; then + # work around eselect bug #189942 + local configfile="${ROOT}"/etc/env.d/${x}/$(get_libdir)/config + [[ -e ${configfile} ]] && rm -f ${configfile} + eselect ${x} set ${dprof} + elog "${x} has been eselected to ${dprof}" + else + elog "Current eselected ${x} implementation is ${cprof}" + elog "To use you have one of ${PN}, issue (as root):" + elog "\t eselect ${x} set <profile>" + fi + done +} diff --git a/sci-libs/acml/files/blas.pc.in b/sci-libs/acml/files/blas.pc.in new file mode 100644 index 000000000000..523aabc1204c --- /dev/null +++ b/sci-libs/acml/files/blas.pc.in @@ -0,0 +1,11 @@ +prefix=@ACMLDIR@ +exec_prefix=${prefix} +libdir=${prefix}/lib +includedir=${prefix}/include + +Name: blas +Description: ACML implementations of the Basic Linear Algebra Subroutines +Version: @PV@ +URL: http://developer.amd.com/acml.jsp +Libs: -Wl,--no-as-needed -L${libdir} @ACMLLIBS@ @EXTLIBS@ +Cflags: @EXTFLAGS@ diff --git a/sci-libs/acml/files/lapack.pc.in b/sci-libs/acml/files/lapack.pc.in new file mode 100644 index 000000000000..48fef122dfe4 --- /dev/null +++ b/sci-libs/acml/files/lapack.pc.in @@ -0,0 +1,11 @@ +prefix=@ACMLDIR@ +exec_prefix=${prefix} +libdir=${prefix}/lib +includedir=${prefix}/include + +Name: lapack +Description: ACML implementation of the F77 Linear Algebra PACKage +Version: @PV@ +URL: http://developer.amd.com/acml.jsp +Libs: -Wl,--no-as-needed -L${libdir} @ACMLLIBS@ @EXTLIBS@ +Cflags: @EXTFLAGS@ diff --git a/sci-libs/acml/metadata.xml b/sci-libs/acml/metadata.xml new file mode 100644 index 000000000000..29546f51523b --- /dev/null +++ b/sci-libs/acml/metadata.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <longdescription lang="en"> + The AMD(R) Core Math Library provides an implementation of the "Basic + Linear Algebra Subprograms" (BLAS) and the "Linear Algebra PACKage" + (LAPACK) as well as a set of "Fast Fourier Transformation" (FFT) + routines, all highly optimized for AMD(R) x86 and amd64 CPUs. +</longdescription> + <longdescription lang="de"> + Die AMD(R) Core Math Library ist ein Ersatz für die "Basic Linear + Algebra Subprograms" (BLAS) und das "Linear Algebra PACKage" (LAPACK). + Außerdem enthält sie Routinen zur "Fast Fourier Tranformation" (FFT). + Alle Routinen sind hoch optimiert für AMD(R) x86 und amd64 CPUs. +</longdescription> + <use> + <flag name="gfortran">Fetch and install acml compiled with GNU gfortran</flag> + <flag name="ifc">Fetch and install acml compiled with Intel Fortran Compiler + (<pkg>dev-lang/ifc</pkg>)</flag> + <flag name="int64">Install the 64 bits integer library</flag> + </use> +</pkgmetadata> diff --git a/sci-libs/adolc/Manifest b/sci-libs/adolc/Manifest new file mode 100644 index 000000000000..39489cbe99b8 --- /dev/null +++ b/sci-libs/adolc/Manifest @@ -0,0 +1,3 @@ +DIST ADOL-C-2.4.1.tgz 2210414 SHA256 05bf946cc1764e2b3fa7e708ccc4303f289699d9f36b9d525f6a9a6129b4d578 SHA512 5e5135ca587d159510bf77338fdff3d324f4d32c4ec6f8cf64ddc92253b427b8ee26a30bc1d83fe18121bbfdc7454c3536f58849c0c335e1b240e39d46acdccc WHIRLPOOL cd66a895dc3cb1f6f4f705a9fbce5a93dcb6856b6288704c3d3420be7f90e57296acd3fb2ea897ba5362e706429ec56b070bf0baa7094edcbf46c92d535bc492 +DIST ADOL-C-2.5.0.tgz 2313753 SHA256 908753153e0eca31752222150977eabd8ab97c4ab8fcd19f92667aba69a048a6 SHA512 e680565ed911bc15165c27281428c1daf35e95292dc3abc64aab6633068ec0d7e7ae626e692e0574b2c696a0c4aec2c79b2b02c3760acd2bd1b579a4c42d9585 WHIRLPOOL c0301c9a8f1357aa06be8e6a53bee9825a5d56cd31a2734862bcfd1f7c944935a4cd2c8c2ed49028493cb7c998008c9853b2d4bd7f6e0519ed353bbd3b7d0a8c +DIST ADOL-C-2.5.2.tgz 2320010 SHA256 2fa514d9799989d6379738c2bcf75070d9834e4d227eb32a5b278840893b2af9 SHA512 3d2ef6e42504de9e9c1b5777afda8ece83fa61ab7c22fd471dce6bcb74af0a789d37cd2a6c9c9ead13f6c78e07ba985e7d14e79bcdf35fa56f8e73a2411905b5 WHIRLPOOL 55043cabe44b9913a7fba73ddaf0d64caa234d7002582d78dd9cfc05510ce3fbcb6dd3d1c40a2d6425f5ee1b7cc986d525d065671191096fbb303e122089c954 diff --git a/sci-libs/adolc/adolc-2.4.1.ebuild b/sci-libs/adolc/adolc-2.4.1.ebuild new file mode 100644 index 000000000000..7adde9df1107 --- /dev/null +++ b/sci-libs/adolc/adolc-2.4.1.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +AUTOTOOLS_AUTORECONF=yes +AUTOTOOLS_IN_SOURCE_BUILD=yes +inherit autotools-utils toolchain-funcs + +MYPN=ADOL-C + +DESCRIPTION="Automatic differentiation system for C/C++" +HOMEPAGE="https://projects.coin-or.org/ADOL-C/" +SRC_URI="http://www.coin-or.org/download/source/${MYPN}/${MYPN}-${PV}.tgz" + +LICENSE="|| ( EPL-1.0 GPL-2 )" +SLOT="0/1" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="sparse static-libs" + +RDEPEND="sparse? ( sci-libs/colpack )" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${MYPN}-${PV}" + +PATCHES=( "${FILESDIR}"/${PN}-2.4.0-no-colpack.patch ) + +src_configure() { + local myeconfargs=( + $(use_enable sparse) + $(use_with sparse colpack "${EPREFIX}"/usr) + ) + autotools-utils_src_configure +} + +src_test() { + autotools-utils_src_test test +} diff --git a/sci-libs/adolc/adolc-2.5.0.ebuild b/sci-libs/adolc/adolc-2.5.0.ebuild new file mode 100644 index 000000000000..a74e53adb601 --- /dev/null +++ b/sci-libs/adolc/adolc-2.5.0.ebuild @@ -0,0 +1,45 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +AUTOTOOLS_AUTORECONF=yes +#AUTOTOOLS_IN_SOURCE_BUILD=yes + +inherit autotools-utils toolchain-funcs + +MYPN=ADOL-C + +DESCRIPTION="Automatic differentiation system for C/C++" +HOMEPAGE="https://projects.coin-or.org/ADOL-C/" +SRC_URI="http://www.coin-or.org/download/source/${MYPN}/${MYPN}-${PV}.tgz" + +LICENSE="|| ( EPL-1.0 GPL-2 )" +SLOT="0/1" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="mpi sparse static-libs" + +RDEPEND="mpi? ( sys-cluster/ampi:0= ) + sparse? ( sci-libs/colpack:0= )" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${MYPN}-${PV}" + +PATCHES=( + "${FILESDIR}"/${PN}-2.5.0-no-colpack.patch + "${FILESDIR}"/${PN}-2.5.0-pkgconfig-no-ldflags.patch +) + +src_configure() { + local myeconfargs=( + $(use_enable mpi ampi) + $(use_enable sparse) + $(use_with sparse colpack "${EPREFIX}"/usr) + ) + autotools-utils_src_configure +} + +src_test() { + autotools-utils_src_test test +} diff --git a/sci-libs/adolc/adolc-2.5.2.ebuild b/sci-libs/adolc/adolc-2.5.2.ebuild new file mode 100644 index 000000000000..eacb9e3990e5 --- /dev/null +++ b/sci-libs/adolc/adolc-2.5.2.ebuild @@ -0,0 +1,47 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +AUTOTOOLS_AUTORECONF=yes +#AUTOTOOLS_IN_SOURCE_BUILD=yes + +inherit autotools-utils toolchain-funcs + +MYPN=ADOL-C + +DESCRIPTION="Automatic differentiation system for C/C++" +HOMEPAGE="https://projects.coin-or.org/ADOL-C/" +SRC_URI="http://www.coin-or.org/download/source/${MYPN}/${MYPN}-${PV}.tgz" + +LICENSE="|| ( EPL-1.0 GPL-2 )" +SLOT="0/1" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="mpi sparse static-libs" + +RDEPEND=" + mpi? ( sys-cluster/ampi:0= ) + sparse? ( sci-libs/colpack:0= )" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${MYPN}-${PV}" + +PATCHES=( + "${FILESDIR}"/${PN}-2.5.0-no-colpack.patch + "${FILESDIR}"/${PN}-2.5.0-pkgconfig-no-ldflags.patch + "${FILESDIR}"/${P}-dash.patch +) + +src_configure() { + local myeconfargs=( + $(use_enable mpi ampi) + $(use_enable sparse) + $(use_with sparse colpack "${EPREFIX}"/usr) + ) + autotools-utils_src_configure +} + +src_test() { + autotools-utils_src_test test +} diff --git a/sci-libs/adolc/files/adolc-2.4.0-no-colpack.patch b/sci-libs/adolc/files/adolc-2.4.0-no-colpack.patch new file mode 100644 index 000000000000..e3b5a4a2ca5f --- /dev/null +++ b/sci-libs/adolc/files/adolc-2.4.0-no-colpack.patch @@ -0,0 +1,24 @@ +do not test colpack when user says no even when it is installed + +--- configure.ac.orig 2012-07-19 13:04:37.426461811 -0700 ++++ configure.ac 2012-07-19 13:06:06.477916144 -0700 +@@ -281,7 +281,7 @@ + COLPACK_LIBDIR="" + COLPACK_LIBS="-lColPack" + ]) +- ++if test x$colpack != xno; then + AC_LANG_PUSH([C++]) + save_CPPFLAGS="$CPPFLAGS" + save_LIBS="$LIBS" +@@ -301,7 +301,9 @@ + CPPFLAGS="$save_CPPFLAGS" + LIBS="$save_LIBS" + AC_LANG_POP([C++]) +- ++else ++ have_colpack=no ++fi + AM_CONDITIONAL(HAVE_LIBCOLPACK,[test x$have_colpack = xyes]) + if test x$have_colpack = xyes; then + sparse=yes diff --git a/sci-libs/adolc/files/adolc-2.5.0-no-colpack.patch b/sci-libs/adolc/files/adolc-2.5.0-no-colpack.patch new file mode 100644 index 000000000000..779890c8cf2b --- /dev/null +++ b/sci-libs/adolc/files/adolc-2.5.0-no-colpack.patch @@ -0,0 +1,57 @@ + autoconf/colpack.m4 | 23 +++++++++++++---------- + 1 file changed, 13 insertions(+), 10 deletions(-) + +diff --git a/autoconf/colpack.m4 b/autoconf/colpack.m4 +index 9792786..bd4ba5e 100644 +--- a/autoconf/colpack.m4 ++++ b/autoconf/colpack.m4 +@@ -8,20 +8,20 @@ AC_ARG_WITH(colpack, + AS_HELP_STRING([--with-colpack=DIR],[path to the colpack library and headers [default=system libraries]])], + [ + colpack=$withval +-COLPACK_CFLAGS="-I$colpack/include" +-if test x${_lib} != xlib ; then +- D[[0]]="$colpack/${_lib}" +- D[[1]]="$colpack/lib" +-else +- D[[0]]="$colpack/${_lib}" +-fi + ], + [ + COLPACK_CFLAGS="" + COLPACK_LIBS="-lColPack" + D[[0]]="" + ]) +- ++if test x$colpack != xno; then ++COLPACK_CFLAGS="-I$colpack/include" ++if test x${_lib} != xlib ; then ++ D[[0]]="$colpack/${_lib}" ++ D[[1]]="$colpack/lib" ++else ++ D[[0]]="$colpack/${_lib}" ++fi + AC_LANG_PUSH([C++]) + save_CXXFLAGS="$CXXFLAGS" + save_CPPFLAGS="$CPPFLAGS" +@@ -33,8 +33,8 @@ have_colpackheaders=no + CPPFLAGS="$save_CPPFLAGS" + CXXFLAGS="$save_CXXFLAGS" + ]) +-for ((i=0; i < ${#D[@]} ; i++)); do +-COLPACK_LIBDIR="${D[[$i]]}" ++for i in ${D[@]}; do ++COLPACK_LIBDIR="${i}" + if test -n "$COLPACK_LIBDIR" ; then + COLPACK_LIBS="-L$COLPACK_LIBDIR -lColPack -Wl,-rpath,$COLPACK_LIBDIR" + fi +@@ -56,6 +56,9 @@ else + fi + done + AC_LANG_POP([C++]) ++else ++ have_colpack=no ++fi + + AM_CONDITIONAL(HAVE_LIBCOLPACK,[test x$have_colpack = xyes]) + if test x$have_colpack = xyes; then diff --git a/sci-libs/adolc/files/adolc-2.5.0-pkgconfig-no-ldflags.patch b/sci-libs/adolc/files/adolc-2.5.0-pkgconfig-no-ldflags.patch new file mode 100644 index 000000000000..4a6296e2db75 --- /dev/null +++ b/sci-libs/adolc/files/adolc-2.5.0-pkgconfig-no-ldflags.patch @@ -0,0 +1,9 @@ +--- adolclib.pc.in.orig 2014-05-21 09:09:10.060824555 -0700 ++++ adolclib.pc.in 2014-05-21 09:09:10.060824555 -0700 +@@ -7,5 +7,5 @@ + Version: @PACKAGE_VERSION@ + Description: Algorithmic Differentiation Library for C/C++ + Requires: +-Libs: -L${libdir} -l@adolclib@ -Wl,-rpath,${libdir} @LDFLAGS@ @LIBS@ ++Libs: -L${libdir} -l@adolclib@ @LIBS@ + Cflags: -I${includedir} diff --git a/sci-libs/adolc/files/adolc-2.5.2-dash.patch b/sci-libs/adolc/files/adolc-2.5.2-dash.patch new file mode 100644 index 000000000000..3aa5a3035a14 --- /dev/null +++ b/sci-libs/adolc/files/adolc-2.5.2-dash.patch @@ -0,0 +1,148 @@ + configure.ac | 45 +++++++++++++++++---------------------------- + 1 file changed, 17 insertions(+), 28 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 926832c..1310025 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -29,12 +29,12 @@ AM_SILENT_RULES([yes]) + + adolclib=adolc + +-if test "x$CFLAGS" == x ; then ++if test "x$CFLAGS" = x ; then + ac_shell_cflags="not_set" + else + ac_shell_cflags="$CFLAGS" + fi +-if test "x$CXXFLAGS" == x ; then ++if test "x$CXXFLAGS" = x ; then + ac_shell_cxxflags="not_set" + else + ac_shell_cxxflags="$CXXFLAGS" +@@ -225,12 +225,12 @@ AS_HELP_STRING([--enable-harddebug],[enable ADOL-C hard debug mode + AC_MSG_RESULT(no) + ]) + +-if test x$adolc_harddebug == xyes ; then ++if test x$adolc_harddebug = xyes ; then + adolc_debug=yes + AC_DEFINE(ADOLC_HARDDEBUG,1,[ADOL-C hard debug mode]) + fi + +-if test x$adolc_debug == xyes ; then ++if test x$adolc_debug = xyes ; then + AC_DEFINE(ADOLC_DEBUG,1,[ADOL-C debug mode]) + fi + +@@ -248,7 +248,7 @@ AS_HELP_STRING([--disable-stdczero],[adouble default constructor does not initia + AC_MSG_RESULT(yes) + ]) + +-if test x$adolc_stdczero == xyes; then ++if test x$adolc_stdczero = xyes; then + AC_DEFINE(ADOLC_ADOUBLE_STDCZERO,1,[ADOL-C adouble zeroing mode]) + fi + +@@ -265,7 +265,7 @@ AS_HELP_STRING([--enable-lateinit],[adouble constructors need to be called. With + AC_MSG_RESULT(no) + ]) + +-if test x$adolc_late_init == xyes; then ++if test x$adolc_late_init = xyes; then + AC_DEFINE(ADOLC_ADOUBLE_LATEINIT,1,[ADOL-C adouble late initialization mode]) + fi + +@@ -282,7 +282,7 @@ AS_HELP_STRING([--enable-tserrno],[use errno as thread number cache [default=no] + AC_MSG_RESULT(no) + ]) + +-if test x$adolc_tserrno == xyes ; then ++if test x$adolc_tserrno = xyes ; then + AC_DEFINE(ADOLC_THREADSAVE_ERRNO,1,[ADOL-C thread save errno mode]) + fi + +@@ -351,8 +351,8 @@ AC_ARG_WITH(cflags, + [AS_HELP_STRING([--with-cflags=FLAGS], + [use CFLAGS=FLAGS (default: -O2)])], + [ac_adolc_cflags="$withval" +- if test x${adolc_debug} == xyes || +- test x${adolc_harddebug} == xyes ; then ++ if test "x${adolc_debug}" = xyes || ++ test "x${adolc_harddebug}" = xyes ; then + ac_adolc_cflags="$ac_adolc_cflags -g -O0" + fi + ac_adolc_cflags="$ac_adolc_cflags $ac_adolc_openmpflag" +@@ -360,8 +360,8 @@ AC_ARG_WITH(cflags, + AC_MSG_RESULT($ac_adolc_cflags)], + [if test "$ac_shell_cflags" = "not_set"; then + ac_adolc_cflags="-O2" +- if test x${adolc_debug} == xyes || +- test x${adolc_harddebug} == xyes ; then ++ if test "x${adolc_debug}" = xyes || ++ test "x${adolc_harddebug}" = xyes ; then + ac_adolc_cflags="-g -O0 -Wall -ansi" + fi + else +@@ -377,8 +377,8 @@ AC_ARG_WITH(cxxflags, + [AS_HELP_STRING([--with-cxxflags=FLAGS], + [use CXXFLAGS=FLAGS (default: -O2)])], + [ac_adolc_cxxflags="$withval" +- if test x${adolc_debug} == xyes || +- test x${adolc_harddebug} == xyes ; then ++ if test x${adolc_debug} = xyes || ++ test x${adolc_harddebug} = xyes ; then + ac_adolc_cxxflags="$ac_adolc_cxxflags -g -O0" + fi + ac_adolc_cxxflags="$ac_adolc_cxxflags $ac_adolc_openmpflag" +@@ -386,8 +386,8 @@ AC_ARG_WITH(cxxflags, + AC_MSG_RESULT($ac_adolc_cxxflags)], + [if test "$ac_shell_cxxflags" = "not_set"; then + ac_adolc_cxxflags="-O2" +- if test x${adolc_debug} == xyes || +- test x${adolc_harddebug} == xyes ; then ++ if test x${adolc_debug} = xyes || ++ test x${adolc_harddebug} = xyes ; then + ac_adolc_cxxflags="-g -O0 -Wall" + fi + else +@@ -420,7 +420,7 @@ AC_ARG_ENABLE(tapedoc_values, + ]) + AC_MSG_RESULT($tapedoc_values) + +-if test x$tapedoc_values == xyes; then ++if test x$tapedoc_values = xyes; then + AC_DEFINE(ADOLC_TAPE_DOC_VALUES,1,[ADOL-C tape_doc routine computes values]) + fi + +@@ -583,7 +583,7 @@ while test "x${pdir}" != "x/" ; do + break + fi + done +-if test "x${pdir}" == "x/" ; then ++if test "x${pdir}" = "x/" ; then + writable=false + fi + if ! ${writable} ; then +@@ -595,15 +595,6 @@ if ! ${writable} ; then + warn=true + fi + +-case ${prefix} in +- ${HOME}|${HOME}/*) +-if $warn ; then +- for (( i=5; i>0; i-- )); do +- echo -ne "\rPlease read the above messages carefully, continuing in ${i} seconds" +- sleep 1 +- done +- echo -e "\rPlease read the above messages carefully " +-fi + echo \ + " + ***************************************************************************** +@@ -629,5 +620,3 @@ echo \ + + ***************************************************************************** + " +-;; +-esac diff --git a/sci-libs/adolc/metadata.xml b/sci-libs/adolc/metadata.xml new file mode 100644 index 000000000000..ea1d9dd9ce2e --- /dev/null +++ b/sci-libs/adolc/metadata.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <longdescription lang="en"> + The ADOLC system automatically calculates exact derivatives of a + C/C++ function. It uses C++ overloading to record arithmetic + operations, which it plays back later in various ways to calculate + the requested values. +</longdescription> + <use> + <flag name="sparse">Add support for sparse matrix algebra with <pkg>sci-libs/colpack</pkg></flag> + </use> +</pkgmetadata> diff --git a/sci-libs/alglib/Manifest b/sci-libs/alglib/Manifest new file mode 100644 index 000000000000..76f161451943 --- /dev/null +++ b/sci-libs/alglib/Manifest @@ -0,0 +1,2 @@ +DIST alglib-3.7.0.cpp.tgz 1518417 SHA256 62100afea6f3e54606031065d28b484ef82b3a96732265a23d8e0f17e34bd36c SHA512 055a292512eb6b5bdb667a2cfb8fda33237b17f1b900ba086e20a541af0f41bc85aef935c1357d780b45f3b1f2e6acddea23f19cdafa25a08f821aa391fec285 WHIRLPOOL 7dce3c5057c2b356b4f361304f2bfa6281671bb1f45204895864db0013ee18127f9cb4a64b311369debdf1adad4b4cb594514a7387adc6f9b9c21ccb4dc549f6 +DIST alglib-3.8.2.cpp.tgz 1674260 SHA256 c02944558849c8b22f32f8dea03ebf3b77a0aab9aa2518927d25f6bfe7cb06a2 SHA512 3d7b6e3b5a29f25aee476bdd69e583d7504a2e06d390822b4aa2792eeb500e08c13477176be348a9dd560bad358e423465c9086f0c7c12f73dc88024364aed50 WHIRLPOOL 8ec5a51448c00241428f3b6c6191e31f94ee09dc1d94417178a59887edb8b4e8cfd561983bc4b31686971ad27c43e957aa7c1232e500000a0ea84e763f08ddcf diff --git a/sci-libs/alglib/alglib-3.7.0.ebuild b/sci-libs/alglib/alglib-3.7.0.ebuild new file mode 100644 index 000000000000..d10eef749b6d --- /dev/null +++ b/sci-libs/alglib/alglib-3.7.0.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit cmake-utils + +DESCRIPTION="Numerical analysis and data processing library" +HOMEPAGE="http://www.alglib.net/" +SRC_URI="http://www.alglib.net/translator/re/${P}.cpp.tgz" + +SLOT="0" +LICENSE="GPL-2+" +KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux" +IUSE="" + +RDEPEND="" +DEPEND="${RDEPEND} +" + +S="${WORKDIR}"/cpp/ + +src_prepare() { + cp "${FILESDIR}"/CMakeLists.txt . || die + cmake-utils_src_prepare +} diff --git a/sci-libs/alglib/alglib-3.8.2.ebuild b/sci-libs/alglib/alglib-3.8.2.ebuild new file mode 100644 index 000000000000..8a0572f9b592 --- /dev/null +++ b/sci-libs/alglib/alglib-3.8.2.ebuild @@ -0,0 +1,28 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit cmake-utils + +DESCRIPTION="Numerical analysis and data processing library" +HOMEPAGE="http://www.alglib.net/" +SRC_URI="http://www.alglib.net/translator/re/${P}.cpp.tgz" + +SLOT="0" +LICENSE="GPL-2+" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="test" + +S="${WORKDIR}"/cpp/ + +src_prepare() { + cp "${FILESDIR}"/CMakeLists.txt-${PV} CMakeLists.txt || die + cmake-utils_src_prepare +} + +src_configure() { + local mycmakeargs=( $(cmake-utils_use_build test) ) + cmake-utils_src_configure +} diff --git a/sci-libs/alglib/files/CMakeLists.txt b/sci-libs/alglib/files/CMakeLists.txt new file mode 100644 index 000000000000..6455423b0fe9 --- /dev/null +++ b/sci-libs/alglib/files/CMakeLists.txt @@ -0,0 +1,32 @@ +project(alglib CXX) +cmake_minimum_required(VERSION 2.8) + +INCLUDE(GNUInstallDirs) +INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src) +SET(VERSION 3.7.0) +SET(SOVERSION 3.7) + +FILE(GLOB ALGLIB_SRC_LIB "src/*.cpp") +FILE(GLOB ALGLIB_HDR_LIB "src/*.h") + +ADD_LIBRARY(alglib SHARED ${ALGLIB_SRC_LIB}) +SET_TARGET_PROPERTIES(alglib PROPERTIES + VERSION ${VERSION} + SOVERSION ${SOVERSION}) + +INSTALL(TARGETS alglib DESTINATION ${CMAKE_INSTALL_LIBDIR}/) +INSTALL(FILES ${ALGLIB_HDR_LIB} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) + +#=========================================================== +ADD_EXECUTABLE(test_c tests/test_c.cpp) +TARGET_LINK_LIBRARIES(test_c alglib) +#INSTALL(TARGETS test_c DESTINATION ${CMAKE_INSTALL_BINDIR}/) +#=========================================================== +ADD_EXECUTABLE(test_i tests/test_i.cpp) +TARGET_LINK_LIBRARIES(test_i alglib) +#INSTALL(TARGETS test_i DESTINATION ${CMAKE_INSTALL_BINDIR}/) +#=========================================================== + +enable_testing() +add_test( test_c ${CMAKE_BUILD_DIR}/test_c) +add_test( test_i ${CMAKE_BUILD_DIR}/test_i) diff --git a/sci-libs/alglib/files/CMakeLists.txt-3.8.2 b/sci-libs/alglib/files/CMakeLists.txt-3.8.2 new file mode 100644 index 000000000000..483c63dc7f59 --- /dev/null +++ b/sci-libs/alglib/files/CMakeLists.txt-3.8.2 @@ -0,0 +1,36 @@ +project(alglib CXX) +cmake_minimum_required(VERSION 2.8) + +INCLUDE(GNUInstallDirs) +INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src) +SET(VERSION 3.8.2) +SET(SOVERSION 3.8) + +option(BUILD_TEST "Build tests" OFF) + +FILE(GLOB ALGLIB_SRC_LIB "src/*.cpp") +FILE(GLOB ALGLIB_HDR_LIB "src/*.h") + +ADD_LIBRARY(alglib SHARED ${ALGLIB_SRC_LIB}) +SET_TARGET_PROPERTIES(alglib PROPERTIES + VERSION ${VERSION} + SOVERSION ${SOVERSION}) + +INSTALL(TARGETS alglib DESTINATION ${CMAKE_INSTALL_LIBDIR}/) +INSTALL(FILES ${ALGLIB_HDR_LIB} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) + +if (BUILD_TEST) + #=========================================================== + ADD_EXECUTABLE(test_c tests/test_c.cpp) + TARGET_LINK_LIBRARIES(test_c alglib) + #INSTALL(TARGETS test_c DESTINATION ${CMAKE_INSTALL_BINDIR}/) + #=========================================================== + ADD_EXECUTABLE(test_i tests/test_i.cpp) + TARGET_LINK_LIBRARIES(test_i alglib) + #INSTALL(TARGETS test_i DESTINATION ${CMAKE_INSTALL_BINDIR}/) + #=========================================================== + + enable_testing() +endif (BUILD_TEST) +add_test( test_c ${CMAKE_BUILD_DIR}/test_c) +add_test( test_i ${CMAKE_BUILD_DIR}/test_i) diff --git a/sci-libs/alglib/metadata.xml b/sci-libs/alglib/metadata.xml new file mode 100644 index 000000000000..8fa350bffef2 --- /dev/null +++ b/sci-libs/alglib/metadata.xml @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <maintainer> + <email>jlec@gentoo.org</email> + </maintainer> + <longdescription> +ALGLIB is a cross-platform numerical analysis and data processing library. It +supports several programming languages (C++, C#, Pascal, VBA) and several +operating systems (Windows, Linux, Solaris). ALGLIB features include: + +* Linear algebra (direct algorithms, EVD/SVD) +* Solvers (linear and nonlinear) +* Interpolation +* Optimization +* Fast Fourier transforms +* Numerical integration +* Linear and nonlinear least-squares fitting +* Ordinary differential equations +* Special functions +* Statistics (descriptive statistics, hypothesis testing) +* Data analysis (classification/regression, including neural networks) +* Multiple precision versions of linear algebra, interpolation optimization and +* others algorithms (using MPFR for floating point computations) + +Why to choose ALGLIB? Because it is: + +* portable. It can be compiled almost anywhere using almost any compiler +(see compatibility matrix for more info). +* easy to use. It supports many programming languages. If you use one language, +you don't need to study another (FORTRAN, for example) to compile and link an +external library. +* open source. It can be used for free under GPL 2+. +* suited for commercial users too. Those who want to use ALGLIB in commercial +applications can buy commercial license without copyleft requirement. +</longdescription> +</pkgmetadata> diff --git a/sci-libs/amd/Manifest b/sci-libs/amd/Manifest new file mode 100644 index 000000000000..5dca5550f72d --- /dev/null +++ b/sci-libs/amd/Manifest @@ -0,0 +1 @@ +DIST amd-2.3.1.tar.bz2 339970 SHA256 35f60a47000ec39c8328d621b6d8f249ccf6c12f0ebc809272e16f7d4a8a430c SHA512 19b8c010e0f7a5a96e60fe52904b2b548fb89dfaf9d6f99184df955a732ec3edef04acff01a82a909e030c3bf78c9eccfe0c329731edb29f4b936507e39d885e WHIRLPOOL 737fe5eb785f09bea7a693421b547a0ec18c8428b19efb2890c8573895333862522ece1af00c24156d83ed0888b11c59d9c0ee3ea125ed8cb216d718343f6874 diff --git a/sci-libs/amd/amd-2.3.1.ebuild b/sci-libs/amd/amd-2.3.1.ebuild new file mode 100644 index 000000000000..a68446a9c763 --- /dev/null +++ b/sci-libs/amd/amd-2.3.1.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit autotools-utils fortran-2 + +DESCRIPTION="Library to order a sparse matrix prior to Cholesky factorization" +HOMEPAGE="http://www.cise.ufl.edu/research/sparse/amd" +SRC_URI="http://dev.gentoo.org/~bicatali/distfiles/${P}.tar.bz2" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="amd64 ~arm hppa ~mips ppc ppc64 sparc x86 ~amd64-fbsd ~amd64-linux ~x86-linux ~x86-macos" +IUSE="doc fortran static-libs" + +RDEPEND="sci-libs/suitesparseconfig" +DEPEND="${RDEPEND} + virtual/pkgconfig + doc? ( virtual/latex-base )" + +src_configure() { + local myeconfargs=( + $(use_enable fortran) + $(use_with doc) + ) + autotools-utils_src_configure +} diff --git a/sci-libs/amd/metadata.xml b/sci-libs/amd/metadata.xml new file mode 100644 index 000000000000..f4c85ca59868 --- /dev/null +++ b/sci-libs/amd/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <longdescription lang="en"> + AMD is a set of routines for ordering a sparse matrix prior to Cholesky + factorization (or for LU factorization with diagonal pivoting). There + are versions in both C and Fortran. +</longdescription> +</pkgmetadata> diff --git a/sci-libs/armadillo/Manifest b/sci-libs/armadillo/Manifest new file mode 100644 index 000000000000..7dcbe9dfe78b --- /dev/null +++ b/sci-libs/armadillo/Manifest @@ -0,0 +1,5 @@ +DIST armadillo-3.4.4.tar.gz 3006964 SHA256 ef94e12556421fa62ba7734f8b18bb12c188f43dd6192d3648a28e8d154e6ba7 SHA512 78fbb107b220d283a2404483ee38720fd8259bbf675d8753d706cc3c3ba9678d47412d156f24a4b3cc95e20ce3c935167e2f7657806b5b8e8b7c95938c4b3f3f WHIRLPOOL 2a1b6426b695569c10b13d3df1183c615fdb4261497eea405e61316a838a5744477db7bfd8344f25d741e69899f64a19c801bd068d366175a2c9898369090093 +DIST armadillo-3.6.2.tar.gz 3016818 SHA256 04f64c632e619989616c7f219310a06cb1618b16274bdac05b4798d49eb4f149 SHA512 0c769caad012f7893cc8ebb46969179f1175edac638f98fd2a0898aed062f7456536eecd12c9720f77caf4859cd0049e00dd71c9f096458b5fd5ce9cea517c66 WHIRLPOOL 898c29f7d0a7b02658f8d95a528be7d321a7d15f95ada6a4296d9822ee873556a49ccaafcaca16cb25e4a05321fa91b9711d7790b0910464b653398fb6ce4738 +DIST armadillo-4.650.4.tar.gz 5408567 SHA256 ccc56580ec932ec9beade5679b07ecbed889e9b602866f673d1a05a7692b4bf8 SHA512 a548150ba5484fce35b0bc6023982939946f2f00b733dff2cd5b46101b1c344342061389cb4363cdaa04c5e3cca3278a40febe2ed705316552dd71f841c46037 WHIRLPOOL 331493d8b9c92b9e1908880c6f6510edb12e93193a9ceb77d0b8ce9d0bfb493dc48e590ea949d39c3c19f6fc3b05446b7e00525512e3055be0f907427c28f7d4 +DIST armadillo-5.100.2.tar.gz 5429961 SHA256 63150f12bf7c7c598ea55b7271d99fce349ff386a3dc2cae3904b244f6e35320 SHA512 2777b525bc62daddfb16eae7b74c29b6b695a7985c56d9dca727ae1e13aa4ea20ee85ea82233a5310b37c738838af07bb0fa7eea782e68e72cbe1cf46a0cc896 WHIRLPOOL df85a508875587651b187520b78900634402f2ca0fc2e64f43bd4a793e382e8cc6abd5b988267645bb02b3133d9aa99ab6d6ff5e200d1277093d4f7ce6e9d240 +DIST armadillo-5.200.2.tar.gz 5430682 SHA256 70c38fd94b4c0559ece1a7313cf85e08197a82dfda4daa5decd89b795bb73079 SHA512 034539d724fd1e4078a709cd616d280178fcfdcb1d3c3ca2f80f5f2ebc4b39b60f11e3bd22773be8a8fd61350a406a6f4056d56f88ed74964f438bed0d224f6f WHIRLPOOL 4d9fb5a5e6ee53db666b7a9b0e437cf18763ba46224ac8425c7aafac4d4c68dbceb272f929ba034c4f738539ea6b52ccc0fdef596e100a226b85239ebd12470b diff --git a/sci-libs/armadillo/armadillo-3.4.4.ebuild b/sci-libs/armadillo/armadillo-3.4.4.ebuild new file mode 100644 index 000000000000..a7c75f8948a9 --- /dev/null +++ b/sci-libs/armadillo/armadillo-3.4.4.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 + +CMAKE_IN_SOURCE_BUILD=1 + +inherit cmake-utils toolchain-funcs + +DESCRIPTION="Streamlined C++ linear algebra library" +HOMEPAGE="http://arma.sourceforge.net/" +SRC_URI="mirror://sourceforge/arma/${P}.tar.gz" + +LICENSE="LGPL-3" +SLOT="0" +KEYWORDS="amd64 ppc ppc64 x86 ~amd64-linux ~x86-linux" +IUSE="blas doc examples lapack" + +RDEPEND=" + dev-libs/boost + blas? ( virtual/blas ) + lapack? ( virtual/lapack )" + +DEPEND="${DEPEND} + virtual/pkgconfig" + +src_prepare() { + # avoid the automagic cmake macros + sed -i -e '/ARMA_Find/d' CMakeLists.txt || die +} + +src_configure() { + local mycmakeargs=() + if use blas; then + mycmakeargs+=( + -DBLAS_FOUND=ON + -DBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs blas)" + ) + fi + if use lapack; then + mycmakeargs+=( + -DLAPACK_FOUND=ON + -DLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs lapack)" + ) + fi + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + dodoc README.txt + use doc && dodoc *pdf && dohtml *html + if use examples; then + insinto /usr/share/doc/${PF} + doins -r examples + fi +} diff --git a/sci-libs/armadillo/armadillo-3.6.2.ebuild b/sci-libs/armadillo/armadillo-3.6.2.ebuild new file mode 100644 index 000000000000..c7d22704bcf8 --- /dev/null +++ b/sci-libs/armadillo/armadillo-3.6.2.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +CMAKE_IN_SOURCE_BUILD=1 + +inherit cmake-utils toolchain-funcs + +DESCRIPTION="Streamlined C++ linear algebra library" +HOMEPAGE="http://arma.sourceforge.net/" +SRC_URI="mirror://sourceforge/arma/${P}.tar.gz" + +LICENSE="LGPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="blas doc examples lapack" + +RDEPEND=" + dev-libs/boost + blas? ( virtual/blas ) + lapack? ( virtual/lapack )" +DEPEND="${DEPEND} + virtual/pkgconfig" + +src_prepare() { + # avoid the automagic cmake macros + sed -i -e '/ARMA_Find/d' CMakeLists.txt || die +} + +src_configure() { + local mycmakeargs=() + if use blas; then + mycmakeargs+=( + -DBLAS_FOUND=ON + -DBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs blas)" + ) + fi + if use lapack; then + mycmakeargs+=( + -DLAPACK_FOUND=ON + -DLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs lapack)" + ) + fi + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + dodoc README.txt + use doc && dodoc *pdf && dohtml *html + if use examples; then + insinto /usr/share/doc/${PF} + doins -r examples + fi +} diff --git a/sci-libs/armadillo/armadillo-4.650.4.ebuild b/sci-libs/armadillo/armadillo-4.650.4.ebuild new file mode 100644 index 000000000000..fe855834660d --- /dev/null +++ b/sci-libs/armadillo/armadillo-4.650.4.ebuild @@ -0,0 +1,110 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +CMAKE_IN_SOURCE_BUILD=1 + +inherit cmake-utils toolchain-funcs multilib eutils + +DESCRIPTION="Streamlined C++ linear algebra library" +HOMEPAGE="http://arma.sourceforge.net/" +SRC_URI="mirror://sourceforge/arma/${P}.tar.gz" + +LICENSE="MPL-2.0" +SLOT="0/4" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="arpack blas debug doc examples hdf5 lapack mkl tbb test" +REQUIRED_USE="test? ( lapack )" + +RDEPEND=" + dev-libs/boost + arpack? ( sci-libs/arpack ) + blas? ( virtual/blas ) + lapack? ( virtual/lapack )" +DEPEND="${RDEPEND} + arpack? ( virtual/pkgconfig ) + blas? ( virtual/pkgconfig ) + hdf5? ( sci-libs/hdf5 ) + lapack? ( virtual/pkgconfig ) + mkl? ( sci-libs/mkl ) + tbb? ( dev-cpp/tbb )" +PDEPEND="${RDEPEND} + hdf5? ( sci-libs/hdf5 ) + mkl? ( sci-libs/mkl ) + tbb? ( dev-cpp/tbb )" + +src_prepare() { + # avoid the automagic cmake macros + sed -i -e '/ARMA_Find/d' CMakeLists.txt || die + cmake-utils_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DINSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)" + $(cmake-utils_use debug ARMA_EXTRA_DEBUG) + $(cmake-utils_use mkl ARMA_USE_MKL_ALLOC) + $(cmake-utils_use tbb ARMA_USE_TBB_ALLOC) + ) + if use arpack; then + mycmakeargs+=( + -DARPACK_FOUND=ON + -DARPACK_LIBRARY="$($(tc-getPKG_CONFIG) --libs arpack)" + ) + fi +# if use atlas; then +# local c=atlas-cblas l=atlas-clapack +# $(tc-getPKG_CONFIG) --exists ${c}-threads && c+=-threads +# $(tc-getPKG_CONFIG) --exists ${l}-threads && l+=-threads +# mycmakeargs+=( +# -DCBLAS_FOUND=ON +# -DCBLAS_INCLUDE_DIR="$($(tc-getPKG_CONFIG) --cflags-only-I ${c} | sed 's/-I//')" +# -DCBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs ${c})" +# -DCLAPACK_FOUND=ON +# -DCLAPACK_INCLUDE_DIR="$($(tc-getPKG_CONFIG) --cflags-only-I ${l} | sed 's/-I//')" +# -DCLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs ${l})" +# ) +# fi + if use blas; then + mycmakeargs+=( + -DBLAS_FOUND=ON + -DBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs blas)" + ) + fi + if use hdf5; then + mycmakeargs+=( + -DHDF5_FOUND=ON + -DHDF5_LIBRARIES="-lhdf5" + ) + fi + if use lapack; then + mycmakeargs+=( + -DLAPACK_FOUND=ON + -DLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs lapack)" + ) + fi + cmake-utils_src_configure +} + +src_test() { + pushd examples > /dev/null + emake \ + CXXFLAGS="-I../include ${CXXFLAGS} -DARMA_USE_BLAS -DARMA_USE_LAPACK" \ + EXTRA_LIB_FLAGS="-L.. $($(tc-getPKG_CONFIG) --libs blas lapack)" + LD_LIBRARY_PATH="..:${LD_LIBRARY_PATH}" ./example1 || die + LD_LIBRARY_PATH="..:${LD_LIBRARY_PATH}" ./example2 || die + emake clean + popd > /dev/null +} + +src_install() { + cmake-utils_src_install + dodoc README.txt + use doc && dodoc *pdf && dohtml *html + if use examples; then + insinto /usr/share/examples/${PF} + doins -r examples/* + fi +} diff --git a/sci-libs/armadillo/armadillo-5.100.2.ebuild b/sci-libs/armadillo/armadillo-5.100.2.ebuild new file mode 100644 index 000000000000..c785a401b00b --- /dev/null +++ b/sci-libs/armadillo/armadillo-5.100.2.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +CMAKE_IN_SOURCE_BUILD=1 + +inherit cmake-utils toolchain-funcs multilib eutils + +DESCRIPTION="Streamlined C++ linear algebra library" +HOMEPAGE="http://arma.sourceforge.net/" +SRC_URI="mirror://sourceforge/arma/${P}.tar.gz" + +LICENSE="MPL-2.0" +SLOT="0/5" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="arpack blas debug doc examples hdf5 lapack mkl superlu tbb test" +REQUIRED_USE="test? ( lapack )" + +RDEPEND=" + dev-libs/boost + arpack? ( sci-libs/arpack ) + blas? ( virtual/blas ) + lapack? ( virtual/lapack ) + superlu? ( sci-libs/superlu ) +" +DEPEND="${RDEPEND} + arpack? ( virtual/pkgconfig ) + blas? ( virtual/pkgconfig ) + hdf5? ( sci-libs/hdf5 ) + lapack? ( virtual/pkgconfig ) + mkl? ( sci-libs/mkl ) + tbb? ( dev-cpp/tbb )" +PDEPEND="${RDEPEND} + hdf5? ( sci-libs/hdf5 ) + mkl? ( sci-libs/mkl ) + tbb? ( dev-cpp/tbb )" + +src_prepare() { + # avoid the automagic cmake macros + sed -i -e '/ARMA_Find/d' CMakeLists.txt || die + cmake-utils_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DINSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)" + $(cmake-utils_use debug ARMA_EXTRA_DEBUG) + $(cmake-utils_use mkl ARMA_USE_MKL_ALLOC) + $(cmake-utils_use tbb ARMA_USE_TBB_ALLOC) + ) + if use arpack; then + mycmakeargs+=( + -DARPACK_FOUND=ON + -DARPACK_LIBRARY="$($(tc-getPKG_CONFIG) --libs arpack)" + ) + fi +# if use atlas; then +# local c=atlas-cblas l=atlas-clapack +# $(tc-getPKG_CONFIG) --exists ${c}-threads && c+=-threads +# $(tc-getPKG_CONFIG) --exists ${l}-threads && l+=-threads +# mycmakeargs+=( +# -DCBLAS_FOUND=ON +# -DCBLAS_INCLUDE_DIR="$($(tc-getPKG_CONFIG) --cflags-only-I ${c} | sed 's/-I//')" +# -DCBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs ${c})" +# -DCLAPACK_FOUND=ON +# -DCLAPACK_INCLUDE_DIR="$($(tc-getPKG_CONFIG) --cflags-only-I ${l} | sed 's/-I//')" +# -DCLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs ${l})" +# ) +# fi + if use blas; then + mycmakeargs+=( + -DBLAS_FOUND=ON + -DBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs blas)" + ) + fi + if use hdf5; then + mycmakeargs+=( + -DHDF5_FOUND=ON + -DHDF5_LIBRARIES="-lhdf5" + ) + fi + if use lapack; then + mycmakeargs+=( + -DLAPACK_FOUND=ON + -DLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs lapack)" + ) + fi + if use superlu; then + mycmakeargs+=( + -DSuperLU_FOUND=ON + -DSuperLU_LIBRARIES="$($(tc-getPKG_CONFIG) --libs superlu)" + ) + fi + + cmake-utils_src_configure +} + +src_test() { + pushd examples > /dev/null + emake \ + CXXFLAGS="-I../include ${CXXFLAGS} -DARMA_USE_BLAS -DARMA_USE_LAPACK" \ + EXTRA_LIB_FLAGS="-L.. $($(tc-getPKG_CONFIG) --libs blas lapack)" + LD_LIBRARY_PATH="..:${LD_LIBRARY_PATH}" ./example1 || die + LD_LIBRARY_PATH="..:${LD_LIBRARY_PATH}" ./example2 || die + emake clean + popd > /dev/null +} + +src_install() { + cmake-utils_src_install + dodoc README.txt + use doc && dodoc *pdf && dohtml *html + if use examples; then + insinto /usr/share/examples/${PF} + doins -r examples/* + fi +} diff --git a/sci-libs/armadillo/armadillo-5.200.2.ebuild b/sci-libs/armadillo/armadillo-5.200.2.ebuild new file mode 100644 index 000000000000..c785a401b00b --- /dev/null +++ b/sci-libs/armadillo/armadillo-5.200.2.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +CMAKE_IN_SOURCE_BUILD=1 + +inherit cmake-utils toolchain-funcs multilib eutils + +DESCRIPTION="Streamlined C++ linear algebra library" +HOMEPAGE="http://arma.sourceforge.net/" +SRC_URI="mirror://sourceforge/arma/${P}.tar.gz" + +LICENSE="MPL-2.0" +SLOT="0/5" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="arpack blas debug doc examples hdf5 lapack mkl superlu tbb test" +REQUIRED_USE="test? ( lapack )" + +RDEPEND=" + dev-libs/boost + arpack? ( sci-libs/arpack ) + blas? ( virtual/blas ) + lapack? ( virtual/lapack ) + superlu? ( sci-libs/superlu ) +" +DEPEND="${RDEPEND} + arpack? ( virtual/pkgconfig ) + blas? ( virtual/pkgconfig ) + hdf5? ( sci-libs/hdf5 ) + lapack? ( virtual/pkgconfig ) + mkl? ( sci-libs/mkl ) + tbb? ( dev-cpp/tbb )" +PDEPEND="${RDEPEND} + hdf5? ( sci-libs/hdf5 ) + mkl? ( sci-libs/mkl ) + tbb? ( dev-cpp/tbb )" + +src_prepare() { + # avoid the automagic cmake macros + sed -i -e '/ARMA_Find/d' CMakeLists.txt || die + cmake-utils_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DINSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)" + $(cmake-utils_use debug ARMA_EXTRA_DEBUG) + $(cmake-utils_use mkl ARMA_USE_MKL_ALLOC) + $(cmake-utils_use tbb ARMA_USE_TBB_ALLOC) + ) + if use arpack; then + mycmakeargs+=( + -DARPACK_FOUND=ON + -DARPACK_LIBRARY="$($(tc-getPKG_CONFIG) --libs arpack)" + ) + fi +# if use atlas; then +# local c=atlas-cblas l=atlas-clapack +# $(tc-getPKG_CONFIG) --exists ${c}-threads && c+=-threads +# $(tc-getPKG_CONFIG) --exists ${l}-threads && l+=-threads +# mycmakeargs+=( +# -DCBLAS_FOUND=ON +# -DCBLAS_INCLUDE_DIR="$($(tc-getPKG_CONFIG) --cflags-only-I ${c} | sed 's/-I//')" +# -DCBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs ${c})" +# -DCLAPACK_FOUND=ON +# -DCLAPACK_INCLUDE_DIR="$($(tc-getPKG_CONFIG) --cflags-only-I ${l} | sed 's/-I//')" +# -DCLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs ${l})" +# ) +# fi + if use blas; then + mycmakeargs+=( + -DBLAS_FOUND=ON + -DBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs blas)" + ) + fi + if use hdf5; then + mycmakeargs+=( + -DHDF5_FOUND=ON + -DHDF5_LIBRARIES="-lhdf5" + ) + fi + if use lapack; then + mycmakeargs+=( + -DLAPACK_FOUND=ON + -DLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs lapack)" + ) + fi + if use superlu; then + mycmakeargs+=( + -DSuperLU_FOUND=ON + -DSuperLU_LIBRARIES="$($(tc-getPKG_CONFIG) --libs superlu)" + ) + fi + + cmake-utils_src_configure +} + +src_test() { + pushd examples > /dev/null + emake \ + CXXFLAGS="-I../include ${CXXFLAGS} -DARMA_USE_BLAS -DARMA_USE_LAPACK" \ + EXTRA_LIB_FLAGS="-L.. $($(tc-getPKG_CONFIG) --libs blas lapack)" + LD_LIBRARY_PATH="..:${LD_LIBRARY_PATH}" ./example1 || die + LD_LIBRARY_PATH="..:${LD_LIBRARY_PATH}" ./example2 || die + emake clean + popd > /dev/null +} + +src_install() { + cmake-utils_src_install + dodoc README.txt + use doc && dodoc *pdf && dohtml *html + if use examples; then + insinto /usr/share/examples/${PF} + doins -r examples/* + fi +} diff --git a/sci-libs/armadillo/metadata.xml b/sci-libs/armadillo/metadata.xml new file mode 100644 index 000000000000..fb8d262a30ec --- /dev/null +++ b/sci-libs/armadillo/metadata.xml @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <maintainer> + <email>dilfridge@gentoo.org</email> + </maintainer> + <longdescription lang="en"> + Armadillo is a C++ linear algebra library (matrix maths) aiming + towards a good balance between speed and ease of use. Integer, + floating point and complex numbers are supported, as well as a + subset of trigonometric and statistics functions. Various matrix + decompositions are provided through optional integration with LAPACK + and ATLAS libraries. + A delayed evaluation approach is employed (during compile time) to + combine several operations into one and reduce (or eliminate) the + need for temporaries. This is accomplished through recursive + templates and template meta-programming. +</longdescription> + <use> + <flag name="arpack"> + Link with <pkg>sci-libs/arpack</pkg> libraries for eigen decomposition + </flag> + <flag name="mkl"> + Use matrix allocation from the Intel MKL <pkg>sci-libs/mkl</pkg> + </flag> + <flag name="tbb"> + Use matrix allocation from the Threads Building Blocks + <pkg>dev-cpp/tbb</pkg> + </flag> + <flag name="superlu"> + Use SuperLU for sparse linear equation solving + <pkg>sci-libs/superlu</pkg> + </flag> + </use> + <upstream> + <remote-id type="sourceforge">arma</remote-id> + </upstream> +</pkgmetadata> diff --git a/sci-libs/arpack/Manifest b/sci-libs/arpack/Manifest new file mode 100644 index 000000000000..2edfb77059bc --- /dev/null +++ b/sci-libs/arpack/Manifest @@ -0,0 +1,4 @@ +DIST arpack-ng-3.1.3.tar.gz 1299344 SHA256 4d649b80778e9145b9220f6cdd0d96f589f4c4fb225d385419be87dc863c3c0d SHA512 30bee66edc31d1144d029a4c6c4b03f08782bdcbe1b9627e0c3df8d142121111e9c9dd875158345918931815341a2338cd889a010939016509a7cfdd1e829426 WHIRLPOOL a804e3d85633b39fcd66f853a655a8d2c76daf52f23c0aa5b21b6af16b08f37e6fa0ec30700e6df3f4e52fa55133fcc046595a2ee836f5750edb0aa56840c169 +DIST arpack-ng_3.1.5.tar.gz 1516406 SHA256 a269ce7806bc77ced31ef794d23c3e3aff8543b65550fd7e3e24660f2a79d515 SHA512 4876b0babb89bbcc39e92b63d4537b860e9cd0b8a188937d3ba815041b7261623cdac25c91c8bef20ebce4271f822307c492cf6c9f22ec3d740218405337a515 WHIRLPOOL 6bd202c3bb3c12939bef2178d8e7fe7d7cc96a9dc0e4bb965c241f2c299e0b90d3a383429b94a6bc69bb063d689909e8cc9365091e8aa1d420875fc0c2142331 +DIST tutorial.ps.gz 105599 SHA256 2f745fe80b0a4fcdf1c273995ed67bc6cf03684ccbaa44442ad1187ea41b81c0 SHA512 a7b8fefd1a572ed477ae208d49094c1c65c9368990d12de9b3528e33fed546c947659f74e54a810d04154b4a1b0f9a94bcba4db0cf59d379e20786a261066aa4 WHIRLPOOL 6e1f6901c81993371731861b8c617f9ef22b602e737b3102c2107713b3201362ddd48205aac5814e3a157549f4fa5f280d18e7b84afc8edeadb93d10d8bda5c9 +DIST ug.ps.gz 248543 SHA256 ff1faac74bfc42442955906132756ecd7f0034803898d507dbd1bc960f6f4ab0 SHA512 3349117fb10b07207ffbab2ffa31b406d026855ea4c16e8649b14c7d70bc94e11b5730672e34acd654817799136d4bd76569ac50ec78d787df5582d18ed61328 WHIRLPOOL 83db17d8b1c49d532ca6f4412d110b1973323da5bb526804ab779bc143cf84d8270655b306822e04fa64290f531ed2c4f1e74ffbccbf76529991203e869ca6df diff --git a/sci-libs/arpack/arpack-3.1.3-r1.ebuild b/sci-libs/arpack/arpack-3.1.3-r1.ebuild new file mode 100644 index 000000000000..9aa9acbf27fd --- /dev/null +++ b/sci-libs/arpack/arpack-3.1.3-r1.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +AUTOTOOLS_AUTORECONF=true + +inherit autotools-utils eutils flag-o-matic fortran-2 toolchain-funcs + +MY_P="${PN}-ng-${PV}" + +DESCRIPTION="Arnoldi package library to solve large scale eigenvalue problems" +HOMEPAGE="http://www.caam.rice.edu/software/ARPACK/ http://forge.scilab.org/index.php/p/arpack-ng/" +SRC_URI=" + http://forge.scilab.org/upload/arpack-ng/files/${MY_P}.tar.gz + doc? ( + http://www.caam.rice.edu/software/ARPACK/SRC/ug.ps.gz + http://www.caam.rice.edu/software/ARPACK/DOCS/tutorial.ps.gz )" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="amd64 ~arm hppa ppc ppc64 x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="doc examples mpi static-libs" + +RDEPEND=" + virtual/blas + virtual/lapack + mpi? ( virtual/mpi[fortran] )" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}"/${P}-pkgconfig.patch +) + +src_configure() { + tc-export PKG_CONFIG + local myeconfargs=( + --with-blas="$($(tc-getPKG_CONFIG) --libs blas)" + --with-lapack="$($(tc-getPKG_CONFIG) --libs lapack)" + $(use_enable mpi) + ) + autotools-utils_src_configure +} + +src_install() { + autotools-utils_src_install + + dodoc DOCUMENTS/*.doc + newdoc DOCUMENTS/README README.doc + use doc && dodoc "${WORKDIR}"/*.ps + if use examples; then + insinto /usr/share/doc/${PF} + doins -r EXAMPLES + if use mpi; then + insinto /usr/share/doc/${PF}/EXAMPLES/PARPACK + doins -r PARPACK/EXAMPLES/MPI + fi + fi +} diff --git a/sci-libs/arpack/arpack-3.1.5.ebuild b/sci-libs/arpack/arpack-3.1.5.ebuild new file mode 100644 index 000000000000..17640a9af0d7 --- /dev/null +++ b/sci-libs/arpack/arpack-3.1.5.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +#AUTOTOOLS_AUTORECONF=true + +inherit autotools-utils eutils flag-o-matic fortran-2 toolchain-funcs + +MY_P="${PN}-ng_${PV}" + +DESCRIPTION="Arnoldi package library to solve large scale eigenvalue problems" +HOMEPAGE="http://www.caam.rice.edu/software/ARPACK/ http://forge.scilab.org/index.php/p/arpack-ng/" +SRC_URI=" + http://forge.scilab.org/upload/arpack-ng/files/${MY_P}.tar.gz + doc? ( + http://www.caam.rice.edu/software/ARPACK/SRC/ug.ps.gz + http://www.caam.rice.edu/software/ARPACK/DOCS/tutorial.ps.gz )" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="doc examples mpi static-libs" + +RDEPEND=" + virtual/blas + virtual/lapack + mpi? ( virtual/mpi[fortran] )" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +S="${WORKDIR}/${MY_P/_/-}" + +src_configure() { + tc-export PKG_CONFIG + local myeconfargs=( + --with-blas="$($(tc-getPKG_CONFIG) --libs blas)" + --with-lapack="$($(tc-getPKG_CONFIG) --libs lapack)" + $(use_enable mpi) + ) + autotools-utils_src_configure +} + +src_test() { + cp "${S}"/TESTS/testA.mtx "${BUILD_DIR}"/TESTS || die + autotools-utils_src_test +} + +src_install() { + autotools-utils_src_install + + dodoc DOCUMENTS/*.doc + newdoc DOCUMENTS/README README.doc + use doc && dodoc "${WORKDIR}"/*.ps + if use examples; then + insinto /usr/share/doc/${PF} + doins -r EXAMPLES + if use mpi; then + insinto /usr/share/doc/${PF}/EXAMPLES/PARPACK + doins -r PARPACK/EXAMPLES/MPI + fi + fi +} diff --git a/sci-libs/arpack/files/arpack-3.1.3-pkgconfig.patch b/sci-libs/arpack/files/arpack-3.1.3-pkgconfig.patch new file mode 100644 index 000000000000..437d9034b856 --- /dev/null +++ b/sci-libs/arpack/files/arpack-3.1.3-pkgconfig.patch @@ -0,0 +1,14 @@ + arpack.pc.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/arpack.pc.in b/arpack.pc.in +index 83739bd..996275e 100644 +--- a/arpack.pc.in ++++ b/arpack.pc.in +@@ -5,5 +5,5 @@ libdir=@libdir@ + Name: arpack + Description: ARPACK-NG + Version: @PACKAGE_VERSION@ +-Libs: -L${libdir} -larpack -lblas -latlas ++Libs: -L${libdir} -larpack @LAPACK_LIBS@ @BLAS_LIBS@ + Cflags: diff --git a/sci-libs/arpack/metadata.xml b/sci-libs/arpack/metadata.xml new file mode 100644 index 000000000000..c598daff90b3 --- /dev/null +++ b/sci-libs/arpack/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <longdescription lang="en"> + The ARnoldi PACKage is a library of routines capable of solving large scale symmetric, + nonsymmetric, and generalized eigenproblems. The software is designed to compute a few + eigenvalues with user specified features such as those of largest real + part or largest magnitude. Storage requirements are on the order of + n*k locations. No auxiliary storage is required. A set of Schur basis + vectors for the desired k-dimensional eigen-space is computed which is + numerically orthogonal to working precision. Numerically accurate + eigenvectors are available on request. +</longdescription> +</pkgmetadata> diff --git a/sci-libs/arprec/Manifest b/sci-libs/arprec/Manifest new file mode 100644 index 000000000000..87356081d5b7 --- /dev/null +++ b/sci-libs/arprec/Manifest @@ -0,0 +1,2 @@ +DIST arprec-2.2.16.tar.gz 830227 SHA256 cf71f2a7f3530b57900e67d1282c4a114830d2c00a0fba90819aa8313f11653f SHA512 278bf96402179566d4f2b9a6d69e42d726c81c814f96cd31c19df2c3b61941f3a1858e4a56577548d0fcf526b7db7caca2b7ea7ec57e834e7768d21788e7e672 WHIRLPOOL c55a875af752dfe6700cd714e2d6d34d3100676b8c41d4271065ddb0e754b3c5333cffd7432b45f2dfa0efed8f93dfd3448ac87038b18941a27f6bed1468131c +DIST arprec-2.2.17.tar.gz 900043 SHA256 87977981c1145465da51f252d04f11d16ee009d9dc7e8d0da71e4ef56b9fc5eb SHA512 d10f7d3e3d61274a36d253d2b50004bbf15447be3ffbd37bb0334ba62bd624e27fb9e26364fa1b89c1d4dfbb4136ab93d865f990ce123ecf94d9614e3ac567d1 WHIRLPOOL 6daeff384cfc9dfbb5771a177166212370ba724850d27ae99de63d1e2f2bc5f76b2be5c28e1fa0bb1d407a29d46212b0896c5e7f6ba66f9c2830e3a53e3e8b31 diff --git a/sci-libs/arprec/arprec-2.2.16.ebuild b/sci-libs/arprec/arprec-2.2.16.ebuild new file mode 100644 index 000000000000..e467be41e889 --- /dev/null +++ b/sci-libs/arprec/arprec-2.2.16.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 + +FORTRAN_NEEDED=fortran +AUTOTOOLS_AUTORECONF=1 +AUTOTOOLS_IN_SOURCE_BUILD=1 + +inherit eutils fortran-2 autotools-utils + +DESCRIPTION="Arbitrary precision float arithmetics and functions" +HOMEPAGE="http://crd.lbl.gov/~dhbailey/mpdist/" +SRC_URI="http://crd.lbl.gov/~dhbailey/mpdist/${P}.tar.gz" + +SLOT="0" +LICENSE="BSD" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="doc cpu_flags_x86_fma3 cpu_flags_x86_fma4 fortran qd static-libs" + +DEPEND="qd? ( sci-libs/qd[fortran=] )" +RDEPEND="${DEPEND}" + +src_configure() { + local myeconfargs=( + --docdir="${EPREFIX}/usr/share/doc/${PF}" + $(use_enable "cpu_flags_x86_fma$(usex cpu_flags_x86_fma3 3 4)" fma) + $(use_enable fortran) + $(use_enable qd) + ) + autotools-utils_src_configure +} + +src_compile() { + autotools-utils_src_compile + use fortran && autotools-utils_src_compile toolkit +} + +src_install() { + autotools-utils_src_install + if use fortran; then + cd toolkit + ./mathinit || die "mathinit failed" + exeinto /usr/libexec/${PN} + doexe .libs/mathtool + insinto /usr/libexec/${PN} + doins *.dat + echo > mathtool.exe "#!${EROOT}/bin/sh" + echo >> mathtool.exe "cd ${EROOT}/usr/libexec/arprec && exec ./mathtool" + newbin mathtool.exe mathtool + newdoc README README.mathtool + fi + use doc || rm "${ED}"/usr/share/doc/${PF}/*.pdf +} diff --git a/sci-libs/arprec/arprec-2.2.17.ebuild b/sci-libs/arprec/arprec-2.2.17.ebuild new file mode 100644 index 000000000000..b5e9fe326944 --- /dev/null +++ b/sci-libs/arprec/arprec-2.2.17.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +FORTRAN_NEEDED=fortran +FORTRAN_STANDARD="90" +AUTOTOOLS_AUTORECONF=1 +AUTOTOOLS_IN_SOURCE_BUILD=1 + +inherit eutils fortran-2 autotools-utils + +DESCRIPTION="Arbitrary precision float arithmetics and functions" +HOMEPAGE="http://crd.lbl.gov/~dhbailey/mpdist/" +SRC_URI="http://crd.lbl.gov/~dhbailey/mpdist/${P}.tar.gz" + +SLOT="0" +LICENSE="BSD" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="doc cpu_flags_x86_fma3 cpu_flags_x86_fma4 fortran qd static-libs" + +DEPEND="qd? ( sci-libs/qd:0=[fortran=] )" +RDEPEND="${DEPEND}" + +src_configure() { + local myeconfargs=( + --docdir="${EPREFIX}/usr/share/doc/${PF}" + $(use_enable "cpu_flags_x86_fma$(usex cpu_flags_x86_fma3 3 4)" fma) + $(use_enable fortran) + $(use_enable qd) + ) + autotools-utils_src_configure +} + +src_compile() { + autotools-utils_src_compile + use fortran && autotools-utils_src_compile toolkit +} + +src_install() { + autotools-utils_src_install + if use fortran; then + cd toolkit + ./mathinit || die "mathinit failed" + exeinto /usr/libexec/${PN} + doexe .libs/mathtool + insinto /usr/libexec/${PN} + doins *.dat + echo > mathtool.exe "#!${EROOT%/}/bin/sh" + echo >> mathtool.exe "cd ${EROOT%/}/usr/libexec/arprec && exec ./mathtool" + newbin mathtool.exe mathtool + newdoc README README.mathtool + fi + use doc || rm "${ED}"/usr/share/doc/${PF}/*.pdf +} diff --git a/sci-libs/arprec/metadata.xml b/sci-libs/arprec/metadata.xml new file mode 100644 index 000000000000..f5a8029c8896 --- /dev/null +++ b/sci-libs/arprec/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> +<maintainer> + <email>grozin@gentoo.org</email> + <name>Andrey Grozin</name> +</maintainer> +<longdescription> + Arbitrary precision library for float arithmetics and mathematical functions. +</longdescription> +<use> + <flag name="qd">Use <pkg>sci-libs/qd</pkg> for quad-double datatype</flag> +</use> +</pkgmetadata> diff --git a/sci-libs/avogadrolibs/Manifest b/sci-libs/avogadrolibs/Manifest new file mode 100644 index 000000000000..b8ef93d9df75 --- /dev/null +++ b/sci-libs/avogadrolibs/Manifest @@ -0,0 +1 @@ +DIST avogadrolibs-0.7.2.tar.gz 637001 SHA256 217eb5d62082bbaacefe8ad3c8c8ddbbd41931d306038774f761c0155aeccc76 SHA512 a796af1ab3eb77eb2e5484e9e9cb9d7cf68759c9afbd48ddeb237513583e2c207c7c70b2e87b37843886fc737410456ee451e8fe5a21707bdc01fdf600d4cbb8 WHIRLPOOL 81f0d1949c0a93b9efd1f47f276929b01ca761a5875015be3feafb493be3629b0b8e00c0ba930e1ca73b79fc621a67f7e2ab41ae5e4fc10dddd18449238d933f diff --git a/sci-libs/avogadrolibs/avogadrolibs-0.7.2-r1.ebuild b/sci-libs/avogadrolibs/avogadrolibs-0.7.2-r1.ebuild new file mode 100644 index 000000000000..d68a539ddce7 --- /dev/null +++ b/sci-libs/avogadrolibs/avogadrolibs-0.7.2-r1.ebuild @@ -0,0 +1,51 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit cmake-utils + +DESCRIPTION="Advanced molecule editor and visualizer 2 - libraries" +HOMEPAGE="http://www.openchemistry.org/" +SRC_URI="mirror://sourceforge/project/avogadro/avogadro2/${PV}/${P}.tar.gz" + +SLOT="0" +LICENSE="BSD GPL-2+" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="doc opengl qt4 static-plugins test vtk" + +REQUIRED_USE="qt4? ( opengl )" + +RDEPEND=" + >=sci-chemistry/molequeue-0.7 + sci-libs/chemkit + sci-libs/hdf5:= + opengl? ( + dev-qt/qtopengl:4 + media-libs/glew + ) + qt4? ( + dev-qt/qtcore:4 + dev-qt/qtgui:4 + ) + vtk? ( sci-libs/vtk ) +" +DEPEND="${DEPEND} + test? ( dev-cpp/gtest )" + +PATCHES=( "${FILESDIR}"/${P}-6464.patch ) + +src_configure() { + local mycmakeargs=( + -DUSE_PROTOCALL=OFF + -DBUILD_GPL_PLUGINS=ON + $(cmake-utils_use_build doc DOCUMENTATION) + $(cmake-utils_use_use opengl OPENGL) + $(cmake-utils_use_use qt4 QT) + $(cmake-utils_use_build static-plugins STATIC_PLUGINS) + $(cmake-utils_use_enable test TESTING) + $(cmake-utils_use_use vtk VTK) + ) + cmake-utils_src_configure +} diff --git a/sci-libs/avogadrolibs/files/avogadrolibs-0.7.2-6464.patch b/sci-libs/avogadrolibs/files/avogadrolibs-0.7.2-6464.patch new file mode 100644 index 000000000000..f763c242cc48 --- /dev/null +++ b/sci-libs/avogadrolibs/files/avogadrolibs-0.7.2-6464.patch @@ -0,0 +1,16 @@ + cmake/AvogadroLibsConfig.cmake.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/cmake/AvogadroLibsConfig.cmake.in b/cmake/AvogadroLibsConfig.cmake.in +index ad57195..8a63400 100644 +--- a/cmake/AvogadroLibsConfig.cmake.in ++++ b/cmake/AvogadroLibsConfig.cmake.in +@@ -10,7 +10,7 @@ set(AvogadroLibs_VERSION "${AvogadroLibs_VERSION_MAJOR}.${AvogadroLibs_V + + set(AvogadroLibs_INSTALL_PREFIX "@CMAKE_INSTALL_PREFIX@") + set(AvogadroLibs_INCLUDE_DIRS "${AvogadroLibs_INSTALL_PREFIX}/@INSTALL_INCLUDE_DIR@") +-set(AvogadroLibs_LIBRARY_DIR "${AvogadroLibs_INSTALL_PREFIX}/@INSTALL_LIBRARY_DIR@@LIB_SUFFIX@") ++set(AvogadroLibs_LIBRARY_DIR "${AvogadroLibs_INSTALL_PREFIX}/@INSTALL_LIBRARY_DIR@") + set(AvogadroLibs_RUNTIME_DIR "${AvogadroLibs_INSTALL_PREFIX}/@INSTALL_RUNTIME_DIR@") + set(AvogadroLibs_CMAKE_DIR "${AvogadroLibs_LIBRARY_DIR}/cmake/avogadrolibs") + diff --git a/sci-libs/avogadrolibs/metadata.xml b/sci-libs/avogadrolibs/metadata.xml new file mode 100644 index 000000000000..e6d586ae9200 --- /dev/null +++ b/sci-libs/avogadrolibs/metadata.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci-chemistry</herd> + <maintainer> + <email>jlec@gentoo.org</email> + </maintainer> + <use> + <flag name="static-plugins"> + build all plugins statically into main plugin modules + </flag> + <flag name="vtk">include vtk support</flag> + </use> + <upstream> + <remote-id type="sourceforge">avogadro</remote-id> + </upstream> +</pkgmetadata> diff --git a/sci-libs/balbes-db/Manifest b/sci-libs/balbes-db/Manifest new file mode 100644 index 000000000000..86fed7e6ab9e --- /dev/null +++ b/sci-libs/balbes-db/Manifest @@ -0,0 +1 @@ +DIST ccp4-6.1.3-balbesdb-10-11-08.tar.gz 600856059 SHA256 5606fc5e131138b56fa3a1afce014225a6c07826b99587f132f6c337585f4f0d SHA512 5b7f3b3465312da72ff4816c96244252a6f0bf039fde8ff772ea683e6317053d903cdc2b3b86b78e8edbb1c766d1b3676048ac4e7d4d0db29ed7bf62dfb00ab2 WHIRLPOOL 9a01610c9767aece4c9cc052a8aa2fd5dff9c9967f11688f5e6e206a82e2714751e086a7ddbe6a99da23b70163c7b096f57d281eebe53b8dd7cdb18faed23d63 diff --git a/sci-libs/balbes-db/balbes-db-6.1.3-r1.ebuild b/sci-libs/balbes-db/balbes-db-6.1.3-r1.ebuild new file mode 100644 index 000000000000..befa38413e59 --- /dev/null +++ b/sci-libs/balbes-db/balbes-db-6.1.3-r1.ebuild @@ -0,0 +1,47 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +MY_P="ccp4-${PV}" + +SRC="ftp://ftp.ccp4.ac.uk/ccp4" +VERSION="10-11-08" + +DESCRIPTION="The database for the BALBES automated crystallographic molecular replacement pipeline" +HOMEPAGE="http://www.ysbl.york.ac.uk/~fei/balbes/" +SRC_URI="${SRC}/${PV}/${MY_P}-${PN/-/}-${VERSION}.tar.gz" + +LICENSE="ccp4" +SLOT="0" +KEYWORDS="amd64 ~ppc x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos" +IUSE="" + +RDEPEND=" + >=dev-python/pyxml-0.8.4 + sci-libs/monomer-db" +DEPEND="${RDEPEND}" +RESTRICT="binchecks strip" + +S="${WORKDIR}/${MY_P}" + +src_install() { + dodir /usr/share/balbes/BALBES_0.0.1 + rm -rf share/balbes/BALBES_0.0.1/dic || die + # We don't want to wait around to copy all this, or suck up double + # the disk space + einfo "Installing files, which can take some time ..." + mv "${S}"/share/balbes/BALBES_0.0.1/* "${ED}"/usr/share/balbes/BALBES_0.0.1/ || die + # db files shouldn't be executable + find "${ED}"/usr/share/balbes/BALBES_0.0.1/ \ + -type f \ + -exec chmod 664 '{}' \; || die + dosym ../../ccp4/data/monomers /usr/share/balbes/BALBES_0.0.1/dic + + cat >> "${T}"/20balbes <<- EOF + BALBES_ROOT="${EPREFIX}/usr/share/balbes/BALBES_0.0.1/" + EOF + + doenvd "${T}"/20balbes +} diff --git a/sci-libs/balbes-db/metadata.xml b/sci-libs/balbes-db/metadata.xml new file mode 100644 index 000000000000..51fdedab1b38 --- /dev/null +++ b/sci-libs/balbes-db/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci-chemistry</herd> +</pkgmetadata> diff --git a/sci-libs/beagle/Manifest b/sci-libs/beagle/Manifest new file mode 100644 index 000000000000..6e60f608bfcf --- /dev/null +++ b/sci-libs/beagle/Manifest @@ -0,0 +1 @@ +DIST beagle-3.0.3.tar.gz 5002994 SHA256 2e481dc180bc1f665ade82f0568db4d67f4b8b3f32bc155f1358fd48630e2935 SHA512 2f8f027f3f24d0fd287e27a80fe5b24e18550144add06fb8157dd03f734f5ce212f62889720c81fd33246fa7086e9b913802ec0c5155df5bd801c36888b346cb WHIRLPOOL 7902d2bf149afb9c2dc1f89fbb6754250950d6df90e63b445939b9c7fdc21b59835ac840d3babb7b56056c24e1f159da9aef27105ff9e05e0298f283e6697bbb diff --git a/sci-libs/beagle/beagle-3.0.3.ebuild b/sci-libs/beagle/beagle-3.0.3.ebuild new file mode 100644 index 000000000000..52ba7e8f86b2 --- /dev/null +++ b/sci-libs/beagle/beagle-3.0.3.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit autotools-utils + +DESCRIPTION="Open BEAGLE, a versatile EC/GA/GP framework" +SRC_URI="mirror://sourceforge/beagle/${P}.tar.gz" +HOMEPAGE="http://beagle.gel.ulaval.ca/" + +SLOT="0" +LICENSE="LGPL-2.1" +KEYWORDS="~amd64 x86" +IUSE="doc static-libs" + +RDEPEND=" + sys-libs/zlib + !app-misc/beagle + !dev-libs/libbeagle" +DEPEND="${DEPEND} + doc? ( app-doc/doxygen )" + +PATCHES=( "${FILESDIR}"/${PN}-3.0.3-gcc43.patch "${FILESDIR}"/${PN}-3.0.3-gcc47.patch ) + +AUTOTOOLS_IN_SOURCE_BUILD=1 + +src_prepare() { + autotools-utils_src_prepare + sed -e "s:@LIBS@:@LIBS@ -lpthread:" \ + -i PACC/Threading/Makefile.in || \ + die "Failed to fix threading libs makefile." +} + +src_configure() { + local myeconfargs=( --enable-optimization ) + autotools-utils_src_configure +} + +src_compile() { + autotools-utils_src_compile + + use doc && autotools-utils_src_compile doc +} + +src_install () { + autotools-utils_src_install + + if use doc; then + cp -pPR examples "${D}"/usr/share/doc/${PF} || \ + die "Failed to install examples." + dohtml -r refman/* + fi +} diff --git a/sci-libs/beagle/files/beagle-3.0.3-gcc43.patch b/sci-libs/beagle/files/beagle-3.0.3-gcc43.patch new file mode 100644 index 000000000000..608ce388e793 --- /dev/null +++ b/sci-libs/beagle/files/beagle-3.0.3-gcc43.patch @@ -0,0 +1,89 @@ +diff -rupN beagle-3.0.3b/PACC/Math/Matrix.cpp beagle-3.0.3/PACC/Math/Matrix.cpp +--- beagle-3.0.3b/PACC/Math/Matrix.cpp 2009-01-20 23:38:39.000000000 -0400 ++++ beagle-3.0.3/PACC/Math/Matrix.cpp 2009-01-21 00:26:46.000000000 -0400 +@@ -40,6 +40,7 @@ + #include <stdexcept> + #include <iomanip> + #include <cmath> ++#include <climits> + + using namespace std; + using namespace PACC; +diff -rupN beagle-3.0.3b/PACC/Math/Vector.hpp beagle-3.0.3/PACC/Math/Vector.hpp +--- beagle-3.0.3b/PACC/Math/Vector.hpp 2009-01-20 23:38:39.000000000 -0400 ++++ beagle-3.0.3/PACC/Math/Vector.hpp 2009-01-21 00:26:29.000000000 -0400 +@@ -42,6 +42,7 @@ + #include "XML/Document.hpp" + #include "XML/Streamer.hpp" + #include <cmath> ++#include <algorithm> + + namespace PACC { + +diff -rupN beagle-3.0.3b/PACC/Socket/Cafe.cpp beagle-3.0.3/PACC/Socket/Cafe.cpp +--- beagle-3.0.3b/PACC/Socket/Cafe.cpp 2009-01-20 23:38:39.000000000 -0400 ++++ beagle-3.0.3/PACC/Socket/Cafe.cpp 2009-01-21 00:31:09.000000000 -0400 +@@ -35,6 +35,7 @@ + + #include "Socket/Cafe.hpp" + #include <iostream> ++#include <cstring> + + #ifdef WIN32 + ///////////// specifics for windows ///////////// +diff -rupN beagle-3.0.3b/PACC/Socket/Port.cpp beagle-3.0.3/PACC/Socket/Port.cpp +--- beagle-3.0.3b/PACC/Socket/Port.cpp 2009-01-20 23:38:39.000000000 -0400 ++++ beagle-3.0.3/PACC/Socket/Port.cpp 2009-01-21 00:30:54.000000000 -0400 +@@ -34,6 +34,7 @@ + */ + + #include "Socket/Port.hpp" ++#include <cstring> + + #ifdef WIN32 + ///////////// specifics for windows ///////////// +diff -rupN beagle-3.0.3b/PACC/Threading/Thread.cpp beagle-3.0.3/PACC/Threading/Thread.cpp +--- beagle-3.0.3b/PACC/Threading/Thread.cpp 2009-01-20 23:38:39.000000000 -0400 ++++ beagle-3.0.3/PACC/Threading/Thread.cpp 2009-01-21 00:28:02.000000000 -0400 +@@ -35,6 +35,7 @@ + + #include "Threading/Thread.hpp" + #include "Util/Assert.hpp" ++#include <cstdlib> + + #ifdef WIN32 + #include <windows.h> +diff -rupN beagle-3.0.3b/PACC/Util/SignalHandler.cpp beagle-3.0.3/PACC/Util/SignalHandler.cpp +--- beagle-3.0.3b/PACC/Util/SignalHandler.cpp 2009-01-20 23:38:39.000000000 -0400 ++++ beagle-3.0.3/PACC/Util/SignalHandler.cpp 2009-01-20 23:44:20.000000000 -0400 +@@ -37,6 +37,7 @@ + #include "Util/Assert.hpp" + #include <signal.h> + #include <stdexcept> ++#include <cstdlib> + + using namespace std; + using namespace PACC; +diff -rupN beagle-3.0.3b/PACC/Util/Tokenizer.cpp beagle-3.0.3/PACC/Util/Tokenizer.cpp +--- beagle-3.0.3b/PACC/Util/Tokenizer.cpp 2009-01-20 23:38:39.000000000 -0400 ++++ beagle-3.0.3/PACC/Util/Tokenizer.cpp 2009-01-20 23:44:10.000000000 -0400 +@@ -36,6 +36,8 @@ + #include "Util/Tokenizer.hpp" + #include "Util/Assert.hpp" + #include <stdexcept> ++#include <cstring> ++#include <cstdlib> + + using namespace std; + using namespace PACC; +diff -rupN beagle-3.0.3b/PACC/XML/Node.cpp beagle-3.0.3/PACC/XML/Node.cpp +--- beagle-3.0.3b/PACC/XML/Node.cpp 2009-01-20 23:38:39.000000000 -0400 ++++ beagle-3.0.3/PACC/XML/Node.cpp 2009-01-20 23:45:09.000000000 -0400 +@@ -39,6 +39,7 @@ + #include "Util/Assert.hpp" + #include <sstream> + #include <stdexcept> ++#include <cstring> + + using namespace std; + using namespace PACC; diff --git a/sci-libs/beagle/files/beagle-3.0.3-gcc47.patch b/sci-libs/beagle/files/beagle-3.0.3-gcc47.patch new file mode 100644 index 000000000000..cb3546c68a5c --- /dev/null +++ b/sci-libs/beagle/files/beagle-3.0.3-gcc47.patch @@ -0,0 +1,10 @@ +--- beagle/include/beagle/RouletteT.hpp ++++ beagle/include/beagle/RouletteT.hpp +@@ -87,7 +87,7 @@ + Beagle_StackTraceBeginM(); + Beagle_AssertM(inWeight>=0.0); + if(VectorType::empty()==false) inWeight += VectorType::back().first; +- push_back(std::make_pair(inWeight,inValue)); ++ this->push_back(std::make_pair(inWeight,inValue)); + Beagle_StackTraceEndM("void RouletteT<T>::insert(const T& inValue, double inWeight)"); + } diff --git a/sci-libs/beagle/metadata.xml b/sci-libs/beagle/metadata.xml new file mode 100644 index 000000000000..4b2a7479afe8 --- /dev/null +++ b/sci-libs/beagle/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <longdescription> + Open BEAGLE is a C++ Evolutionary Computation (EC) framework. It provides an high-level software environment to do any kind of EC, with support for tree-based genetic programming, bit string and real-valued genetic algorithms, and evolution strategy. + </longdescription> + <upstream> + <remote-id type="sourceforge">beagle</remote-id> + </upstream> +</pkgmetadata> diff --git a/sci-libs/blas-reference/Manifest b/sci-libs/blas-reference/Manifest new file mode 100644 index 000000000000..d8ee8dc42400 --- /dev/null +++ b/sci-libs/blas-reference/Manifest @@ -0,0 +1 @@ +DIST lapack-lite-3.1.1.tgz 5332509 SHA256 505a13272d0d71c45ea52be2de74b0562b234ea3ccf5160665c7a2ee74a58437 SHA512 492b932ef313339ce6b4e63ac8f778489e6870b0eb85f7b086f3c844e75f98e7f85382c7556dfa368ab8320b6f02d1df8ccfcb40b5c0b7c2d74518b7c309e75c WHIRLPOOL 11145043d16b8c2972229e17a24e92e62987c08e84d91b81a7f4767b80f13844faffb2a2798b321a78c7127d849a0fd60cbb1605f03e150b4eaa6c230f0e7fdd diff --git a/sci-libs/blas-reference/blas-reference-20070226-r2.ebuild b/sci-libs/blas-reference/blas-reference-20070226-r2.ebuild new file mode 100644 index 000000000000..6c6e0a9e373b --- /dev/null +++ b/sci-libs/blas-reference/blas-reference-20070226-r2.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 + +inherit eutils fortran-2 autotools multilib flag-o-matic toolchain-funcs + +LAPACKPV="3.1.1" +LAPACKPN="lapack-lite" + +DESCRIPTION="Basic Linear Algebra Subprograms F77 reference implementations" +HOMEPAGE="http://www.netlib.org/blas/" +SRC_URI="http://www.netlib.org/lapack/${LAPACKPN}-${LAPACKPV}.tgz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris" +IUSE="doc" + +DEPEND="app-eselect/eselect-blas" +RDEPEND="${DEPEND} + doc? ( app-doc/blas-docs )" + +S="${WORKDIR}/${LAPACKPN}-${LAPACKPV}" + +src_prepare() { + ESELECT_PROF=reference + epatch \ + "${FILESDIR}"/${P}-autotool.patch \ + "${FILESDIR}"/${P}-pkg-config.patch + eautoreconf + + cp "${FILESDIR}"/eselect.blas.reference "${T}"/ + sed -i -e "s:/usr:${EPREFIX}/usr:" "${T}"/eselect.blas.reference || die + if [[ ${CHOST} == *-darwin* ]] ; then + sed -i -e 's/\.so\([\.0-9]\+\)\?/\1.dylib/g' \ + "${T}"/eselect.blas.reference || die + fi +} + +src_configure() { + econf \ + --libdir="${EPREFIX}"/usr/$(get_libdir)/blas/reference +} + +src_compile() { + emake LDFLAGS="${LDFLAGS}" || die "emake failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + eselect blas add $(get_libdir) "${T}"/eselect.blas.reference ${ESELECT_PROF} +} + +pkg_postinst() { + local p=blas + local current_lib=$(eselect ${p} show | cut -d' ' -f2) + if [[ ${current_lib} == ${ESELECT_PROF} || -z ${current_lib} ]]; then + # work around eselect bug #189942 + local configfile="${EROOT}"/etc/env.d/${p}/$(get_libdir)/config + [[ -e ${configfile} ]] && rm -f ${configfile} + eselect ${p} set ${ESELECT_PROF} + elog "${p} has been eselected to ${ESELECT_PROF}" + else + elog "Current eselected ${p} is ${current_lib}" + elog "To use ${p} ${ESELECT_PROF} implementation, you have to issue (as root):" + elog "\t eselect ${p} set ${ESELECT_PROF}" + fi +} diff --git a/sci-libs/blas-reference/blas-reference-20070226-r3.ebuild b/sci-libs/blas-reference/blas-reference-20070226-r3.ebuild new file mode 100644 index 000000000000..6317d3d99dd4 --- /dev/null +++ b/sci-libs/blas-reference/blas-reference-20070226-r3.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 + +inherit eutils fortran-2 autotools multilib flag-o-matic toolchain-funcs + +LAPACKPV="3.1.1" +LAPACKPN="lapack-lite" + +DESCRIPTION="Basic Linear Algebra Subprograms F77 reference implementations" +HOMEPAGE="http://www.netlib.org/blas/" +SRC_URI="http://www.netlib.org/lapack/${LAPACKPN}-${LAPACKPV}.tgz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="" +IUSE="doc" + +DEPEND="app-eselect/eselect-blas" +RDEPEND="${DEPEND} + doc? ( app-doc/blas-docs )" + +S="${WORKDIR}/${LAPACKPN}-${LAPACKPV}" + +src_prepare() { + ESELECT_PROF=reference + epatch \ + "${FILESDIR}"/${P}-autotool.patch \ + "${FILESDIR}"/${P}-pkg-config.patch + eautoreconf + + cp "${FILESDIR}"/eselect.blas.reference-ng "${T}"/eselect.blas.reference || die + sed -i -e "s:/usr:${EPREFIX}/usr:" "${T}"/eselect.blas.reference || die + if [[ ${CHOST} == *-darwin* ]] ; then + sed -i -e 's/\.so\([\.0-9]\+\)\?/\1.dylib/g' \ + "${T}"/eselect.blas.reference || die + fi +} + +src_configure() { + econf \ + --libdir="${EPREFIX}"/usr/$(get_libdir)/blas/reference +} + +src_compile() { + emake LDFLAGS="${LDFLAGS}" || die "emake failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + eselect blas add $(get_libdir) "${T}"/eselect.blas.reference ${ESELECT_PROF} +} + +pkg_postinst() { + local p=blas + local current_lib=$(eselect ${p} show | cut -d' ' -f2) + if [[ ${current_lib} == ${ESELECT_PROF} || -z ${current_lib} ]]; then + # work around eselect bug #189942 + local configfile="${EROOT}"/etc/env.d/${p}/$(get_libdir)/config + [[ -e ${configfile} ]] && rm -f ${configfile} + eselect ${p} set ${ESELECT_PROF} + elog "${p} has been eselected to ${ESELECT_PROF}" + else + elog "Current eselected ${p} is ${current_lib}" + elog "To use ${p} ${ESELECT_PROF} implementation, you have to issue (as root):" + elog "\t eselect ${p} set ${ESELECT_PROF}" + fi +} diff --git a/sci-libs/blas-reference/blas-reference-20070226.ebuild b/sci-libs/blas-reference/blas-reference-20070226.ebuild new file mode 100644 index 000000000000..b062b5b6a6f5 --- /dev/null +++ b/sci-libs/blas-reference/blas-reference-20070226.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit eutils fortran-2 autotools multilib flag-o-matic toolchain-funcs + +LAPACKPV="3.1.1" +LAPACKPN="lapack-lite" + +DESCRIPTION="Basic Linear Algebra Subprograms F77 reference implementations" +HOMEPAGE="http://www.netlib.org/blas/" +SRC_URI="http://www.netlib.org/lapack/${LAPACKPN}-${LAPACKPV}.tgz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="alpha amd64 hppa ia64 ppc ppc64 s390 sparc x86 ~x86-fbsd" +IUSE="doc" + +DEPEND="app-eselect/eselect-blas" +RDEPEND="${DEPEND} + doc? ( app-doc/blas-docs )" + +S="${WORKDIR}/${LAPACKPN}-${LAPACKPV}" + +src_unpack() { + ESELECT_PROF=reference + unpack ${A} + cd "${S}" + epatch "${FILESDIR}"/${P}-autotool.patch + eautoreconf +} + +src_compile() { + econf \ + --libdir=/usr/$(get_libdir)/blas/reference + emake LDFLAGS="${LDFLAGS}" || die "emake failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + eselect blas add $(get_libdir) "${FILESDIR}"/eselect.blas.reference ${ESELECT_PROF} +} + +pkg_postinst() { + local p=blas + local current_lib=$(eselect ${p} show | cut -d' ' -f2) + if [[ ${current_lib} == ${ESELECT_PROF} || -z ${current_lib} ]]; then + # work around eselect bug #189942 + local configfile="${ROOT}"/etc/env.d/${p}/$(get_libdir)/config + [[ -e ${configfile} ]] && rm -f ${configfile} + eselect ${p} set ${ESELECT_PROF} + elog "${p} has been eselected to ${ESELECT_PROF}" + else + elog "Current eselected ${p} is ${current_lib}" + elog "To use ${p} ${ESELECT_PROF} implementation, you have to issue (as root):" + elog "\t eselect ${p} set ${ESELECT_PROF}" + fi +} diff --git a/sci-libs/blas-reference/files/blas-reference-20070226-autotool.patch b/sci-libs/blas-reference/files/blas-reference-20070226-autotool.patch new file mode 100644 index 000000000000..8d8192fc0254 --- /dev/null +++ b/sci-libs/blas-reference/files/blas-reference-20070226-autotool.patch @@ -0,0 +1,243 @@ +--- configure.ac 1970-01-01 01:00:00.000000000 +0100 ++++ configure.ac 2007-07-16 10:14:29.000000000 +0100 +@@ -0,0 +1,14 @@ ++AC_PREREQ(2.59) ++AC_INIT(blas, 20070226, lapack@cs.utk.edu) ++AM_INIT_AUTOMAKE([foreign]) ++ ++AC_LANG(Fortran 77) ++AC_PROG_F77 ++AC_PROG_LIBTOOL ++ ++AC_CONFIG_FILES([Makefile ++ BLAS/Makefile ++ BLAS/SRC/Makefile ++ BLAS/TESTING/Makefile ++ BLAS/blas.pc]) ++AC_OUTPUT +--- Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ Makefile.am 2007-07-16 01:51:11.000000000 +0100 +@@ -0,0 +1 @@ ++SUBDIRS = BLAS +--- BLAS/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ BLAS/Makefile.am 2007-08-14 11:38:42.000000000 +0100 +@@ -0,0 +1,7 @@ ++SUBDIRS = SRC TESTING ++ ++pkgconfigdir = $(libdir) ++pkgconfig_DATA = blas.pc ++ ++EXTRA = blas.pc ++ +--- BLAS/blas.pc.in 1970-01-01 01:00:00.000000000 +0100 ++++ BLAS/blas.pc.in 2007-08-17 11:38:23.000000000 +0100 +@@ -0,0 +1,11 @@ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++libdir=@libdir@ ++includedir=@includedir@ ++ ++Name: @PACKAGE_NAME@ ++Description: Basic Linear Algebra Subprograms F77 reference implementations ++Version: @PACKAGE_VERSION@ ++URL: http://www.netlib.org/blas ++Libs: -lblas ++Libs.private: -lm +--- BLAS/SRC/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ BLAS/SRC/Makefile.am 2007-07-16 01:50:12.000000000 +0100 +@@ -0,0 +1,153 @@ ++lib_LTLIBRARIES = libblas.la ++ ++libblas_la_SOURCES = \ ++ caxpy.f \ ++ ccopy.f \ ++ cdotc.f \ ++ cdotu.f \ ++ cgbmv.f \ ++ cgemm.f \ ++ cgemv.f \ ++ cgerc.f \ ++ cgeru.f \ ++ chbmv.f \ ++ chemm.f \ ++ chemv.f \ ++ cher2.f \ ++ cher2k.f \ ++ cher.f \ ++ cherk.f \ ++ chpmv.f \ ++ chpr2.f \ ++ chpr.f \ ++ crotg.f \ ++ cscal.f \ ++ csrot.f \ ++ csscal.f \ ++ cswap.f \ ++ csymm.f \ ++ csyr2k.f \ ++ csyrk.f \ ++ ctbmv.f \ ++ ctbsv.f \ ++ ctpmv.f \ ++ ctpsv.f \ ++ ctrmm.f \ ++ ctrmv.f \ ++ ctrsm.f \ ++ ctrsv.f \ ++ dasum.f \ ++ daxpy.f \ ++ dcabs1.f \ ++ dcopy.f \ ++ ddot.f \ ++ dgbmv.f \ ++ dgemm.f \ ++ dgemv.f \ ++ dger.f \ ++ dnrm2.f \ ++ drot.f \ ++ drotg.f \ ++ drotm.f \ ++ drotmg.f \ ++ dsbmv.f \ ++ dscal.f \ ++ dsdot.f \ ++ dspmv.f \ ++ dspr2.f \ ++ dspr.f \ ++ dswap.f \ ++ dsymm.f \ ++ dsymv.f \ ++ dsyr2.f \ ++ dsyr2k.f \ ++ dsyr.f \ ++ dsyrk.f \ ++ dtbmv.f \ ++ dtbsv.f \ ++ dtpmv.f \ ++ dtpsv.f \ ++ dtrmm.f \ ++ dtrmv.f \ ++ dtrsm.f \ ++ dtrsv.f \ ++ dzasum.f \ ++ dznrm2.f \ ++ icamax.f \ ++ idamax.f \ ++ isamax.f \ ++ izamax.f \ ++ lsame.f \ ++ scabs1.f \ ++ sasum.f \ ++ saxpy.f \ ++ scasum.f \ ++ scnrm2.f \ ++ scopy.f \ ++ sdot.f \ ++ sdsdot.f \ ++ sgbmv.f \ ++ sgemm.f \ ++ sgemv.f \ ++ sger.f \ ++ snrm2.f \ ++ srot.f \ ++ srotg.f \ ++ srotm.f \ ++ srotmg.f \ ++ ssbmv.f \ ++ sscal.f \ ++ sspmv.f \ ++ sspr2.f \ ++ sspr.f \ ++ sswap.f \ ++ ssymm.f \ ++ ssymv.f \ ++ ssyr2.f \ ++ ssyr2k.f \ ++ ssyr.f \ ++ ssyrk.f \ ++ stbmv.f \ ++ stbsv.f \ ++ stpmv.f \ ++ stpsv.f \ ++ strmm.f \ ++ strmv.f \ ++ strsm.f \ ++ strsv.f \ ++ xerbla.f \ ++ zaxpy.f \ ++ zcopy.f \ ++ zdotc.f \ ++ zdotu.f \ ++ zdrot.f \ ++ zdscal.f \ ++ zgbmv.f \ ++ zgemm.f \ ++ zgemv.f \ ++ zgerc.f \ ++ zgeru.f \ ++ zhbmv.f \ ++ zhemm.f \ ++ zhemv.f \ ++ zher2.f \ ++ zher2k.f \ ++ zher.f \ ++ zherk.f \ ++ zhpmv.f \ ++ zhpr2.f \ ++ zhpr.f \ ++ zrotg.f \ ++ zscal.f \ ++ zswap.f \ ++ zsymm.f \ ++ zsyr2k.f \ ++ zsyrk.f \ ++ ztbmv.f \ ++ ztbsv.f \ ++ ztpmv.f \ ++ ztpsv.f \ ++ ztrmm.f \ ++ ztrmv.f \ ++ ztrsm.f \ ++ ztrsv.f +--- BLAS/TESTING/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ BLAS/TESTING/Makefile.am 2007-07-16 01:50:12.000000000 +0100 +@@ -0,0 +1,27 @@ ++TESTS = blas_tests ++ ++blas_tests: ++ @install -m0755 blas_tests.sh blas_tests ++ ++check_PROGRAMS = \ ++ xsblat1 xdblat1 xcblat1 xzblat1 \ ++ xsblat2 xdblat2 xcblat2 xzblat2 \ ++ xsblat3 xdblat3 xcblat3 xzblat3 ++ ++LDADD = $(top_builddir)/BLAS/SRC/libblas.la ++ ++xsblat1_SOURCES = sblat1.f ++xdblat1_SOURCES = dblat1.f ++xcblat1_SOURCES = cblat1.f ++xzblat1_SOURCES = zblat1.f ++ ++xsblat2_SOURCES = sblat2.f ++xdblat2_SOURCES = dblat2.f ++xcblat2_SOURCES = cblat2.f ++xzblat2_SOURCES = zblat2.f ++ ++xsblat3_SOURCES = sblat3.f ++xdblat3_SOURCES = dblat3.f ++xcblat3_SOURCES = cblat3.f ++xzblat3_SOURCES = zblat3.f ++ +--- BLAS/TESTING/blas_tests.sh 1970-01-01 01:00:00.000000000 +0100 ++++ BLAS/TESTING/blas_tests.sh 2007-07-16 01:50:12.000000000 +0100 +@@ -0,0 +1,9 @@ ++#!/bin/sh ++ ++for t in cblat1 sblat1 dblat1 zblat1; do ++ ./x${t} ++done ++ ++for t in cblat2 sblat2 dblat2 zblat2 cblat3 sblat3 dblat3 zblat3; do ++ ./x${t} < ../${t}.in ++done diff --git a/sci-libs/blas-reference/files/blas-reference-20070226-pkg-config.patch b/sci-libs/blas-reference/files/blas-reference-20070226-pkg-config.patch new file mode 100644 index 000000000000..14190f41e7d5 --- /dev/null +++ b/sci-libs/blas-reference/files/blas-reference-20070226-pkg-config.patch @@ -0,0 +1,11 @@ +diff --git a/BLAS/blas.pc.in b/BLAS/blas.pc.in +index 367c87b..44b86db 100644 +--- a/BLAS/blas.pc.in ++++ b/BLAS/blas.pc.in +@@ -7,5 +7,5 @@ Name: @PACKAGE_NAME@ + Description: Basic Linear Algebra Subprograms F77 reference implementations + Version: @PACKAGE_VERSION@ + URL: http://www.netlib.org/blas +-Libs: -lblas ++Libs: -L@libdir@ -lblas + Libs.private: -lm diff --git a/sci-libs/blas-reference/files/eselect.blas.reference b/sci-libs/blas-reference/files/eselect.blas.reference new file mode 100644 index 000000000000..edb10ddd10d9 --- /dev/null +++ b/sci-libs/blas-reference/files/eselect.blas.reference @@ -0,0 +1,4 @@ +blas/reference/libblas.so /usr/@LIBDIR@/libblas.so +blas/reference/libblas.so.0 /usr/@LIBDIR@/libblas.so.0 +blas/reference/libblas.a /usr/@LIBDIR@/libblas.a +../blas/reference/blas.pc /usr/@LIBDIR@/pkgconfig/blas.pc diff --git a/sci-libs/blas-reference/files/eselect.blas.reference-ng b/sci-libs/blas-reference/files/eselect.blas.reference-ng new file mode 100644 index 000000000000..840389479fe2 --- /dev/null +++ b/sci-libs/blas-reference/files/eselect.blas.reference-ng @@ -0,0 +1 @@ +../blas/reference/blas.pc /usr/@LIBDIR@/pkgconfig/blas.pc diff --git a/sci-libs/blas-reference/metadata.xml b/sci-libs/blas-reference/metadata.xml new file mode 100644 index 000000000000..6d6f67c0371c --- /dev/null +++ b/sci-libs/blas-reference/metadata.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <longdescription lang="en"> +The BLAS (Basic Linear Algebra Subprograms) are high quality "building +block" routines for performing basic vector and matrix operations. Level 1 +BLAS do vector-vector operations, Level 2 BLAS do matrix-vector operations, +and Level 3 BLAS do matrix-matrix operations. Because the BLAS are +efficient, portable, and widely available, they're commonly used in the +development of high quality linear algebra software, LAPACK for +example. This packages implements the reference FORTRAN 77 library. +</longdescription> +</pkgmetadata> diff --git a/sci-libs/bliss/Manifest b/sci-libs/bliss/Manifest new file mode 100644 index 000000000000..be3eecb6e270 --- /dev/null +++ b/sci-libs/bliss/Manifest @@ -0,0 +1 @@ +DIST bliss-0.72.zip 90970 SHA256 528d192b1e30722fc60f5f12c9d6c12b374d838198ae7f18fb41bedabf735ed3 SHA512 a09b3cea26e3ff5f5733f10bfaadaf6fb5a3f443e1cc306fad16af2f7b4cd97c90652315f911a324d6d71426a3d098cd5c7e5721f69c599fe2e0d6d34caa0ef5 WHIRLPOOL afbc41c04e843d383a2da8d5e26ec2882c847e8e5f1e71c05f884396fcc79eab764df628523336b88e0c6ef4fbf073a52870e2c68ded428002d9391894cb53d6 diff --git a/sci-libs/bliss/bliss-0.72.ebuild b/sci-libs/bliss/bliss-0.72.ebuild new file mode 100644 index 000000000000..dea3e3c0c723 --- /dev/null +++ b/sci-libs/bliss/bliss-0.72.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +AUTOTOOLS_AUTORECONF=1 + +inherit autotools-utils + +SRC_URI="http://www.tcs.hut.fi/Software/${PN}/${P}.zip" +DESCRIPTION="A Tool for Computing Automorphism Groups and Canonical Labelings of Graphs" +HOMEPAGE="http://www.tcs.hut.fi/Software/bliss/index.shtml" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="doc gmp static-libs" + +RDEPEND="gmp? ( dev-libs/gmp:0= )" + +DEPEND="${RDEPEND} + doc? ( app-doc/doxygen )" + +AUTOTOOLS_PRUNE_LIBTOOL_FILES="all" #comes with pkg-config file + +PATCHES=( + "${FILESDIR}/${P}-fedora.patch" + "${FILESDIR}/${P}-autotools.patch" +) + +src_configure() { + local myeconfargs=( $(use_with gmp) ) + autotools-utils_src_configure +} + +src_compile() { + autotools-utils_src_compile all $(usex doc html "") +} + +src_install() { + use doc && HTML_DOCS=( "${BUILD_DIR}"/html/. ) + autotools-utils_src_install +} diff --git a/sci-libs/bliss/files/bliss-0.72-autotools.patch b/sci-libs/bliss/files/bliss-0.72-autotools.patch new file mode 100644 index 000000000000..d30c51622e2e --- /dev/null +++ b/sci-libs/bliss/files/bliss-0.72-autotools.patch @@ -0,0 +1,159 @@ +Replace simple Makefile by autotools +- allow shared library +- parallel build +- added pkg-config support + +Author: Christoph Junghans <ottxor@gentoo.org> + +diff -Naur bliss-0.72-fedora/config/.dummy bliss-0.72/config/.dummy +--- bliss-0.72-fedora/config/.dummy 1969-12-31 17:00:00.000000000 -0700 ++++ bliss-0.72/config/.dummy 2013-04-28 14:43:06.143760368 -0600 +@@ -0,0 +1 @@ ++Dummy file to make patch create config dir, which is needed for autotools +diff -Naur bliss-0.72-fedora/configure.ac bliss-0.72/configure.ac +--- bliss-0.72-fedora/configure.ac 1969-12-31 17:00:00.000000000 -0700 ++++ bliss-0.72/configure.ac 2013-04-28 14:40:42.283242722 -0600 +@@ -0,0 +1,31 @@ ++AC_PREREQ([2.65]) ++AC_INIT([bliss], [0.72], [Tommi.Junttil@kk.fi]) ++ ++AC_CONFIG_AUX_DIR(config) ++AC_CONFIG_MACRO_DIR(config) ++ ++AM_INIT_AUTOMAKE([1.8 foreign]) ++ ++SHARED_VERSION_INFO="1:0:0" ++AC_SUBST(SHARED_VERSION_INFO) ++ ++# Checks for programs. ++AC_PROG_CXX ++ ++LT_INIT ++# Checks for libraries. ++AC_ARG_WITH([gmp], ++ [AS_HELP_STRING([--with-gmp], [enable support for GNU Multiple Precision Arithmetic Library @<:@default=check@:>@])], ++ [], [with_readline=no]) ++AS_IF([test "x$with_readline" != xno], ++ [AC_CHECK_HEADERS([gmp.h],,AC_MSG_ERROR([Cannot find gmp.h header])) ++ AC_CHECK_LIB([gmp],_init,,AC_MSG_ERROR([Cannot find gmp library])) ++ AC_SUBST([GMP],[-lgmp]) ++ [CPPFLAGS="$CPPFLAGS -DBLISS_USE_GMP"]]) ++ ++AC_CHECK_PROG(DOXYGEN,doxygen,doxygen,no) ++AM_CONDITIONAL(HAVE_DOXYGEN,[test .$DOXYGEN != .no]) ++ ++AC_CONFIG_FILES([Makefile]) ++AC_CONFIG_FILES([bliss.pc]) ++AC_OUTPUT +diff -Naur bliss-0.72-fedora/bliss.pc.in bliss-0.72/bliss.pc.in +--- bliss-0.72-fedora/bliss.pc.in 1969-12-31 17:00:00.000000000 -0700 ++++ bliss-0.72/bliss.pc.in 2013-04-28 14:40:54.223285686 -0600 +@@ -0,0 +1,13 @@ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++libdir=@libdir@ ++includedir=@includedir@ ++ ++Name: bliss ++Description: Library for Computing Automorphism Groups and Canonical Labelings of Graphs ++URL: http://www.tcs.hut.fi/Software/bliss/index.shtml ++Version: @VERSION@ ++Requires: ++Libs: -L${libdir} -lbliss @GMP@ ++Libs.private: -lm ++Cflags: -I${includedir} +diff -Naur bliss-0.72-fedora/Makefile bliss-0.72/Makefile +--- bliss-0.72-fedora/Makefile 2013-04-28 14:40:10.543128514 -0600 ++++ bliss-0.72/Makefile 1969-12-31 17:00:00.000000000 -0700 +@@ -1,57 +0,0 @@ +-CFLAGS = -I. +-CFLAGS += -g +-#CFLAGS += -pg +-CFLAGS += -Wall +-CFLAGS += --pedantic +-CFLAGS += -O9 +-#CFLAGS += -DBLISS_DEBUG +-CFLAGS += -fPIC +- +-SRCS = defs.cc graph.cc partition.cc orbit.cc uintseqhash.cc heap.cc +-SRCS += timer.cc utils.cc bliss_C.cc +- +-OBJS = $(addsuffix .o, $(basename $(SRCS))) +- +-GMPOBJS = $(addsuffix g, $(OBJS)) +- +-LIB = +-#LIB += /usr/lib/ccmalloc.o -ldl +- +-CC = g++ +-RANLIB = ranlib +-AR = ar +-BLISSLIB = libbliss.a +- +-gmp: LIB += -lgmp +-gmp: CFLAGS += -DBLISS_USE_GMP +- +-normal: bliss +-gmp: bliss_gmp +- +- +-all:: lib bliss +- +-%.o %.og: %.cc +- $(CC) $(CFLAGS) -c -o $@ $< +- +-lib: $(OBJS) +- rm -f $(BLISSLIB) +- $(AR) cr $(BLISSLIB) $(OBJS) +- $(RANLIB) $(BLISSLIB) +- +-lib_gmp: $(GMPOBJS) +- rm -f $(BLISSLIB) +- $(AR) cr $(BLISSLIB) $(GMPOBJS) +- $(RANLIB) $(BLISSLIB) +- +-bliss: bliss.o lib $(OBJS) +- $(CC) $(CFLAGS) -o bliss bliss.o $(OBJS) $(LIB) +- +-bliss_gmp: bliss.og lib_gmp $(GMPOBJS) +- $(CC) $(CFLAGS) -o bliss bliss.og $(GMPOBJS) $(LIB) +- +- +-clean: +- rm -f bliss $(BLISSLIB) $(OBJS) bliss.o $(GMPOBJS) bliss.og +- +-# DO NOT DELETE +diff -Naur bliss-0.72-fedora/Makefile.am bliss-0.72/Makefile.am +--- bliss-0.72-fedora/Makefile.am 1969-12-31 17:00:00.000000000 -0700 ++++ bliss-0.72/Makefile.am 2013-04-28 14:47:26.944698789 -0600 +@@ -0,0 +1,30 @@ ++ACLOCAL_AMFLAGS = -I config ++ ++lib_LTLIBRARIES = libbliss.la ++ ++libbliss_la_LDFLAGS = -no-undefined -version-info @SHARED_VERSION_INFO@ ++libbliss_la_SOURCES = \ ++ defs.cc graph.cc partition.cc orbit.cc uintseqhash.cc heap.cc \ ++ timer.cc utils.cc bliss_C.cc ++ ++pkginclude_HEADERS = \ ++ bignum.hh bliss_C.h defs.hh graph.hh heap.hh kqueue.hh kstack.hh \ ++ orbit.hh partition.hh timer.hh uintseqhash.hh utils.hh ++ ++bin_PROGRAMS = bliss ++bliss_SOURCES = bliss.cc ++bliss_LDADD = libbliss.la ++dist_man1_MANS = bliss.1 ++ ++pkgconfigdir = $(libdir)/pkgconfig ++pkgconfig_DATA = bliss.pc ++ ++html-local: Doxyfile ++if HAVE_DOXYGEN ++ $(DOXYGEN) $(srcdir)/Doxyfile ++else ++ @echo "doxygen was not found, please re-run configure" ++endif ++ ++clean-local: ++ -rm -rf html diff --git a/sci-libs/bliss/files/bliss-0.72-fedora.patch b/sci-libs/bliss/files/bliss-0.72-fedora.patch new file mode 100644 index 000000000000..e1f8b6685109 --- /dev/null +++ b/sci-libs/bliss/files/bliss-0.72-fedora.patch @@ -0,0 +1,648 @@ +Pulled on 28-04-13 from +http://pkgs.fedoraproject.org/cgit/bliss.git/tree/ + +- Man page written by Jerry James using text borrowed from the sources. + The man page therefore has the same copyright and license as the sources. +- Don't call exit() in library code. +- Patch from Thomas Rehn, also sent upstream. Fix one bug and add one + performance enhancement. + +diff -Naur bliss-0.72.orig/bliss.1 bliss-0.72/bliss.1 +--- bliss-0.72.orig/bliss.1 1969-12-31 17:00:00.000000000 -0700 ++++ bliss-0.72/bliss.1 2013-04-28 14:35:37.000000000 -0600 +@@ -0,0 +1,55 @@ ++.TH "BLISS" "1" "@VERSION@" "Tommi Junttila & Petteri Kaski" "User Commands" ++.SH "NAME" ++bliss \- Compute automorphism groups and canonical labelings of graphs ++.SH "SYNOPSIS" ++.B bliss ++[\fIOPTIONS\fR] [<\fIGRAPH FILE\fR>] ++.SH "DESCRIPTION" ++.PP ++Bliss is an open source tool for computing automorphism groups and ++canonical forms of graphs. The graphs are specified in DIMACS format. ++.TP ++\fB\-directed\fR ++the input graph is directed ++.TP ++\fB\-can\fR ++compute canonical form ++.TP ++\fB\-ocan\fR=\fIf\fR ++compute canonical form and output it in file \fIf\fR ++.TP ++\fB\-v\fR=\fIN\fR ++set verbosity level to N [N >= 0, default: 1] ++.TP ++\fB\-sh\fR=\fIX\fR ++select splitting heuristics, where X is: ++.TS ++tab(;); ++R L. ++f;first non-singleton cell ++fl;first largest non-singleton cell ++fs;first smallest non-singleton cell ++fm;first maximally non-trivially connected non-singleton cell ++flm;first largest maximally non-trivially connected ++;non-singleton cell ++fsm;first smallest maximally non-trivially connected ++;non-singleton cell (default) ++.TE ++.TP ++\fB\-fr\fR=\fIX\fR ++use failure recording? [X=y/n, default: y] ++.TP ++\fB\-cr\fR=\fIX\fR ++use component recursion? [X=y/n, default: y] ++.TP ++\fB\-version\fR ++print the version number and exit ++.TP ++\fB\-help\fR ++print this help and exit ++.SH "AUTHORS" ++Bliss was written by Tommi Junttila <Tommi.Junttila@tkk.fi> and ++Petteri Kaski <petteri.kaski@aalto.fi>. ++.PP ++This man page was written by Jerry James <loganjerry@gmail.com>. ++It is distributed under the same terms as bliss. +diff -Naur bliss-0.72.orig/bliss.cc bliss-0.72/bliss.cc +--- bliss-0.72.orig/bliss.cc 2013-04-28 14:35:20.582085167 -0600 ++++ bliss-0.72/bliss.cc 2013-04-28 14:36:28.792330603 -0600 +@@ -276,13 +276,16 @@ + if(opt_canonize == false) + { + /* No canonical labeling, only automorphism group */ +- g->find_automorphisms(stats, &report_aut, stdout); ++ if (!g->find_automorphisms(stats, &report_aut, stdout)) ++ exit(1); + } + else + { + /* Canonical labeling and automorphism group */ + const unsigned int* cl = g->canonical_form(stats, &report_aut, stdout); + ++ if (!cl) ++ exit(1); + fprintf(stdout, "Canonical labeling: "); + bliss::print_permutation(stdout, g->get_nof_vertices(), cl, 1); + fprintf(stdout, "\n"); +@@ -290,6 +293,8 @@ + if(opt_output_can_file) + { + bliss::AbstractGraph* cf = g->permute(cl); ++ if (!cf) ++ exit(1); + FILE* const fp = fopen(opt_output_can_file, "w"); + if(!fp) + _fatal("Cannot open '%s' for outputting the canonical form, aborting", opt_output_can_file); +diff -Naur bliss-0.72.orig/bliss_C.cc bliss-0.72/bliss_C.cc +--- bliss-0.72.orig/bliss_C.cc 2013-04-28 14:35:20.582085167 -0600 ++++ bliss-0.72/bliss_C.cc 2013-04-28 14:36:28.792330603 -0600 +@@ -131,7 +131,7 @@ + } + + extern "C" +-void ++int + bliss_find_automorphisms(BlissGraph *graph, + void (*hook)(void *user_param, + unsigned int n, +@@ -142,7 +142,8 @@ + bliss::Stats s; + assert(graph); + assert(graph->g); +- graph->g->find_automorphisms(s, hook, hook_user_param); ++ if (!graph->g->find_automorphisms(s, hook, hook_user_param)) ++ return 0; + + if(stats) + { +@@ -154,6 +155,7 @@ + stats->nof_generators = s.get_nof_generators(); + stats->max_level = s.get_max_level(); + } ++ return 1; + } + + +@@ -173,7 +175,7 @@ + + canonical_labeling = graph->g->canonical_form(s, hook, hook_user_param); + +- if(stats) ++ if(canonical_labeling && stats) + { + stats->group_size_approx = s.get_group_size_approx(); + stats->nof_nodes = s.get_nof_nodes(); +diff -Naur bliss-0.72.orig/bliss_C.h bliss-0.72/bliss_C.h +--- bliss-0.72.orig/bliss_C.h 2013-04-28 14:35:20.582085167 -0600 ++++ bliss-0.72/bliss_C.h 2013-04-28 14:36:28.792330603 -0600 +@@ -156,6 +156,7 @@ + * The argument \a perm should be an array of + * N=bliss::bliss_get_nof_vertices(\a graph) elements describing + * a bijection on {0,...,N-1}. ++ * Returns NULL if insufficient memory or internal error. + */ + BlissGraph *bliss_permute(BlissGraph *graph, const unsigned int *perm); + +@@ -174,8 +175,9 @@ + * if you want to use the automorphism later, you have to take a copy of it. + * Do not call bliss_* functions in the hook. + * If \a stats is non-null, then some search statistics are copied there. ++ * \return nonzero if successful, zero if insufficient memory or internal error + */ +-void ++int + bliss_find_automorphisms(BlissGraph *graph, + void (*hook)(void *user_param, + unsigned int N, +@@ -194,6 +196,7 @@ + * then bliss_permute() with the returned canonical labeling. + * Note that the computed canonical version may depend on the applied version + * of bliss. ++ * Returns NULL if insufficient memory or internal error. + */ + const unsigned int * + bliss_find_canonical_labeling(BlissGraph *graph, +diff -Naur bliss-0.72.orig/defs.cc bliss-0.72/defs.cc +--- bliss-0.72.orig/defs.cc 2013-04-28 14:35:20.582085167 -0600 ++++ bliss-0.72/defs.cc 2013-04-28 14:36:28.792330603 -0600 +@@ -33,7 +33,6 @@ + vfprintf(stderr, fmt, ap); + fprintf(stderr, "\nAborting!\n"); + va_end(ap); +- exit(1); + } + + } +diff -Naur bliss-0.72.orig/graph.cc bliss-0.72/graph.cc +--- bliss-0.72.orig/graph.cc 2013-04-28 14:35:20.582085167 -0600 ++++ bliss-0.72/graph.cc 2013-04-28 14:37:16.162501050 -0600 +@@ -34,7 +34,10 @@ + namespace bliss { + + #define _INTERNAL_ERROR() fatal_error("%s:%d: internal error",__FILE__,__LINE__) +-#define _OUT_OF_MEMORY() fatal_error("%s:%d: out of memory",__FILE__,__LINE__) ++#define _OUT_OF_MEMORY(label) do { \ ++ fatal_error("%s:%d: out of memory",__FILE__,__LINE__); \ ++ goto label; \ ++ } while (0) + + /*------------------------------------------------------------------------- + * +@@ -279,20 +282,6 @@ + *perm = i; + } + +-bool +-AbstractGraph::is_automorphism(unsigned int* const perm) +-{ +- _INTERNAL_ERROR(); +- return false; +-} +- +-bool +-AbstractGraph::is_automorphism(const std::vector<unsigned int>& perm) const +-{ +- _INTERNAL_ERROR(); +- return false; +-} +- + + + +@@ -608,17 +597,7 @@ + }; + + +- +- +-typedef struct { +- unsigned int splitting_element; +- unsigned int certificate_index; +- unsigned int subcertificate_length; +- UintSeqHash eqref_hash; +-} PathInfo; +- +- +-void ++bool + AbstractGraph::search(const bool canonical, Stats& stats) + { + const unsigned int N = get_nof_vertices(); +@@ -658,7 +637,7 @@ + if(N == 0) + { + /* Nothing to do, return... */ +- return; ++ return true; + } + + /* Initialize the partition ... */ +@@ -696,10 +675,10 @@ + */ + if(first_path_labeling) free(first_path_labeling); + first_path_labeling = (unsigned int*)calloc(N, sizeof(unsigned int)); +- if(!first_path_labeling) _OUT_OF_MEMORY(); ++ if(!first_path_labeling) _OUT_OF_MEMORY(oom1); + if(best_path_labeling) free(best_path_labeling); + best_path_labeling = (unsigned int*)calloc(N, sizeof(unsigned int)); +- if(!best_path_labeling) _OUT_OF_MEMORY(); ++ if(!best_path_labeling) _OUT_OF_MEMORY(oom2); + + /* + * Is the initial partition discrete? +@@ -710,7 +689,7 @@ + update_labeling(best_path_labeling); + /* Update statistics */ + stats.nof_leaf_nodes = 1; +- return; ++ return true; + } + + /* +@@ -718,20 +697,39 @@ + */ + if(first_path_labeling_inv) free(first_path_labeling_inv); + first_path_labeling_inv = (unsigned int*)calloc(N, sizeof(unsigned int)); +- if(!first_path_labeling_inv) _OUT_OF_MEMORY(); ++ if(!first_path_labeling_inv) _OUT_OF_MEMORY(oom3); + if(best_path_labeling_inv) free(best_path_labeling_inv); + best_path_labeling_inv = (unsigned int*)calloc(N, sizeof(unsigned int)); +- if(!best_path_labeling_inv) _OUT_OF_MEMORY(); ++ if(!best_path_labeling_inv) _OUT_OF_MEMORY(oom4); + + /* + * Allocate space for the automorphisms + */ + if(first_path_automorphism) free(first_path_automorphism); + first_path_automorphism = (unsigned int*)malloc(N * sizeof(unsigned int)); +- if(!first_path_automorphism) _OUT_OF_MEMORY(); ++ if(!first_path_automorphism) _OUT_OF_MEMORY(oom5); + if(best_path_automorphism) free(best_path_automorphism); + best_path_automorphism = (unsigned int*)malloc(N * sizeof(unsigned int)); +- if(!best_path_automorphism) _OUT_OF_MEMORY(); ++ if(!best_path_automorphism) { ++ _OUT_OF_MEMORY(oom6); ++ oom6: ++ free(first_path_automorphism); ++ first_path_automorphism = NULL; ++ oom5: ++ free(best_path_labeling_inv); ++ best_path_labeling_inv = NULL; ++ oom4: ++ free(first_path_labeling_inv); ++ first_path_labeling_inv = NULL; ++ oom3: ++ free(best_path_labeling); ++ best_path_labeling = NULL; ++ oom2: ++ free(first_path_labeling); ++ first_path_labeling = NULL; ++ oom1: ++ return false; ++ } + + /* + * Initialize orbit information so that all vertices are in their own orbits +@@ -745,7 +743,6 @@ + initialize_certificate(); + + std::vector<TreeNode> search_stack; +- std::vector<PathInfo> first_path_info; + std::vector<PathInfo> best_path_info; + + search_stack.clear(); +@@ -974,7 +971,6 @@ + */ + { + unsigned int next_split_element = UINT_MAX; +- unsigned int* next_split_element_pos = 0; + unsigned int* ep = p.elements + cell->first; + if(current_node.fp_on) + { +@@ -985,7 +981,6 @@ + *ep < next_split_element and + first_path_orbits.is_minimal_representative(*ep)) { + next_split_element = *ep; +- next_split_element_pos = ep; + } + } + } +@@ -1001,7 +996,6 @@ + current_node.long_prune_redundant.find(*ep) == + current_node.long_prune_redundant.end())) { + next_split_element = *ep; +- next_split_element_pos = ep; + } + } + } +@@ -1015,7 +1009,6 @@ + current_node.long_prune_redundant.find(*ep) == + current_node.long_prune_redundant.end())) { + next_split_element = *ep; +- next_split_element_pos = ep; + } + } + } +@@ -1203,8 +1196,10 @@ + + #if defined(BLISS_VERIFY_EQUITABLEDNESS) + /* The new partition should be equitable */ +- if(!is_equitable()) ++ if(!is_equitable()) { + fatal_error("consistency check failed - partition after refinement is not equitable"); ++ return false; ++ } + #endif + + /* +@@ -1366,6 +1361,7 @@ + goto handle_first_path_automorphism; + /* Should never get here because of CR:FP */ + _INTERNAL_ERROR(); ++ return false; + } + } + +@@ -1598,8 +1594,10 @@ + + #if defined(BLISS_VERIFY_AUTOMORPHISMS) + /* Verify that it really is an automorphism */ +- if(!is_automorphism(best_path_automorphism)) ++ if(!is_automorphism(best_path_automorphism)) { + fatal_error("Best path automorhism validation check failed"); ++ return false; ++ } + #endif + + unsigned int gca_level_with_first = 0; +@@ -1666,6 +1664,7 @@ + + + _INTERNAL_ERROR(); ++ return false; + + + handle_first_path_automorphism: +@@ -1701,8 +1700,10 @@ + + #if defined(BLISS_VERIFY_AUTOMORPHISMS) + /* Verify that it really is an automorphism */ +- if(!is_automorphism(first_path_automorphism)) ++ if(!is_automorphism(first_path_automorphism)) { + fatal_error("First path automorphism validation check failed"); ++ return false; ++ } + #endif + + if(opt_use_long_prune) +@@ -1749,12 +1750,13 @@ + /* Release component recursion data in partition */ + if(opt_use_comprec) + p.cr_free(); ++ return true; + } + + + + +-void ++bool + AbstractGraph::find_automorphisms(Stats& stats, + void (*hook)(void *user_param, + unsigned int n, +@@ -1764,7 +1766,8 @@ + report_hook = hook; + report_user_param = user_param; + +- search(false, stats); ++ if (!search(false, stats)) ++ return false; + + if(first_path_labeling) + { +@@ -1776,6 +1779,7 @@ + free(best_path_labeling); + best_path_labeling = 0; + } ++ return true; + } + + +@@ -1790,7 +1794,8 @@ + report_hook = hook; + report_user_param = user_param; + +- search(true, stats); ++ if (!search(true, stats)) ++ return NULL; + + return best_path_labeling; + } +@@ -3480,15 +3485,17 @@ + * Check whether perm is an automorphism. + * Slow, mainly for debugging and validation purposes. + */ +-bool ++int + Digraph::is_automorphism(unsigned int* const perm) + { + std::set<unsigned int, std::less<unsigned int> > edges1; + std::set<unsigned int, std::less<unsigned int> > edges2; + + #if defined(BLISS_CONSISTENCY_CHECKS) +- if(!is_permutation(get_nof_vertices(), perm)) ++ if(!is_permutation(get_nof_vertices(), perm)) { + _INTERNAL_ERROR(); ++ return -1; ++ } + #endif + + for(unsigned int i = 0; i < get_nof_vertices(); i++) +@@ -3507,7 +3514,7 @@ + ei++) + edges2.insert(*ei); + if(!(edges1 == edges2)) +- return false; ++ return 0; + + edges1.clear(); + for(std::vector<unsigned int>::iterator ei = v1.edges_out.begin(); +@@ -3520,10 +3527,10 @@ + ei++) + edges2.insert(*ei); + if(!(edges1 == edges2)) +- return false; ++ return 0; + } + +- return true; ++ return 1; + } + + bool +@@ -4330,8 +4337,10 @@ + Graph::permute(const unsigned int* perm) const + { + #if defined(BLISS_CONSISTENCY_CHECKS) +- if(!is_permutation(get_nof_vertices(), perm)) ++ if(!is_permutation(get_nof_vertices(), perm)) { + _INTERNAL_ERROR(); ++ return NULL; ++ } + #endif + + Graph* const g = new Graph(get_nof_vertices()); +@@ -5270,15 +5279,17 @@ + * + *-------------------------------------------------------------------------*/ + +-bool ++int + Graph::is_automorphism(unsigned int* const perm) + { + std::set<unsigned int, std::less<unsigned int> > edges1; + std::set<unsigned int, std::less<unsigned int> > edges2; + + #if defined(BLISS_CONSISTENCY_CHECKS) +- if(!is_permutation(get_nof_vertices(), perm)) ++ if(!is_permutation(get_nof_vertices(), perm)) { + _INTERNAL_ERROR(); ++ return -1; ++ } + #endif + + for(unsigned int i = 0; i < get_nof_vertices(); i++) +@@ -5298,10 +5309,10 @@ + edges2.insert(*ei); + + if(!(edges1 == edges2)) +- return false; ++ return 0; + } + +- return true; ++ return 1; + } + + +@@ -5444,7 +5455,7 @@ + component.clear(); + component_elements = 0; + sh_return = 0; +- unsigned int sh_first = 0; ++ unsigned int sh_first = 1 << 31; + unsigned int sh_size = 0; + unsigned int sh_nuconn = 0; + +diff -Naur bliss-0.72.orig/graph.hh bliss-0.72/graph.hh +--- bliss-0.72.orig/graph.hh 2013-04-28 14:35:20.582085167 -0600 ++++ bliss-0.72/graph.hh 2013-04-28 14:37:16.162501050 -0600 +@@ -109,9 +109,12 @@ + unsigned long int get_max_level() const {return max_level;} + }; + +- +- +- ++typedef struct { ++ unsigned int splitting_element; ++ unsigned int certificate_index; ++ unsigned int subcertificate_length; ++ UintSeqHash eqref_hash; ++} PathInfo; + + + /** +@@ -270,7 +273,7 @@ + void reset_permutation(unsigned int *perm); + + /* Mainly for debugging purposes */ +- virtual bool is_automorphism(unsigned int* const perm); ++ virtual int is_automorphism(unsigned int* const perm) = 0; + + std::vector<unsigned int> certificate_current_path; + std::vector<unsigned int> certificate_first_path; +@@ -284,7 +287,11 @@ + virtual Partition::Cell* find_next_cell_to_be_splitted(Partition::Cell *cell) = 0; + + +- void search(const bool canonical, Stats &stats); ++ /** ++ * \return true if successful, false if insufficient memory to complete or ++ * other internal error ++ */ ++ bool search(const bool canonical, Stats &stats); + + + void (*report_hook)(void *user_param, +@@ -351,7 +358,7 @@ + */ + unsigned int cr_component_elements; + +- ++ std::vector<PathInfo> first_path_info; + + + public: +@@ -362,7 +369,7 @@ + * Check whether \a perm is an automorphism of this graph. + * Unoptimized, mainly for debugging purposes. + */ +- virtual bool is_automorphism(const std::vector<unsigned int>& perm) const; ++ virtual bool is_automorphism(const std::vector<unsigned int>& perm) const = 0; + + + +@@ -427,8 +434,10 @@ + * if you want to use the automorphism later, you have to take a copy of it. + * Do not call any member functions in the hook. + * The search statistics are copied in \a stats. ++ * \return true if successful, false if insufficient memory to search or ++ * other internal error. + */ +- void find_automorphisms(Stats& stats, ++ bool find_automorphisms(Stats& stats, + void (*hook)(void* user_param, + unsigned int n, + const unsigned int* aut), +@@ -448,6 +457,8 @@ + * Note that the computed canonical version may depend on the applied version + * of bliss as well as on some other options (for instance, the splitting + * heuristic selected with bliss::Graph::set_splitting_heuristic()). ++ * This function returns NULL if there is insufficient memory, or another ++ * internal error occurs. + */ + const unsigned int* canonical_form(Stats& stats, + void (*hook)(void* user_param, +@@ -500,6 +511,10 @@ + opt_use_long_prune = active; + } + ++ /** ++ * Get an information vector about the first path. ++ */ ++ std::vector<PathInfo> get_first_path_info() { return first_path_info; } + }; + + +@@ -615,7 +630,7 @@ + + void initialize_certificate(); + +- bool is_automorphism(unsigned int* const perm); ++ int is_automorphism(unsigned int* const perm); + + + bool nucr_find_first_component(const unsigned int level); +@@ -856,7 +871,7 @@ + + void initialize_certificate(); + +- bool is_automorphism(unsigned int* const perm); ++ int is_automorphism(unsigned int* const perm); + + void sort_edges(); + diff --git a/sci-libs/bliss/metadata.xml b/sci-libs/bliss/metadata.xml new file mode 100644 index 000000000000..64784b089c3f --- /dev/null +++ b/sci-libs/bliss/metadata.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <maintainer> + <email>ottxor@gentoo.org</email> + <name>Christoph Junghans</name> + </maintainer> + <maintainer> + <email>tomka@gentoo.org</email> + <name>Thomas Kahle</name> + </maintainer> +</pkgmetadata> diff --git a/sci-libs/bmrblib/Manifest b/sci-libs/bmrblib/Manifest new file mode 100644 index 000000000000..6b6dde85caf9 --- /dev/null +++ b/sci-libs/bmrblib/Manifest @@ -0,0 +1 @@ +DIST bmrblib-1.0.3.tar.bz2 51246 SHA256 583e8d8f4ea2aaffec5eb30edfb4a840f1222512ad4f17c2d0d2c885a5afe3f6 SHA512 b03ad9e4ca035439165ebd1b7ba93ede427b2a233a4179be4e8089db988f1dcdce68b1e97348fe22fe7f2c3827ed003b654e0674a4d16a9e32a8a7c255c4b248 WHIRLPOOL 65b3a62142092af882be8d45fa84dd5b80e983c6bfb36d98b5ab444d6b0e4b0523ca64977a6643f27be9d64448a0c7e0ee2021bcbc306cbaa2101dcc3a1f6e1a diff --git a/sci-libs/bmrblib/bmrblib-1.0.3.ebuild b/sci-libs/bmrblib/bmrblib-1.0.3.ebuild new file mode 100644 index 000000000000..421a816c09a3 --- /dev/null +++ b/sci-libs/bmrblib/bmrblib-1.0.3.ebuild @@ -0,0 +1,18 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 python3_{3,4} pypy ) + +inherit distutils-r1 + +DESCRIPTION="API abstracting the BioMagResBank (BMRB) NMR-STAR format (http://www.bmrb.wisc.edu/)" +HOMEPAGE="http://gna.org/projects/bmrblib/" +SRC_URI="http://download.gna.org/${PN}/${P}.tar.bz2" + +SLOT="0" +LICENSE="GPL-3" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="" diff --git a/sci-libs/bmrblib/metadata.xml b/sci-libs/bmrblib/metadata.xml new file mode 100644 index 000000000000..ce97f606bcd9 --- /dev/null +++ b/sci-libs/bmrblib/metadata.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci-chemistry</herd> + <maintainer> + <email>jlec@gentoo.org</email> + </maintainer> + <longdescription> + Bmrblib is an API abstracting the BioMagResBank (BMRB) NMR-STAR format + (http://www.bmrb.wisc.edu/). It allows the writing of NMR-STAR files + for BMRB data deposition and the reading and easy extraction of data + from files residing in the BMRB data bank, all without knowledge of + the Self-Defining Text Archive and Retrieval (STAR) format. The API + has currently only python bindings. +</longdescription> +</pkgmetadata> diff --git a/sci-libs/btf/Manifest b/sci-libs/btf/Manifest new file mode 100644 index 000000000000..bc48bc451e84 --- /dev/null +++ b/sci-libs/btf/Manifest @@ -0,0 +1,2 @@ +DIST BTF-1.1.3.tar.gz 38276 SHA256 01032ba79baba9a90e3c03e9500c42cce9250c2ecab03c48323bc940f3a7cbfe SHA512 1e1b3e9bbed22ae417177f1bb960bd8097af05e7fede4b59df270020845e4bc9a77a16733af980d9b309503edc7ab6ffd852d28c6650e4e53b29125c5dc6364c WHIRLPOOL 319d1a512c42b3f6be294cd98020f9353d35456bd5136b76a98eb6fda77b5f0a6f924f1fc13c8aa29ddceb03602a3d0231d2283964f3a5041b3f4f9f28102bc3 +DIST btf-1.2.0.tar.bz2 290915 SHA256 9c26f0dc080891838421dd4d38bf1350d8f6fadb1e8a090c127e2667041191fb SHA512 4c2dcd5abf7a72485267a666e679545a5bfa8a20dfbf75a939c92547bdf960d40b6ae93cad23ac44f791e515a13f26c1dae446d3ba6e89b3d1f87d91d4dba50c WHIRLPOOL 0c40c7616b1fec6875ce4653e856f64056bd4eafe96c501cea5474d9ea7a1a75401a86db82f73b8f2f9c1244195746faca265abece3c7bfbf579f9bb2aaec37e diff --git a/sci-libs/btf/btf-1.1.3.ebuild b/sci-libs/btf/btf-1.1.3.ebuild new file mode 100644 index 000000000000..60a8f6dd54c5 --- /dev/null +++ b/sci-libs/btf/btf-1.1.3.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 + +AUTOTOOLS_AUTORECONF=yes +inherit autotools-utils + +MY_PN=BTF + +DESCRIPTION="Algorithm for matrix permutation into block triangular form" +HOMEPAGE="http://www.cise.ufl.edu/research/sparse/btf/" +SRC_URI="http://www.cise.ufl.edu/research/sparse/${PN}/${MY_PN}-${PV}.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="static-libs" + +DEPEND="sci-libs/ufconfig" +RDEPEND="" + +DOCS=( README.txt Doc/ChangeLog ) +PATCHES=( "${FILESDIR}"/${PN}-1.0.1-autotools.patch ) + +S="${WORKDIR}/${MY_PN}" diff --git a/sci-libs/btf/btf-1.2.0.ebuild b/sci-libs/btf/btf-1.2.0.ebuild new file mode 100644 index 000000000000..a331bc8b1a93 --- /dev/null +++ b/sci-libs/btf/btf-1.2.0.ebuild @@ -0,0 +1,21 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit autotools-utils + +DESCRIPTION="Algorithm for matrix permutation into block triangular form" +HOMEPAGE="http://www.cise.ufl.edu/research/sparse/btf/" +SRC_URI="http://dev.gentoo.org/~bicatali/distfiles/${P}.tar.bz2" + +LICENSE="LGPL-2.1" +SLOT="0" + +KEYWORDS=" ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~amd64-linux ~x86-linux ~x86-macos" +IUSE="static-libs" + +RDEPEND="sci-libs/suitesparseconfig" +DEPEND="${RDEPEND} + virtual/pkgconfig" diff --git a/sci-libs/btf/files/btf-1.0.1-autotools.patch b/sci-libs/btf/files/btf-1.0.1-autotools.patch new file mode 100644 index 000000000000..4156c2dfeb70 --- /dev/null +++ b/sci-libs/btf/files/btf-1.0.1-autotools.patch @@ -0,0 +1,34 @@ +--- configure.ac 1970-01-01 01:00:00.000000000 +0100 ++++ configure.ac 2008-01-30 12:29:44.232979678 +0000 +@@ -0,0 +1,10 @@ ++# -*- Autoconf -*- ++AC_PREREQ(2.59) ++AC_INIT(btf, 1.0.1, davis@cise.ufl.edu) ++AM_INIT_AUTOMAKE([foreign]) ++AC_PROG_INSTALL ++AC_PROG_LIBTOOL ++AC_CHECK_LIB(m, sqrt) ++AC_CHECK_HEADERS(UFconfig.h) ++AC_CONFIG_FILES([Makefile Source/Makefile]) ++AC_OUTPUT +--- Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ Makefile.am 2008-01-30 12:30:12.862611188 +0000 +@@ -0,0 +1,3 @@ ++SUBDIRS = Source ++EXTRA_DIST = README.txt ++include_HEADERS = Include/btf.h Include/btf_internal.h +--- Source/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ Source/Makefile.am 2008-01-30 12:37:00.857861512 +0000 +@@ -0,0 +1,12 @@ ++AM_CPPFLAGS = -I$(top_srcdir)/Include ++ ++BTFSRC = btf_order.c btf_maxtrans.c btf_strongcomp.c ++ ++lib_LTLIBRARIES = libbtf.la ++noinst_LTLIBRARIES = libbtfi.la libbtfl.la ++libbtfi_la_SOURCES = $(BTFSRC) ++libbtfi_la_CPPFLAGS = $(AM_CPPFLAGS) ++libbtfl_la_SOURCES = $(BTFSRC) ++libbtfl_la_CPPFLAGS = $(AM_CPPFLAGS) -DDLONG ++libbtf_la_SOURCES = ++libbtf_la_LIBADD = libbtfl.la libbtfi.la diff --git a/sci-libs/btf/metadata.xml b/sci-libs/btf/metadata.xml new file mode 100644 index 000000000000..2c22e8591c55 --- /dev/null +++ b/sci-libs/btf/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>sci</herd> +<longdescription lang="en"> + The Block Triangular Form is a library of routines offering + permutation of an unsymmetric matrix (square or rectangular) into + its block upper triangular form (more precisely, it computes a + Dulmage-Mendelsohn decomposition). +</longdescription> +</pkgmetadata> diff --git a/sci-libs/buddy/Manifest b/sci-libs/buddy/Manifest new file mode 100644 index 000000000000..8c71890779bb --- /dev/null +++ b/sci-libs/buddy/Manifest @@ -0,0 +1,2 @@ +DIST buddy-2.4.tar.gz 766523 SHA256 d3df80a6a669d9ae408cb46012ff17bd33d855529d20f3a7e563d0d913358836 SHA512 43984969359ac363141ee8a67538ceeae1412efa172432a8355f6ce68ab5ffab12470ad7a2e0d7a6a557b8bf55e98b2f2dc5cc6710466403d45fab2195ba2e23 WHIRLPOOL 448c1eacc61a238083723693abca6f1600198e9ebd420a9b21179d82fd717c697bfe39758bffda1d96e3ace1a160da5cde91094bd67d9d288a632f1d03f2170a +DIST buddy22.tar.gz 448103 SHA256 932be15566d95038239b76028bf8d371baadc421fe16c379d4b29d0b834530ca SHA512 edded743a9fdd762b2529408902069b559b24278c9ca8f10f8a72d486f0ea254f2b5d6fc414fb7599eb627841e4d8126198aebc96913c297cadd691485680df9 WHIRLPOOL cf0b668bfa50c0ae7f35f5936d8e9e5a83c70a8de0fadd0454a458cff7a0babef8f30829fe8414d0e012a6c7857f917f92a010c136e2689978779e99fffca971 diff --git a/sci-libs/buddy/buddy-2.2.ebuild b/sci-libs/buddy/buddy-2.2.ebuild new file mode 100644 index 000000000000..f4cc8ccada2c --- /dev/null +++ b/sci-libs/buddy/buddy-2.2.ebuild @@ -0,0 +1,38 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +DESCRIPTION="Binary Decision Diagram Package" +HOMEPAGE="http://www.itu.dk/research/buddy/" +SRC_URI="http://www.itu.dk/research/buddy/buddy22.tar.gz" + +LICENSE="buddy" +SLOT="0" +KEYWORDS="x86 ~ppc" +IUSE="" + +S=${WORKDIR}/buddy22 + +src_compile() { + emake \ + CFLAGS="${CFLAGS}" \ + LIBDIR=usr/lib \ + INCDIR=usr/include \ + || die +} + +src_install() { + dodir /usr/lib /usr/include + emake install \ + LIBDIR="${D}"/usr/lib \ + INCDIR="${D}"/usr/include || die + dodoc CHANGES README doc/*.txt + insinto /usr/share/doc/${P}/ps + doins doc/*.ps + insinto /usr/share/${PN}/examples + cd examples + for example in *; do + tar -czf ${example}.tar.gz ${example} + doins ${example}.tar.gz + done +} diff --git a/sci-libs/buddy/buddy-2.4.ebuild b/sci-libs/buddy/buddy-2.4.ebuild new file mode 100644 index 000000000000..ecb37494e61e --- /dev/null +++ b/sci-libs/buddy/buddy-2.4.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 + +inherit eutils fortran-2 + +DESCRIPTION="Binary Decision Diagram Package" +HOMEPAGE="http://sourceforge.net/projects/buddy/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="buddy" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="doc examples static-libs" + +src_prepare() { + epatch \ + "${FILESDIR}"/${P}-gcc43.patch \ + "${FILESDIR}"/${P}-gold.patch +} + +src_configure() { + econf $(use_enable static-libs static) +} + +src_install() { + default + + dodoc doc/*.txt + + use doc && docinto /usr/share/doc/${PF}/ps && dodoc doc/*.ps + + if use examples; then + insinto /usr/share/${PN}/ + doins -r examples + fi +} diff --git a/sci-libs/buddy/files/buddy-2.4-gcc43.patch b/sci-libs/buddy/files/buddy-2.4-gcc43.patch new file mode 100644 index 000000000000..c7b9f85688eb --- /dev/null +++ b/sci-libs/buddy/files/buddy-2.4-gcc43.patch @@ -0,0 +1,22 @@ +diff -Naurp buddy-2.4-orig/src/bddtest.cxx buddy-2.4/src/bddtest.cxx +--- buddy-2.4-orig/src/bddtest.cxx 2004-06-25 07:22:26.000000000 -0600 ++++ buddy-2.4/src/bddtest.cxx 2009-02-09 22:14:19.000000000 -0600 +@@ -28,6 +28,7 @@ + ========================================================================*/ + + #include <string> ++#include <cstdlib> + #include "bdd.h" + #include "bvec.h" + +diff -Naurp buddy-2.4-orig/examples/bddcalc/parser_.h buddy-2.4/examples/bddcalc/parser_.h +--- buddy-2.4-orig/examples/bddcalc/parser_.h 2004-06-25 07:21:43.000000000 -0600 ++++ buddy-2.4/examples/bddcalc/parser_.h 2009-02-09 22:21:09.000000000 -0600 +@@ -9,6 +9,7 @@ + #define _PARSER_H + + #include <stdio.h> ++#include <stdlib.h> + #include "bdd.h" + + #define MAXIDLEN 32 /* Max. number of allowed characters in an identifier */ diff --git a/sci-libs/buddy/files/buddy-2.4-gold.patch b/sci-libs/buddy/files/buddy-2.4-gold.patch new file mode 100644 index 000000000000..dc30a642141d --- /dev/null +++ b/sci-libs/buddy/files/buddy-2.4-gold.patch @@ -0,0 +1,16 @@ + examples/cmilner/Makefile.in | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/examples/cmilner/Makefile.in b/examples/cmilner/Makefile.in +index 9b49e9d..f7a9b8a 100644 +--- a/examples/cmilner/Makefile.in ++++ b/examples/cmilner/Makefile.in +@@ -217,7 +217,7 @@ clean-checkPROGRAMS: + done + cmilner$(EXEEXT): $(cmilner_OBJECTS) $(cmilner_DEPENDENCIES) + @rm -f cmilner$(EXEEXT) +- $(LINK) $(cmilner_LDFLAGS) $(cmilner_OBJECTS) $(cmilner_LDADD) $(LIBS) ++ $(LINK) $(cmilner_LDFLAGS) $(cmilner_OBJECTS) $(cmilner_LDADD) $(LIBS) -lm + + mostlyclean-compile: + -rm -f *.$(OBJEXT) diff --git a/sci-libs/buddy/metadata.xml b/sci-libs/buddy/metadata.xml new file mode 100644 index 000000000000..c09b86dde138 --- /dev/null +++ b/sci-libs/buddy/metadata.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <longdescription lang="en"> + A Binary Decision Diagram library, with :many highly efficient + vectorized BDD operations,dynamic variable reordering,automated + garbage collection,a C++ interface with automatic reference + counting,and much more. +</longdescription> + <upstream> + <remote-id type="sourceforge">buddy</remote-id> + </upstream> +</pkgmetadata> diff --git a/sci-libs/camd/Manifest b/sci-libs/camd/Manifest new file mode 100644 index 000000000000..87acde08cd65 --- /dev/null +++ b/sci-libs/camd/Manifest @@ -0,0 +1 @@ +DIST camd-2.3.1.tar.bz2 319766 SHA256 bb3fcb577307fa4a70281bea8db896b2300a484f27cb61b392be2c4cf7cd5a2e SHA512 13c5d687b9314f43a6c7237c7541e0c21cc544ffe52f8a984f64c5177a9f1f6b5ab07e9190388587f273424db8e6076ef050f836dbc9f33ca44e94d0034c8070 WHIRLPOOL a53b09c002b930a78055742f507b3ea7b14906378edb6808e65e4aac16dcad8178cc16de6373d633356b501fb8a5939737f8c4966d94c1162076be5b1b15c2ad diff --git a/sci-libs/camd/camd-2.3.1.ebuild b/sci-libs/camd/camd-2.3.1.ebuild new file mode 100644 index 000000000000..b085672fa7db --- /dev/null +++ b/sci-libs/camd/camd-2.3.1.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit autotools-utils + +DESCRIPTION="Library to order a sparse matrix prior to Cholesky factorization" +HOMEPAGE="http://www.cise.ufl.edu/research/sparse/camd/" +SRC_URI="http://dev.gentoo.org/~bicatali/distfiles/${P}.tar.bz2" + +LICENSE="LGPL-2.1" +SLOT="0" + +KEYWORDS="amd64 ~arm hppa ~mips ppc ppc64 sparc x86 ~amd64-fbsd ~amd64-linux ~x86-linux ~x86-macos" +IUSE="doc static-libs" + +RDEPEND="sci-libs/suitesparseconfig" +DEPEND="${RDEPEND} + virtual/pkgconfig + doc? ( virtual/latex-base )" + +src_configure() { + local myeconfargs=( + $(use_with doc) + ) + autotools-utils_src_configure +} diff --git a/sci-libs/camd/files/camd-2.2.0-autotools.patch b/sci-libs/camd/files/camd-2.2.0-autotools.patch new file mode 100644 index 000000000000..d112a5f17169 --- /dev/null +++ b/sci-libs/camd/files/camd-2.2.0-autotools.patch @@ -0,0 +1,71 @@ +--- configure.ac 1970-01-01 01:00:00.000000000 +0100 ++++ configure.ac 2008-01-31 15:35:15.579030692 +0000 +@@ -0,0 +1,12 @@ ++# -*- Autoconf -*- ++AC_PREREQ(2.59) ++AC_INIT(camd, 2.2.0, davis@cise.ufl.edu) ++AM_INIT_AUTOMAKE([foreign]) ++AC_PROG_INSTALL ++AC_PROG_LIBTOOL ++AC_CHECK_LIB(m, sqrt) ++AC_CHECK_HEADERS(UFconfig.h) ++AC_CONFIG_FILES([Source/Makefile ++ Demo/Makefile ++ Makefile]) ++AC_OUTPUT +--- ./Demo/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ ./Demo/Makefile.am 2008-01-31 15:36:57.492838429 +0000 +@@ -0,0 +1,27 @@ ++AM_CPPFLAGS = -I$(top_srcdir)/Include ++check_PROGRAMS = \ ++ camd_demo \ ++ camd_demo2 \ ++ camd_simple ++# test is not robust ++# camd_l_demo ++ ++LDADD = $(top_builddir)/Source/libcamd.la -lm ++ ++camd_demo_SOURCES = camd_demo.c ++#camd_l_demo_SOURCES = camd_l_demo.c ++camd_demo2_SOURCES = camd_demo2.c ++camd_simple_SOURCES = camd_simple.c ++ ++check-local: $(check_PROGRAMS) ++ @for i in $(check_PROGRAMS); do \ ++ echo "Testing $$i"; \ ++ ./$$i > my_$$i.out; \ ++ if ! diff $(srcdir)/$$i.out my_$$i.out; then \ ++ echo "Test $$i failed!"; \ ++ exit 1; \ ++ fi \ ++ done; ++ ++clean-local: ++ rm -f my*.out +--- ./Source/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ ./Source/Makefile.am 2008-01-31 15:37:17.205961816 +0000 +@@ -0,0 +1,17 @@ ++CAMDCSRC = \ ++ camd_aat.c camd_1.c camd_2.c camd_dump.c camd_postorder.c \ ++ camd_defaults.c camd_order.c camd_control.c camd_info.c \ ++ camd_valid.c camd_preprocess.c ++ ++lib_LTLIBRARIES = libcamd.la ++noinst_LTLIBRARIES = libcamdi.la libcamdl.la ++AM_CPPFLAGS = -I$(top_srcdir)/Include ++ ++libcamdi_la_SOURCES = $(CAMDCSRC) ++libcamdi_la_CPPFLAGS = $(AM_CPPFLAGS) -DDINT ++libcamdl_la_SOURCES = $(CAMDCSRC) ++libcamdl_la_CPPFLAGS = $(AM_CPPFLAGS) -DDLONG ++ ++libcamd_la_SOURCES = camd_global.c ++libcamd_la_LIBADD = libcamdl.la libcamdi.la -lm ++ +--- ./Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ ./Makefile.am 2008-01-31 15:34:59.202097424 +0000 +@@ -0,0 +1,3 @@ ++SUBDIRS = Demo Source ++EXTRA_DIST = README.txt ++include_HEADERS = Include/camd.h Include/camd_internal.h diff --git a/sci-libs/camd/metadata.xml b/sci-libs/camd/metadata.xml new file mode 100644 index 000000000000..9c4f1c34262f --- /dev/null +++ b/sci-libs/camd/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <longdescription lang="en"> + Constrained Approximate Minimum Degree ordering is a set of routines + for ordering a sparse matrix prior to Cholesky factorization (or for + LU factorization with diagonal pivoting). +</longdescription> +</pkgmetadata> diff --git a/sci-libs/cbflib/Manifest b/sci-libs/cbflib/Manifest new file mode 100644 index 000000000000..51d76249c0ee --- /dev/null +++ b/sci-libs/cbflib/Manifest @@ -0,0 +1,6 @@ +DIST CBFlib-0.9.2.10.tar.gz 4898574 SHA256 e98ed35e0659ca4ebc10cb035399e8a94f30c721be734ac2bac1933ae6a1bc6f SHA512 d0d9fa6f990f3fb03733887088f409bb348462ba4e8fa0a5431ae1c1087c54e8de969790f04d90e8f23e3eaf351f3253e3ae8791058b47a6cd230b04d9c51898 WHIRLPOOL d380f5144bd497fe4635c9a78579cab58c8fe6bfc14552eabd8da27d94654af1b0be024daff1cf4dbd769291e9011a708dbbab1c9e81c35e5eeb2588a3cca17a +DIST CBFlib-0.9.2.2.tar.gz 4549837 SHA256 ce289756d643aa2ab79fd1614183ccee7ad06f128d1d8d59c97d7c107ce5f802 SHA512 756153ba81c17ea55d1397227273bc912a4fec7fd70d0b226b2519a5a14c92b612d6421f2748583aea5d0162b1defa51740200e936ce4f23b13b1506cfa5a043 WHIRLPOOL 4b690fa5698503eb424886391752fa2f4b5dad89b184cb4390506980032141ac5c147002b0261ec2769c9ea8aba696c629883b080bc504bc58d973367e399718 +DIST CBFlib-0.9.2.4.tar.gz 4564355 SHA256 c7d11a70e6454a6801e8f30d56db6639fa814aa25775bf54109325073c4a08c1 SHA512 e1ee1fe39b3d15e5d707d973c5666f198e3c9006b4c449fa56287032661a7ecfbeadad0fda528310f9cdd9f33856004333784a840d193a5c7db6c5c071fb07e5 WHIRLPOOL ded867cda1757196ad2188eda7a1a09999411a3d1a452172880fabdc5504aa346e44b2c8c25d921f674897ec7f8edf3da4de79d4843f68ecbb72634631ea43dd +DIST CBFlib-0.9.3.3.tar.gz 5787633 SHA256 d6c3cc2c6c0aed2a3aa7c74dc645ad223470dc76bb2181242534d4c322bb00dc SHA512 e041c26770e12e09110d7c4f39737406c6ade6cae6fa941cd31dd3b90432a034426272b8daa851a8a23baceb7189479d2d8bde882b7cfdb8ae666fadc5be57ff WHIRLPOOL 8e9e0004cdd2411c9d37b588afa274e1c2b955fe361fc3df597acc30526958d5722993f36f33672769ef55eca51b87917f57ec56528a7711a934d9f8de2b8019 +DIST CBFlib_0.9.2_Data_Files_Input.tar.gz 17102003 SHA256 4414166a5a5b5ef6e4c460bb6941bd0aca53e7a41dbc9e5bdf0c6d44cf00d5ac SHA512 86689695155b822146e8cc1e310f4820292cde28c9cc240da34ef8259c429af7b182a055e1014078081528c505b0269367cd5e6e80278a53b448f0cc0dfcc3aa WHIRLPOOL a946dce8a6fa1a90a6fb3e7ec167a2ba41fdd5ef9435f4da083f9f9a7f5dfb94a2ebef1d1c36f5332fc486452b9b26c29161c7484ba337da83c24fbcd0334126 +DIST CBFlib_0.9.2_Data_Files_Output.tar.gz 36009958 SHA256 311cebff470b7d4f94b7888252cca879e6e0745f4e2eb6fa9e21cf84f984029b SHA512 fb08cbc5a68a73089c012c4c8da2a02ed7a216e02f23f2b24ba2e4dca7af834c7200868028921540e14326ea88e48028675e1be1f2c572eb3e962a79cf892002 WHIRLPOOL 386691e706dafacb9f5ee13f74fcf0f78c3a827d434ae18602fb2a8f805c178f9883e10658ed739a35bb7ceb58b628c1a9f1bbf89144efd793d13c7a62c3d05b diff --git a/sci-libs/cbflib/cbflib-0.9.2.10-r1.ebuild b/sci-libs/cbflib/cbflib-0.9.2.10-r1.ebuild new file mode 100644 index 000000000000..165e6324e889 --- /dev/null +++ b/sci-libs/cbflib/cbflib-0.9.2.10-r1.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils flag-o-matic fortran-2 toolchain-funcs + +MY_P1="CBFlib-${PV}" +#MY_P2="CBFlib_${PV}" +MY_P2="CBFlib_0.9.3" + +DESCRIPTION="Library providing a simple mechanism for accessing CBF files and imgCIF files" +HOMEPAGE="http://www.bernstein-plus-sons.com/software/CBF/" +BASE_TEST_URI="http://arcib.dowling.edu/software/CBFlib/downloads/version_${PV}/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P1}.tar.gz" +# test? ( +# mirror://sourceforge/${PN}/${MY_P2}_Data_Files_Input.tar.gz +# mirror://sourceforge/${PN}/${MY_P2}_Data_Files_Output.tar.gz +# )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux" +IUSE="doc test" + +S=${WORKDIR}/${MY_P1} + +RDEPEND="sci-libs/hdf5:=" +DEPEND="${RDEPEND}" + +RESTRICT="test" + +src_prepare(){ + rm -rf Py* drel* dRel* ply* + epatch "${FILESDIR}"/${PV}-Makefile.patch + cp Makefile_LINUX_gcc42 Makefile + + append-fflags -fno-range-check + append-cflags -D_USE_XOPEN_EXTENDED -DCBF_DONT_USE_LONG_LONG + + sed \ + -e "s|^SOLDFLAGS.*$|SOLDFLAGS = -shared ${LDFLAGS}|g" \ + -i Makefile || die + tc-export CC CXX AR RANLIB +} + +src_compile() { + emake -j1 shared +} + +src_test(){ + emake -j1 basic +} + +src_install() { + insinto /usr/include/${PN} + dosym ${PN} /usr/include/cbf + doins include/*.h + + dolib.so solib/lib* + + dodoc README + use doc && dohtml -r README.html html_graphics doc +} diff --git a/sci-libs/cbflib/cbflib-0.9.2.10.ebuild b/sci-libs/cbflib/cbflib-0.9.2.10.ebuild new file mode 100644 index 000000000000..c84f4936d49f --- /dev/null +++ b/sci-libs/cbflib/cbflib-0.9.2.10.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils flag-o-matic fortran-2 toolchain-funcs + +MY_P1="CBFlib-${PV}" +#MY_P2="CBFlib_${PV}" +MY_P2="CBFlib_0.9.3" + +DESCRIPTION="Library providing a simple mechanism for accessing CBF files and imgCIF files" +HOMEPAGE="http://www.bernstein-plus-sons.com/software/CBF/" +BASE_TEST_URI="http://arcib.dowling.edu/software/CBFlib/downloads/version_${PV}/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P1}.tar.gz" +# test? ( +# mirror://sourceforge/${PN}/${MY_P2}_Data_Files_Input.tar.gz +# mirror://sourceforge/${PN}/${MY_P2}_Data_Files_Output.tar.gz +# )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux" +IUSE="doc test" + +S=${WORKDIR}/${MY_P1} + +RDEPEND="sci-libs/hdf5:=" +DEPEND="${RDEPEND}" + +RESTRICT="test" + +src_prepare(){ + rm -rf Py* drel* dRel* ply* + epatch "${FILESDIR}"/${PV}-Makefile.patch + cp Makefile_LINUX_gcc42 Makefile + + append-fflags -fno-range-check + append-cflags -D_USE_XOPEN_EXTENDED -DCBF_DONT_USE_LONG_LONG + + sed \ + -e "s|^SOLDFLAGS.*$|SOLDFLAGS = -shared ${LDFLAGS}|g" \ + -i Makefile || die + tc-export CC CXX AR RANLIB +} + +src_compile() { + emake -j1 shared +} + +src_test(){ + emake -j1 basic +} + +src_install() { + insinto /usr/include/${PN} + doins include/*.h + + dolib.so solib/lib* + + dodoc README + use doc && dohtml -r README.html html_graphics doc +} diff --git a/sci-libs/cbflib/cbflib-0.9.2.2.ebuild b/sci-libs/cbflib/cbflib-0.9.2.2.ebuild new file mode 100644 index 000000000000..fe47e5422204 --- /dev/null +++ b/sci-libs/cbflib/cbflib-0.9.2.2.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 + +inherit eutils flag-o-matic fortran-2 toolchain-funcs + +MY_P1="CBFlib-${PV}" +#MY_P2="CBFlib_${PV}" +MY_P2="CBFlib_0.9.2" + +DESCRIPTION="Library providing a simple mechanism for accessing CBF files and imgCIF files" +HOMEPAGE="http://www.bernstein-plus-sons.com/software/CBF/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P1}.tar.gz + test? ( + mirror://sourceforge/${PN}/${MY_P2}_Data_Files_Input.tar.gz + mirror://sourceforge/${PN}/${MY_P2}_Data_Files_Output.tar.gz + )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux" +IUSE="doc test" + +DEPEND="virtual/fortran" +RDEPEND="${DEPEND}" +#test? ( sys-process/time )" + +S=${WORKDIR}/${MY_P1} + +src_prepare(){ + rm -rf Py* drel* dRel* ply* + epatch "${FILESDIR}"/${PV}-Makefile.patch + cp Makefile_LINUX_gcc42 Makefile + + append-fflags -fno-range-check + append-cflags -D_USE_XOPEN_EXTENDED -DCBF_DONT_USE_LONG_LONG + + sed \ + -e "s|^CC.*$|CC = $(tc-getCC)|" \ + -e "s|^C++.*$|C++ = $(tc-getCXX)|" \ + -e "s|C++|CXX|g" \ + -e "s|^CFLAGS.*$|CFLAGS = ${CFLAGS}|" \ + -e "s|^F90C.*$|F90C = $(tc-getFC)|" \ + -e "s|^F90FLAGS.*$|F90FLAGS = ${FFLAGS}|" \ + -e "s|^SOLDFLAGS.*$|SOLDFLAGS = -shared ${LDFLAGS}|g" \ + -e "s| /bin| ${EPREFIX}/bin|g" \ + -e "s|/usr|${EPREFIX}/usr|g" \ + -i Makefile || die +} + +src_compile() { + emake -j1 shared +} + +src_test(){ + emake -j1 basic +} + +src_install() { + insinto /usr/include/${PN} + doins include/*.h + + dolib.so solib/lib* + + dodoc README + if use doc; then + dohtml -r README.html html_graphics doc + fi +} diff --git a/sci-libs/cbflib/cbflib-0.9.2.4.ebuild b/sci-libs/cbflib/cbflib-0.9.2.4.ebuild new file mode 100644 index 000000000000..374ab24a4ad5 --- /dev/null +++ b/sci-libs/cbflib/cbflib-0.9.2.4.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 + +inherit eutils flag-o-matic fortran-2 toolchain-funcs + +MY_P1="CBFlib-${PV}" +#MY_P2="CBFlib_${PV}" +MY_P2="CBFlib_0.9.3" + +DESCRIPTION="Library providing a simple mechanism for accessing CBF files and imgCIF files" +HOMEPAGE="http://www.bernstein-plus-sons.com/software/CBF/" +BASE_TEST_URI="http://arcib.dowling.edu/software/CBFlib/downloads/version_${PV}/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P1}.tar.gz" +# test? ( +# mirror://sourceforge/${PN}/${MY_P2}_Data_Files_Input.tar.gz +# mirror://sourceforge/${PN}/${MY_P2}_Data_Files_Output.tar.gz +# )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux" +IUSE="doc test" + +S=${WORKDIR}/${MY_P1} + +RESTRICT="test" + +src_prepare(){ + rm -rf Py* drel* dRel* ply* + epatch "${FILESDIR}"/0.9.2.3-Makefile.patch + cp Makefile_LINUX_gcc42 Makefile + + append-fflags -fno-range-check + append-cflags -D_USE_XOPEN_EXTENDED -DCBF_DONT_USE_LONG_LONG + + sed \ + -e "s|^CC.*$|CC = $(tc-getCC)|" \ + -e "s|^C++.*$|C++ = $(tc-getCXX)|" \ + -e "s|C++|CXX|g" \ + -e "s|^CFLAGS.*$|CFLAGS = ${CFLAGS}|" \ + -e "s|^F90C.*$|F90C = $(tc-getFC)|" \ + -e "s|^F90FLAGS.*$|F90FLAGS = ${FFLAGS}|" \ + -e "s|^SOLDFLAGS.*$|SOLDFLAGS = -shared ${LDFLAGS}|g" \ + -e "s| /bin| ${EPREFIX}/bin|g" \ + -e "s|/usr|${EPREFIX}/usr|g" \ + -i Makefile || die +} + +src_compile() { + emake -j1 shared +} + +src_test(){ + emake -j1 basic +} + +src_install() { + insinto /usr/include/${PN} + doins include/*.h + + dolib.so solib/lib* + + dodoc README + use doc && dohtml -r README.html html_graphics doc +} diff --git a/sci-libs/cbflib/cbflib-0.9.3.3.ebuild b/sci-libs/cbflib/cbflib-0.9.3.3.ebuild new file mode 100644 index 000000000000..2f3c1a86fd99 --- /dev/null +++ b/sci-libs/cbflib/cbflib-0.9.3.3.ebuild @@ -0,0 +1,59 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +CMAKE_MAKEFILE_GENERATOR=emake + +inherit cmake-utils eutils flag-o-matic fortran-2 toolchain-funcs + +MY_P1="CBFlib-${PV}" +#MY_P2="CBFlib_${PV}" +MY_P2="CBFlib_0.9.3" + +DESCRIPTION="Library providing a simple mechanism for accessing CBF files and imgCIF files" +HOMEPAGE="http://www.bernstein-plus-sons.com/software/CBF/" +BASE_TEST_URI="http://arcib.dowling.edu/software/CBFlib/downloads/version_${PV}/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P1}.tar.gz" +# test? ( +# mirror://sourceforge/${PN}/${MY_P2}_Data_Files_Input.tar.gz +# mirror://sourceforge/${PN}/${MY_P2}_Data_Files_Output.tar.gz +# )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux" +IUSE="doc test" + +S=${WORKDIR}/${MY_P1} + +RDEPEND="sci-libs/hdf5:=" +DEPEND="${RDEPEND}" + +RESTRICT="test" + +PATCHES=( + "${FILESDIR}"/${P}-unbundle.patch +) + +src_prepare(){ + rm -rf Py* drel* dRel* ply* || die + + append-fflags -fno-range-check + + tc-export CC CXX AR RANLIB FC F77 + cmake-utils_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DUNPACKED_DIRECTORY="${S}" + ) + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + dosym ${PN} /usr/include/cbf +} diff --git a/sci-libs/cbflib/files/0.9.0-Makefile.patch b/sci-libs/cbflib/files/0.9.0-Makefile.patch new file mode 100644 index 000000000000..914152c9e9e0 --- /dev/null +++ b/sci-libs/cbflib/files/0.9.0-Makefile.patch @@ -0,0 +1,104 @@ +diff --git a/Makefile_LINUX_gcc42 b/Makefile_LINUX_gcc42 +index 52c5286..5c894a0 100644 +--- a/Makefile_LINUX_gcc42 ++++ b/Makefile_LINUX_gcc42 +@@ -250,7 +250,10 @@ + + + # Version string +-VERSION = 0.9.0 ++MAJOR = 0 ++MINOR = 9 ++MICRO = 0 ++VERSION = ${MAJOR}.${MINOR}.${MICRO} + + + # +@@ -282,7 +285,7 @@ SHAR = /usr/bin/shar + # + # Program to use to create archives + # +-AR = /usr/bin/ar ++AR = ar + + # + # Program to use to add an index to an archive +@@ -292,13 +295,13 @@ RANLIB = /usr/bin/ranlib + # + # Program to use to decompress a data file + # +-DECOMPRESS = /usr/bin/bunzip2 ++DECOMPRESS = bunzip2 + + + # + # Program to use to compress a data file + # +-COMPRESS = /usr/bin/bzip2 ++COMPRESS = bzip2 + + # + # Program to use to generate a signature +@@ -486,9 +489,9 @@ F90SOURCE = $(SRC)/fcb_atol_wcnt.f90 \ + $(SRC)/fcb_read_image.f90 \ + $(SRC)/fcb_read_line.f90 \ + $(SRC)/fcb_read_xds_i2.f90 \ +- $(SRC)/fcb_skip_whitespace.f90 \ +- $(EXAMPLES)/test_fcb_read_image.f90 \ +- $(EXAMPLES)/test_xds_binary.f90 ++ $(SRC)/fcb_skip_whitespace.f90 ++# $(EXAMPLES)/test_fcb_read_image.f90 \ ++# $(EXAMPLES)/test_xds_binary.f90 + + + # +@@ -663,7 +666,7 @@ all:: $(BIN)/test_xds_binary \ + $(BIN)/test_fcb_read_image + endif + +-shared: $(SOLIB)/libcbf.so $(SOLIB)/libfcb.so $(SOLIB)/libimg.so ++shared: $(SOLIB)/libcbf.so.${VERSION} $(SOLIB)/libfcb.so.${VERSION} $(SOLIB)/libimg.so.${VERSION} + + javawrapper: shared $(JAVADIR) $(JAVADIR)/cbflib-$(VERSION).jar $(SOLIB)/libcbf_wrap.so + +@@ -846,10 +849,11 @@ ifneq ($(RANLIB),) + $(RANLIB) $@ + endif + +-$(SOLIB)/libcbf.so: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) ++$(SOLIB)/libcbf.so.${VERSION}: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) + $(CC) $(CFLAGS) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(SOURCE) + mv *.o $(SOLIB) +- $(CC) -o $@ $(SOLIB)/*.o $(SOLDFLAGS) $(EXTRALIBS) ++ $(CC) $(LDFLAGS) -Wl,-soname,libcbf.so.$(VERSION) $(SOCFLAGS) $(SOLDFLAGS) -o $@ $(SOLIB)/*.o $(EXTRALIBS) ++ ln -sf libcbf.so.$(VERSION) $(SOLIB)/libcbf.so + + # + # IMG library +@@ -862,9 +866,10 @@ ifneq ($(RANLIB),) + endif + rm img.o + +-$(SOLIB)/libimg.so: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) ++$(SOLIB)/libimg.so.${VERSION}: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) + $(CC) $(CFLAGS) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(EXAMPLES)/img.c +- $(CC) -o $@ img.o $(SOLDFLAGS) ++ $(CC) $(LDFLAGS) -Wl,-soname,libimg.so.$(VERSION) $(SOCFLAGS) $(SOLDFLAGS) -o $@ img.o ++ ln -sf libimg.so.$(VERSION) $(SOLIB)/libimg.so + rm img.o + + # +@@ -888,10 +893,11 @@ else + echo "Define F90C to build $(LIB)/libfcb.a" + endif + +-$(SOLIB)/libfcb.so: $(F90SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) ++$(SOLIB)/libfcb.so.${VERSION}: $(F90SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) + ifneq ($(F90C),) + $(F90C) $(F90FLAGS) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(F90SOURCE) +- $(F90C) $(F90FLAGS) -o $@ *.o $(SOLDFLAGS) ++ $(F90C) $(LDFLAGS) -Wl,-soname,libfcb.so.$(VERSION) $(SOCFLAGS) $(SOLDFLAGS) $(F90FLAGS) -o $@ *.o ++ ln -sf libfcb.so.$(VERSION) $(SOLIB)/libfcb.so + rm *.o + else + echo "Define F90C to build $(SOLIB)/libfcb.so" diff --git a/sci-libs/cbflib/files/0.9.0-python.patch b/sci-libs/cbflib/files/0.9.0-python.patch new file mode 100644 index 000000000000..b18d019ff8e2 --- /dev/null +++ b/sci-libs/cbflib/files/0.9.0-python.patch @@ -0,0 +1,16 @@ +diff --git a/pycbf/setup.py b/pycbf/setup.py +index 0763f06..7fe9ccc 100644 +--- a/pycbf/setup.py ++++ b/pycbf/setup.py +@@ -9,9 +9,9 @@ from distutils.core import setup, Extension + e = Extension('_pycbf', + sources = ["pycbf_wrap.c","../src/cbf_simple.c"], + extra_compile_args=["-g"], +- library_dirs=["../lib/"], ++ library_dirs=["../solib/"], + libraries=["cbf"], + include_dirs = ["../include"] ) + + # Build it +-setup(name="_pycbf",ext_modules=[e],) ++setup(name="_pycbf",ext_modules=[e],py_modules=["pycbf"],) diff --git a/sci-libs/cbflib/files/0.9.2.10-Makefile.patch b/sci-libs/cbflib/files/0.9.2.10-Makefile.patch new file mode 100644 index 000000000000..9c72300873fc --- /dev/null +++ b/sci-libs/cbflib/files/0.9.2.10-Makefile.patch @@ -0,0 +1,269 @@ + Makefile_LINUX_gcc42 | 93 ++++++++++++++++++++++++++++------------------------ + 1 file changed, 50 insertions(+), 43 deletions(-) + +diff --git a/Makefile_LINUX_gcc42 b/Makefile_LINUX_gcc42 +index 0aa639a..071863d 100644 +--- a/Makefile_LINUX_gcc42 ++++ b/Makefile_LINUX_gcc42 +@@ -250,7 +250,11 @@ + + + # Version string +-VERSION = 0.9.2 ++MAJOR = 0 ++MINOR = 9 ++MICRO = 3 ++VERSION = ${MAJOR}.${MINOR}.${MICRO} ++ + + + # +@@ -297,12 +301,12 @@ SHAR = /usr/bin/shar + # + # Program to use to create archives + # +-AR = /usr/bin/ar ++AR ?= ar + + # + # Program to use to add an index to an archive + # +-RANLIB = /usr/bin/ranlib ++RANLIB ?= ranlib + + # + # Program to use to decompress a data file +@@ -313,7 +317,7 @@ DECOMPRESS = bunzip2 + # + # Program to use to compress a data file + # +-COMPRESS = /usr/bin/bzip2 ++COMPRESS = bzip2 + + # + # Program to use to generate a signature +@@ -410,12 +414,12 @@ SETUP_PY = setup.py + # with gcc version 4.2 + # + ######################################################### +-CC = gcc +-C++ = g++ +-CFLAGS = -g -O2 -Wall -D_USE_XOPEN_EXTENDED -fno-strict-aliasing +-F90C = gfortran +-F90FLAGS = -g -fno-range-check +-F90LDFLAGS = ++CC ?= gcc ++CXX ?= g++ ++CFLAGS += -Wall -D_USE_XOPEN_EXTENDED -fno-strict-aliasing ++FC ?= gfortran ++FCFLAGS += -g -fno-range-check ++LDFLAGS += + SOCFLAGS = -fPIC + SOLDFLAGS = -shared -Wl,-rpath,$(INSTALLDIR)/lib + JAVAINCLUDES = -I$(JDKDIR)/include -I$(JDKDIR)/include/linux +@@ -425,7 +429,7 @@ M4FLAGS = -Dfcb_bytes_in_rec=131072 + TIME = time + + ifneq ($(NOFORTRAN),) +-F90C = ++FC = + endif + + # +@@ -491,9 +495,9 @@ RTLPEXPORTS = export LD_LIBRARY_PATH=$(PWD)/solib:$(PWD)/lib;\ + .m4.f90: + m4 -P $(M4FLAGS) $< > $@ + +-ifneq ($(F90C),) ++ifneq ($(FC),) + .f90.o: +- $(F90C) $(F90FLAGS) -c $< -o $@ ++ $(FC) $(FCFLAGS) -c $< -o $@ + endif + + +@@ -701,7 +705,7 @@ default: + # + # Compile the library and examples + # +-all:: $(BIN) $(SOURCE) $(F90SOURCE) $(HEADERS) $(HDF5)\ ++all:: $(BIN) $(SOURCE) $(F90SOURCE) $(HEADERS) \ + symlinksdone \ + $(REGEXDEP) \ + $(LIB)/libcbf.a \ +@@ -725,12 +729,12 @@ all:: $(BIN) $(SOURCE) $(F90SOURCE) $(HEADERS) $(HDF5)\ + $(BIN)/tiff2cbf + + +-ifneq ($(F90C),) ++ifneq ($(FC),) + all:: $(BIN)/test_xds_binary \ + $(BIN)/test_fcb_read_image + endif + +-shared: $(SOLIB)/libcbf.so $(SOLIB)/libfcb.so $(SOLIB)/libimg.so ++shared: $(SOLIB)/libcbf.so.${VERSION} $(SOLIB)/libfcb.so.${VERSION} $(SOLIB)/libimg.so.${VERSION} + + javawrapper: shared $(JCBF) $(JCBF)/cbflib-$(VERSION).jar $(SOLIB)/libcbf_wrap.so + +@@ -969,7 +973,7 @@ $(SRC)/cbf_stx.c: $(SRC)/cbf.stx.y + # + # CBF library + # +-$(LIB)/libcbf.a: $(SOURCE) $(HEADERS) $(COMMONDEP) $(LIB) $(HDF5) ++$(LIB)/libcbf.a: $(SOURCE) $(HEADERS) $(COMMONDEP) $(LIB) + $(CC) $(CFLAGS) $(NOLLFLAG) $(NOREGEXFLAG) $(PYCIFRWFLAG) $(INCLUDES) $(WARNINGS) -c $(SOURCE) + $(AR) cr $@ *.o + mv *.o $(LIB) +@@ -977,10 +981,11 @@ ifneq ($(RANLIB),) + $(RANLIB) $@ + endif + +-$(SOLIB)/libcbf.so: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) $(HDF5) +- $(CC) $(CFLAGS) $(NOLLFLAG) $(NOREGEXFLAG) $(PYCIFRWFLAG) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(SOURCE) +- $(CC) -o $@ *.o $(SOLDFLAGS) $(EXTRALIBS) $(HDF5SOLIBS) +- rm *.o ++$(SOLIB)/libcbf.so.${VERSION}: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) ++ $(CC) $(CFLAGS) $(NOREGEXFLAG) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(SOURCE) ++ mv *.o $(SOLIB) ++ $(CC) $(LDFLAGS) -Wl,-soname,libcbf.so.$(VERSION) $(SOCFLAGS) $(SOLDFLAGS) -o $@ $(SOLIB)/*.o $(EXTRALIBS) $(HDF5SOLIBS) ++ ln -sf libcbf.so.$(VERSION) $(SOLIB)/libcbf.so + + # + # IMG library +@@ -993,9 +998,10 @@ ifneq ($(RANLIB),) + endif + rm img.o + +-$(SOLIB)/libimg.so: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) +- $(CC) $(CFLAGS) $(NOLLFLAG) $(NOREGEXFLAG) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(EXAMPLES)/img.c +- $(CC) -o $@ img.o $(SOLDFLAGS) ++$(SOLIB)/libimg.so.${VERSION}: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) ++ $(CC) $(CFLAGS) $(NOREGEXFLAG) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(EXAMPLES)/img.c ++ $(CC) $(LDFLAGS) -Wl,-soname,libimg.so.$(VERSION) $(SOCFLAGS) $(SOLDFLAGS) -o $@ img.o -lm ++ ln -sf libimg.so.$(VERSION) $(SOLIB)/libimg.so + rm img.o + + # +@@ -1007,25 +1013,26 @@ CBF_IMG_LIBS: $(LIB)/libcbf.a $(LIB)/libimg.a + # + # FCB library + # +-$(LIB)/libfcb.a: $(F90SOURCE) $(COMMONDEP) $(LIB) $(HDF5) +-ifneq ($(F90C),) +- $(F90C) $(F90FLAGS) -c $(F90SOURCE) ++$(LIB)/libfcb.a: $(F90SOURCE) $(COMMONDEP) $(LIB) ++ifneq ($(FC),) ++ $(FC) $(FCFLAGS) -c $(F90SOURCE) + $(AR) cr $@ *.o + ifneq ($(RANLIB),) + $(RANLIB) $@ + endif + rm *.o + else +- echo "Define F90C to build $(LIB)/libfcb.a" ++ echo "Define FC to build $(LIB)/libfcb.a" + endif + +-$(SOLIB)/libfcb.so: $(F90SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) +-ifneq ($(F90C),) +- $(F90C) $(F90FLAGS) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(F90SOURCE) +- $(F90C) $(F90FLAGS) -o $@ *.o $(SOLDFLAGS) ++$(SOLIB)/libfcb.so.${VERSION}: $(F90SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) ++ifneq ($(FC),) ++ $(FC) $(FCFLAGS) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(F90SOURCE) ++ $(FC) $(LDFLAGS) -Wl,-soname,libfcb.so.$(VERSION) $(SOCFLAGS) $(SOLDFLAGS) $(FCFLAGS) -o $@ *.o ++ ln -sf libfcb.so.$(VERSION) $(SOLIB)/libfcb.so + rm *.o + else +- echo "Define F90C to build $(SOLIB)/libfcb.so" ++ echo "Define FC to build $(SOLIB)/libfcb.so" + endif + + +@@ -1183,7 +1190,7 @@ $(BIN)/cbf_template_t: $(DECTRIS_EXAMPLES)/cbf_template_t.c \ + # testcell example program + # + $(BIN)/testcell: $(LIB)/libcbf.a $(EXAMPLES)/testcell.C +- $(C++) $(CFLAGS) $(NOLLFLAG) $(NOREGEXFLAG) $(INCLUDES) $(WARNINGS) \ ++ $(CXX) $(CFLAGS) $(NOLLFLAG) $(NOREGEXFLAG) $(INCLUDES) $(WARNINGS) \ + $(EXAMPLES)/testcell.C -L$(LIB) \ + -lcbf $(EXTRALIBS) $(HDF5LIBS) -o $@ + +@@ -1191,7 +1198,7 @@ $(BIN)/testcell: $(LIB)/libcbf.a $(EXAMPLES)/testcell.C + # cif2c example program + # + $(BIN)/cif2c: $(LIB)/libcbf.a $(EXAMPLES)/cif2c.c +- $(C++) $(CFLAGS) $(NOLLFLAG) $(NOREGEXFLAG) $(INCLUDES) $(WARNINGS) \ ++ $(CXX) $(CFLAGS) $(NOLLFLAG) $(NOREGEXFLAG) $(INCLUDES) $(WARNINGS) \ + $(EXAMPLES)/cif2c.c -L$(LIB) \ + -lcbf $(EXTRALIBS) $(HDF5LIBS) -o $@ + +@@ -1199,7 +1206,7 @@ $(BIN)/cif2c: $(LIB)/libcbf.a $(EXAMPLES)/cif2c.c + # sauter_test example program + # + $(BIN)/sauter_test: $(LIB)/libcbf.a $(EXAMPLES)/sauter_test.C +- $(C++) $(CFLAGS) $(NOLLFLAG) $(NOREGEXFLAG) $(INCLUDES) $(WARNINGS) \ ++ $(CXX) $(CFLAGS) $(NOLLFLAG) $(NOREGEXFLAG) $(INCLUDES) $(WARNINGS) \ + $(EXAMPLES)/sauter_test.C -L$(LIB) \ + -lcbf $(EXTRALIBS) $(HDF5LIBS) -o $@ + +@@ -1253,19 +1260,19 @@ $(BIN)/testflatpacked: $(LIB)/libcbf.a $(EXAMPLES)/testflatpacked.c + $(EXAMPLES)/testflatpacked.c -L$(LIB) \ + -lcbf $(EXTRALIBS) $(HDF5LIBS) -o $@ + +-ifneq ($(F90C),) ++ifneq ($(FC),) + # + # test_xds_binary example program + # + $(BIN)/test_xds_binary: $(LIB)/libfcb.a $(EXAMPLES)/test_xds_binary.f90 +- $(F90C) $(F90FLAGS) $(F90LDFLAGS) $(EXAMPLES)/test_xds_binary.f90 \ ++ $(FC) $(FCFLAGS) $(LDFLAGS) $(EXAMPLES)/test_xds_binary.f90 \ + -L$(LIB) -lfcb -o $@ + + # + # test_fcb_read_image example program + # + $(BIN)/test_fcb_read_image: $(LIB)/libfcb.a $(EXAMPLES)/test_fcb_read_image.f90 +- $(F90C) $(F90FLAGS) $(F90LDFLAGS) $(EXAMPLES)/test_fcb_read_image.f90 \ ++ $(FC) $(FCFLAGS) $(LDFLAGS) $(EXAMPLES)/test_fcb_read_image.f90 \ + -L$(LIB) -lfcb -o $@ + endif + +@@ -1520,7 +1527,7 @@ basic: $(BIN)/makecbf $(BIN)/img2cif $(BIN)/cif2cbf $(TESTINPUT_BASIC) + # + # Extra Tests + # +-ifneq ($(F90C),) ++ifneq ($(FC),) + extra: $(BIN)/convert_image $(BIN)/convert_minicbf $(BIN)/cif2cbf $(BIN)/testcell \ + $(BIN)/testreals $(BIN)/testflat $(BIN)/testflatpacked \ + $(BIN)/test_xds_binary $(BIN)/test_fcb_read_image $(BIN)/convert_minicbf \ +@@ -1582,7 +1589,7 @@ endif + -cmp testflatin.cbf testflatout.cbf + $(TIME) $(BIN)/testflatpacked + -cmp testflatpackedin.cbf testflatpackedout.cbf +-ifneq ($(F90C),) ++ifneq ($(FC),) + echo testflatout.cbf | $(TIME) $(BIN)/test_xds_binary > test_xds_bin_testflatout.out + -$(DIFF) test_xds_bin_testflatout.out test_xds_bin_testflatout_orig.out + echo testflatpackedout.cbf | $(TIME) $(BIN)/test_xds_binary > test_xds_bin_testflatpackedout.out +@@ -1599,7 +1606,7 @@ endif + $(TIME) $(BIN)/cif2cbf -I 4 -C 100. -L 0. -e n -c b -i XRD1621.cbf -o XRD1621_I4encbC100.cbf + -$(DIFF) XRD1621_I4encbC100.cbf XRD1621_I4encbC100_orig.cbf + +-ifneq ($(F90C),) ++ifneq ($(FC),) + extra_sigs_only: $(BIN)/convert_image $(BIN)/convert_minicbf $(BIN)/cif2cbf $(BIN)/testcell \ + $(BIN)/testreals $(BIN)/testflat $(BIN)/testflatpacked \ + $(BIN)/test_xds_binary $(BIN)/test_fcb_read_image $(BIN)/convert_minicbf \ +@@ -1650,7 +1657,7 @@ endif + -cmp testflatin.cbf testflatout.cbf + $(TIME) $(BIN)/testflatpacked + -cmp testflatpackedin.cbf testflatpackedout.cbf +-ifneq ($(F90C),) ++ifneq ($(FC),) + echo testflatout.cbf | $(TIME) $(BIN)/test_xds_binary | \ + $(SIGNATURE) | $(DIFF) - test_xds_bin_testflatout_orig.out$(SEXT) + echo testflatpackedout.cbf | $(TIME) $(BIN)/test_xds_binary | \ diff --git a/sci-libs/cbflib/files/0.9.2.2-Makefile.patch b/sci-libs/cbflib/files/0.9.2.2-Makefile.patch new file mode 100644 index 000000000000..a25760307275 --- /dev/null +++ b/sci-libs/cbflib/files/0.9.2.2-Makefile.patch @@ -0,0 +1,150 @@ +From 44e303d998c72d5d502705895a536b3657a7c4c5 Mon Sep 17 00:00:00 2001 +Message-Id: <44e303d998c72d5d502705895a536b3657a7c4c5.1323790511.git.jlec@gentoo.org> +From: Justin Lecher <jlec@gentoo.org> +Date: Tue, 13 Dec 2011 16:10:43 +0100 +Subject: [PATCH] 0.9.0 Makefile.patch + +Conflicts: + + Makefile_LINUX_gcc42 +--- + Makefile_LINUX_gcc42 | 63 ++++++++++++++++++++++++++----------------------- + 1 files changed, 33 insertions(+), 30 deletions(-) + +diff --git a/Makefile_LINUX_gcc42 b/Makefile_LINUX_gcc42 +index a74be5f..1cfb066 100644 +--- a/Makefile_LINUX_gcc42 ++++ b/Makefile_LINUX_gcc42 +@@ -250,7 +250,10 @@ + + + # Version string +-VERSION = 0.9.2 ++MAJOR = 0 ++MINOR = 9 ++MICRO = 2 ++VERSION = ${MAJOR}.${MINOR}.${MICRO} + + + # +@@ -290,7 +293,7 @@ SHAR = /usr/bin/shar + # + # Program to use to create archives + # +-AR = /usr/bin/ar ++AR = ar + + # + # Program to use to add an index to an archive +@@ -300,13 +303,13 @@ RANLIB = /usr/bin/ranlib + # + # Program to use to decompress a data file + # +-DECOMPRESS = /usr/bin/bunzip2 ++DECOMPRESS = bunzip2 + + + # + # Program to use to compress a data file + # +-COMPRESS = /usr/bin/bzip2 ++COMPRESS = bzip2 + + # + # Program to use to generate a signature +@@ -509,21 +512,18 @@ SOURCE = $(SRC)/cbf.c \ + + + F90SOURCE = $(SRC)/fcb_atol_wcnt.f90 \ +- $(SRC)/fcb_ci_strncmparr.f90 \ +- $(SRC)/fcb_exit_binary.f90 \ +- $(SRC)/fcb_nblen_array.f90 \ +- $(SRC)/fcb_next_binary.f90 \ +- $(SRC)/fcb_open_cifin.f90 \ +- $(SRC)/fcb_packed.f90 \ +- $(SRC)/fcb_read_bits.f90 \ +- $(SRC)/fcb_read_byte.f90 \ +- $(SRC)/fcb_read_image.f90 \ +- $(SRC)/fcb_read_line.f90 \ +- $(SRC)/fcb_read_xds_i2.f90 \ +- $(SRC)/fcb_skip_whitespace.f90 \ +- $(EXAMPLES)/test_fcb_read_image.f90 \ +- $(EXAMPLES)/test_xds_binary.f90 +- ++ $(SRC)/fcb_ci_strncmparr.f90 \ ++ $(SRC)/fcb_exit_binary.f90 \ ++ $(SRC)/fcb_nblen_array.f90 \ ++ $(SRC)/fcb_next_binary.f90 \ ++ $(SRC)/fcb_open_cifin.f90 \ ++ $(SRC)/fcb_packed.f90 \ ++ $(SRC)/fcb_read_bits.f90 \ ++ $(SRC)/fcb_read_byte.f90 \ ++ $(SRC)/fcb_read_image.f90 \ ++ $(SRC)/fcb_read_line.f90 \ ++ $(SRC)/fcb_read_xds_i2.f90 \ ++ $(SRC)/fcb_skip_whitespace.f90 + + # + # Header files +@@ -701,7 +701,7 @@ all:: $(BIN)/test_xds_binary \ + $(BIN)/test_fcb_read_image + endif + +-shared: $(SOLIB)/libcbf.so $(SOLIB)/libfcb.so $(SOLIB)/libimg.so ++shared: $(SOLIB)/libcbf.so.${VERSION} $(SOLIB)/libfcb.so.${VERSION} $(SOLIB)/libimg.so.${VERSION} + + javawrapper: shared $(JCBF) $(JCBF)/cbflib-$(VERSION).jar $(SOLIB)/libcbf_wrap.so + +@@ -915,25 +915,27 @@ ifneq ($(RANLIB),) + $(RANLIB) $@ + endif + +-$(SOLIB)/libcbf.so: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) +- $(CC) $(CFLAGS) $(NOLLFLAG) $(PYCIFRWFLAG) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(SOURCE) +- $(CC) -o $@ *.o $(SOLDFLAGS) $(EXTRALIBS) +- rm *.o ++$(SOLIB)/libcbf.so.${VERSION}: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) ++ $(CC) $(CFLAGS) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(SOURCE) ++ mv *.o $(SOLIB) ++ $(CC) $(LDFLAGS) -Wl,-soname,libcbf.so.$(VERSION) $(SOCFLAGS) $(SOLDFLAGS) -o $@ $(SOLIB)/*.o $(EXTRALIBS) ++ ln -sf libcbf.so.$(VERSION) $(SOLIB)/libcbf.so + + # + # IMG library + # + $(LIB)/libimg.a: $(EXAMPLES)/img.c $(HEADERS) $(COMMONDEP) $(LIB) +- $(CC) $(CFLAGS) $(NOLLFLAG) $(INCLUDES) $(WARNINGS) -c $(EXAMPLES)/img.c ++ $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) -c $(EXAMPLES)/img.c + $(AR) cr $@ img.o + ifneq ($(RANLIB),) + $(RANLIB) $@ + endif + rm img.o + +-$(SOLIB)/libimg.so: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) +- $(CC) $(CFLAGS) $(NOLLFLAG) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(EXAMPLES)/img.c +- $(CC) -o $@ img.o $(SOLDFLAGS) ++$(SOLIB)/libimg.so.${VERSION}: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) ++ $(CC) $(CFLAGS) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(EXAMPLES)/img.c ++ $(CC) $(LDFLAGS) -Wl,-soname,libimg.so.$(VERSION) $(SOCFLAGS) $(SOLDFLAGS) -o $@ img.o ++ ln -sf libimg.so.$(VERSION) $(SOLIB)/libimg.so + rm img.o + + # +@@ -957,10 +959,11 @@ else + echo "Define F90C to build $(LIB)/libfcb.a" + endif + +-$(SOLIB)/libfcb.so: $(F90SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) ++$(SOLIB)/libfcb.so.${VERSION}: $(F90SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) + ifneq ($(F90C),) + $(F90C) $(F90FLAGS) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(F90SOURCE) +- $(F90C) $(F90FLAGS) -o $@ *.o $(SOLDFLAGS) ++ $(F90C) $(LDFLAGS) -Wl,-soname,libfcb.so.$(VERSION) $(SOCFLAGS) $(SOLDFLAGS) $(F90FLAGS) -o $@ *.o ++ ln -sf libfcb.so.$(VERSION) $(SOLIB)/libfcb.so + rm *.o + else + echo "Define F90C to build $(SOLIB)/libfcb.so" +-- +1.7.8 + diff --git a/sci-libs/cbflib/files/0.9.2.3-Makefile.patch b/sci-libs/cbflib/files/0.9.2.3-Makefile.patch new file mode 100644 index 000000000000..b7c504225218 --- /dev/null +++ b/sci-libs/cbflib/files/0.9.2.3-Makefile.patch @@ -0,0 +1,150 @@ +From 44e303d998c72d5d502705895a536b3657a7c4c5 Mon Sep 17 00:00:00 2001 +Message-Id: <44e303d998c72d5d502705895a536b3657a7c4c5.1323790511.git.jlec@gentoo.org> +From: Justin Lecher <jlec@gentoo.org> +Date: Tue, 13 Dec 2011 16:10:43 +0100 +Subject: [PATCH] 0.9.0 Makefile.patch + +Conflicts: + + Makefile_LINUX_gcc42 +--- + Makefile_LINUX_gcc42 | 63 ++++++++++++++++++++++++++----------------------- + 1 files changed, 33 insertions(+), 30 deletions(-) + +diff --git a/Makefile_LINUX_gcc42 b/Makefile_LINUX_gcc42 +index a74be5f..1cfb066 100644 +--- a/Makefile_LINUX_gcc42 ++++ b/Makefile_LINUX_gcc42 +@@ -250,7 +250,10 @@ + + + # Version string +-VERSION = 0.9.2 ++MAJOR = 0 ++MINOR = 9 ++MICRO = 3 ++VERSION = ${MAJOR}.${MINOR}.${MICRO} + + + # +@@ -290,7 +293,7 @@ SHAR = /usr/bin/shar + # + # Program to use to create archives + # +-AR = /usr/bin/ar ++AR = ar + + # + # Program to use to add an index to an archive +@@ -300,13 +303,13 @@ RANLIB = /usr/bin/ranlib + # + # Program to use to decompress a data file + # +-DECOMPRESS = /usr/bin/bunzip2 ++DECOMPRESS = bunzip2 + + + # + # Program to use to compress a data file + # +-COMPRESS = /usr/bin/bzip2 ++COMPRESS = bzip2 + + # + # Program to use to generate a signature +@@ -509,21 +512,18 @@ SOURCE = $(SRC)/cbf.c \ + + + F90SOURCE = $(SRC)/fcb_atol_wcnt.f90 \ +- $(SRC)/fcb_ci_strncmparr.f90 \ +- $(SRC)/fcb_exit_binary.f90 \ +- $(SRC)/fcb_nblen_array.f90 \ +- $(SRC)/fcb_next_binary.f90 \ +- $(SRC)/fcb_open_cifin.f90 \ +- $(SRC)/fcb_packed.f90 \ +- $(SRC)/fcb_read_bits.f90 \ +- $(SRC)/fcb_read_byte.f90 \ +- $(SRC)/fcb_read_image.f90 \ +- $(SRC)/fcb_read_line.f90 \ +- $(SRC)/fcb_read_xds_i2.f90 \ +- $(SRC)/fcb_skip_whitespace.f90 \ +- $(EXAMPLES)/test_fcb_read_image.f90 \ +- $(EXAMPLES)/test_xds_binary.f90 +- ++ $(SRC)/fcb_ci_strncmparr.f90 \ ++ $(SRC)/fcb_exit_binary.f90 \ ++ $(SRC)/fcb_nblen_array.f90 \ ++ $(SRC)/fcb_next_binary.f90 \ ++ $(SRC)/fcb_open_cifin.f90 \ ++ $(SRC)/fcb_packed.f90 \ ++ $(SRC)/fcb_read_bits.f90 \ ++ $(SRC)/fcb_read_byte.f90 \ ++ $(SRC)/fcb_read_image.f90 \ ++ $(SRC)/fcb_read_line.f90 \ ++ $(SRC)/fcb_read_xds_i2.f90 \ ++ $(SRC)/fcb_skip_whitespace.f90 + + # + # Header files +@@ -701,7 +701,7 @@ all:: $(BIN)/test_xds_binary \ + $(BIN)/test_fcb_read_image + endif + +-shared: $(SOLIB)/libcbf.so $(SOLIB)/libfcb.so $(SOLIB)/libimg.so ++shared: $(SOLIB)/libcbf.so.${VERSION} $(SOLIB)/libfcb.so.${VERSION} $(SOLIB)/libimg.so.${VERSION} + + javawrapper: shared $(JCBF) $(JCBF)/cbflib-$(VERSION).jar $(SOLIB)/libcbf_wrap.so + +@@ -915,25 +915,27 @@ ifneq ($(RANLIB),) + $(RANLIB) $@ + endif + +-$(SOLIB)/libcbf.so: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) +- $(CC) $(CFLAGS) $(NOLLFLAG) $(NOREGEXFLAG) $(PYCIFRWFLAG) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(SOURCE) +- $(CC) -o $@ *.o $(SOLDFLAGS) $(EXTRALIBS) +- rm *.o ++$(SOLIB)/libcbf.so.${VERSION}: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) ++ $(CC) $(CFLAGS) $(NOREGEXFLAG) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(SOURCE) ++ mv *.o $(SOLIB) ++ $(CC) $(LDFLAGS) -Wl,-soname,libcbf.so.$(VERSION) $(SOCFLAGS) $(SOLDFLAGS) -o $@ $(SOLIB)/*.o $(EXTRALIBS) ++ ln -sf libcbf.so.$(VERSION) $(SOLIB)/libcbf.so + + # + # IMG library + # + $(LIB)/libimg.a: $(EXAMPLES)/img.c $(HEADERS) $(COMMONDEP) $(LIB) +- $(CC) $(CFLAGS) $(NOLLFLAG) $(NOREGEXFLAG) $(INCLUDES) $(WARNINGS) -c $(EXAMPLES)/img.c ++ $(CC) $(CFLAGS) $(NOREGEXFLAG) $(INCLUDES) $(WARNINGS) -c $(EXAMPLES)/img.c + $(AR) cr $@ img.o + ifneq ($(RANLIB),) + $(RANLIB) $@ + endif + rm img.o + +-$(SOLIB)/libimg.so: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) +- $(CC) $(CFLAGS) $(NOLLFLAG) $(NOREGEXFLAG) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(EXAMPLES)/img.c +- $(CC) -o $@ img.o $(SOLDFLAGS) ++$(SOLIB)/libimg.so.${VERSION}: $(SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) ++ $(CC) $(CFLAGS) $(SOCFLAGS) $(NOREGEXFLAG) $(INCLUDES) $(WARNINGS) -c $(EXAMPLES)/img.c ++ $(CC) $(LDFLAGS) -Wl,-soname,libimg.so.$(VERSION) $(SOCFLAGS) $(SOLDFLAGS) -o $@ img.o -lm ++ ln -sf libimg.so.$(VERSION) $(SOLIB)/libimg.so + rm img.o + + # +@@ -957,10 +959,11 @@ else + echo "Define F90C to build $(LIB)/libfcb.a" + endif + +-$(SOLIB)/libfcb.so: $(F90SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) ++$(SOLIB)/libfcb.so.${VERSION}: $(F90SOURCE) $(HEADERS) $(COMMONDEP) $(SOLIB) + ifneq ($(F90C),) + $(F90C) $(F90FLAGS) $(SOCFLAGS) $(INCLUDES) $(WARNINGS) -c $(F90SOURCE) +- $(F90C) $(F90FLAGS) -o $@ *.o $(SOLDFLAGS) ++ $(F90C) $(LDFLAGS) -Wl,-soname,libfcb.so.$(VERSION) $(SOCFLAGS) $(SOLDFLAGS) $(F90FLAGS) -o $@ *.o ++ ln -sf libfcb.so.$(VERSION) $(SOLIB)/libfcb.so + rm *.o + else + echo "Define F90C to build $(SOLIB)/libfcb.so" +-- +1.7.8 + diff --git a/sci-libs/cbflib/files/cbflib-0.9.3.3-unbundle.patch b/sci-libs/cbflib/files/cbflib-0.9.3.3-unbundle.patch new file mode 100644 index 000000000000..ef24c4b94b22 --- /dev/null +++ b/sci-libs/cbflib/files/cbflib-0.9.3.3-unbundle.patch @@ -0,0 +1,181 @@ + CMakeLists.txt | 118 +++------------------------------------------------------ + 1 file changed, 6 insertions(+), 112 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 75054d6..15bab99 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -279,7 +279,7 @@ project (CBFlib C CXX Fortran) + enable_testing() + set (CBF_CMAKE_DEBUG "ON") + +-set(CMAKE_C_FLAGS "-Wall -fno-strict-aliasing") ++set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -fno-strict-aliasing") + + # + # User setable parameters +@@ -530,42 +530,6 @@ find_package(ZLIB) + + + +-#Load external packages in build directory at cmake time +-add_subdirectory(${CBF__EXTERNAL_PACKAGES} "${CBF__EXT_PKG}") +- +-find_file(CBF_EXT_PKG_BLD_RUNNING cbf_ext_pkg_build_running "${CBF__EXT_PKG}") +-if (${CBF_EXT_PKG_BLD_RUNNING} STREQUAL "CBF_EXT_PKG_BLD_RUNNING-NOTFOUND") +- file(WRITE "${CBF__EXT_PKG}/cbf_ext_pkg_build_running" "cbf_ext_pkg_build_running") +- CBF_DEBUG_MESSAGE("CMAKE_COMMAND: ${CMAKE_COMMAND}") +- CBF_DEBUG_MESSAGE("CBFlib_SOURCE_DIR: ${CBFlib_SOURCE_DIR} ") +- execute_process( +- COMMAND ${CMAKE_COMMAND} ${CBFlib_SOURCE_DIR} +- RESULT_VARIABLE CBF_BUILD_RESULT) +- CBF_DEBUG_MESSAGE("CBF_BUILD_RESULT: ${CBF_BUILD_RESULT}") +- execute_process( +- COMMAND ${CMAKE_COMMAND} --build ${CBFlib_BINARY_DIR} --target HDF5 +- RESULT_VARIABLE CBF_BUILD_RESULT) +- CBF_DEBUG_MESSAGE("CBF_BUILD_RESULT: ${CBF_BUILD_RESULT}") +- execute_process( +- COMMAND ${CMAKE_COMMAND} --build ${CBFlib_BINARY_DIR} --target TIFF +- RESULT_VARIABLE CBF_BUILD_RESULT) +- CBF_DEBUG_MESSAGE("CBF_BUILD_RESULT: ${CBF_BUILD_RESULT}") +- file(REMOVE "${CBF__EXT_PKG}/cbf_ext_pkg_build_running") +-endif (${CBF_EXT_PKG_BLD_RUNNING} STREQUAL "CBF_EXT_PKG_BLD_RUNNING-NOTFOUND") +- +- +-file(GLOB CBF_HDF5_LIBRARY_PATH "${CMAKE_CURRENT_BINARY_DIR}/lib/*hdf5*") +-CBF_DEBUG_MESSAGE( "CBF_HDF5_LIBRARY_PATH: ${CBF_HDF5_LIBRARY_PATH}") +-file(GLOB CBF_TIFF_LIBRARY_PATH "${CMAKE_CURRENT_BINARY_DIR}/lib/*tif*") +-CBF_DEBUG_MESSAGE( "CBF_TIFF_LIBRARY_PATH: ${CBF_TIFF_LIBRARY_PATH}") +- +-if ("|${CBF_HDF5_LIBRARY_PATH}|" STREQUAL "||" OR "|${CBF_TIFF_LIBRARY_PATH}|" STREQUAL "||") +- MESSAGE(STATUS "Must build external packages in ${CBF__EXT_PKG}") +- MESSAGE(STATUS "Then rerun cmake") +- MESSAGE(WARNING "Finishing run to make Makefiles") +-endif ("|${CBF_HDF5_LIBRARY_PATH}|" STREQUAL "||" OR "|${CBF_TIFF_LIBRARY_PATH}|" STREQUAL "||") +- +- + # + # Data Directories + # +@@ -579,35 +543,6 @@ set(CBF_DATAURLBASE "http://downloads.sf.net/cbflib") + set(CBF_DATAURLI "${CBF_DATAURLBASE}/CBFlib_${CBF_VERSION}_Data_Files_Input.tar.gz") + set(CBF_DATAURLO "${CBF_DATAURLBASE}/CBFlib_${CBF_VERSION}_Data_Files_Output.tar.gz") + set(CBF_DATAURLS "${CBF_DATAURLBASE}/CBFlib_${CBF_VERSION}_Data_Files_Output_Sigs_Only.tar.gz") +-# +-# Load and unpack the Data Files +-# +-CBF_LOAD_TARBALL(${CBF__DATA} ${CBF_DATADIRI} ${CBF_DATAURLI}) +-CBF_LOAD_TARBALL(${CBF__DATA} ${CBF_DATADIRO} ${CBF_DATAURLO}) +-CBF_LOAD_TARBALL(${CBF__DATA} ${CBF_DATADIRS} ${CBF_DATAURLS}) +-# +-# Verify the checksums +-# +-file(GLOB CBF_DATADIRI_FILES "${CBF_DATADIRI}/*") +-file(GLOB CBF_DATADIRO_FILES "${CBF_DATADIRO}/*") +-foreach(loop_file ${CBF_DATADIRI_FILES} ) +- if (NOT "${loop_file}" MATCHES "[*.]md5") +- file(MD5 "${loop_file}" loop_file_md5) +- file(STRINGS "${loop_file}.md5" loop_file_md5_orig LIMIT_COUNT 1) +- if (NOT ("${loop_file_md5}" STREQUAL "${loop_file_md5_orig}")) +- message(WARNINH "loop_file: ${loop_file}:|${loop_file_md5}|${loop_file_md5_orig}|") +- endif (NOT ("${loop_file_md5}" STREQUAL "${loop_file_md5_orig}")) +- endif (NOT "${loop_file}" MATCHES "[*.]md5") +-endforeach(loop_file) +-foreach(loop_file ${CBF_DATADIRO_FILES} ) +- if (NOT "${loop_file}" MATCHES "[*.]md5") +- file(MD5 "${loop_file}" loop_file_md5) +- file(STRINGS "${loop_file}.md5" loop_file_md5_orig LIMIT_COUNT 1) +- if (NOT ("${loop_file_md5}" STREQUAL "${loop_file_md5_orig}")) +- message(WARNING "loop_file: ${loop_file}:|${loop_file_md5}|${loop_file_md5_orig}|") +- endif (NOT ("${loop_file_md5}" STREQUAL "${loop_file_md5_orig}")) +- endif (NOT "${loop_file}" MATCHES "[*.]md5") +-endforeach(loop_file) + + + # +@@ -775,7 +710,7 @@ add_library(cbf_shared SHARED ${CBF_C_SOURCES}) + set_target_properties(cbf_shared PROPERTIES OUTPUT_NAME "cbf") + set_target_properties(cbf_shared PROPERTIES LINKER_LANGUAGE C) + set_target_properties(cbf_shared PROPERTIES SOVERSION "${CBF_APIVERSION}") +-target_link_libraries(cbf_shared ${CBF_HDF5_LIBRARY_PATH}) ++target_link_libraries(cbf_shared hdf5) + + # + # Build the static and shared IMG libraries +@@ -791,7 +726,7 @@ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CBFlib_BINARY_DIR}/solib") + add_library(img_shared SHARED ${CBF__EXAMPLES}/img.c) + set_target_properties(img_shared PROPERTIES OUTPUT_NAME "img") + set_target_properties(img_shared PROPERTIES LINKER_LANGUAGE C) +-target_link_libraries(img_shared ${CBF_HDF5_LIBRARY_PATH}) ++target_link_libraries(img_shared hdf5 m ) + + + # +@@ -829,26 +764,6 @@ target_link_libraries(fcb_shared ${CBF_HDF5_LIBRARY_PATH}) + # + # C and C++ examples + # +-CBF_ADD_C_EXAMPLE(convert_image "${CBF__EXAMPLES}" "" "img_static") +-CBF_ADD_C_EXAMPLE(convert_minicbf "${CBF__EXAMPLES}" "" "") +-CBF_ADD_C_EXAMPLE(makecbf "${CBF__EXAMPLES}" "" "img_static") +-CBF_ADD_C_EXAMPLE(adscimg2cbf "${CBF__EXAMPLES}" "${CBF__EXAMPLES}/adscimg2cbf_sub.c" "") +-CBF_ADD_C_EXAMPLE(cbf2adscimg "${CBF__EXAMPLES}" "${CBF__EXAMPLES}/cbf2adscimg_sub.c" "") +-CBF_ADD_C_EXAMPLE(cbf_tail "${CBF__EXAMPLES}" "" "") +-CBF_ADD_C_EXAMPLE(changtestcompression "${CBF__EXAMPLES}" "" "") +-CBF_ADD_C_EXAMPLE(img2cif "${CBF__EXAMPLES}" "" "img_static") +-CBF_ADD_C_EXAMPLE(cif2cbf "${CBF__EXAMPLES}" "" "") +-CBF_ADD_C_EXAMPLE(cbf2nexus "${CBF__EXAMPLES}" "" "") +-CBF_ADD_C_EXAMPLE(minicbf2nexus "${CBF__EXAMPLES}" "" "") +-CBF_ADD_C_EXAMPLE(cbf_template_t "${CBF__DECTRIS_EXAMPLES}" "" "") +-CBF_ADD_CXX_EXAMPLE(testcell "${CBF__EXAMPLES}" "" "") +-CBF_ADD_CXX_EXAMPLE(sauter_test "${CBF__EXAMPLES}" "" "") +-CBF_ADD_C_EXAMPLE(sequence_match "${CBF__EXAMPLES}" "" "") +-CBF_ADD_C_EXAMPLE(tiff2cbf "${CBF__EXAMPLES}" "${CBF__EXT_PKG}/${CBF_TIFF}/libtiff/tif_sprint.c" "${CBF_TIFF_LIBRARY_PATH}") +-CBF_ADD_C_EXAMPLE(testulp "${CBF__EXAMPLES}" "" "") +-CBF_ADD_C_EXAMPLE(testhdf5 "${CBF__EXAMPLES}" "" "") +-CBF_ADD_C_EXAMPLE(testtree "${CBF__EXAMPLES}" "" "") +-CBF_ADD_C_EXAMPLE(testalloc "${CBF__EXAMPLES}" "" "") + + + +@@ -876,26 +791,9 @@ target_link_libraries(test_xds_binary fcb_static) + # + # install + # +-install (TARGETS makecbf DESTINATION bin) +-install (TARGETS img2cif DESTINATION bin) +-install (TARGETS cif2cbf DESTINATION bin) +-install (TARGETS adscimg2cbf DESTINATION bin) +-install (TARGETS cbf2adscimg DESTINATION bin) +-install (TARGETS changtestcompression DESTINATION bin) +-install (TARGETS convert_image DESTINATION bin) +-install (TARGETS convert_minicbf DESTINATION bin) +-install (TARGETS minicbf2nexus DESTINATION bin) +-install (TARGETS cbf_template_t DESTINATION bin) +-install (TARGETS testcell DESTINATION bin) +-install (TARGETS sauter_test DESTINATION bin) +-install (TARGETS sequence_match DESTINATION bin) +-install (TARGETS tiff2cbf DESTINATION bin) +-install (TARGETS cbf_static DESTINATION lib) +-install (TARGETS cbf_shared DESTINATION lib) +-install (TARGETS fcb_static DESTINATION lib) +-install (TARGETS fcb_shared DESTINATION lib) +-install (TARGETS img_static DESTINATION lib) +-install (TARGETS img_shared DESTINATION lib) ++install (TARGETS cbf_shared DESTINATION lib${LIB_SUFFIX}) ++install (TARGETS fcb_shared DESTINATION lib${LIB_SUFFIX}) ++install (TARGETS img_shared DESTINATION lib${LIB_SUFFIX}) + install (DIRECTORY ${CBF__INCLUDE}/ DESTINATION include/cbflib FILES_MATCHING PATTERN "*.h") + install (DIRECTORY ${CBF__BIN_INCLUDE}/* DESTINATION include/cbflib FILES_MATCHING PATTERN "*.h") + +@@ -914,10 +812,6 @@ endif () + # + # tests -- to be extended + # +-add_test(NAME cbftest_makecbf +- COMMAND ${CMAKE_COMMAND} +- -DCMD1=$<TARGET_FILE:makecbf> -DARG11=${CBF_DATADIRI}/example.mar2300 -DARG12=makecbf.cbf +- -P ${CMAKE_CURRENT_SOURCE_DIR}/runcommands.cmake) + add_test(cbftest_testalloc ${VALGRIND_COMMAND} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/testalloc) + add_test(cbftest_testhdf5 ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/testhdf5) + add_test(cbftest_testtree ${VALGRIND_COMMAND} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/testtree) diff --git a/sci-libs/cbflib/metadata.xml b/sci-libs/cbflib/metadata.xml new file mode 100644 index 000000000000..7371ec6ccff3 --- /dev/null +++ b/sci-libs/cbflib/metadata.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <longdescription> +CBFLIB is a library of ANSI-C functions providing a simple mechanism +for accessing Crystallographic Binary Files (CBF files) and Image-supporting +CIF (imgCIF) files. The CBFLIB API is loosely based on the CIFPARSE API for +mmCIF files. Starting with this release, CBFLIB performs validation checks +on reading of a CBF. If a dictionary is provided, values will be validated +against dictionary ranges and enumerations. Tags missing under parent-child +relationships or category key requirements will be reported. CBFlib provides +functions to create, read, modify and write CBF binary data files and imgCIF +ASCII data files. +</longdescription> + <upstream> + <remote-id type="sourceforge">cbflib</remote-id> + </upstream> +</pkgmetadata> diff --git a/sci-libs/cblas-reference/Manifest b/sci-libs/cblas-reference/Manifest new file mode 100644 index 000000000000..1e8316091c81 --- /dev/null +++ b/sci-libs/cblas-reference/Manifest @@ -0,0 +1 @@ +DIST cblas.tgz 197694 SHA256 9b49d7177fda62b6141bf2ca29e475e86f0b12d8f72e0b944058d02b439dd52a SHA512 8edc4f939d36e6bb9bcbc4ffe414b6c991192ef2e76ec4eda16d3578591185d31e46be5e747d74c740411db6bd2c2d414a18f73193d4a288e8c7e4b83cb0895d WHIRLPOOL e3f9f2b6a58f000ac2dc02326cd5a41f8a5cc1437035e710c49eb2ff8b366906c099285c982394e69082d861be16cacd8bef2c3191d84dcace120b5d73623915 diff --git a/sci-libs/cblas-reference/cblas-reference-20030223-r4.ebuild b/sci-libs/cblas-reference/cblas-reference-20030223-r4.ebuild new file mode 100644 index 000000000000..72164d89c970 --- /dev/null +++ b/sci-libs/cblas-reference/cblas-reference-20030223-r4.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit autotools eutils fortran-2 multilib toolchain-funcs + +MyPN="${PN/-reference/}" + +DESCRIPTION="C wrapper interface to the F77 reference BLAS implementation" +HOMEPAGE="http://www.netlib.org/blas/" +SRC_URI="http://www.netlib.org/blas/blast-forum/${MyPN}.tgz" + +SLOT="0" +LICENSE="public-domain" +IUSE="" +KEYWORDS="alpha amd64 hppa ppc ppc64 s390 sparc x86 ~x86-fbsd" + +RDEPEND=" + virtual/blas + app-eselect/eselect-cblas" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +ESELECT_PROF=reference +S="${WORKDIR}/CBLAS" + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}"/${P}-autotool.patch + eautoreconf +} + +src_compile() { + econf \ + --libdir=/usr/$(get_libdir)/blas/reference \ + --with-blas="$($(tc-getPKG_CONFIG) --libs blas)" + emake || die "emake failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + dodoc README || die "failed to install docs" + insinto /usr/share/doc/${PF} + doins cblas_example*c || die "install examples failed" + eselect cblas add $(get_libdir) "${FILESDIR}"/eselect.cblas.reference ${ESELECT_PROF} +} + +pkg_postinst() { + local p=cblas + local current_lib=$(eselect ${p} show | cut -d' ' -f2) + if [[ ${current_lib} == ${ESELECT_PROF} || -z ${current_lib} ]]; then + # work around eselect bug #189942 + local configfile="${ROOT}"/etc/env.d/${p}/$(get_libdir)/config + [[ -e ${configfile} ]] && rm -f ${configfile} + eselect ${p} set ${ESELECT_PROF} + elog "${p} has been eselected to ${ESELECT_PROF}" + else + elog "Current eselected ${p} is ${current_lib}" + elog "To use ${p} ${ESELECT_PROF} implementation, you have to issue (as root):" + elog "\t eselect ${p} set ${ESELECT_PROF}" + fi +} diff --git a/sci-libs/cblas-reference/cblas-reference-20030223-r5.ebuild b/sci-libs/cblas-reference/cblas-reference-20030223-r5.ebuild new file mode 100644 index 000000000000..6d0264b44388 --- /dev/null +++ b/sci-libs/cblas-reference/cblas-reference-20030223-r5.ebuild @@ -0,0 +1,69 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="3" + +inherit autotools eutils fortran-2 multilib toolchain-funcs + +MyPN="${PN/-reference/}" + +DESCRIPTION="C wrapper interface to the F77 reference BLAS implementation" +HOMEPAGE="http://www.netlib.org/blas/" +SRC_URI="http://www.netlib.org/blas/blast-forum/${MyPN}.tgz" + +SLOT="0" +LICENSE="public-domain" +IUSE="" +KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos" + +RDEPEND=" + virtual/blas + app-eselect/eselect-cblas" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +ESELECT_PROF=reference +S="${WORKDIR}/CBLAS" + +src_prepare() { + epatch "${FILESDIR}"/${P}-autotool.patch + eautoreconf + + cp "${FILESDIR}"/eselect.cblas.reference "${T}"/ + sed -i -e "s:/usr:${EPREFIX}/usr:" "${T}"/eselect.cblas.reference || die + if [[ ${CHOST} == *-darwin* ]] ; then + sed -i -e 's/\.so\([\.0-9]\+\)\?/\1.dylib/g' \ + "${T}"/eselect.cblas.reference || die + fi +} + +src_configure() { + econf \ + --libdir="${EPREFIX}"/usr/$(get_libdir)/blas/reference \ + --with-blas="$($(tc-getPKG_CONFIG) --libs blas)" +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + dodoc README || die "failed to install docs" + insinto /usr/share/doc/${PF} + doins cblas_example*c || die "install examples failed" + eselect cblas add $(get_libdir) "${T}"/eselect.cblas.reference ${ESELECT_PROF} +} + +pkg_postinst() { + local p=cblas + local current_lib=$(eselect ${p} show | cut -d' ' -f2) + if [[ ${current_lib} == ${ESELECT_PROF} || -z ${current_lib} ]]; then + # work around eselect bug #189942 + local configfile="${EROOT}"/etc/env.d/${p}/$(get_libdir)/config + [[ -e ${configfile} ]] && rm -f ${configfile} + eselect ${p} set ${ESELECT_PROF} + elog "${p} has been eselected to ${ESELECT_PROF}" + else + elog "Current eselected ${p} is ${current_lib}" + elog "To use ${p} ${ESELECT_PROF} implementation, you have to issue (as root):" + elog "\t eselect ${p} set ${ESELECT_PROF}" + fi +} diff --git a/sci-libs/cblas-reference/files/cblas-reference-20030223-autotool.patch b/sci-libs/cblas-reference/files/cblas-reference-20030223-autotool.patch new file mode 100644 index 000000000000..0dd595bf4a21 --- /dev/null +++ b/sci-libs/cblas-reference/files/cblas-reference-20030223-autotool.patch @@ -0,0 +1,567 @@ +--- configure.ac 1970-01-01 01:00:00.000000000 +0100 ++++ configure.ac 2007-11-09 17:59:16.000000000 +0000 +@@ -0,0 +1,24 @@ ++AC_PREREQ(2.59) ++AC_INIT(cblas, 20030223, lapack@cs.utk.edu) ++AC_CONFIG_SRCDIR([cblas_example2.c]) ++AC_CONFIG_HEADER([config.h]) ++AM_INIT_AUTOMAKE([foreign]) ++ ++AC_LANG(C) ++AC_PROG_CC ++AC_PROG_F77 ++AC_F77_LIBRARY_LDFLAGS ++AC_PROG_LIBTOOL ++ ++sinclude(acx_blas.m4) ++ACX_BLAS ++if test x"$BLAS_LIBS" = x; then ++ AC_MSG_ERROR([Cannot find blas libraries]) ++fi ++ ++ ++AC_CONFIG_FILES([Makefile ++ src/Makefile ++ testing/Makefile ++ cblas.pc]) ++AC_OUTPUT +--- Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ Makefile.am 2007-11-09 16:20:41.000000000 +0000 +@@ -0,0 +1,8 @@ ++SUBDIRS = src testing ++ ++pkgconfigdir = $(libdir) ++pkgconfig_DATA = cblas.pc ++ ++EXTRA = cblas.pc ++ ++ +--- cblas.pc.in 1970-01-01 01:00:00.000000000 +0100 ++++ cblas.pc.in 2007-11-09 16:20:41.000000000 +0000 +@@ -0,0 +1,13 @@ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++libdir=@libdir@ ++includedir=@includedir@ ++ ++Name: @PACKAGE_NAME@ ++Description: Basic Linear Algebra Subprograms C reference wrapper ++Version: @PACKAGE_VERSION@ ++Requires: blas ++URL: http://www.netlib.org/blas/ ++Libs: -lcblas ++Libs.private: @FLIBS@ ++Cflags: -I${includedir} +--- acx_blas.m4 1970-01-01 01:00:00.000000000 +0100 ++++ acx_blas.m4 2007-08-04 22:50:48.000000000 +0100 +@@ -0,0 +1,191 @@ ++##### http://autoconf-archive.cryp.to/acx_blas.html ++# ++# SYNOPSIS ++# ++# ACX_BLAS([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]]) ++# ++# DESCRIPTION ++# ++# This macro looks for a library that implements the BLAS ++# linear-algebra interface (see http://www.netlib.org/blas/). On ++# success, it sets the BLAS_LIBS output variable to hold the ++# requisite library linkages. ++# ++# To link with BLAS, you should link with: ++# ++# $BLAS_LIBS $LIBS $FLIBS ++# ++# in that order. FLIBS is the output variable of the ++# AC_F77_LIBRARY_LDFLAGS macro (called if necessary by ACX_BLAS), and ++# is sometimes necessary in order to link with F77 libraries. Users ++# will also need to use AC_F77_DUMMY_MAIN (see the autoconf manual), ++# for the same reason. ++# ++# Many libraries are searched for, from ATLAS to CXML to ESSL. The ++# user may also use --with-blas=<lib> in order to use some specific ++# BLAS library <lib>. In order to link successfully, however, be ++# aware that you will probably need to use the same Fortran compiler ++# (which can be set via the F77 env. var.) as was used to compile the ++# BLAS library. ++# ++# ACTION-IF-FOUND is a list of shell commands to run if a BLAS ++# library is found, and ACTION-IF-NOT-FOUND is a list of commands to ++# run it if it is not found. If ACTION-IF-FOUND is not specified, the ++# default action will define HAVE_BLAS. ++# ++# This macro requires autoconf 2.50 or later. ++# ++# LAST MODIFICATION ++# ++# 2007-07-29 ++# ++# COPYLEFT ++# ++# Copyright (c) 2007 Steven G. Johnson <stevenj@alum.mit.edu> ++# ++# This program is free software: you can redistribute it and/or ++# modify it under the terms of the GNU General Public License as ++# published by the Free Software Foundation, either version 3 of the ++# License, or (at your option) any later version. ++# ++# This program is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++# General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program. If not, see ++# <http://www.gnu.org/licenses/>. ++# ++# As a special exception, the respective Autoconf Macro's copyright ++# owner gives unlimited permission to copy, distribute and modify the ++# configure scripts that are the output of Autoconf when processing ++# the Macro. You need not follow the terms of the GNU General Public ++# License when using or distributing such scripts, even though ++# portions of the text of the Macro appear in them. The GNU General ++# Public License (GPL) does govern all other use of the material that ++# constitutes the Autoconf Macro. ++# ++# This special exception to the GPL applies to versions of the ++# Autoconf Macro released by the Autoconf Macro Archive. When you ++# make and distribute a modified version of the Autoconf Macro, you ++# may extend this special exception to the GPL to apply to your ++# modified version as well. ++ ++AC_DEFUN([ACX_BLAS], [ ++AC_PREREQ(2.50) ++AC_REQUIRE([AC_F77_LIBRARY_LDFLAGS]) ++acx_blas_ok=no ++ ++AC_ARG_WITH(blas, ++ [AC_HELP_STRING([--with-blas=<lib>], [use BLAS library <lib>])]) ++case $with_blas in ++ yes | "") ;; ++ no) acx_blas_ok=disable ;; ++ -* | */* | *.a | *.so | *.so.* | *.o) BLAS_LIBS="$with_blas" ;; ++ *) BLAS_LIBS="-l$with_blas" ;; ++esac ++ ++# Get fortran linker names of BLAS functions to check for. ++AC_F77_FUNC(sgemm) ++AC_F77_FUNC(dgemm) ++ ++acx_blas_save_LIBS="$LIBS" ++LIBS="$LIBS $FLIBS" ++ ++# First, check BLAS_LIBS environment variable ++if test $acx_blas_ok = no; then ++if test "x$BLAS_LIBS" != x; then ++ save_LIBS="$LIBS"; LIBS="$BLAS_LIBS $LIBS" ++ AC_MSG_CHECKING([for $sgemm in $BLAS_LIBS]) ++ AC_TRY_LINK_FUNC($sgemm, [acx_blas_ok=yes], [BLAS_LIBS=""]) ++ AC_MSG_RESULT($acx_blas_ok) ++ LIBS="$save_LIBS" ++fi ++fi ++ ++# BLAS linked to by default? (happens on some supercomputers) ++if test $acx_blas_ok = no; then ++ save_LIBS="$LIBS"; LIBS="$LIBS" ++ AC_CHECK_FUNC($sgemm, [acx_blas_ok=yes]) ++ LIBS="$save_LIBS" ++fi ++ ++# BLAS in ATLAS library? (http://math-atlas.sourceforge.net/) ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(atlas, ATL_xerbla, ++ [AC_CHECK_LIB(f77blas, $sgemm, ++ [AC_CHECK_LIB(cblas, cblas_dgemm, ++ [acx_blas_ok=yes ++ BLAS_LIBS="-lcblas -lf77blas -latlas"], ++ [], [-lf77blas -latlas])], ++ [], [-latlas])]) ++fi ++ ++# BLAS in PhiPACK libraries? (requires generic BLAS lib, too) ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(blas, $sgemm, ++ [AC_CHECK_LIB(dgemm, $dgemm, ++ [AC_CHECK_LIB(sgemm, $sgemm, ++ [acx_blas_ok=yes; BLAS_LIBS="-lsgemm -ldgemm -lblas"], ++ [], [-lblas])], ++ [], [-lblas])]) ++fi ++ ++# BLAS in Alpha CXML library? ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(cxml, $sgemm, [acx_blas_ok=yes;BLAS_LIBS="-lcxml"]) ++fi ++ ++# BLAS in Alpha DXML library? (now called CXML, see above) ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(dxml, $sgemm, [acx_blas_ok=yes;BLAS_LIBS="-ldxml"]) ++fi ++ ++# BLAS in Sun Performance library? ++if test $acx_blas_ok = no; then ++ if test "x$GCC" != xyes; then # only works with Sun CC ++ AC_CHECK_LIB(sunmath, acosp, ++ [AC_CHECK_LIB(sunperf, $sgemm, ++ [BLAS_LIBS="-xlic_lib=sunperf -lsunmath" ++ acx_blas_ok=yes],[],[-lsunmath])]) ++ fi ++fi ++ ++# BLAS in SCSL library? (SGI/Cray Scientific Library) ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(scs, $sgemm, [acx_blas_ok=yes; BLAS_LIBS="-lscs"]) ++fi ++ ++# BLAS in SGIMATH library? ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(complib.sgimath, $sgemm, ++ [acx_blas_ok=yes; BLAS_LIBS="-lcomplib.sgimath"]) ++fi ++ ++# BLAS in IBM ESSL library? (requires generic BLAS lib, too) ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(blas, $sgemm, ++ [AC_CHECK_LIB(essl, $sgemm, ++ [acx_blas_ok=yes; BLAS_LIBS="-lessl -lblas"], ++ [], [-lblas $FLIBS])]) ++fi ++ ++# Generic BLAS library? ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(blas, $sgemm, [acx_blas_ok=yes; BLAS_LIBS="-lblas"]) ++fi ++ ++AC_SUBST(BLAS_LIBS) ++ ++LIBS="$acx_blas_save_LIBS" ++ ++# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: ++if test x"$acx_blas_ok" = xyes; then ++ ifelse([$1],,AC_DEFINE(HAVE_BLAS,1,[Define if you have a BLAS library.]),[$1]) ++ : ++else ++ acx_blas_ok=no ++ $2 ++fi ++])dnl ACX_BLAS +--- src/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ src/Makefile.am 2007-11-09 16:20:41.000000000 +0000 +@@ -0,0 +1,232 @@ ++lib_LTLIBRARIES = libcblas.la ++ ++pkgincludedir = $(includedir)/cblas ++pkginclude_HEADERS = cblas.h ++ ++AM_CPPFLAGS = -DADD_ ++ ++ERRHAND_SOURCES = \ ++ cblas_globals.c \ ++ cblas_xerbla.c \ ++ xerbla.c ++ ++SINGLE_SOURCES = \ ++ cblas_scasum.c \ ++ cblas_scnrm2.c \ ++ scasumsub.f \ ++ scnrm2sub.f ++ ++SLEV_SOURCES = \ ++ isamaxsub.f \ ++ sdotsub.f \ ++ sdsdotsub.f \ ++ snrm2sub.f \ ++ sasumsub.f ++ ++SLEV1_SOURCES = \ ++ cblas_srotg.c \ ++ cblas_srotmg.c \ ++ cblas_srot.c \ ++ cblas_srotm.c \ ++ cblas_sswap.c \ ++ cblas_sscal.c \ ++ cblas_scopy.c \ ++ cblas_saxpy.c \ ++ cblas_sdot.c \ ++ cblas_sdsdot.c \ ++ cblas_snrm2.c \ ++ cblas_sasum.c \ ++ cblas_isamax.c ++ ++SLEV2_SOURCES = \ ++ cblas_sgemv.c \ ++ cblas_sgbmv.c \ ++ cblas_sger.c \ ++ cblas_ssbmv.c \ ++ cblas_sspmv.c \ ++ cblas_sspr.c \ ++ cblas_sspr2.c \ ++ cblas_ssymv.c \ ++ cblas_ssyr.c \ ++ cblas_ssyr2.c \ ++ cblas_stbmv.c \ ++ cblas_stbsv.c \ ++ cblas_stpmv.c \ ++ cblas_stpsv.c \ ++ cblas_strmv.c \ ++ cblas_strsv.c ++ ++SLEV3_SOURCES = \ ++ cblas_sgemm.c \ ++ cblas_ssymm.c \ ++ cblas_ssyrk.c \ ++ cblas_ssyr2k.c \ ++ cblas_strmm.c \ ++ cblas_strsm.c ++ ++DLEV_SOURCES = \ ++ ddotsub.f \ ++ dsdotsub.f \ ++ dnrm2sub.f \ ++ dasumsub.f \ ++ idamaxsub.f ++ ++DLEV1_SOURCES = \ ++ cblas_drotg.c \ ++ cblas_drotmg.c \ ++ cblas_drot.c \ ++ cblas_drotm.c \ ++ cblas_dswap.c \ ++ cblas_dscal.c \ ++ cblas_dcopy.c \ ++ cblas_daxpy.c \ ++ cblas_ddot.c \ ++ cblas_dsdot.c \ ++ cblas_dnrm2.c \ ++ cblas_dasum.c \ ++ cblas_idamax.c ++ ++DLEV2_SOURCES = \ ++ cblas_dgemv.c \ ++ cblas_dgbmv.c \ ++ cblas_dger.c \ ++ cblas_dsbmv.c \ ++ cblas_dspmv.c \ ++ cblas_dspr.c \ ++ cblas_dspr2.c \ ++ cblas_dsymv.c \ ++ cblas_dsyr.c \ ++ cblas_dsyr2.c \ ++ cblas_dtbmv.c \ ++ cblas_dtbsv.c \ ++ cblas_dtpmv.c \ ++ cblas_dtpsv.c \ ++ cblas_dtrmv.c \ ++ cblas_dtrsv.c ++ ++DLEV3_SOURCES = \ ++ cblas_dgemm.c \ ++ cblas_dsymm.c \ ++ cblas_dsyrk.c \ ++ cblas_dsyr2k.c \ ++ cblas_dtrmm.c \ ++ cblas_dtrsm.c ++ ++CLEV_SOURCES = \ ++ cdotcsub.f \ ++ cdotusub.f \ ++ icamaxsub.f ++ ++CLEV1_SOURCES = \ ++ cblas_cswap.c \ ++ cblas_cscal.c \ ++ cblas_csscal.c \ ++ cblas_ccopy.c \ ++ cblas_caxpy.c \ ++ cblas_cdotu_sub.c \ ++ cblas_cdotc_sub.c \ ++ cblas_icamax.c ++ ++CLEV2_SOURCES = \ ++ cblas_cgemv.c \ ++ cblas_cgbmv.c \ ++ cblas_chemv.c \ ++ cblas_chbmv.c \ ++ cblas_chpmv.c \ ++ cblas_ctrmv.c \ ++ cblas_ctbmv.c \ ++ cblas_ctpmv.c \ ++ cblas_ctrsv.c \ ++ cblas_ctbsv.c \ ++ cblas_ctpsv.c \ ++ cblas_cgeru.c \ ++ cblas_cgerc.c \ ++ cblas_cher.c \ ++ cblas_cher2.c \ ++ cblas_chpr.c \ ++ cblas_chpr2.c ++ ++CLEV3_SOURCES = \ ++ cblas_cgemm.c \ ++ cblas_csymm.c \ ++ cblas_chemm.c \ ++ cblas_cherk.c \ ++ cblas_cher2k.c \ ++ cblas_ctrmm.c \ ++ cblas_ctrsm.c \ ++ cblas_csyrk.c \ ++ cblas_csyr2k.c ++ ++ZLEV_SOURCES = \ ++ zdotcsub.f \ ++ zdotusub.f \ ++ dzasumsub.f \ ++ dznrm2sub.f \ ++ izamaxsub.f ++ ++ZLEV1_SOURCES = \ ++ cblas_zswap.c \ ++ cblas_zscal.c \ ++ cblas_zdscal.c \ ++ cblas_zcopy.c \ ++ cblas_zaxpy.c \ ++ cblas_zdotu_sub.c \ ++ cblas_zdotc_sub.c \ ++ cblas_dznrm2.c \ ++ cblas_dzasum.c \ ++ cblas_izamax.c ++ ++ZLEV2_SOURCES = \ ++ cblas_zgemv.c \ ++ cblas_zgbmv.c \ ++ cblas_zhemv.c \ ++ cblas_zhbmv.c \ ++ cblas_zhpmv.c \ ++ cblas_ztrmv.c \ ++ cblas_ztbmv.c \ ++ cblas_ztpmv.c \ ++ cblas_ztrsv.c \ ++ cblas_ztbsv.c \ ++ cblas_ztpsv.c \ ++ cblas_zgeru.c \ ++ cblas_zgerc.c \ ++ cblas_zher.c \ ++ cblas_zher2.c \ ++ cblas_zhpr.c \ ++ cblas_zhpr2.c ++ ++ZLEV3_SOURCES = \ ++ cblas_zgemm.c \ ++ cblas_zsymm.c \ ++ cblas_zhemm.c \ ++ cblas_zherk.c \ ++ cblas_zher2k.c \ ++ cblas_ztrmm.c \ ++ cblas_ztrsm.c \ ++ cblas_zsyrk.c \ ++ cblas_zsyr2k.c ++ ++libcblas_la_SOURCES = \ ++ cblas_f77.h \ ++ cblas.h \ ++ $(ERRHAND_SOURCES) \ ++ $(SINGLE_SOURCES) \ ++ $(SLEV_SOURCES) \ ++ $(DLEV_SOURCES) \ ++ $(CLEV_SOURCES) \ ++ $(ZLEV_SOURCES) \ ++ $(SLEV1_SOURCES) \ ++ $(DLEV1_SOURCES) \ ++ $(CLEV1_SOURCES) \ ++ $(ZLEV1_SOURCES) \ ++ $(SLEV2_SOURCES) \ ++ $(DLEV2_SOURCES) \ ++ $(CLEV2_SOURCES) \ ++ $(ZLEV2_SOURCES) \ ++ $(SLEV3_SOURCES) \ ++ $(DLEV3_SOURCES) \ ++ $(CLEV3_SOURCES) \ ++ $(ZLEV3_SOURCES) ++ ++libcblas_la_LIBADD = @BLAS_LIBS@ ++ +--- testing/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ testing/Makefile.am 2007-11-09 17:20:37.000000000 +0000 +@@ -0,0 +1,70 @@ ++TESTS = cblas_tests ++ ++cblas_tests: ++ @install -m0755 cblas_tests.sh cblas_tests ++ ++check_PROGRAMS = \ ++ xscblat1 xdcblat1 xccblat1 xzcblat1 \ ++ xscblat2 xdcblat2 xccblat2 xzcblat2 \ ++ xscblat3 xdcblat3 xccblat3 xzcblat3 ++ ++LDADD = $(top_builddir)/src/libcblas.la @BLAS_LIBS@ ++ ++AM_CPPFLAGS = -I$(top_srcdir)/src -DADD_ ++ ++AUX_SOURCES = \ ++ auxiliary.c \ ++ c_xerbla.c ++ ++xscblat1_SOURCES = \ ++ c_sblas1.c \ ++ c_sblat1.f ++xscblat2_SOURCES = \ ++ c_sblas2.c \ ++ c_s2chke.c \ ++ c_sblat2.f \ ++ $(AUX_SOURCES) ++xscblat3_SOURCES = \ ++ c_sblas3.c \ ++ c_s3chke.c \ ++ c_sblat3.f \ ++ $(AUX_SOURCES) ++xdcblat1_SOURCES = \ ++ c_dblas1.c \ ++ c_dblat1.f ++xdcblat2_SOURCES = \ ++ c_dblas2.c \ ++ c_d2chke.c \ ++ c_dblat2.f \ ++ $(AUX_SOURCES) ++xdcblat3_SOURCES = \ ++ c_dblas3.c \ ++ c_d3chke.c \ ++ c_dblat3.f \ ++ $(AUX_SOURCES) ++xccblat1_SOURCES = \ ++ c_cblas1.c \ ++ c_cblat1.f ++xccblat2_SOURCES = \ ++ c_cblas2.c \ ++ c_c2chke.c \ ++ c_cblat2.f \ ++ $(AUX_SOURCES) ++xccblat3_SOURCES = \ ++ c_cblas3.c \ ++ c_c3chke.c \ ++ c_cblat3.f \ ++ $(AUX_SOURCES) ++xzcblat1_SOURCES = \ ++ c_zblas1.c \ ++ c_zblat1.f ++xzcblat2_SOURCES = \ ++ c_zblas2.c \ ++ c_z2chke.c \ ++ c_zblat2.f \ ++ $(AUX_SOURCES) ++xzcblat3_SOURCES = \ ++ c_zblas3.c \ ++ c_z3chke.c \ ++ c_zblat3.f \ ++ $(AUX_SOURCES) +--- testing/cblas_tests.sh 1970-01-01 01:00:00.000000000 +0100 ++++ testing/cblas_tests.sh 2007-11-09 16:20:41.000000000 +0000 +@@ -0,0 +1,8 @@ ++#!/bin/sh ++ ++for t in x*blat1; do ++ ./${t} ++done ++for t in x*blat{2,3}; do ++ ./${t} < ${t:1:1}in${t:7:1} ++done diff --git a/sci-libs/cblas-reference/files/eselect.cblas.reference b/sci-libs/cblas-reference/files/eselect.cblas.reference new file mode 100644 index 000000000000..62b581860fc7 --- /dev/null +++ b/sci-libs/cblas-reference/files/eselect.cblas.reference @@ -0,0 +1,5 @@ +blas/reference/libcblas.so /usr/@LIBDIR@/libcblas.so +blas/reference/libcblas.so.0 /usr/@LIBDIR@/libcblas.so.0 +blas/reference/libcblas.a /usr/@LIBDIR@/libcblas.a +../blas/reference/cblas.pc /usr/@LIBDIR@/pkgconfig/cblas.pc +cblas/cblas.h /usr/include/cblas.h diff --git a/sci-libs/cblas-reference/metadata.xml b/sci-libs/cblas-reference/metadata.xml new file mode 100644 index 000000000000..f08baae0892a --- /dev/null +++ b/sci-libs/cblas-reference/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <longdescription lang="en"> +The BLAS (Basic Linear Algebra Subprograms) are high quality "building +block" routines for performing basic vector and matrix operations. Level 1 +BLAS do vector-vector operations, Level 2 BLAS do matrix-vector operations, +and Level 3 BLAS do matrix-matrix operations. Because the BLAS are +efficient, portable, and widely available, they're commonly used in the +development of high quality linear algebra software, LAPACK for +example. This packages implements the reference C library as a wrapper +to the FORTRAN 77 BLAS library. +</longdescription> +</pkgmetadata> diff --git a/sci-libs/ccfits/Manifest b/sci-libs/ccfits/Manifest new file mode 100644 index 000000000000..13e11de12311 --- /dev/null +++ b/sci-libs/ccfits/Manifest @@ -0,0 +1 @@ +DIST CCfits-2.4.tar.gz 1792643 SHA256 ba6c5012b260adf7633f92581279ea582e331343d8c973981aa7de07242bd7f8 SHA512 b12d455bb6dd631056e02a12e996d3bf0b6169f8922011e4b64f979b08d2ab8f405e14947c6f5d26ad18bf2f5764854a84987ae105944515f533fe6b0b4ef7be WHIRLPOOL 7f0ca6f0e684f7d66d7272a89dbeb8fa95e3907f358ec624f5f817311288fdfb6467ec915d0ab9f2eee753fcaee3f4b68f497c2dffcf7a38bdce9a7f97681e2a diff --git a/sci-libs/ccfits/ccfits-2.4.ebuild b/sci-libs/ccfits/ccfits-2.4.ebuild new file mode 100644 index 000000000000..f309dc2c30d7 --- /dev/null +++ b/sci-libs/ccfits/ccfits-2.4.ebuild @@ -0,0 +1,38 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 +inherit eutils autotools + +MYPN=CCfits +MYP=${MYPN}-${PV} + +DESCRIPTION="C++ interface for cfitsio" +HOMEPAGE="http://heasarc.gsfc.nasa.gov/fitsio/CCfits/" +SRC_URI="${HOMEPAGE}/${MYP}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="doc static-libs" + +RDEPEND=">=sci-libs/cfitsio-3.080" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${MYPN}" + +src_prepare() { + # avoid building cookbook by default and no rpath + epatch "${FILESDIR}"/${PN}-2.2-makefile.patch + AT_M4DIR=config/m4 eautoreconf +} + +src_configure() { + econf $(use_enable static-libs static) +} + +src_install () { + default + use doc && dodoc *.pdf && dohtml -r html/* +} diff --git a/sci-libs/ccfits/files/ccfits-2.2-makefile.patch b/sci-libs/ccfits/files/ccfits-2.2-makefile.patch new file mode 100644 index 000000000000..e92d9306900c --- /dev/null +++ b/sci-libs/ccfits/files/ccfits-2.2-makefile.patch @@ -0,0 +1,26 @@ +--- Makefile.am.orig 2010-01-20 02:52:22.000000000 +0000 ++++ Makefile.am 2010-01-20 02:50:34.000000000 +0000 +@@ -26,12 +26,11 @@ + EXTRA_DIST = config CHANGES README.INSTALL License.txt file1.pha $(MSVC_FILES) + + +-bin_PROGRAMS = cookbook ++check_PROGRAMS = cookbook + + cookbook_SOURCES = cookbook.cxx + + cookbook_LDADD = libCCfits.la +-cookbook_LDFLAGS = -R $(R_LIB_PATH) -R $(CXX_LIB_PATH) + + pkgconfigdir = $(libdir)/pkgconfig + pkgconfig_DATA = CCfits.pc +@@ -64,8 +63,7 @@ + + # This will tell shared library which STD C++ library to use without + # needing the user to use LD_LIBRARY_PATH environment variable +-libCCfits_la_LIBADD = $(LIBSTDCPP) +-libCCfits_la_LDFLAGS = -R $(R_LIB_PATH) -R $(CXX_LIB_PATH) ++#libCCfits_la_LIBADD = $(LIBSTDCPP) + + libCCfits_ladir = $(pkgincludedir) + diff --git a/sci-libs/ccfits/metadata.xml b/sci-libs/ccfits/metadata.xml new file mode 100644 index 000000000000..b4532406f703 --- /dev/null +++ b/sci-libs/ccfits/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>sci</herd> +<longdescription lang="en"> + CCfits is an object oriented interface to the cfitsio library. It is + designed to make the capabilities of cfitsio available to + programmers working in C++. It is written in ANSI C++ and + implemented using the C++ Standard Library with namespaces, + exception handling, and member template functions. +</longdescription> +</pkgmetadata> diff --git a/sci-libs/ccolamd/Manifest b/sci-libs/ccolamd/Manifest new file mode 100644 index 000000000000..1f5e80f44d10 --- /dev/null +++ b/sci-libs/ccolamd/Manifest @@ -0,0 +1 @@ +DIST ccolamd-2.8.0.tar.bz2 309907 SHA256 0e3d0d147f22ef6d3e6eedc7540be6135303a064dae9f10ff443ade1196d12eb SHA512 6a515a8250ed98d52aa932a6f93170174ff32f76c1ecedcedeb1540a471416d0cd40b5613a839b96fbc79c66b3cb5106c6a340a33fafdd695c83b7d949756e77 WHIRLPOOL f999836681321d0f1ee0ccaae8cbc86b934220eb4151792b5163a7a1f115319442a9a3db8cb707b7e42cd50fa092765a0fc49c8e60daf756aaff56fa8eb93169 diff --git a/sci-libs/ccolamd/ccolamd-2.8.0.ebuild b/sci-libs/ccolamd/ccolamd-2.8.0.ebuild new file mode 100644 index 000000000000..5f19e42750fa --- /dev/null +++ b/sci-libs/ccolamd/ccolamd-2.8.0.ebuild @@ -0,0 +1,21 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit autotools-utils + +DESCRIPTION="Constrained Column approximate minimum degree ordering algorithm" +HOMEPAGE="http://www.cise.ufl.edu/research/sparse/ccolamd/" +SRC_URI="http://dev.gentoo.org/~bicatali/distfiles/${P}.tar.bz2" + +LICENSE="LGPL-2.1" +SLOT="0" + +KEYWORDS="amd64 ~arm hppa ~mips ppc ppc64 sparc x86 ~amd64-fbsd ~amd64-linux ~x86-linux ~x86-macos" +IUSE="static-libs" + +RDEPEND="sci-libs/suitesparseconfig" +DEPEND="${RDEPEND} + virtual/pkgconfig" diff --git a/sci-libs/ccolamd/files/ccolamd-2.7.1-autotools.patch b/sci-libs/ccolamd/files/ccolamd-2.7.1-autotools.patch new file mode 100644 index 000000000000..8386325da742 --- /dev/null +++ b/sci-libs/ccolamd/files/ccolamd-2.7.1-autotools.patch @@ -0,0 +1,60 @@ +--- Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ Makefile.am 2008-01-29 18:53:56.000000000 +0000 +@@ -0,0 +1,3 @@ ++SUBDIRS = Demo Source ++EXTRA_DIST = Doc/ChangeLog README.txt ++include_HEADERS = Include/ccolamd.h +--- configure.ac 1970-01-01 01:00:00.000000000 +0100 ++++ configure.ac 2008-01-29 18:54:17.000000000 +0000 +@@ -0,0 +1,13 @@ ++# -*- Autoconf -*- ++AC_PREREQ(2.59) ++AC_INIT(ccolamd, 2.7.1, davis@cise.ufl.edu) ++AM_INIT_AUTOMAKE([foreign]) ++AC_PROG_INSTALL ++AC_PROG_LIBTOOL ++AC_CHECK_LIB(m, sqrt) ++AC_CHECK_HEADERS(UFconfig.h) ++AC_CONFIG_FILES([ ++ Source/Makefile ++ Demo/Makefile ++ Makefile]) ++AC_OUTPUT +--- Source/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ Source/Makefile.am 2008-01-29 18:53:56.000000000 +0000 +@@ -0,0 +1,10 @@ ++AM_CPPFLAGS = -I$(top_srcdir)/Include ++lib_LTLIBRARIES = libccolamd.la ++noinst_LTLIBRARIES = libccolamdl.la libccolamdi.la ++ ++libccolamdl_la_SOURCES = ccolamd.c ++libccolamdl_la_CPPFLAGS = $(AM_CPPFLAGS) -DDLONG ++libccolamdi_la_SOURCES = ccolamd.c ++ ++libccolamd_la_SOURCES = ccolamd_global.c ++libccolamd_la_LIBADD = libccolamdl.la libccolamdi.la +--- Demo/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ Demo/Makefile.am 2008-01-29 18:55:44.000000000 +0000 +@@ -0,0 +1,22 @@ ++AM_CPPFLAGS = -I$(top_srcdir)/Include ++ ++check_PROGRAMS = \ ++ ccolamd_example \ ++ ccolamd_l_example ++ ++LDADD = $(top_builddir)/Source/libccolamd.la -lm ++ccolamd_example_SOURCES = ccolamd_example.c ++ccolamd_l_example_SOURCES = ccolamd_l_example.c ++ ++check-local: $(check_PROGRAMS) ++ @for i in $(check_PROGRAMS); do \ ++ echo "Testing $$i"; \ ++ ./$$i > my_$$i.out; \ ++ if ! diff $(srcdir)/$$i.out my_$$i.out; then \ ++ echo "Test $$i failed!"; \ ++ exit 1; \ ++ fi \ ++ done; ++ ++clean-local: ++ rm -f my*.out diff --git a/sci-libs/ccolamd/metadata.xml b/sci-libs/ccolamd/metadata.xml new file mode 100644 index 000000000000..2451169809d7 --- /dev/null +++ b/sci-libs/ccolamd/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <longdescription lang="en"> + Constrained COLAMD computes an column approximate minimum degree ordering + algorithm, (like COLAMD), but it can also be given a set of ordering + constraints. +</longdescription> +</pkgmetadata> diff --git a/sci-libs/ccp4-libs/Manifest b/sci-libs/ccp4-libs/Manifest new file mode 100644 index 000000000000..9d3fe2806365 --- /dev/null +++ b/sci-libs/ccp4-libs/Manifest @@ -0,0 +1 @@ +DIST ccp4-6.1.3-core-src.tar.gz 242134076 SHA256 1e529c660e7f390ec0feca9d45caa00a2813d23156c10a2747c427117293c324 SHA512 413eba806107ebcdbd93e9122275463709133d9b2a9ce44ae57a6c2350465a47ba66ad9875237aead74f5d422c0104f58f728ab37a757b10d82cde92af444c20 WHIRLPOOL faebf8ee7920013bc3d0e83565207dca1f31ba0b5c92fe1eae4b740f70ff2031d95787fa0d545b09c853d25657c08973527e43de02fddc086988123ca2a6339c diff --git a/sci-libs/ccp4-libs/ccp4-libs-6.1.3-r16.ebuild b/sci-libs/ccp4-libs/ccp4-libs-6.1.3-r16.ebuild new file mode 100644 index 000000000000..ffa5a866a2f7 --- /dev/null +++ b/sci-libs/ccp4-libs/ccp4-libs-6.1.3-r16.ebuild @@ -0,0 +1,359 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 ) + +inherit autotools eutils fortran-2 gnuconfig multilib python-single-r1 toolchain-funcs + +SRC="ftp://ftp.ccp4.ac.uk/ccp4" + +#UPDATE="04_03_09" +#PATCHDATE="090511" + +MY_P="${P/-libs}" + +PATCH_TOT="0" + +DESCRIPTION="Protein X-ray crystallography toolkit - Libraries" +HOMEPAGE="http://www.ccp4.ac.uk/" +SRC_URI="${SRC}/${PV}/${MY_P}-core-src.tar.gz" +# patch tarball from upstream + [[ -n ${UPDATE} ]] && SRC_URI="${SRC_URI} ${SRC}/${PV}/updates/${P}-src-patch-${UPDATE}.tar.gz" +# patches created by us + [[ -n ${PATCHDATE} ]] && SRC_URI="${SRC_URI} http://dev.gentoo.org/~jlec/science-dist/${PV}-${PATCHDATE}-updates.patch.bz2" + +for i in $(seq $PATCH_TOT); do + NAME="PATCH${i}[1]" + SRC_URI="${SRC_URI} + ${SRC}/${PV}/patches/${!NAME}" +done + +LICENSE="ccp4" +SLOT="0" +KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux" +IUSE="minimal" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + !<sci-chemistry/ccp4-6.1.3 + !<sci-chemistry/ccp4-apps-${PV}-r10 + app-shells/tcsh + dev-lang/tcl:0 + >=sci-libs/cbflib-0.9.2.2 + sci-libs/fftw:2.1 + sci-libs/mmdb:0 + sci-libs/monomer-db + sci-libs/ssm + virtual/jpeg:0= + virtual/lapack + virtual/blas" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +S="${WORKDIR}/${MY_P}" + +MAKEOPTS+=" -j1" + +pkg_setup() { + fortran-2_pkg_setup + python-single-r1_pkg_setup +} + +src_prepare() { + tc-export PKG_CONFIG RANLIB AR + + sed \ + -e "/^AR/s:ar:$(tc-getAR):g" \ + -i lib/src/Makefile.in src/Makefile.in src/ccp4mapwish_/Makefile.in lib/ccif/Makefile.in || die + + einfo "Applying upstream patches ..." + for patch in $(seq $PATCH_TOT); do + base="PATCH${patch}" + dir=$(eval echo \${${base}[0]}) + p=$(eval echo \${${base}[1]}) + pushd "${dir}" >& /dev/null + ccp_patch "${DISTDIR}/${p}" + popd >& /dev/null + done + einfo "Done." + echo + + [[ -n ${PATCHDATE} ]] && epatch "${WORKDIR}"/${PV}-${PATCHDATE}-updates.patch + + einfo "Applying Gentoo patches ..." + # fix buffer overflows wrt bug 339706 + ccp_patch "${FILESDIR}"/${PV}-overflows.patch + + # it tries to create libdir, bindir etc on live system in configure + ccp_patch "${FILESDIR}"/${PV}-dont-make-dirs-in-configure.patch + + # gerror_ gets defined twice on ppc if you're using gfortran/g95 + ccp_patch "${FILESDIR}"/6.0.2-ppc-double-define-gerror.patch + + # make creation of libccif.so smooth + ccp_patch "${FILESDIR}"/${PV}-ccif-shared.patch + + # lets try to build libmmdb seperatly + ccp_patch "${FILESDIR}"/${PV}-dont-build-mmdb.patch + + # unbundle libjpeg and cbflib + ccp_patch "${FILESDIR}"/${PV}-unbundle-libs-ng2.patch + + # Fix missing DESTIDR + # not installing during build + ccp_patch "${FILESDIR}"/${PV}-noinstall.patch + sed \ + -e '/SHARE_INST/s:$(libdir):$(DESTDIR)/$(libdir):g' \ + -i configure || die + + # Fix upstreams code + ccp_patch "${FILESDIR}"/${PV}-impl-dec.patch + + # use pkg-config to detect BLAS/LAPACK + ccp_patch "${FILESDIR}"/${PV}-lapack.patch + + # proto type changing in version 0.9.2.2 + ccp_patch "${FILESDIR}"/${PV}-cbf.patch + + # proto type changing in version 0.9.2.2 + ccp_patch "${FILESDIR}"/${PV}-no-pypath.patch + + ccp_patch "${FILESDIR}"/${P}-force.patch + + ccp_patch "${FILESDIR}"/${P}-format-security.patch + + einfo "Done." # done applying Gentoo patches + echo + + # not needed, we have it extra + rm -rf src/rapper/{libxml2,gc7.0} || die + + sed \ + -e "s:/usr:${EPREFIX}/usr:g" \ + -e 's:-Wl,-rpath,$CLIB::g' \ + -e 's: -rpath $CLIB::g' \ + -e 's: -I${srcdir}/include/cpp_c_headers::g' \ + -e 's:sleep 1:sleep .2:g' \ + -i configure || die + + gnuconfig_update + + for i in lib/DiffractionImage src/rapper src/pisa; do + pushd ${i} > /dev/null + sed 's:-g::g' -i configure* || die + [[ -f configure.in ]] && mv configure.{in,ac} + eautoreconf + popd > /dev/null + done + + ## unbundle libssm + sed -e '/libdir/s:ssm::g' -i Makefile.in || die + find ./lib/src/mmdb ./lib/ssm ./lib/clipper ./lib/fftw lib/lapack -delete || die +} + +src_configure() { + rm -rf lib/DiffractionImage/{jpg,CBFlib} || die + + # Build system is broken if we set LDFLAGS + userldflags="${LDFLAGS}" + export SHARED_LIB_FLAGS="${LDFLAGS}" + unset LDFLAGS + + # GENTOO_OSNAME can be one of: + # irix irix64 sunos sunos64 aix hpux osf1 linux freebsd + # linux_compaq_compilers linux_intel_compilers generic Darwin + # ia64_linux_intel Darwin_ibm_compilers linux_ibm_compilers + if [[ "$(tc-getFC)" = "ifort" ]]; then + if use ia64; then + GENTOO_OSNAME="ia64_linux_intel" + else + # Should be valid for x86, maybe amd64 + GENTOO_OSNAME="linux_intel_compilers" + fi + else + # Should be valid for x86 and amd64, at least + GENTOO_OSNAME="linux" + fi + + # Sets up env + ln -s \ + ccp4.setup-bash \ + "${S}"/include/ccp4.setup || die + + # We agree to the license by emerging this, set in LICENSE + sed -i \ + -e "s~^\(^agreed=\).*~\1yes~g" \ + "${S}"/configure || die + + # Fix up variables -- need to reset CCP4_MASTER at install-time + sed -i \ + -e "s~^\(setenv CCP4_MASTER.*\)/.*~\1${WORKDIR}~g" \ + -e "s~^\(export CCP4_MASTER.*\)/.*~\1${WORKDIR}~g" \ + -e "s~^\(.*export CBIN=.*\)\$CCP4.*~\1\$CCP4/libexec/ccp4/bin/~g" \ + -e "s~^\(.*setenv CBIN .*\)\$CCP4.*~\1\$CCP4/libexec/ccp4/bin/~g" \ + -e "s~^\(setenv CCP4I_TCLTK.*\)/usr/local/bin~\1${EPREFIX}/usr/bin~g" \ + "${S}"/include/ccp4.setup* || die + + # Set up variables for build + source "${S}"/include/ccp4.setup-sh + + export CC=$(tc-getCC) + export CXX=$(tc-getCXX) + export COPTIM=${CFLAGS} + export CXXOPTIM=${CXXFLAGS} + # Default to -O2 if FFLAGS is unset + export FC=$(tc-getFC) + export FOPTIM=${FFLAGS:- -O2} + + export SHARE_LIB="\ + $(tc-getCC) ${userldflags} -shared -Wl,-soname,libccp4c.so -o libccp4c.so \${CORELIBOBJS} \${CGENERALOBJS} \${CUCOBJS} \${CMTZOBJS} \${CMAPOBJS} \${CSYMOBJS} -L../ccif/ -lccif $(gcc-config -L | awk -F: '{for(i=1; i<=NF; i++) printf " -L%s", $i}') -lm && \ + $(tc-getFC) ${userldflags} -shared -Wl,-soname,libccp4f.so -o libccp4f.so \${FORTRANLOBJS} \${FINTERFACEOBJS} -L../ccif/ -lccif -L. -lccp4c $($(tc-getPKG_CONFIG) --libs mmdb) $(gcc-config -L | awk -F: '{for(i=1; i<=NF; i++) printf " -L%s", $i}') -lstdc++ -lgfortran -lm" + + # Can't use econf, configure rejects unknown options like --prefix + ./configure \ + --onlylibs \ + --with-shared-libs \ + --with-fftw="${EPREFIX}/usr" \ + --with-warnings \ + --disable-cctbx \ + --disable-clipper \ + --disable-ssm \ + --tmpdir="${TMPDIR}" \ + --bindir="${EPREFIX}/usr/libexec/ccp4/bin/" \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + ${GENTOO_OSNAME} || die "configure failed" +} + +src_compile() { + emake DESTDIR="${D}" onlylib +} + +src_install() { + # Set up variables for build + source "${S}"/include/ccp4.setup-sh + + emake \ + DESTDIR="${D}" \ + includedir="${EPREFIX}/usr/include" \ + library_includedir="${EPREFIX}/usr/include" \ + install + + sed \ + -e "330,1000d" \ + -i "${S}"/include/ccp4.setup-sh || die + + sed \ + -e "378,1000d" \ + -i "${S}"/include/ccp4.setup-csh || die + + sed \ + -e "s:-${PV/-r*/}::g" \ + -e "s:^\(.*export CCP4_MASTER=\).*:\1${EPREFIX}/usr:g" \ + -e "s:^\(.*setenv CCP4_MASTER\).*:\1 ${EPREFIX}/usr:g" \ + -e "s:^\(.*export CCP4=\).*CCP4_MASTER.*:\1${EPREFIX}/usr:g" \ + -e "s:^\(.*setenv CCP4\).*CCP4_MASTER.*:\1 ${EPREFIX}/usr:g" \ + -e "s:^\(.*export CCP4_SCR=\).*:\1${EPREFIX}/tmp:g" \ + -e "s:^\(.*setenv CCP4_SCR \).*:\1${EPREFIX}/tmp:g" \ + -e "s:^\(.*export BINSORT_SCR=\).*:\1${EPREFIX}/tmp:g" \ + -e "s:^\(.*setenv BINSORT_SCR \).*:\1${EPREFIX}/tmp:g" \ + -e "s:^\(.*export CCP4I_TOP=\).*:\1${EPREFIX}/usr/$(get_libdir)/ccp4/ccp4i:g" \ + -e "s:^\(.*setenv CCP4I_TOP \).*:\1${EPREFIX}/usr/$(get_libdir)/ccp4/ccp4i:g" \ + -e "s:^\(.*export CCP4I_TCLTK=\).*:\1${EPREFIX}/usr/bin:g" \ + -e "s:^\(.*setenv CCP4I_TCLTK \).*:\1${EPREFIX}/usr/bin:g" \ + -e "s:^\(.*export CCP4I_HELP=\).*:\1${EPREFIX}/usr/$(get_libdir)/ccp4/ccp4i/help:g" \ + -e "s:^\(.*setenv CCP4I_HELP \).*:\1${EPREFIX}/usr/$(get_libdir)/ccp4/ccp4i/help:g" \ + -e "s:^\(.*export CBIN=\).*:\1${EPREFIX}/usr/libexec/ccp4/bin:g" \ + -e "s:^\(.*setenv CBIN \).*:\1${EPREFIX}/usr/libexec/ccp4/bin:g" \ + -e "s:^\(.*export CCP4_BIN=\).*:\1${EPREFIX}/usr/libexec/ccp4/bin:g" \ + -e "s:^\(.*setenv CCP4_BIN \).*:\1${EPREFIX}/usr/libexec/ccp4/bin:g" \ + -e "s:^\(.*export CLIBD_MON=\).*:\1${EPREFIX}/usr/share/ccp4/data/monomers/:g" \ + -e "s:^\(.*setenv CLIBD_MON \).*:\1${EPREFIX}/usr/share/ccp4/data/monomers/:g" \ + -e "s:^\(.*export CLIBD=\).*:\1${EPREFIX}/usr/share/ccp4/data:g" \ + -e "s:^\(.*setenv CLIBD \).*:\1${EPREFIX}/usr/share/ccp4/data:g" \ + -e "s:^\(.*export CCP4_LIB=\).*:\1${EPREFIX}/usr/$(get_libdir):g" \ + -e "s:^\(.*setenv CCP4_LIB \).*:\1${EPREFIX}/usr/$(get_libdir):g" \ + -e "s:^\(.*export CCP4_BROWSER=\).*:\1firefox:g" \ + -e "s:^\(.*setenv CCP4_BROWSER \).*:\1firefox:g" \ + -e "s:^\(.*export MANPATH=\).*:\1\${MANPATH}:g" \ + -e "s:^\(.*setenv MANPATH \).*:\1\${MANPATH}:g" \ + -e "s:^\(.*export DBCCP4I_TOP=\).*:\1${EPREFIX}/usr/share/ccp4/dbccp4i:g" \ + -e "s:^\(.*setenv DBCCP4I_TOP \).*:\1${EPREFIX}/usr/share/ccp4/dbccp4i:g" \ + -e "s:^\(.*export MOLREPLIB=\).*:\1${EPREFIX}/usr/share/ccp4/data/monomers/:g" \ + -e "s:^\(.*setenv MOLREPLIB \).*:\1${EPREFIX}/usr/share/ccp4/data/monomers/:g" \ + -e "s:^\(.*export CDOC=\).*:\1${EPREFIX}/usr/share/doc:g" \ + -e "s:^\(.*setenv CDOC \).*:\1${EPREFIX}/usr/share/doc:g" \ + -e "s:^\(.*export CEXAM=\).*:\1${EPREFIX}/usr/share/doc/examples:g" \ + -e "s:^\(.*setenv CEXAM \).*:\1${EPREFIX}/usr/share/doc/examples:g" \ + -e "s:^\(.*export CINCL=\).*:\1${EPREFIX}/usr/share/ccp4/include:g" \ + -e "s:^\(.*setenv CINCL \).*:\1${EPREFIX}/usr/share/ccp4/include:g" \ + -e "s:\$CLIB/font84.dat:\"${EPREFIX}/usr/$(get_libdir)/font84.dat\":g" \ + -e "s:\$CLIB/cif_mmdic.lib:\"${EPREFIX}/usr/$(get_libdir)/cif_mmdic.lib\":g" \ + -e '/# .*LD_LIBRARY_PATH specifies/,/^$/d' \ + -e '/CLIB=/d' \ + -e '/CLIB /d' \ + -e '/CLIBS=/d' \ + -e '/CLIBS /d' \ + -e "/alias/d" \ + -e "/CCP4_HELPDIR/d" \ + -e "/IMOSFLM_VERSION/d" \ + -i "${S}"/include/ccp4.setup* || die + + # Don't check for updates on every sourcing of /etc/profile + sed -i \ + -e "s:\(eval python.*\):#\1:g" \ + "${S}"/include/ccp4.setup* || die + + # Libs + for file in "${S}"/lib/*; do + if [[ -d ${file} ]]; then + continue + elif [[ -x ${file} ]]; then + dolib.so ${file} + else + insinto /usr/$(get_libdir) + doins ${file} + fi + done + + prune_libtool_files + + sed \ + -e 's:test "LD_LIBRARY_PATH":test "$LD_LIBRARY_PATH":g' \ + -i "${S}"/include/ccp4.setup-sh || die + + if ! use minimal; then + # Setup scripts + insinto /etc/profile.d + newins "${S}"/include/ccp4.setup-csh 40ccp4.setup.csh + newins "${S}"/include/ccp4.setup-sh 40ccp4.setup.sh + + # Data + insinto /usr/share/ccp4/data/ + doins -r "${S}"/lib/data/{*.PARM,*.prt,*.lib,*.dic,*.idl,*.cif,*.resource,*.york,*.hist,fraglib,reference_structures} + + # Environment files, setup scripts, etc. + rm -rf "${S}"/include/{ccp4.setup*,COPYING,cpp_c_headers} || die + insinto /usr/share/ccp4/ + doins -r "${S}"/include + fi + + rm -f "${S}"/include/ccp4.setup* || die + + dodoc "${S}"/lib/data/*.doc + newdoc "${S}"/lib/data/README DATA-README +} + +pkg_postinst() { + einfo "The Web browser defaults to firefox. Change CCP4_BROWSER" + einfo "in ${EPREFIX}/etc/profile.d/40ccp4.setup* to modify this." +} + +# Epatch wrapper for bulk patching +ccp_patch() { + EPATCH_SINGLE_MSG=" ${1##*/} ..." epatch ${1} +} diff --git a/sci-libs/ccp4-libs/files/6.0.2-ppc-double-define-gerror.patch b/sci-libs/ccp4-libs/files/6.0.2-ppc-double-define-gerror.patch new file mode 100644 index 000000000000..a77d9494a05c --- /dev/null +++ b/sci-libs/ccp4-libs/files/6.0.2-ppc-double-define-gerror.patch @@ -0,0 +1,11 @@ +--- ccp4-6.0.1.orig/lib/src/library_f.c 2006-06-12 07:06:22.000000000 -0700 ++++ ccp4-6.0.1/lib/src/library_f.c 2006-06-12 07:21:56.000000000 -0700 +@@ -716,7 +716,7 @@ + + #endif /* end of apple xlf support */ + +-#if ( defined (__linux__) && defined (_CALL_SYSV) ) ++#if ( defined (__linux__) && defined (_CALL_SYSV) && ! defined(G95) && ! defined (GFORTRAN) ) + /* linuxppc xlf support */ + void gerror_ (str, Lstr) + char *str; diff --git a/sci-libs/ccp4-libs/files/6.1.3-cbf.patch b/sci-libs/ccp4-libs/files/6.1.3-cbf.patch new file mode 100644 index 000000000000..6930fcad766a --- /dev/null +++ b/sci-libs/ccp4-libs/files/6.1.3-cbf.patch @@ -0,0 +1,16 @@ + lib/DiffractionImage/DiffractionImageCBF.cpp | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/lib/DiffractionImage/DiffractionImageCBF.cpp b/lib/DiffractionImage/DiffractionImageCBF.cpp +index 69b32b0..3ffee26 100755 +--- a/lib/DiffractionImage/DiffractionImageCBF.cpp ++++ b/lib/DiffractionImage/DiffractionImageCBF.cpp +@@ -62,7 +62,7 @@ namespace DI + int* tmpimg; + tmpimg=new int[height*width]; + test= cbf_decompress_byte_offset ((void *)tmpimg,sizeof(int),sign, +- nelements,&nread,0,32,sign,ccbbff,0, ++ nelements,&nread,0,0,32,sign,ccbbff,0, + byte_ord.c_str(),2,(size_t) width, + (size_t) height,1,(size_t) padding); + for(int i=0;i<height*width;i++) diff --git a/sci-libs/ccp4-libs/files/6.1.3-ccif-shared.patch b/sci-libs/ccp4-libs/files/6.1.3-ccif-shared.patch new file mode 100644 index 000000000000..ca18d75bc840 --- /dev/null +++ b/sci-libs/ccp4-libs/files/6.1.3-ccif-shared.patch @@ -0,0 +1,33 @@ +--- configure 2009-08-04 22:35:34.000000000 +0200 ++++ configure.new 2009-08-04 22:54:32.000000000 +0200 +@@ -3136,8 +3136,8 @@ + fi + ( touch /tmp/$$.cache_file 2>/dev/null && \ + cat /dev/null > /tmp/$$.cache_file && \ +- ./configure $xopts --libdir=${libdir} --srcdir=${srcdir}/lib/ccif --cache-file=/tmp/$$.cache_file ) || \ +- ./configure $xopts --libdir=${libdir} --srcdir=${srcdir}/lib/ccif ++ ./configure $xopts --libdir=${libdir} --srcdir=${srcdir}/lib/ccif --cache-file=/tmp/$$.cache_file --enable-shared-lib ) || \ ++ ./configure $xopts --libdir=${libdir} --srcdir=${srcdir}/lib/ccif --enable-shared-lib + rm -f /tmp/$$.cache_file + if [ "X$LIBFOPTIM" != "X" ]; then + FOPTIM=$FOPTIM_save +--- lib/ccif/configure 2009-08-04 22:35:37.000000000 +0200 ++++ lib/ccif/configure.new 2009-08-04 23:05:44.000000000 +0200 +@@ -5568,7 +5568,7 @@ + enable_shared_lib=no + ;; + +- i?86-unknown-linux | i?86-pc-linux-gnu ) ++ i?86-unknown-linux | i?86-pc-linux-gnu | x86_64-unknown-linux-gnu) + if test $enable_shared_lib = yes ; then + + SO_LOC_VAR='LD_LIBRARY_PATH' +@@ -5585,7 +5585,7 @@ + else + SHARED_LIB_PATH='LD_LIBRARY_PATH=`pwd`' + fi +- SHARED_LIB_CMD='$(CC) $(SHARED_LIB_FLAGS) -shared -Wl,-soname -Wl,$(SHARED_LIB_NAME) '"$SHARED_LIB_RESTRICT"' ${LOBJS} $(RX_LFLAG) -o $(SHARED_LIB_NAME)' ++ SHARED_LIB_CMD='$(CC) $(SHARED_LIB_FLAGS) -shared -Wl,-soname -Wl,$(SHARED_LIB_NAME) '"$SHARED_LIB_RESTRICT"' ${LOBJS} $(RX_LFLAG) -o $(SHARED_LIB_NAME) -lm' + # SHARED_LIB_EXPORTS_CMD='cp libccif-universal-ld.lis $(SHARED_LIB_EXPORTS)' + SHARED_LIB_EXPORTS_CMD='' + fi diff --git a/sci-libs/ccp4-libs/files/6.1.3-dont-build-mmdb.patch b/sci-libs/ccp4-libs/files/6.1.3-dont-build-mmdb.patch new file mode 100644 index 000000000000..b3147ad81bbf --- /dev/null +++ b/sci-libs/ccp4-libs/files/6.1.3-dont-build-mmdb.patch @@ -0,0 +1,24 @@ +diff --git a/lib/src/Makefile.in b/lib/src/Makefile.in +index c23f488..b32dd1e 100755 +--- a/lib/src/Makefile.in ++++ b/lib/src/Makefile.in +@@ -176,7 +176,7 @@ $(mmdbsrcdir)/mmdb_sbase0.h $(mmdbsrcdir)/hybrid_36.h + + ##### Makefile targets ###### + +-all: fsplit $(LMMDB) $(LC) $(LF) $(SCRIPT_MODULES) ++all: fsplit $(LC) $(LF) $(SCRIPT_MODULES) + # maybe create shared library + $(SHARE_LIB) + +@@ -717,10 +717,8 @@ uninstall-mmdbHEADERS: + done + + install : all install-ccp4HEADERS install-mmdbHEADERS +- $(INSTALL_DATA) `pwd`/$(LMMDB) $(libdir)/$(LMMDB) + $(INSTALL_DATA) `pwd`/$(LC) $(libdir)/$(LC) + $(INSTALL_DATA) `pwd`/$(LF) $(libdir)/$(LF) +- $(RANLIB) $(libdir)/$(LMMDB) + $(RANLIB) $(libdir)/$(LC) + $(RANLIB) $(libdir)/$(LF) + $(SHARE_INST) diff --git a/sci-libs/ccp4-libs/files/6.1.3-dont-make-dirs-in-configure.patch b/sci-libs/ccp4-libs/files/6.1.3-dont-make-dirs-in-configure.patch new file mode 100644 index 000000000000..583697cea0a1 --- /dev/null +++ b/sci-libs/ccp4-libs/files/6.1.3-dont-make-dirs-in-configure.patch @@ -0,0 +1,87 @@ +--- ccp4-6.0.99e.orig/configure 2008-07-31 10:37:22.000000000 -0700 ++++ ccp4-6.0.99e/configure 2008-07-31 10:39:18.000000000 -0700 +@@ -643,45 +643,45 @@ + # echo "! Beware -- the $system installation isn't properly tested." ; } + syswarn='echo; echo "! Beware -- the $system installation is not properly tested."' + +-if test -z "$onlylibs" ; then +- for i in CCP4_SCR BINSORT_SCR; do +- if ( eval test -d \$$i || eval mkdir -p \$$i ) ; then : +- else +- eval echo "! No directory \$$i and can\'t create it." +- echo " Check the value of $i." +- badvar=1 +- fi +- done +- +- for i in libdir bindir includedir; do +- if ( eval test -d \$$i || eval mkdir -p \$$i ) ; then : +- else +- eval echo "! No directory \$$i and can\'t create it." +- echo " Check the argument of --$i." +- badvar=1 +- fi +- done +- +- for i in $dotsrc $dotunsupp $dotunsuppsrc $dotdeprec $dotdeprecsrc ./lib ./lib/src ./lib/data ./ccp4i/etc/unix $mosflmdir/lib $mosflmdir/bin $mosflmdir/cbf/lib ; do +- if test -d $i || mkdir $i; then : +- else +- eval echo "! No directory $i and can\'t create it." +- badvar=1 +- fi +- done +-else +- # Kludge to fool the "Makefile" target in the top-level CCP4 +- # Makefile into not trying to remake src/Makefile.in +- for i in $srcdir/src $srcdir/lib/src ; do +- if test -d $i || mkdir $i; then +- if ! test -f $i/Makefile.in ; then +- echo +- echo "onlylibs: making dummy file $i/Makefile.in" +- touch $i/Makefile.in +- fi +- fi +- done +-fi ++#if test -z "$onlylibs" ; then ++# for i in CCP4_SCR BINSORT_SCR; do ++# if ( eval test -d \$$i || eval mkdir -p \$$i ) ; then : ++# else ++# eval echo "! No directory \$$i and can\'t create it." ++# echo " Check the value of $i." ++# badvar=1 ++# fi ++# done ++# ++# for i in libdir bindir includedir; do ++# if ( eval test -d \$$i || eval mkdir -p \$$i ) ; then : ++# else ++# eval echo "! No directory \$$i and can\'t create it." ++# echo " Check the argument of --$i." ++# badvar=1 ++# fi ++# done ++# ++# for i in $dotsrc $dotunsupp $dotunsuppsrc $dotdeprec $dotdeprecsrc ./lib ./lib/src ./lib/data ./ccp4i/etc/unix $mosflmdir/lib $mosflmdir/bin $mosflmdir/cbf/lib ; do ++# if test -d $i || mkdir $i; then : ++# else ++# eval echo "! No directory $i and can\'t create it." ++# badvar=1 ++# fi ++# done ++#else ++# # Kludge to fool the "Makefile" target in the top-level CCP4 ++# # Makefile into not trying to remake src/Makefile.in ++# for i in $srcdir/src $srcdir/lib/src ; do ++# if test -d $i || mkdir $i; then ++# if ! test -f $i/Makefile.in ; then ++# echo ++# echo "onlylibs: making dummy file $i/Makefile.in" ++# touch $i/Makefile.in ++# fi ++# fi ++# done ++#fi + + ### sanity checks + diff --git a/sci-libs/ccp4-libs/files/6.1.3-glibc2.10.patch b/sci-libs/ccp4-libs/files/6.1.3-glibc2.10.patch new file mode 100644 index 000000000000..6e3997647955 --- /dev/null +++ b/sci-libs/ccp4-libs/files/6.1.3-glibc2.10.patch @@ -0,0 +1,22 @@ +--- lib/ccif/configure.in 2009-06-10 13:52:59.000000000 +0200 ++++ lib/ccif/configure.in.new 2009-06-10 14:04:31.000000000 +0200 +@@ -363,7 +363,7 @@ + fi + SHARED_LIB_CMD='$(LD) $(SHARED_LIB_FLAGS) -shared -soname $(SHARED_LIB_NAME) \\\ + --whole-archive '"$SHARED_LIB_RESTRICT"' $L \\\ +- $(RX_LFLAG) -o $(SHARED_LIB_NAME)' ++ $(RX_LFLAG) -o $(SHARED_LIB_NAME) -lm' + SHARED_LIB_EXPORTS_CMD='cp libccif-universal-ld.lis $(SHARED_LIB_EXPORTS)' + fi + ;; +--- lib/ccif/configure 2009-06-10 14:26:58.000000000 +0200 ++++ lib/ccif/configure.new 2009-06-10 14:43:31.000000000 +0200 +@@ -1807,7 +1807,7 @@ + SHARED_LIB_CMD='$(LD) $(SHARED_LIB_CFLAGS) -shared -soname \\\ + $(SHARED_LIB_NAME) \\\ + --whole-archive $L \\\ +- -o $(SHARED_LIB_NAME)' ++ -o $(SHARED_LIB_NAME) -lm' + SHARED_LIB_EXPORTS_CMD='' + fi + ;; diff --git a/sci-libs/ccp4-libs/files/6.1.3-impl-dec.patch b/sci-libs/ccp4-libs/files/6.1.3-impl-dec.patch new file mode 100644 index 000000000000..8bfa7db8cbff --- /dev/null +++ b/sci-libs/ccp4-libs/files/6.1.3-impl-dec.patch @@ -0,0 +1,140 @@ +diff --git a/lib/DiffractionImage/Bruker/FRM_LIB.c b/lib/DiffractionImage/Bruker/FRM_LIB.c +index bfda882..f821e04 100755 +--- a/lib/DiffractionImage/Bruker/FRM_LIB.c ++++ b/lib/DiffractionImage/Bruker/FRM_LIB.c +@@ -38,6 +38,8 @@ FRM_LIB: Routines for reading, writing, and handling frame files. + #include "sys/types.h" /* _open, etc. */ + #include "sys/stat.h" /* _open, etc. */ + ++#include <unistd.h> ++ + #ifndef _MSC_VER + int min(int a, int b) + { +diff --git a/lib/DiffractionImage/MAR/mar300_header.c b/lib/DiffractionImage/MAR/mar300_header.c +index 1a933de..1c40c32 100755 +--- a/lib/DiffractionImage/MAR/mar300_header.c ++++ b/lib/DiffractionImage/MAR/mar300_header.c +@@ -23,6 +23,9 @@ + */ + #include "mar300_header.h" + ++#include <sys/types.h> ++#include <unistd.h> ++ + /* + * Local functions + */ +diff --git a/lib/DiffractionImage/MAR/mar345_header.c b/lib/DiffractionImage/MAR/mar345_header.c +index a8351ea..16d0f7b 100755 +--- a/lib/DiffractionImage/MAR/mar345_header.c ++++ b/lib/DiffractionImage/MAR/mar345_header.c +@@ -32,6 +32,9 @@ + */ + #include "mar345_header.h" + ++#include <sys/types.h> ++#include <unistd.h> ++ + /* + * Definitions + */ +diff --git a/lib/DiffractionImage/MAR/nb_header.c b/lib/DiffractionImage/MAR/nb_header.c +index 07f2741..6364ca4 100755 +--- a/lib/DiffractionImage/MAR/nb_header.c ++++ b/lib/DiffractionImage/MAR/nb_header.c +@@ -20,6 +20,8 @@ + #include <io.h> + #endif + ++#include <sys/types.h> ++#include <unistd.h> + /* + * mar software include files + */ +diff --git a/lib/DiffractionImage/MAR/swap.c b/lib/DiffractionImage/MAR/swap.c +index 443bb8c..0d96b3f 100755 +--- a/lib/DiffractionImage/MAR/swap.c ++++ b/lib/DiffractionImage/MAR/swap.c +@@ -10,6 +10,9 @@ + * + **********************************************************************/ + ++#define _XOPEN_SOURCE ++#include <unistd.h> ++ + void swaplong(); + void swapshort(); + +diff --git a/lib/ccif/f_interface.c b/lib/ccif/f_interface.c +index 0f6a6b7..a09dc48 100755 +--- a/lib/ccif/f_interface.c ++++ b/lib/ccif/f_interface.c +@@ -25,6 +25,7 @@ + ********************************************************************/ + + #include "stdpccts.h" ++#include <sys/mman.h> + + /* This file is terribly organised, and badly needs re-doing. There is probably + * scope for splitting this into three modules: +diff --git a/lib/src/ccp4_general_f.c b/lib/src/ccp4_general_f.c +index 8b5d04f..74ee3f7 100755 +--- a/lib/src/ccp4_general_f.c ++++ b/lib/src/ccp4_general_f.c +@@ -26,6 +26,7 @@ + #include <string.h> + #include <stdlib.h> + #include <math.h> ++#include <time.h> + #include "ccp4_errno.h" + #include "ccp4_fortran.h" + #include "ccp4_parser.h" +diff --git a/lib/src/ccp4_program.c b/lib/src/ccp4_program.c +index 3e83d4d..bb3e975 100755 +--- a/lib/src/ccp4_program.c ++++ b/lib/src/ccp4_program.c +@@ -25,6 +25,7 @@ + #include <stdio.h> + #include <stdlib.h> + #include <string.h> ++#include <time.h> + #include "ccp4_program.h" + #include "ccp4_parser.h" + #include "ccp4_utils.h" +diff --git a/lib/src/fsplit.c b/lib/src/fsplit.c +index ee8af24..c6fb3cd 100755 +--- a/lib/src/fsplit.c ++++ b/lib/src/fsplit.c +@@ -50,6 +50,7 @@ static char sccsid[] = "@(#)fsplit.c 5.5 (Berkeley) 3/12/91"; + #include <string.h> + #include <sys/types.h> + #include <sys/stat.h> ++#include <unistd.h> + + /* + * usage: fsplit [-e efile] ... [file] +diff --git a/src/clipper_progs/src/pirate/compress42.c b/src/clipper_progs/src/pirate/compress42.c +index ea52e96..30dbd56 100755 +--- a/src/clipper_progs/src/pirate/compress42.c ++++ b/src/clipper_progs/src/pirate/compress42.c +@@ -142,6 +142,7 @@ + #include <sys/types.h> + #include <sys/stat.h> + #include <errno.h> ++#include <unistd.h> + + #ifdef DIRENT + # include <dirent.h> +diff --git a/src/mtz2cif_/mtz2cif.c b/src/mtz2cif_/mtz2cif.c +index e224430..c7b82f4 100755 +--- a/src/mtz2cif_/mtz2cif.c ++++ b/src/mtz2cif_/mtz2cif.c +@@ -28,6 +28,7 @@ + #include "cmtzlib.h" + #include "ccp4_parser.h" + #include "ccp4_general.h" ++#include "ccp4_program.h" + #include "csymlib.h" + #include "mtz2cif_lib.h" + diff --git a/sci-libs/ccp4-libs/files/6.1.3-lapack.patch b/sci-libs/ccp4-libs/files/6.1.3-lapack.patch new file mode 100644 index 000000000000..0463b3719525 --- /dev/null +++ b/sci-libs/ccp4-libs/files/6.1.3-lapack.patch @@ -0,0 +1,597 @@ +diff --git a/configure b/configure +index 833f483..bcfa62d 100755 +--- a/configure ++++ b/configure +@@ -3226,574 +3226,14 @@ else + echo + echo "Warning: this option has not been extensively tested!" + echo "Please report problems to ccp4@ccp4.ac.uk" +- # Search for vendor LAPACK/BLAS first +- if test ! "$with_netlib_lapack" ; then +- # Initialise variables to blank +- lapackdir= +- XLAPACK_LIB= +- # Possible directories to check for vendor or pre-existing LAPACK or +- # BLAS - add to these if you want to test others +- trydirs="`echo $LD_LIBRARY_PATH |sed -e s/:/\ /g` /lib /usr/lib /usr/local/lib" +- # Possible library names +- # These are the names like xxxx where the library will be libxxxx.a +- # or libxxxx.so +- echo +- echo "Guessing names for native/vendor LAPACK and/or BLAS libraries" +- echo "on this system" +- case $system in +- linux | linux64 | linux32 ) +- # linux users will usually have them in /usr/lib but don't call it +- trylapack="lapack" +- tryblas="blas" +- # if code is non_shared then this can lead to problems. both blas and lapack +- # need to be resolved even if they are not called! +- if test "$non_shared" = yes; then +- echo "You are compiling linux non_shared. This sometimes causes problems " +- echo " so checking for requirements." +- echo "Checking: try to link library against test program" +- if test -f testlink.f || test -f testlink ; then +- rm -f testlink* +- fi +- cat > testlink.f <<EOF +- PROGRAM TESTLINK +-C A bit of scala code to test the linking +- real bf(3), bnorm +-c +- integer maxbmt +- parameter (maxbmt = 2) +- double precision B(maxbmt,maxbmt), eigval(maxbmt), +- $ eigvec(maxbmt,maxbmt), w(5*maxbmt) +- integer m, ia, ix, istat +-c +- B(1,1) = 1.00 +- B(1,2) = 1.00 +- B(2,1) = 1.00 +- B(2,2) = 1.00 +-c +- m = maxbmt +- ia = maxbmt +- ix = maxbmt +- call dsyev('N', 'L', m, B, ia, eigval, w, 5*maxbmt, istat) +- end +-EOF +- #firstly test without -lblas +- test_compile="$FC $FOPTIM $XFFLAGS -o testlink testlink.f -llapack" +- echo $test_compile +- if { (eval $test_compile >& /dev/null ) 2>&1; } && test -s testlink ; then +- # Compilation was okay +- echo "... only -llapack needed" +- XLAPACK_LIB="-llapack" +- # Set the next two variables so that configure +- # doesn't try to build netlib libraries +- LAPACKLIB="lapack" +- noblas=yes +- trylapack= +- tryblas= +- else +- echo "more than just -llapack needed...." +- test_compile="$FC $FOPTIM $XFFLAGS -o testlink testlink.f -llapack -lblas" +- echo $test_compile +- if { (eval $test_compile ) 2>&1; } && test -s testlink ; then +- # Compilation was okay +- echo "...-llapack and -lblas were needed" +- XLAPACK_LIB="-llapack -lblas" +- # Set the next two variables so that configure +- # doesn't try to build netlib libraries +- LAPACKLIB="lapack blas" +- noblas=no +- trylapack= +- tryblas= +- else +- echo "....could not find either lapack or blas." +- fi +- fi +- fi +- # add 64 bit libs +- case $system in +- linux64 ) trydirs="/usr/lib64 ${trydirs}" ;; +- esac +- +- ;; +- osf1) +- # OSF1 has dxml (old version) and cxml +- # which should have both lapack and blas +- trylapack="dxml cxml" +- tryblas= +- trydirs="${trydirs} /usr/shlib" +- ;; +- irix) +- # Additional search paths for IRIX +- trydirs="${trydirs} /usr/lib32" +- # SCSL should have both LAPACK and BLAS +- trylapack="scs" +- tryblas="blas" +- ;; +- irix64) +- # Additional search paths for IRIX64 +- trydirs="${trydirs} /usr/lib64" +- # SCSL should have both LAPACK and BLAS +- trylapack="scs" +- tryblas="blas" +- # Extra compiler flags? +- #XLAPACKFLAGS="-OPT:IEEE_NaN_inf=ON" +- ;; +- aix) +- # Additional search paths for AIX +- trydirs="${trydirs}" +- # AIX might have ESSL library - blas only I think +- trylapack= +- tryblas="essl" +- ;; +- hpux) +- # Additional search paths for HPUX +- trydirs="${trydirs} /opt/fortran/lib /opt/fortran/lib/pa2.0 /opt/mlib/lib/pa2.0" +- # HPUX should have both LAPACK (part of mlib) and BLAS +- trylapack="lapack" +- tryblas="blas" +- # Extra compiler flags? +- # +U77 required for ETIME function - this is already in XFFLAGS +- #XLAPACKFLAGS="+U77" +- ;; +- +- sunos | sunos64) +- # Sun has libraries with BLAS and LAPACK invoked using +- # -xlic_lib=sunperf +- trylapack= +- tryblas= +- echo "SunOs can use the Sun Performance Library (if installed)" +- echo "which has both BLAS and LAPACK 3.0" +- echo +- echo "Looking for a valid library to use..." +- echo +- # Loop over the possible library names +- try_libs="sunperf" +- for testlib in $try_libs +- do +- if test ! "$XLAPACK_LIB" ; then +- # Try running a test compile to see if this a valid library +- if test -f testlink.f || test -f testlink ; then +- rm -f testlink* +- fi +- cat > testlink.f <<EOF +-c Test fortran program to link against library +- PROGRAM TESTLINK +- IMPLICIT NONE +- INTEGER A +- A = 1 +- STOP +- END +-EOF +- test_compile="$FC $FOPTIM $XFFLAGS -o testlink testlink.f -dalign -xlic_lib=$testlib" +- echo $test_compile +- if { (eval $test_compile ) 2>&1; } && test -s testlink ; then +- # Compilation was okay +- echo "... -xlic_lib=$testlib is okay" +- XLAPACK_LIB="-dalign -xlic_lib=$testlib" +- # Set the next two variables so that configure +- # doesn't try to build netlib libraries +- LAPACKLIB="$testlib" +- noblas=yes +- else +- # Compilation failed +- echo "... cannot use -xlic_lib=$testlib" +- fi +- # End of test for testlib +- fi +- # End of loop over possible lib names +- done +- # Report if no suitable library was found +- if test ! "$XLAPACK_LIB" ; then +- echo +- echo "No suitable LAPACK library was found." +- echo "This may be because the Sun Performance Library is not" +- echo "installed on your system" +- echo "Contact your system administrator or Sun vendor" +- fi +- ;; +- Darwin | Darwin32 | Darwin64 ) +- # Darwin has libraries with BLAS and LAPACK invoked using +- # -framework vecLib +- echo "Darwin can use the vecLib Library (if installed)" +- echo "which has both BLAS and LAPACK 3.0" +- echo +- # This is a special case so try running a test compile +- echo "Checking: try to link library against test program" +- if test -f testlink.f || test -f testlink ; then +- rm -f testlink* +- fi +- cat > testlink.f <<EOF +-c Test fortran program to link against library +- PROGRAM TESTLINK +- IMPLICIT NONE +- INTEGER A +- A = 1 +- STOP +- END +-EOF +- test_compile="$FC $FOPTIM $XFFLAGS -o testlink testlink.f -framework vecLib" +- echo $test_compile +- if { (eval $test_compile ) 2>&1; } && test -s testlink ; then +- # Compilation was okay +- echo "... -framework vecLib is okay" +- XLAPACK_LIB="-framework vecLib" +- # Set the next two variables so that configure +- # doesn't try to build netlib libraries +- LAPACKLIB="vecLib" +- noblas=yes +- else +-#alternative linking for vecLib libraries +- case `uname -sr` in +- *Darwin\ 7.* ) test_compile="$FC $FOPTIM $XFFLAGS -o testlink testlink.f -lcc_dynamic -Wl,-framework -Wl,vecLib" ;; +- * ) test_compile="$FC $FOPTIM $XFFLAGS -o testlink testlink.f -Wl,-framework -Wl,vecLib" ;; +- esac +- +- echo $test_compile +- if { (eval $test_compile ) 2>&1; } && test -s testlink ; then +- # Compilation was okay +- echo "... -framework vecLib is okay" +- XLAPACK_LIB="-Wl,-framework -Wl,vecLib" +- # Set the next two variables so that configure +- # doesn't try to build netlib libraries +- LAPACKLIB="-Wl,-framework -Wl,vecLib" +- noblas=yes +- else +- # Compilation failed +- echo "... cannot use -framework vecLib" +- echo +- fi +- fi +- trylapack= +- tryblas= +-# try the fink installation +- trydirs="${trydirs} /sw" +- ;; +- Darwin_ibm_compilers ) +- # Darwin has libraries with BLAS and LAPACK invoked using +- # -framework vecLib +- echo "Darwin can use the vecLib Library (if installed)" +- echo "which has both BLAS and LAPACK 3.0" +- echo +- # This is a special case so try running a test compile +- echo "Checking: try to link library against test program" +- if test -f testlink.f || test -f testlink ; then +- rm -f testlink* +- fi +- cat > testlink.f <<EOF +-c Test fortran program to link against library +- PROGRAM TESTLINK +- IMPLICIT NONE +- INTEGER A +- A = 1 +- STOP +- END +-EOF +- case `uname -sr` in +- Darwin\ 8* ) +- XLAPACK_LIB="-L/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A -lLAPACK -lBLAS" +- test_compile="$FC $FOPTIM $XFFLAGS -o testlink testlink.f $XLAPACK_LIB" +- ;; +- Darwin\ 7* ) +- XLAPACK_LIB="-L/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A -lLAPACK -lBLAS" +- test_compile="$FC $FOPTIM $XFFLAGS -o testlink testlink.f -lcc_dynamic $XLAPACK_LIB" +- ;; +- *) +- XLAPACK_LIB="/System/Library/Frameworks/vecLib.Framework/Versions/Current/VecLib" +- test_compile="$FC $FOPTIM $XFFLAGS -o testlink testlink.f $XLAPACK_LIB" +- esac +- echo $test_compile +- if { (eval $test_compile ) 2>&1; } && test -s testlink ; then +- # Compilation was okay +- echo "... -framework vecLib is okay" +- # Set the next two variables so that configure +- # doesn't try to build netlib libraries +- LAPACKLIB="vecLib" +- noblas=yes +- else +- # Compilation failed +- XLAPACK_LIB="" +- echo "... cannot use -framework vecLib" +- echo +- fi +- trylapack= +- tryblas= +-# try the fink installation +- trydirs="${trydirs} /sw" +- ;; +- +- Darwin_intel_compilers) +- # Darwin has libraries with BLAS and LAPACK invoked using +- # -F vecLib +- echo "Darwin can use the vecLib Library (if installed)" +- echo "which has both BLAS and LAPACK 3.0" +- echo +- # This is a special case so try running a test compile +- echo "Checking: try to link library against test program" +- if test -f testlink.f || test -f testlink ; then +- rm -f testlink* +- fi +- cat > testlink.f <<EOF +-c Test fortran program to link against library +- PROGRAM TESTLINK +- IMPLICIT NONE +- INTEGER A +- A = 1 +- STOP +- END +-EOF +- test_compile="$FC $FOPTIM $XFFLAGS -o testlink testlink.f -Wl,-framework -Wl,vecLib" +- echo $test_compile +- if { (eval $test_compile ) 2>&1; } && test -s testlink ; then +- # Compilation was okay +- # doesn't try to build netlib libraries +- XLAPACK_LIB="-F /System/Library/Frameworks -Qoption,ld,-framework -Qoption,ld,vecLib" +- LAPACKLIB="vecLib" +- noblas=yes +- else +- # Compilation failed +- echo "... cannot use -framework vecLib" +- echo +- fi +- trylapack= +- tryblas= +-# try the fink installation +- trydirs="${trydirs} /sw" +- ;; +- +-# linux_ia64_sgi_altix) +-# SGI Japan +- ia64_linux_intel) +- # Additional search paths for Linux/IA64 +- trydirs="${trydirs} /opt/scsl/lib /usr/lib /usr/local/lib" +- # SCSL and MKL should have both LAPACK and BLAS +- trylapack="mkl_lapack scs lapack" +- tryblas="mkl scs blas" +- ;; +- linux_ibm_compilers ) +- trylapack="lapack" +- tryblas="blas" +- ;; +- linux64_ibm_compilers ) +- trydirs="/usr/lib64 ${trydirs}" +- trylapack="lapack" +- tryblas="blas" +- ;; +- linux_intel_compilers ) +- trydirs="/usr/lib64 ${trydirs}" +- trylapack="mkl_lapack lapack" +- tryblas="mkl blas" +- ;; +- *) +- echo "The guesses for this system may not be correct - please" +- echo "e-mail ccp4@ccp4.ac.uk if you have any extra information" +- echo +- # Default guess is just libblas +- trylapack="lapack" +- tryblas="blas" +- ;; +- esac +- # +- # Search for LAPACK libraries +- # +- # Write out what the guesses are +- if test "$trylapack" ; then +- echo "Possible LAPAC |