diff options
Diffstat (limited to 'community/suitesparse')
-rw-r--r-- | community/suitesparse/0001-exclude-metis.patch | 28 | ||||
-rw-r--r-- | community/suitesparse/0002-remove-rpath.patch | 17 | ||||
-rw-r--r-- | community/suitesparse/APKBUILD | 60 |
3 files changed, 105 insertions, 0 deletions
diff --git a/community/suitesparse/0001-exclude-metis.patch b/community/suitesparse/0001-exclude-metis.patch new file mode 100644 index 0000000000..25e9b9f2e5 --- /dev/null +++ b/community/suitesparse/0001-exclude-metis.patch @@ -0,0 +1,28 @@ +From: Jakub Jirutka <jakub@jirutka.cz> +Date: Wed, 08 Jun 2016 21:04:00 +0200 +Subject: [PATCH] Do not install METIS + +METIS is optional (and not needed for Julia), but `make install` fails when +it's not built, so we must remove it from Makefile. +--- a/Makefile ++++ b/Makefile +@@ -56,19 +56,6 @@ + # ( cd SKYLINE_SVD && $(MAKE) install ) + $(CP) README.txt $(INSTALL_DOC)/SuiteSparse_README.txt + chmod 644 $(INSTALL_DOC)/SuiteSparse_README.txt +-ifeq (,$(MY_METIS_LIB)) +- # install METIS from SuiteSparse/metis-5.1.0 +- - $(CP) lib/libmetis.* $(INSTALL_LIB) +- - $(CP) metis-5.1.0/manual/manual.pdf $(INSTALL_DOC)/METIS_manual.pdf +- - $(CP) metis-5.1.0/README.txt $(INSTALL_DOC)/METIS_README.txt +- # the following is needed only on the Mac, so *.dylib is hardcoded: +- $(SO_INSTALL_NAME) $(INSTALL_LIB)/libmetis.dylib $(INSTALL_LIB)/libmetis.dylib +- - $(CP) include/metis.h $(INSTALL_INCLUDE) +- chmod 755 $(INSTALL_LIB)/libmetis.* +- chmod 644 $(INSTALL_INCLUDE)/metis.h +- chmod 644 $(INSTALL_DOC)/METIS_manual.pdf +- chmod 644 $(INSTALL_DOC)/METIS_README.txt +-endif + + # uninstall all packages + uninstall: diff --git a/community/suitesparse/0002-remove-rpath.patch b/community/suitesparse/0002-remove-rpath.patch new file mode 100644 index 0000000000..b20166e86c --- /dev/null +++ b/community/suitesparse/0002-remove-rpath.patch @@ -0,0 +1,17 @@ +From: Jakub Jirutka <jakub@jirutka.cz> +Date: Wed, 08 Jun 2016 21:04:00 +0200 +Subject: [PATCH] Do not use -rpath + +Hard-coded rpath is bad, moreover when it contains absolute path to the +build directory. +--- a/SuiteSparse_config/SuiteSparse_config.mk ++++ b/SuiteSparse_config/SuiteSparse_config.mk +@@ -338,7 +338,7 @@ + + ifeq ($(UNAME),Linux) + # add the realtime library, librt, and SuiteSparse/lib +- LDLIBS += -lrt -Wl,-rpath=$(INSTALL_LIB) ++ LDLIBS += -lrt + endif + + #--------------------------------------------------------------------------- diff --git a/community/suitesparse/APKBUILD b/community/suitesparse/APKBUILD new file mode 100644 index 0000000000..34433c5189 --- /dev/null +++ b/community/suitesparse/APKBUILD @@ -0,0 +1,60 @@ +# Contributor: Jakub Jirutka <jakub@jirutka.cz> +# Maintainer: Jakub Jirutka <jakub@jirutka.cz> +pkgname=suitesparse +_pkgname=SuiteSparse +pkgver=4.5.3 +pkgrel=0 +pkgdesc="A collection of sparse matrix libraries" +url="http://faculty.cse.tamu.edu/davis/suitesparse.html" +arch="all" +license="GPL" +depends_dev="openblas-dev" +makedepends="$depends_dev" +subpackages="$pkgname-dev $pkgname-doc" +source="http://faculty.cse.tamu.edu/davis/$_pkgname/$_pkgname-$pkgver.tar.gz + 0001-exclude-metis.patch + 0002-remove-rpath.patch + " +builddir="$srcdir/$_pkgname" + +prepare() { + cd "$builddir" + + # OpenBLAS provides also LAPACK. + export LAPACK="-lopenblas" + + # gcc fails on internal error when using default -O3. + export OPTIMIZATION="-O2" + + # Do not include the Partition module and METIS (it's optional and + # Julia doesn't need it). + export CFLAGS="$CFLAGS -DNPARTITION" + rm -r metis-* + + default_prepare +} + +build() { + cd "$builddir" + + make library +} + +package() { + cd "$builddir" + + make install \ + INSTALL="$pkgdir/usr" \ + INSTALL_INCLUDE="$pkgdir/usr/include/$pkgname" \ + INSTALL_DOC="$pkgdir/usr/share/doc/$pkgname" +} + +md5sums="8ec57324585df3c6483ad7f556afccbd SuiteSparse-4.5.3.tar.gz +308b4f96e82d7f5c92335ca6c7c74251 0001-exclude-metis.patch +ce5696f96435db0125ac1815888fb7f6 0002-remove-rpath.patch" +sha256sums="6199a3a35fbce82b155fd2349cf81d2b7cddaf0dac218c08cb172f9bc143f37a SuiteSparse-4.5.3.tar.gz +06f825ed80f73c30d71439650b951ea835a6139fe2e30078ed155fdecc7606ab 0001-exclude-metis.patch +4db04c59039e9fe50f75d00fb662eaffbd76ede498ff8ec8858b697df2679e32 0002-remove-rpath.patch" +sha512sums="88a5ba6c70e4d66751d1ac32fd8998cde11509e7b034814c34757180db70ce2838ebb77fd7c617bf96e473214c70ccbdd0064b4f5e4dd69ae4c51dfeb9696496 SuiteSparse-4.5.3.tar.gz +aa2d62a371eefb33f0c81d3f7b50cf36e76c4f010fb5bb424e5e7344a1921cb6a430742ebb92df42cef587ec46ad8d2b777d3d9a62eb4a128e02bee8ad5de272 0001-exclude-metis.patch +cd40b696515b26c95298b435a5111e582dc42c2fa2e8ef9889558467d375b1d19452838b9463df66958e73ddb0c8c0191936e3e952586a3c7d345edb08fa7e62 0002-remove-rpath.patch" |