Source: julia Version: 0.3.11-1 Tags: patch Hi Maintainer
Patchelf is buggy on ARM and PPC architectures. Julia's Makefile contains the following comment at around line 282: # Update RPATH entries and JL_SYSTEM_IMAGE_PATH if $(private_libdir_rel) != $(build_private_libdir_rel) The attached patches prevent patchelf from being downloaded, set build_private_libdir and build_libdir to use the multiarch lib directories so that patchelf does not get run, and lastly, remove patchelf from julia's build-depends. Regards Graham
diff -Nru julia-0.3.11/debian/control julia-0.3.11/debian/control --- julia-0.3.11/debian/control 2015-05-25 14:51:48.000000000 +0200 +++ julia-0.3.11/debian/control 2015-09-15 21:26:00.000000000 +0200 @@ -6,7 +6,7 @@ libdouble-conversion-dev, libsuitesparse-dev (>= 1:4.2.1), libgmp-dev, libunwind8-dev, libfftw3-dev, libpcre3-dev, libarpack2-dev, libmpfr-dev, libopenblas-dev (>= 0.2.10-1~), libopenlibm-dev, libopenspecfun-dev (>= 0.4~), - patchelf, python-sphinx, python-sphinx-rtd-theme, libjs-mathjax + python-sphinx, python-sphinx-rtd-theme, libjs-mathjax Standards-Version: 3.9.6 Section: science Homepage: http://julialang.org diff -Nru julia-0.3.11/debian/rules julia-0.3.11/debian/rules --- julia-0.3.11/debian/rules 2015-05-25 15:47:36.000000000 +0200 +++ julia-0.3.11/debian/rules 2015-09-15 22:07:10.000000000 +0200 @@ -12,7 +12,7 @@ LLVM_CONFIG=/usr/bin/llvm-config-$(LLVM_VER) VERBOSE=1 \ LIBBLAS=-lopenblas LIBBLASNAME=libopenblas \ LIBLAPACK=-lopenblas LIBLAPACKNAME=libopenblas \ - MULTIARCH_INSTALL=1 sysconfdir=/etc prefix=/usr DESTDIR=debian/tmp/ + MULTIARCH_INSTALL=1 sysconfdir=/etc prefix=/usr DESTDIR=debian/tmp/ USE_SYSTEM_PATCHELF=1 ifeq ($(DEB_HOST_ARCH),amd64) COMMON_FLAGS += MARCH=x86-64
Description: Decide whether to build patchelf based on USE_SYSTEM_PATCHELF That way in distributions where the same tree structure is used for build and install, where patchelf is not used, we don't need to install it. Origin: upstream, https://github.com/JuliaLang/julia/commit/ccdc4b69a9a7ca06122dbdaf077d811680ca5e68 Author: Milan Bouchet-Valat <nalimi...@club.fr> Last-Update: 2015-03-21 --- a/Make.inc +++ b/Make.inc @@ -37,6 +37,7 @@ USE_SYSTEM_RMATH=0 USE_SYSTEM_LIBUV=0 USE_SYSTEM_UTF8PROC=0 +USE_SYSTEM_PATCHELF=0 # Link to the LLVM shared library USE_LLVM_SHLIB = 0 --- a/deps/Makefile +++ b/deps/Makefile @@ -43,7 +43,7 @@ endif ifeq ($(OS), Linux) -ifeq ($(shell which patchelf 2>/dev/null),) +ifeq ($(USE_SYSTEM_PATCHELF), 0) STAGE1_DEPS += patchelf PATCHELF=$(build_bindir)/patchelf else
Description: Make patchelf redundant Build in the multiarch lib directories as well so that $(private_libdir_rel) = $(build_private_libdir_rel) and patchelf does not get run. Author: Graham Inggs <gin...@debian.org> Forwarded: not-needed Last-Update: 2015-09-15 --- a/Make.inc +++ b/Make.inc @@ -122,6 +122,8 @@ MULTIARCH = $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) private_libdir = $(prefix)/lib/$(MULTIARCH)/julia libdir = $(prefix)/lib/$(MULTIARCH)/ +build_private_libdir = $(build_prefix)/lib/$(MULTIARCH)/julia +build_libdir = $(build_prefix)/lib/$(MULTIARCH) endif