*/*: slotmove sys-libs/libunwind from SLOT=7 to SLOT=0
[gentoo.git] / dev-lang / julia / julia-9999.ebuild
index ee966c94ec4b7d53f3ad4488e517fe4ad499d1f6..fc5eddd7e62264d87912b17c30fc65de72da20b6 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -18,25 +18,28 @@ KEYWORDS=""
 IUSE=""
 
 RDEPEND="
-       >=sys-devel/llvm-4.0.0:=
-       >=sys-devel/clang-4.0.0:="
+       >=sys-devel/llvm-6.0.0:=
+       >=sys-devel/clang-6.0.0:="
 
 RDEPEND+="
        dev-libs/double-conversion:0=
        dev-libs/gmp:0=
        dev-libs/libgit2:0=
+       >=dev-libs/libpcre2-10.23:0=[jit]
        dev-libs/mpfr:0=
        dev-libs/openspecfun
+       sci-libs/amd:0=
        sci-libs/arpack:0=
        sci-libs/camd:0=
+       sci-libs/ccolamd:0=
        sci-libs/cholmod:0=
+       sci-libs/colamd:0=
        sci-libs/fftw:3.0=[threads]
        sci-libs/openlibm:0=
        sci-libs/spqr:0=
-       >=dev-libs/libpcre2-10.23:0=[jit]
        sci-libs/umfpack:0=
        sci-mathematics/glpk:0=
-       >=sys-libs/libunwind-1.1:7=
+       >=sys-libs/libunwind-1.1:0=
        sys-libs/readline:0=
        sys-libs/zlib:0=
        >=virtual/blas-3.6
@@ -60,7 +63,7 @@ src_prepare() {
 
        sed -i \
                -e "s|GENTOOCFLAGS|${CFLAGS}|g" \
-               -e "s|/usr/include|${EPREFIX%/}/usr/include|g" \
+               -e "s|/usr/include|${EPREFIX}/usr/include|g" \
                deps/Makefile || die
 
        local libblas="$($(tc-getPKG_CONFIG) --libs-only-l blas)"
@@ -96,28 +99,27 @@ src_configure() {
 
        # USE_SYSTEM_LIBM=0 implies using external openlibm
        cat <<-EOF > Make.user
-               USE_SYSTEM_DSFMT=0
-               USE_SYSTEM_LIBUV=0
-               USE_SYSTEM_PCRE=1
-               USE_SYSTEM_RMATH=0
-               USE_SYSTEM_UTF8PROC=0
-               USE_LLVM_SHLIB=1
-               USE_SYSTEM_ARPACK=1
-               USE_SYSTEM_BLAS=1
-               USE_SYSTEM_FFTW=1
-               USE_SYSTEM_GMP=1
-               USE_SYSTEM_GRISU=1
-               USE_SYSTEM_LAPACK=1
-               USE_SYSTEM_LIBGIT2=1
-               USE_SYSTEM_LIBM=0
-               USE_SYSTEM_LIBUNWIND=1
-               USE_SYSTEM_LLVM=1
-               USE_SYSTEM_MPFR=1
-               USE_SYSTEM_OPENLIBM=1
-               USE_SYSTEM_OPENSPECFUN=1
-               USE_SYSTEM_PATCHELF=1
-               USE_SYSTEM_READLINE=1
-               USE_SYSTEM_SUITESPARSE=1
+               USE_SYSTEM_ARPACK:=1
+               USE_SYSTEM_BLAS:=1
+               USE_SYSTEM_DSFMT:=0
+               USE_SYSTEM_GMP:=1
+               USE_SYSTEM_GRISU:=1
+               USE_SYSTEM_LAPACK:=1
+               USE_SYSTEM_LIBGIT2:=1
+               USE_SYSTEM_LIBM:=0
+               USE_SYSTEM_LIBUNWIND:=1
+               USE_SYSTEM_LIBUV:=0
+               USE_SYSTEM_LLVM:=1
+               USE_LLVM_SHLIB:=1
+               USE_SYSTEM_MPFR:=1
+               USE_SYSTEM_OPENLIBM:=1
+               USE_SYSTEM_OPENSPECFUN:=1
+               USE_SYSTEM_PATCHELF:=1
+               USE_SYSTEM_PCRE:=1
+               USE_SYSTEM_READLINE:=1
+               USE_SYSTEM_RMATH:=0
+               USE_SYSTEM_SUITESPARSE:=1
+               USE_SYSTEM_UTF8PROC:=0
                USE_SYSTEM_ZLIB=1
                VERBOSE=1
                libdir="${EROOT}/usr/$(get_libdir)"
@@ -131,6 +133,19 @@ src_compile() {
        addpredict /proc/self/mem
 
        emake cleanall
+
+       # Create symlinks...
+       local libblas="$($(tc-getPKG_CONFIG) --libs-only-l blas)"
+       libblas="${libblas%% *}"
+       libblas="lib${libblas#-l}"
+       local liblapack="$($(tc-getPKG_CONFIG) --libs-only-l lapack)"
+       liblapack="${liblapack%% *}"
+       liblapack="lib${liblapack#-l}"
+       mkdir -p "${S}"/usr/lib/julia || die "mkdir failed"
+       for i in ${libblas}.so ${liblapack}.so libumfpack.so libspqr.so; do
+               ln -s "${EROOT}/usr/$(get_libdir)/${i}" "${S}"/usr/lib/julia/ || die "ln failed"
+       done
+
        emake VERBOSE=1 julia-release \
                prefix="${EPREFIX}/usr" DESTDIR="${D}" \
                CC="$(tc-getCC)" CXX="$(tc-getCXX)"
@@ -147,7 +162,7 @@ src_install() {
                prefix="${EPREFIX}/usr" DESTDIR="${D}" \
                CC="$(tc-getCC)" CXX="$(tc-getCXX)"
        cat > 99julia <<-EOF
-               LDPATH=${EROOT%/}/usr/$(get_libdir)/julia
+               LDPATH=${EROOT}/usr/$(get_libdir)/julia
        EOF
        doenvd 99julia