summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO12
-rw-r--r--PKGBUILD27
-rw-r--r--julia-libgit2-1.0.patch194
-rw-r--r--libunwind-version.patch17
4 files changed, 214 insertions, 36 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 8c7a8dbe9291..7afb85dc3a16 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = julia-mkl
pkgdesc = High-level, high-performance, dynamic programming language (compiled with the Intel MKL library)
- pkgver = 1.4.0
+ pkgver = 1.4.2
pkgrel = 1
epoch = 2
url = https://julialang.org/
@@ -10,6 +10,7 @@ pkgbase = julia-mkl
makedepends = gcc-fortran
makedepends = gmp
makedepends = python
+ makedepends = intel-common-libs
depends = fftw
depends = hicolor-icon-theme
depends = intel-mkl
@@ -19,17 +20,18 @@ pkgbase = julia-mkl
depends = suitesparse
depends = mbedtls
depends = openlibm
+ depends = pcre2
optdepends = gnuplot: If using the Gaston Package from julia
provides = julia
conflicts = julia
conflicts = julia-git
backup = etc/julia/startup.jl
- source = https://github.com/JuliaLang/julia/releases/download/v1.4.0/julia-1.4.0-full.tar.gz
- source = libunwind-version.patch
+ source = https://github.com/JuliaLang/julia/releases/download/v1.4.2/julia-1.4.2-full.tar.gz
source = make-install-no-build.patch
- sha256sums = 880c73a08296ce8d94ad9605149f2a2b2b028e7202a700ef725da899300b8be9
- sha256sums = a5eec1e43e1161c313b1d32a5f35a67d6b4a2bbc2d6d324c010f6f2b35be4a72
+ source = julia-libgit2-1.0.patch::https://patch-diff.githubusercontent.com/raw/JuliaLang/julia/pull/35233.patch
+ sha256sums = 948c70801d5cce81eeb7f764b51b4bfbb2dc0b1b9effc2cb9fc8f8cf6c90a334
sha256sums = 0b57e0bc6e25c92fde8a6474394f7a99bfb57f9b5d0f7b53f988622ae67de8b7
+ sha256sums = c8be2be8d62ea653439a5c18e56f8026c83f0f1127934b12d7faf60630befd45
pkgname = julia-mkl
diff --git a/PKGBUILD b/PKGBUILD
index 7f8933564313..63432e5bcb08 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -9,40 +9,38 @@
pkgname=julia-mkl
_pkgname=julia
epoch=2
-pkgver=1.4.0
+pkgver=1.4.2
pkgrel=1
arch=(x86_64)
pkgdesc='High-level, high-performance, dynamic programming language (compiled with the Intel MKL library)'
url='https://julialang.org/'
license=(MIT)
-depends=(fftw hicolor-icon-theme intel-mkl libgit2 libunwind libutf8proc suitesparse mbedtls openlibm)
-makedepends=(cmake gcc-fortran gmp python)
+depends=(fftw hicolor-icon-theme intel-mkl libgit2 libunwind libutf8proc suitesparse mbedtls openlibm pcre2)
+makedepends=(cmake gcc-fortran gmp python intel-common-libs)
optdepends=('gnuplot: If using the Gaston Package from julia')
provides=('julia')
conflicts=('julia' 'julia-git')
backup=(etc/julia/startup.jl)
source=("https://github.com/JuliaLang/julia/releases/download/v$pkgver/$_pkgname-$pkgver-full.tar.gz"
- libunwind-version.patch
- make-install-no-build.patch)
-sha256sums=('880c73a08296ce8d94ad9605149f2a2b2b028e7202a700ef725da899300b8be9'
- 'a5eec1e43e1161c313b1d32a5f35a67d6b4a2bbc2d6d324c010f6f2b35be4a72'
- '0b57e0bc6e25c92fde8a6474394f7a99bfb57f9b5d0f7b53f988622ae67de8b7')
+ make-install-no-build.patch
+ julia-libgit2-1.0.patch::"https://patch-diff.githubusercontent.com/raw/JuliaLang/julia/pull/35233.patch")
+sha256sums=('948c70801d5cce81eeb7f764b51b4bfbb2dc0b1b9effc2cb9fc8f8cf6c90a334'
+ '0b57e0bc6e25c92fde8a6474394f7a99bfb57f9b5d0f7b53f988622ae67de8b7'
+ 'c8be2be8d62ea653439a5c18e56f8026c83f0f1127934b12d7faf60630befd45')
prepare() {
cd $_pkgname-$pkgver
- # Fixing libunwind version check
- # https://github.com/JuliaLang/julia/pull/29082
- #patch -p1 -i ../libunwind-version.patch
-
# Don't build again in install
patch -p1 -i ../make-install-no-build.patch
+ # Compatibility with libgit2 1.0
+ patch -p1 -i ../julia-libgit2-1.0.patch
}
build() {
export PATH="$srcdir/bin:$PATH"
- env CFLAGS="$CFLAGS -w" CXXFLAGS="$CXXFLAGS -w" make VERBOSE=1 -C $_pkgname-$pkgver \
+ env CFLAGS="$CFLAGS -w" CXXFLAGS="$CXXFLAGS -w" make VERBOSE=1 -C $_pkgname-$pkgver -j1\
USE_SYSTEM_LLVM=0 \
USE_SYSTEM_LIBUNWIND=1 \
USE_SYSTEM_PCRE=1 \
@@ -63,7 +61,8 @@ build() {
USE_SYSTEM_ZLIB=1 \
USE_SYSTEM_P7ZIP=1 \
USE_SYSTEM_OPENLIBM=1 \
- MARCH=x86-64
+ MARCH=x86-64 \
+ -j 1
#USE_SYSTEM_BLAS=1 \
#USE_SYSTEM_LAPACK=1 \
#USEICC=1 \
diff --git a/julia-libgit2-1.0.patch b/julia-libgit2-1.0.patch
new file mode 100644
index 000000000000..7aecd761c118
--- /dev/null
+++ b/julia-libgit2-1.0.patch
@@ -0,0 +1,194 @@
+From fa4481b0ef8ff668da71d64ea41cc8d209775bee Mon Sep 17 00:00:00 2001
+From: Milan Bouchet-Valat <nalimilan@club.fr>
+Date: Mon, 23 Mar 2020 10:20:58 +0100
+Subject: [PATCH] Bump libgit2 to 0.99.1
+
+---
+ deps/libgit2.version | 4 ++--
+ stdlib/LibGit2/src/LibGit2.jl | 2 +-
+ stdlib/LibGit2/src/blob.jl | 2 +-
+ stdlib/LibGit2/src/error.jl | 15 ++++++++++++---
+ stdlib/LibGit2/src/oid.jl | 3 ++-
+ stdlib/LibGit2/src/repository.jl | 2 +-
+ stdlib/LibGit2/src/types.jl | 11 ++++-------
+ stdlib/LibGit2/src/utils.jl | 4 ++--
+ stdlib/LibGit2/src/walker.jl | 2 +-
+ stdlib/LibGit2/test/libgit2.jl | 2 +-
+ 10 files changed, 27 insertions(+), 20 deletions(-)
+
+diff --git a/deps/libgit2.version b/deps/libgit2.version
+index f67bedc41417..dc3c50c9c690 100644
+--- a/deps/libgit2.version
++++ b/deps/libgit2.version
+@@ -1,2 +1,2 @@
+-LIBGIT2_BRANCH=v0.28.2
+-LIBGIT2_SHA1=b3e1a56ebb2b9291e82dc027ba9cbcfc3ead54d3
++LIBGIT2_BRANCH=v0.99.0
++LIBGIT2_SHA1=172239021f7ba04fe7327647b213799853a9eb89
+diff --git a/stdlib/LibGit2/src/LibGit2.jl b/stdlib/LibGit2/src/LibGit2.jl
+index 627922e138a5..b890a0c42f74 100644
+--- a/stdlib/LibGit2/src/LibGit2.jl
++++ b/stdlib/LibGit2/src/LibGit2.jl
+@@ -18,10 +18,10 @@ const REFCOUNT = Threads.Atomic{Int}(0)
+
+ function ensure_initialized end
+
++include("error.jl")
+ include("utils.jl")
+ include("consts.jl")
+ include("types.jl")
+-include("error.jl")
+ include("signature.jl")
+ include("oid.jl")
+ include("reference.jl")
+diff --git a/stdlib/LibGit2/src/blob.jl b/stdlib/LibGit2/src/blob.jl
+index b416fac7329e..efd7a14c9c6f 100644
+--- a/stdlib/LibGit2/src/blob.jl
++++ b/stdlib/LibGit2/src/blob.jl
+@@ -67,7 +67,7 @@ id = LibGit2.addblob!(repo, blob_file)
+ function addblob!(repo::GitRepo, path::AbstractString)
+ ensure_initialized()
+ id_ref = Ref{GitHash}()
+- @check ccall((:git_blob_create_fromdisk, :libgit2), Cint,
++ @check ccall((:git_blob_create_from_disk, :libgit2), Cint,
+ (Ptr{GitHash}, Ptr{Cvoid}, Cstring),
+ id_ref, repo.ptr, path)
+ return id_ref[]
+diff --git a/stdlib/LibGit2/src/error.jl b/stdlib/LibGit2/src/error.jl
+index 4d1e915cef31..3e56999d5a52 100644
+--- a/stdlib/LibGit2/src/error.jl
++++ b/stdlib/LibGit2/src/error.jl
+@@ -25,9 +25,13 @@ export GitError
+ ECERTIFICATE = Cint(-17), # server certificate is invalid
+ EAPPLIED = Cint(-18), # patch/merge has already been applied
+ EPEEL = Cint(-19), # the requested peel operation is not possible
+- EEOF = Cint(-20), # Unexpted EOF
++ EEOF = Cint(-20), # unexpected EOF
+ PASSTHROUGH = Cint(-30), # internal only
+- ITEROVER = Cint(-31)) # signals end of iteration
++ ITEROVER = Cint(-31), # signals end of iteration
++ RETRY = Cint(-32), # internal only
++ EMISMATCH = Cint(-33), # hashsum mismatch in object
++ EINDEXDIRTY = Cint(-34), # unsaved changes in the index would be overwritten
++ EAPPLYFAIL = Cint(-35)) # patch application failed
+
+ @enum(Class, None,
+ NoMemory,
+@@ -58,7 +62,12 @@ export GitError
+ Callback,
+ CherryPick,
+ Describe,
+- Rebase)
++ Rebase,
++ Filesystem,
++ Patch,
++ WorkTree,
++ SHA1,
++ HTTP)
+
+ struct ErrorStruct
+ message::Ptr{UInt8}
+diff --git a/stdlib/LibGit2/src/oid.jl b/stdlib/LibGit2/src/oid.jl
+index 069d725685a6..1074f003ebd2 100644
+--- a/stdlib/LibGit2/src/oid.jl
++++ b/stdlib/LibGit2/src/oid.jl
+@@ -13,7 +13,8 @@ function GitHash(ptr::Ptr{UInt8})
+ end
+ ensure_initialized()
+ oid_ptr = Ref(GitHash())
+- ccall((:git_oid_fromraw, :libgit2), Cvoid, (Ptr{GitHash}, Ptr{UInt8}), oid_ptr, ptr)
++ @check ccall((:git_oid_fromraw, :libgit2), Cint,
++ (Ptr{GitHash}, Ptr{UInt8}), oid_ptr, ptr)
+ return oid_ptr[]
+ end
+
+diff --git a/stdlib/LibGit2/src/repository.jl b/stdlib/LibGit2/src/repository.jl
+index 96249bd9f69d..8c858b1f8f90 100644
+--- a/stdlib/LibGit2/src/repository.jl
++++ b/stdlib/LibGit2/src/repository.jl
+@@ -32,7 +32,7 @@ end
+ function cleanup(r::GitRepo)
+ if r.ptr != C_NULL
+ ensure_initialized()
+- ccall((:git_repository__cleanup, :libgit2), Cvoid, (Ptr{Cvoid},), r.ptr)
++ @check ccall((:git_repository__cleanup, :libgit2), Cint, (Ptr{Cvoid},), r.ptr)
+ end
+ end
+
+diff --git a/stdlib/LibGit2/src/types.jl b/stdlib/LibGit2/src/types.jl
+index 6ffbe67ea277..3edb76a73dac 100644
+--- a/stdlib/LibGit2/src/types.jl
++++ b/stdlib/LibGit2/src/types.jl
+@@ -197,7 +197,7 @@ end
+ LibGit2.TransferProgress
+
+ Transfer progress information used by the `transfer_progress` remote callback.
+-Matches the [`git_transfer_progress`](https://libgit2.org/libgit2/#HEAD/type/git_transfer_progress) struct.
++Matches the [`git_indexer_progress`](https://libgit2.org/libgit2/#HEAD/type/git_indexer_progress) struct.
+ """
+ @kwdef struct TransferProgress
+ total_objects::Cuint = Cuint(0)
+@@ -223,6 +223,7 @@ end
+ push_negotiation::Ptr{Cvoid} = C_NULL
+ transport::Ptr{Cvoid} = C_NULL
+ payload::Ptr{Cvoid} = C_NULL
++ resolve_url::Ptr{Cvoid} = C_NULL
+ end
+
+ """
+@@ -325,12 +326,8 @@ end
+ prune::Cint = Consts.FETCH_PRUNE_UNSPECIFIED
+ update_fetchhead::Cint = Cint(1)
+ download_tags::Cint = Consts.REMOTE_DOWNLOAD_TAGS_AUTO
+- @static if LibGit2.VERSION >= v"0.25.0"
+- proxy_opts::ProxyOptions = ProxyOptions()
+- end
+- @static if LibGit2.VERSION >= v"0.24.0"
+- custom_headers::StrArrayStruct = StrArrayStruct()
+- end
++ proxy_opts::ProxyOptions = ProxyOptions()
++ custom_headers::StrArrayStruct = StrArrayStruct()
+ end
+
+ """
+diff --git a/stdlib/LibGit2/src/utils.jl b/stdlib/LibGit2/src/utils.jl
+index 147b0949f74c..b601ea4efe60 100644
+--- a/stdlib/LibGit2/src/utils.jl
++++ b/stdlib/LibGit2/src/utils.jl
+@@ -37,8 +37,8 @@ function version()
+ major = Ref{Cint}(0)
+ minor = Ref{Cint}(0)
+ patch = Ref{Cint}(0)
+- ccall((:git_libgit2_version, :libgit2), Cvoid,
+- (Ref{Cint}, Ref{Cint}, Ref{Cint}), major, minor, patch)
++ @check ccall((:git_libgit2_version, :libgit2), Cint,
++ (Ref{Cint}, Ref{Cint}, Ref{Cint}), major, minor, patch)
+ return VersionNumber(major[], minor[], patch[])
+ end
+ const VERSION = version()
+diff --git a/stdlib/LibGit2/src/walker.jl b/stdlib/LibGit2/src/walker.jl
+index 1d2fbcb52f9b..e977590eafb8 100644
+--- a/stdlib/LibGit2/src/walker.jl
++++ b/stdlib/LibGit2/src/walker.jl
+@@ -77,7 +77,7 @@ end
+ function Base.sort!(w::GitRevWalker; by::Cint = Consts.SORT_NONE, rev::Bool=false)
+ ensure_initialized()
+ rev && (by |= Consts.SORT_REVERSE)
+- ccall((:git_revwalk_sorting, :libgit2), Cvoid, (Ptr{Cvoid}, Cint), w.ptr, by)
++ @check ccall((:git_revwalk_sorting, :libgit2), Cint, (Ptr{Cvoid}, Cint), w.ptr, by)
+ return w
+ end
+
+diff --git a/stdlib/LibGit2/test/libgit2.jl b/stdlib/LibGit2/test/libgit2.jl
+index b7ecd31d5f0a..c1418f5ad6fb 100644
+--- a/stdlib/LibGit2/test/libgit2.jl
++++ b/stdlib/LibGit2/test/libgit2.jl
+@@ -3043,7 +3043,7 @@ mktempdir() do dir
+ deserialize(f)
+ end
+ @test err.code == LibGit2.Error.ERROR
+- @test lowercase(err.msg) == lowercase("invalid Content-Type: text/plain")
++ @test lowercase(err.msg) == lowercase("invalid Content-Type: 'text/plain'")
+ end
+
+ # OpenSSL s_server should still be running
diff --git a/libunwind-version.patch b/libunwind-version.patch
deleted file mode 100644
index 08e980ac65bd..000000000000
--- a/libunwind-version.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/src/julia_internal.h b/src/julia_internal.h
-index 186b5d7b2b..33143f2062 100644
---- a/src/julia_internal.h
-+++ b/src/julia_internal.h
-@@ -623,12 +623,9 @@ extern volatile int jl_in_stackwalk;
- # include <libunwind.h>
- typedef unw_context_t bt_context_t;
- typedef unw_cursor_t bt_cursor_t;
--# if (!defined(SYSTEM_LIBUNWIND) || UNW_VERSION_MAJOR > 1 || \
-- (UNW_VERSION_MAJOR == 1 && UNW_VERSION_MINOR != 0 && UNW_VERSION_MINOR != 1))
- // Enable our memory manager only for libunwind with our patch or
- // on a newer release
- # define JL_UNW_HAS_FORMAT_IP 1
--# endif
- #else
- // Unwinding is disabled
- typedef int bt_context_t;