mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-05-02 11:02:28 +02:00
179 lines
6.1 KiB
Plaintext
179 lines
6.1 KiB
Plaintext
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
|
|
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
|
|
pkgname=julia
|
|
pkgver=0.4.6
|
|
# Keep in sync with deps/libuv.version.
|
|
_libuv_ver=efb40768b7c7bd9f173a7868f74b92b1c5a61a0e
|
|
# Keep in sync with deps/Versions.make.
|
|
_rmathjulia_ver=0.1
|
|
pkgrel=3
|
|
pkgdesc="A high-level, high-performance dynamic language for technical computing"
|
|
url="http://julialang.org"
|
|
# x86: libunwind package is currently not built for x86
|
|
arch="x86_64"
|
|
license="MIT"
|
|
depends="arpack
|
|
fftw>=3.3
|
|
gmp>=5.0
|
|
libgit2>=0.21
|
|
mpfr3
|
|
openblas
|
|
openlibm
|
|
openspecfun>=0.4
|
|
pcre2>=10.0
|
|
suitesparse>=4.1
|
|
"
|
|
depends_dev="arpack-dev
|
|
dsfmt-dev
|
|
fftw-dev
|
|
gmp-dev
|
|
libgit2-dev
|
|
libunwind-dev
|
|
llvm3.7-dev
|
|
mpfr-dev
|
|
openblas-dev
|
|
openlibm-dev
|
|
openspecfun-dev
|
|
pcre2-dev
|
|
suitesparse-dev
|
|
utf8proc-dev>=1.3
|
|
"
|
|
makedepends="$depends_dev
|
|
bash
|
|
cmake
|
|
dsfmt
|
|
gfortran
|
|
linux-headers
|
|
libressl-dev
|
|
paxmark
|
|
perl
|
|
"
|
|
subpackages="$pkgname-dev $pkgname-doc $pkgname-debug"
|
|
source="https://github.com/JuliaLang/julia/releases/download/v$pkgver/$pkgname-$pkgver.tar.gz
|
|
libuv-$_libuv_ver.tar.gz::https://api.github.com/repos/JuliaLang/libuv/tarball/$_libuv_ver
|
|
Rmath-julia-$_rmathjulia_ver.tar.gz::https://api.github.com/repos/JuliaLang/Rmath-julia/tarball/v$_rmathjulia_ver
|
|
find-syslibs
|
|
0001-hardened.patch
|
|
0002-verbose-build.patch
|
|
0003-no-clean-docs.patch
|
|
0004-remove-sysctl.h.patch
|
|
0008-ldconfig-compat.patch
|
|
"
|
|
builddir="$srcdir/$pkgname-$pkgver"
|
|
ldpath="/usr/lib/julia"
|
|
|
|
prepare() {
|
|
cd "$builddir"
|
|
|
|
cp "$srcdir"/Rmath-julia-$_rmathjulia_ver.tar.gz deps/ || return 1
|
|
|
|
# Julia needs patched libuv.
|
|
cp "$srcdir"/libuv-$_libuv_ver.tar.gz deps/ || return 1
|
|
|
|
# Prevent fetching of bundled stuff in the build and package phase.
|
|
cat > deps/jldownload <<-EOF
|
|
#!/bin/sh
|
|
echo "!!! Downloading disabled !!!"
|
|
echo "Abuild should not fetch any files in the build phase."
|
|
echo "Add all the needed files to the APKBUILD's source=."
|
|
exit 1
|
|
EOF
|
|
|
|
cat > Make.user <<-EOF
|
|
prefix=/usr
|
|
libexecdir=/usr/lib
|
|
sysconfdir=/etc
|
|
DESTDIR="$pkgdir"
|
|
LIBBLAS=-lopenblas
|
|
LIBBLASNAME=libopenblas
|
|
LIBLAPACK=-lopenblas
|
|
LIBLAPACKNAME=libopenblas
|
|
LLVM_CONFIG=llvm-config-3.7
|
|
LLVM_VER=3.7
|
|
USE_SYSTEM_LLVM=1
|
|
USE_SYSTEM_LIBUNWIND=1
|
|
USE_SYSTEM_PCRE=1
|
|
USE_SYSTEM_LIBM=1
|
|
USE_SYSTEM_OPENLIBM=1
|
|
USE_SYSTEM_OPENSPECFUN=1
|
|
USE_SYSTEM_DSFMT=1
|
|
USE_SYSTEM_BLAS=1
|
|
USE_SYSTEM_LAPACK=1
|
|
USE_SYSTEM_FFTW=1
|
|
USE_SYSTEM_GMP=1
|
|
USE_SYSTEM_MPFR=1
|
|
USE_SYSTEM_ARPACK=1
|
|
USE_SYSTEM_SUITESPARSE=1
|
|
USE_SYSTEM_LIBUV=0
|
|
USE_SYSTEM_UTF8PROC=1
|
|
USE_SYSTEM_LIBGIT2=1
|
|
USE_SYSTEM_PATCHELF=1
|
|
USE_LLVM_SHLIB=1
|
|
VERBOSE=1
|
|
EOF
|
|
|
|
# Pre-SSE2 CPU targets are not supported;
|
|
# create a generic 32-bit x86 binary.
|
|
if [ "$CARCH" = x86 ]; then
|
|
echo "MARCH=i686" >> Make.user
|
|
echo "JULIA_CPU_TARGET=pentium4" >> Make.user
|
|
else
|
|
echo "MARCH=${CARCH/_/-}" >> Make.user
|
|
fi
|
|
|
|
default_prepare
|
|
}
|
|
|
|
build() {
|
|
cd "$builddir"
|
|
|
|
# If we don't clean here, then make install will recompile everything,
|
|
# don't know why...
|
|
make clean && make release
|
|
}
|
|
|
|
package() {
|
|
cd "$builddir"
|
|
|
|
make install || return 1
|
|
install -D "$srcdir"/find-syslibs "$pkgdir"/usr/share/julia/find-syslibs
|
|
}
|
|
|
|
debug() {
|
|
pkgdesc="$pkgdesc (debug build)"
|
|
|
|
install -d "$subpkgdir"/usr/bin
|
|
mv "$pkgdir"/usr/bin/*-debug "$subpkgdir"/usr/bin/ || return 1
|
|
|
|
install -d "$subpkgdir"/usr/lib/julia
|
|
mv "$pkgdir"/usr/lib/julia/*-debug.* "$subpkgdir"/usr/lib/julia/
|
|
}
|
|
|
|
md5sums="2281e03cff9dde3592fee3370e86b04b julia-0.4.6.tar.gz
|
|
b94c9164471d0492dce170961d7c65a2 libuv-efb40768b7c7bd9f173a7868f74b92b1c5a61a0e.tar.gz
|
|
4e3f9e41e7b8cd3070225d1f5e8b21d9 Rmath-julia-0.1.tar.gz
|
|
d529d078678c242b6ac61d65ad61e530 find-syslibs
|
|
8a2ced6314457d47739deef08adb9ff4 0001-hardened.patch
|
|
2539b4abe49d669ae01a4239fb14243f 0002-verbose-build.patch
|
|
0fc44cc7b6a0167ee1e36310364e7049 0003-no-clean-docs.patch
|
|
e5a50262e22a97d7f8108e6e8fc160d1 0004-remove-sysctl.h.patch
|
|
3cf5ef31fd586ffac9a29cc3eca00e8a 0008-ldconfig-compat.patch"
|
|
sha256sums="e5d12b5a8ddff0131e460612ecf222ddf16014fc64c4fc3d8b021da7ebbd9a9f julia-0.4.6.tar.gz
|
|
872a96b616fc3517526812df11ed188500abff8dd73b75ae92377916b6efd3fe libuv-efb40768b7c7bd9f173a7868f74b92b1c5a61a0e.tar.gz
|
|
64c1ac8ee12859cf295d23bc1c840ea52e5abbcf4384ffacdaec0fc2246c252a Rmath-julia-0.1.tar.gz
|
|
b4bdd0dc307a76e51b40aa33de8856e9bd6e3d8be11b4c509d73f05d78a0cb79 find-syslibs
|
|
587f87971d0e8fa65cf06653c56f62db283be102f8ed57712cad30d18dfb6c22 0001-hardened.patch
|
|
892b3e0b3a94ad53a06574851dd397da4293c371ad980a03daa816a0585cb0ee 0002-verbose-build.patch
|
|
8dc6aabe30ff02acfdae7aea3c6ef8fcf397481dfe2a3e2ad7c65bd8d1bbb09a 0003-no-clean-docs.patch
|
|
70b9f2957d818ccd93f64a61f87eb5c7476258905d235c8e34745ec9c9e9a649 0004-remove-sysctl.h.patch
|
|
7895279378e08f394501af568b08fb59244c272735045b077de1d7ff67810787 0008-ldconfig-compat.patch"
|
|
sha512sums="744fbae14f7b38d5f7ef1c39d05c66f42833ee0e07b3f4be2ae377f2c997872777c6f7e9e667f52e5a33879032b2d02d76b00fab59f81ba6552f1fd4165953da julia-0.4.6.tar.gz
|
|
21bdcffd0c13c864bac6a1f42c5f229a57fd91e124ab4c43bd14ab29e5334bfcbdcdda2e16b3b08e8f79df5ab133bac5cdaeb2a88627fe152dd91d5e18154e61 libuv-efb40768b7c7bd9f173a7868f74b92b1c5a61a0e.tar.gz
|
|
1dd94eca05bc06c3f33e8be5087d3b1742d01c8b38588e0fa79b8f6b9998760bca21bee1b65873825c4dde2d994a8271166bc21f670a34810fa9db598473a887 Rmath-julia-0.1.tar.gz
|
|
0283c7b0ff7dd99ae79f6ddac63513ce7d58ba31de506a3fee07af9b8882ddc275d0f9cb002381ba1e304bcacf252612fa16b21b85667422477e6b945b725899 find-syslibs
|
|
15968d95b09ed0f2315e08a5fd14e798db7fd1faebd1327ceaf7886248b61d2e61f64e726d98cd70cbc2349c66fc3a707298a2481c6abf98c699826f3f2f4ccb 0001-hardened.patch
|
|
266e0170c133e5be98f843adca948a4d13f3549a3a01b0c6220d495149ef26a9a837e9d7b0d9066eb7f8370a46ee5de042882a7dd585ddb245a1573882e32365 0002-verbose-build.patch
|
|
2eae3ea85a56b5deaef464d36f543d60afb2e6a65ee4b57b599dd508046a02179ca53c5efd91351c8d0cbd5a3585b236da9b316e82416f9bff249b8b74ded305 0003-no-clean-docs.patch
|
|
6c111ccdd12af5b00fdf0b7cc8fba11980fceccf7c246b40e791cd1be8e39cd75b8c290c65ebd9b4add60fc242261e17e94807736fce6a96733e9bf18182b489 0004-remove-sysctl.h.patch
|
|
ab53aeaf3464236896295eab25092e4881def9e12483728be4d8323e5d3213c8b0fc064e62d21fd049df9acd2976eee032b254f10d2092ac0a4be4ecf9c319af 0008-ldconfig-compat.patch"
|