void-packages/srcpkgs/julia/template

83 lines
2.2 KiB
Bash

# Template file for 'julia'
pkgname=julia
version=1.1.1
revision=2
archs="i686* x86_64*"
build_style=gnu-makefile
make_build_args="prefix=/usr sysconfdir=/etc USE_SYSTEM_LLVM=0 USE_LLVM_SHLIB=1
USE_SYSTEM_PCRE=1 USE_SYSTEM_BLAS=1 USE_SYSTEM_LAPACK=1 USE_SYSTEM_GMP=1
USE_SYSTEM_MPFR=1 USE_SYSTEM_LIBUV=0 USE_SYSTEM_LIBGIT2=1
LIBLAPACK=-lopenblas LIBLAPACKNAME=libopenblas
LIBBLAS=-lopenblas LIBBLASNAME=libopenblas"
make_install_args="$make_build_args"
make_check_args="$make_build_args"
make_check_target=testall
conf_files="/etc/julia/startup.jl"
hostmakedepends="perl cmake python"
makedepends="openblas-devel pcre2-devel gmp-devel mpfr-devel libgit2-devel
libcurl-devel libssh2-devel mbedtls-devel libatomic-devel"
depends="pcre2 gmp mpfr libgit2 libcurl libssh2 mbedtls libatomic"
short_desc="High-level, high-performance dynamic programming language"
maintainer="Adam Beckmeyer <adam_git@thebeckmeyers.xyz>"
license="MIT"
homepage="https://julialang.org"
distfiles="https://github.com/JuliaLang/julia/releases/download/v${version}/julia-${version}-full.tar.gz"
checksum=3c5395dd3419ebb82d57bcc49dc729df3b225b9094e74376f8c649ee35ed79c2
nocross=yes
# Falsely detects dependency on libllvm
skiprdeps="/usr/lib/libjulia.so.1.1 /usr/lib/julia/libllvmcalltest.so"
case "$XBPS_TARGET_MACHINE" in
*-musl)
broken="fails to compile internal LLVM"
;;
i686-musl)
makedepends+=" libexecinfo-devel"
depends+=" libexecinfo"
LDFLAGS="-lexecinfo -lc"
;;
x86_64-musl)
makedepends+=" libexecinfo-devel"
depends+=" libexecinfo"
LDFLAGS="-lexecinfo"
;;
esac
case "$XBPS_TARGET_MACHINE" in
i686*)
export M="pentium4"
export CFLAGS="-march=pentium4"
export CXXFLAGS="-march=pentium4"
make_build_args+=" MARCH=pentium4"
;;
x86_64*)
export M="x86-64"
export CFLAGS="-march=x86-64"
export CXXFLAGS="-march=x86-64"
make_build_args+=" MARCH=x86-64"
;;
esac
post_extract() {
sed -i '/^install:/s| \$(BUILDROOT)/doc.*||' Makefile
}
post_install() {
vlicense LICENSE.md
}
julia-devel_package() {
depends="${sourcepkg}>=${version}_${revision}"
short_desc+=" - development files"
pkg_install() {
vmove usr/include
}
}
julia-doc_package() {
depends="${sourcepkg}>=${version}_${revision}"
short_desc+=" - documentation files"
pkg_install() {
vmove usr/share/doc
}
}