diff options
author | Marco Munari | 2022-01-22 23:01:39 +0100 |
---|---|---|
committer | Marco Munari | 2022-01-22 23:47:05 +0100 |
commit | 7a4ab5fb68ff3812ba42e9403f17889933eb9ef7 (patch) | |
tree | d015aececbe2b29fdea4bc5863616a34c4fcd8f6 | |
parent | 1a5991df8b4a2e9f707a7db9c5fddbce581ba9f2 (diff) | |
download | aur-7a4ab5fb68ff3812ba42e9403f17889933eb9ef7.tar.gz |
- Let julia build more own chosen deps:
libunwind, pcre2 and mpfr (not to use some more of the system libs,
as occurred arch system versions got out of sync against julia choice)
- make test instead of testall.
`make test` does currently the following bit less than the
preceding command in check() correspondent to `make testall`
LibGit2/online
Pkg
the difference is given by the argument `default` or `all` to runtests.jl
See diff <(make -n test) <(make -n testall)
then add argument --help-list at the invocation of runtests.jl
to list and compare the tests run by `default` or `all` flavor
consider running some `make` command with -j1 argument in low memory
machines (the minimum seems to be in the order of 12Gb+ of available
memory and 20Gb of Swap)
- while testing this change the failure of test for
pcre2 and mpfr is just due to a version-string comparison,
'pcre2=10.36.0' current system version would be 10.39
'mpfr=4.1.0' a string version check refuses current version 4.1.0-p13
I let julia build internally such libraries too
the official changes description of pcre are in
https://github.com/PhilipHazel/pcre2/blob/master/ChangeLog
Also the attempt to prepare the deps source files with
`make full-source-dist` (now commented out) fails because
since at least November 4th 2020 the used url in pcre.mk,
ftp.pcre.org is "not anymore" online (as said in https://pcre.org)
I opened julia development issue https://github.com/JuliaLang/julia/issues/43895
- Remove an obsolete cp Make.user, because being specified in the
sources, an absolute symbolic link is created in src dir
- Removed a comment mentioning USE_SYSTEM_ARPACK, not anymore used
- Update dependency also with version range according to
https://github.com/JuliaLang/julia/blob/master/doc/src/devdocs/build/build.md#required-build-tools-and-external-libraries
if you have enough RAM there is chance that the build succeeds
-rw-r--r-- | .SRCINFO | 13 | ||||
-rw-r--r-- | Make.user | 10 | ||||
-rw-r--r-- | PKGBUILD | 35 |
3 files changed, 30 insertions, 28 deletions
@@ -1,20 +1,18 @@ pkgbase = julia-git pkgdesc = High-level, high-performance, dynamic programming language - pkgver = 1.7.0.DEV.r48888.g7b19e097294 + pkgver = 1.8.0.DEV.r51125.g1db8b8f1607 pkgrel = 1 url = https://julialang.org/ arch = x86_64 license = MIT - makedepends = patchelf - makedepends = cmake + makedepends = cmake>=3.4.3 + makedepends = gcc-libs + makedepends = python>=2.7 makedepends = gcc-fortran - makedepends = python + makedepends = patchelf makedepends = git - depends = libunwind - depends = pcre2 depends = openlibm depends = gmp - depends = mpfr depends = libutf8proc depends = zlib depends = p7zip @@ -44,4 +42,3 @@ pkgname = julia-git-docs provides = julia-docs conflicts = julia-docs conflicts = julia-git-doc - diff --git a/Make.user b/Make.user index b7aeecd3b422..ceec93e42b56 100644 --- a/Make.user +++ b/Make.user @@ -1,16 +1,19 @@ +#See doc/src/devdocs/build/linux.md prefix:=/usr sysconfdir:=/etc +#FORCE_ASSERTIONS=1 +#LLVM_ASSERTIONS=1 #MARCH=${CARCH/_/-} USE_SYSTEM_LLVM:=0 -USE_SYSTEM_LIBUNWIND:=1 -USE_SYSTEM_PCRE:=1 +USE_SYSTEM_LIBUNWIND:=0 +USE_SYSTEM_PCRE:=0 USE_SYSTEM_LIBM:=0 USE_SYSTEM_OPENLIBM:=1 USE_SYSTEM_DSFMT:=0 USE_SYSTEM_BLAS:=0 USE_SYSTEM_LAPACK:=0 USE_SYSTEM_GMP:=0 -USE_SYSTEM_MPFR:=1 +USE_SYSTEM_MPFR:=0 USE_SYSTEM_SUITESPARSE:=0 USE_SYSTEM_LIBUV:=0 USE_SYSTEM_UTF8PROC:=1 @@ -21,3 +24,4 @@ USE_SYSTEM_LIBGIT2:=0 USE_SYSTEM_PATCHELF:=1 USE_SYSTEM_ZLIB:=1 USE_SYSTEM_P7ZIP:=1 +LDFLAGS=-Wl,-rpath,/usr/lib/ @@ -5,18 +5,15 @@ _pkgbase=julia pkgbase=${_pkgbase}-git pkgname=(julia-git julia-git-docs) -pkgver=1.7.0.DEV.r48888.g7b19e097294 +pkgver=1.8.0.DEV.r51125.g1db8b8f1607 pkgrel=1 arch=(x86_64) pkgdesc='High-level, high-performance, dynamic programming language' url='https://julialang.org/' license=(MIT) depends=(#compare with grep =1 Make.user|cut -c 11-|cut -d: -f1|tr _A-Z \\ta-z - libunwind - pcre2 openlibm gmp - mpfr libutf8proc zlib p7zip @@ -24,11 +21,21 @@ depends=(#compare with grep =1 Make.user|cut -c 11-|cut -d: -f1|tr _A-Z \\ta-z gtk-update-icon-cache hicolor-icon-theme ) -makedepends=( +makedepends=( #See minimum in doc/src/devdocs/build/build.md#required-build-tools-and-external-libraries + 'cmake>=3.4.3' # to build libgit2 + gcc-libs #provides libatomics.so needed to support atomi operations + 'python>=2.7' + gcc-fortran patchelf - cmake gcc-fortran - python git + #the following documented minimum is already in group base-devel + #'gcc>5.1' + #make + #m4 + #awk + #patch + #pkgconf #needed to build libgit2 correctly + #which ) source=(git+https://github.com/JuliaLang/julia.git#branch=master Make.user @@ -53,16 +60,15 @@ prepare() { git submodule update msg2 'Configuring the build...' - cp -v $srcdir/Make.user . # Fixing libunwind version check # https://github.com/JuliaLang/julia/pull/29082 patch -p1 -i ../libunwind-version.patch + #make full-source-dist } build() { # See FS#57387 for why USE_SYSTEM_LLVM=0 is used, for now - # See FS#58221 for why USE_SYSTEM_ARPACK=0 is used, for now export PATH="$srcdir/bin:$PATH" env CFLAGS="$CFLAGS -w" CXXFLAGS="$CXXFLAGS -w" make VERBOSE=1 -C "$_pkgbase" @@ -72,14 +78,9 @@ build() { } check() { - cd "$_pkgbase/test" - - # this is the make testall target, plus the --skip option from - # travis/appveyor/circleci (one test failed with DNS resolution errors) - ../julia --check-bounds=yes --startup-file=no ./runtests.jl all \ - --skip Distributed - - find ../stdlib \( -name \*.cov -o -name \*.mem \) -delete + cd $_pkgbase + make test + find stdlib -name \*.mem -delete } package_julia-git() { |