Gentoo Archives: gentoo-commits

From: Matthias Maier <tamiko@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/julia/files/, dev-lang/julia/
Date: Sun, 01 Jul 2018 04:49:30
Message-Id: 1530420546.ce5fe500802f8483a322348b4dc3e9c0385842bd.tamiko@gentoo
1 commit: ce5fe500802f8483a322348b4dc3e9c0385842bd
2 Author: Matthias Maier <tamiko <AT> gentoo <DOT> org>
3 AuthorDate: Sun Jul 1 04:35:31 2018 +0000
4 Commit: Matthias Maier <tamiko <AT> gentoo <DOT> org>
5 CommitDate: Sun Jul 1 04:49:06 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ce5fe500
7
8 dev-lang/julia: drop old version 0.6.2
9
10 Package-Manager: Portage-2.3.41, Repoman-2.3.9
11
12 dev-lang/julia/Manifest | 2 -
13 .../julia/files/julia-0.6.0-fix_build_system.patch | 87 ----------
14 dev-lang/julia/julia-0.6.2.ebuild | 193 ---------------------
15 3 files changed, 282 deletions(-)
16
17 diff --git a/dev-lang/julia/Manifest b/dev-lang/julia/Manifest
18 index 8207d853db3..0124be31939 100644
19 --- a/dev-lang/julia/Manifest
20 +++ b/dev-lang/julia/Manifest
21 @@ -1,4 +1,2 @@
22 -DIST julia-0.6.2-bundled.tar.gz 3508868 BLAKE2B b5b3f52d8036e5603b62606cd096f22f8a975f9cab2f9baad902c0208a81868359005e82a17e513a7705ec717750702cdc12ab476ffac3c1c38158f06d80ae99 SHA512 3a9a6cc43aab2eae6c57812287958e3a1ac1718d6fdf08e5ce7c8e8e8a62231fb4d7b6f064e2d6941ac750d8924f5cb37ae3ac4e2d18f366a82c94bdc9e6abe4
23 -DIST julia-0.6.2.tar.gz 5592907 BLAKE2B d6d25f43cd650f6a079c4ba6fe533e6bdbf6a1123255d7651460e297ed3d35a832688e19efddf41c780fbda2eb861bc8ed5f7c59ea7efb5fdf490eb2e7a47f5d SHA512 679050463ed5825d34c477bd44cd91cfecc7d1735a2f52cc70b509afd9883cb60902861643266ecac5ba6cbb03f8fcdd12fc2e87dc41b9ed0eef813fa40610f1
24 DIST julia-0.6.3-bundled.tar.gz 2099258 BLAKE2B dea1f5d37477e0a612e3901d7d568e8c4b350496f9d2b344cd7e2c2043ae30b4dd26b567803a2cb96d1ec4dbe2ba514fb08b925c695589746691887334330dd2 SHA512 d04cd55ba0dde08f253db3a388cf5ebe87cec8ae321a5af4c1c92f2680aa6e6ef2ebfa771ec74f8f1ff96409e2c0645476acf577859e8718eac4a581f097639d
25 DIST julia-0.6.3.tar.gz 5542642 BLAKE2B cccd1ee2eb4d9f59382a0d1f6466e77c84b0542456c405c05b718bc8a39ff537a09760a523ee572fc9eee6797158aa00010fc4c931a80deac645fb1e45061c87 SHA512 f529bb30a17989234061cf4c3d87aecc6da720eb494efaca7be4ec1ed5eda60d440896fb76a45b6cb30205030256e7de765e8944f873b31d96f7c9ecac542db8
26
27 diff --git a/dev-lang/julia/files/julia-0.6.0-fix_build_system.patch b/dev-lang/julia/files/julia-0.6.0-fix_build_system.patch
28 deleted file mode 100644
29 index 6f804161775..00000000000
30 --- a/dev-lang/julia/files/julia-0.6.0-fix_build_system.patch
31 +++ /dev/null
32 @@ -1,87 +0,0 @@
33 -diff --git a/Make.inc b/Make.inc
34 -index e30c150..e6fdbb2 100644
35 ---- a/Make.inc
36 -+++ b/Make.inc
37 -@@ -399,7 +399,7 @@ ifneq ($(OS), WINNT)
38 - JCXXFLAGS += -pedantic
39 - endif
40 - DEBUGFLAGS := -O0 -ggdb2 -DJL_DEBUG_BUILD -fstack-protector-all
41 --SHIPFLAGS := -O3 -ggdb2 -falign-functions
42 -+SHIPFLAGS := GENTOOCFLAGS
43 - endif
44 -
45 - ifeq ($(USECLANG),1)
46 -@@ -410,7 +410,7 @@ JCFLAGS := -pipe $(fPIC) -fno-strict-aliasing -D_FILE_OFFSET_BITS=64
47 - JCPPFLAGS := -fasynchronous-unwind-tables
48 - JCXXFLAGS := -pipe $(fPIC) -fno-rtti -pedantic
49 - DEBUGFLAGS := -O0 -g -DJL_DEBUG_BUILD -fstack-protector-all
50 --SHIPFLAGS := -O3 -g
51 -+SHIPFLAGS := GENTOOCFLAGS
52 - ifeq ($(OS), Darwin)
53 - ifeq ($(USE_LIBCPP), 1)
54 - MACOSX_VERSION_MIN := 10.8
55 -@@ -439,7 +439,7 @@ JCFLAGS := -std=gnu11 -pipe $(fPIC) -fno-strict-aliasing -D_FILE_OFFSET_BITS=64
56 - JCPPFLAGS :=
57 - JCXXFLAGS := -pipe $(fPIC) -fno-rtti
58 - DEBUGFLAGS := -O0 -g -DJL_DEBUG_BUILD -fstack-protector-all
59 --SHIPFLAGS := -O3 -g -falign-functions
60 -+SHIPFLAGS := GENTOOCFLAGS
61 - endif
62 -
63 - ifeq ($(USECCACHE), 1)
64 -diff --git a/deps/tools/jldownload b/deps/tools/jldownload
65 -index ab4fd69..e2c2408 100755
66 ---- a/deps/tools/jldownload
67 -+++ b/deps/tools/jldownload
68 -@@ -5,9 +5,9 @@
69 -
70 - CACHE_HOST=https://cache.julialang.org
71 -
72 --WGET=$(which wget 2>/dev/null)
73 --CURL=$(which curl 2>/dev/null)
74 --FETCH=$(which fetch 2>/dev/null)
75 -+WGET=/bin/true
76 -+CURL=/bin/true
77 -+FETCH=/bin/true
78 -
79 - TIMEOUT=15 # seconds
80 - WGET_OPTS="--no-check-certificate --tries=1 --timeout=$TIMEOUT"
81 -diff --git a/doc/Makefile b/doc/Makefile
82 -index 743804d..e06dde0 100644
83 ---- a/doc/Makefile
84 -+++ b/doc/Makefile
85 -@@ -25,7 +25,7 @@ deps: UnicodeData.txt
86 - $(JLCHECKSUM) UnicodeData.txt
87 -
88 - clean:
89 -- -rm -rf _build/* deps/* docbuild.log UnicodeData.txt
90 -+ @echo "Do not clean doc/_build/html. Just use it..."
91 -
92 - cleanall: clean
93 -
94 -diff --git a/src/Makefile b/src/Makefile
95 -index f71f53d..7cdd23f 100644
96 ---- a/src/Makefile
97 -+++ b/src/Makefile
98 -@@ -85,20 +85,8 @@ PUBLIC_HEADER_TARGETS := $(addprefix $(build_includedir)/julia/,$(notdir $(PUBLI
99 -
100 - # In LLVM < 3.4, --ldflags includes both options and libraries, so use it both before and after --libs
101 - # In LLVM >= 3.4, --ldflags has only options, and --system-libs has the libraries.
102 --ifneq ($(USE_LLVM_SHLIB),1)
103 --LLVMLINK += $(shell $(LLVM_CONFIG_HOST) --ldflags) $(shell $(LLVM_CONFIG_HOST) --libs $(LLVM_LIBS)) $(shell $(LLVM_CONFIG_HOST) --ldflags) $(shell $(LLVM_CONFIG_HOST) --system-libs 2> /dev/null)
104 --else
105 --ifeq ($(LLVM_USE_CMAKE),1)
106 --LLVMLINK += $(shell $(LLVM_CONFIG_HOST) --ldflags) -lLLVM
107 --else
108 --ifeq ($(OS),WINNT)
109 --LLVMLINK += $(shell $(LLVM_CONFIG_HOST) --ldflags) -lLLVM-$(LLVM_VER_SHORT)
110 --else
111 --LLVMLINK += $(shell $(LLVM_CONFIG_HOST) --ldflags) -lLLVM-$(shell $(LLVM_CONFIG_HOST) --version)
112 --endif # OS == WINNT
113 --endif # LLVM_USE_CMAKE == 1
114 -+LLVMLINK = $(call exec,$(LLVM_CONFIG) --ldflags) $(call exec,$(LLVM_CONFIG) --libs) $(call exec,$(LLVM_CONFIG) --ldflags) $(call exec,$(LLVM_CONFIG) --system-libs)
115 - FLAGS += -DLLVM_SHLIB
116 --endif # USE_LLVM_SHLIB == 1
117 -
118 - COMMON_LIBS := -L$(build_shlibdir) -L$(build_libdir) $(LIBUV) $(LIBUTF8PROC) $(NO_WHOLE_ARCHIVE) $(LLVMLINK) $(OSLIBS)
119 - DEBUG_LIBS := $(WHOLE_ARCHIVE) $(BUILDDIR)/flisp/libflisp-debug.a $(WHOLE_ARCHIVE) $(BUILDDIR)/support/libsupport-debug.a $(COMMON_LIBS)
120
121 diff --git a/dev-lang/julia/julia-0.6.2.ebuild b/dev-lang/julia/julia-0.6.2.ebuild
122 deleted file mode 100644
123 index ba2c87ba0b5..00000000000
124 --- a/dev-lang/julia/julia-0.6.2.ebuild
125 +++ /dev/null
126 @@ -1,193 +0,0 @@
127 -# Copyright 1999-2018 Gentoo Foundation
128 -# Distributed under the terms of the GNU General Public License v2
129 -
130 -EAPI=6
131 -
132 -RESTRICT="test"
133 -
134 -inherit llvm pax-utils toolchain-funcs
135 -
136 -DESCRIPTION="High-performance programming language for technical computing"
137 -HOMEPAGE="https://julialang.org/"
138 -SRC_URI="
139 - https://github.com/JuliaLang/${PN}/releases/download/v${PV}/${P}.tar.gz
140 - https://dev.gentoo.org/~tamiko/distfiles/${P}-bundled.tar.gz
141 -"
142 -
143 -LICENSE="MIT"
144 -SLOT="0"
145 -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
146 -IUSE=""
147 -
148 -# julia 0.6* is compatible with llvm-4
149 -RDEPEND="
150 - sys-devel/llvm:4=
151 - sys-devel/clang:4="
152 -LLVM_MAX_SLOT=4
153 -
154 -RDEPEND+="
155 - dev-libs/double-conversion:0=
156 - dev-libs/gmp:0=
157 - dev-libs/libgit2:0=
158 - dev-libs/mpfr:0=
159 - dev-libs/openspecfun
160 - sci-libs/arpack:0=
161 - sci-libs/camd:0=
162 - sci-libs/cholmod:0=
163 - sci-libs/fftw:3.0=[threads]
164 - sci-libs/openlibm:0=
165 - sci-libs/spqr:0=
166 - >=dev-libs/libpcre2-10.23:0=[jit]
167 - sci-libs/umfpack:0=
168 - sci-mathematics/glpk:0=
169 - >=sys-libs/libunwind-1.1:7=
170 - sys-libs/readline:0=
171 - sys-libs/zlib:0=
172 - >=virtual/blas-3.6
173 - virtual/lapack"
174 -
175 -DEPEND="${RDEPEND}
176 - dev-vcs/git
177 - dev-util/patchelf
178 - virtual/pkgconfig"
179 -
180 -PATCHES=(
181 - "${FILESDIR}"/${PN}-0.6.0-fix_build_system.patch
182 -)
183 -
184 -src_prepare() {
185 - mv "${WORKDIR}"/bundled/UnicodeData.txt doc || die
186 - mkdir deps/srccache || die
187 - mv "${WORKDIR}"/bundled/* deps/srccache || die
188 - rmdir "${WORKDIR}"/bundled || die
189 -
190 - default
191 -
192 - # Sledgehammer:
193 - # - prevent fetching of bundled stuff in compile and install phase
194 - # - respect CFLAGS
195 - # - respect EPREFIX and Gentoo specific paths
196 - # - fix BLAS and LAPACK link interface
197 -
198 - sed -i \
199 - -e 's|$(JLDOWNLOAD)|${EPREFIX}/bin/true|' \
200 - -e 's|git submodule|${EPREFIX}/bin/true|g' \
201 - -e "s|GENTOOCFLAGS|${CFLAGS}|g" \
202 - -e "s|/usr/include|${EPREFIX%/}/usr/include|g" \
203 - deps/Makefile || die
204 -
205 - local libblas="$($(tc-getPKG_CONFIG) --libs-only-l blas)"
206 - libblas="${libblas%% *}"
207 - libblas="lib${libblas#-l}"
208 - local liblapack="$($(tc-getPKG_CONFIG) --libs-only-l lapack)"
209 - liblapack="${liblapack%% *}"
210 - liblapack="lib${liblapack#-l}"
211 -
212 - sed -i \
213 - -e "s|\(JULIA_EXECUTABLE = \)\(\$(JULIAHOME)/julia\)|\1 LD_LIBRARY_PATH=\$(BUILD)/$(get_libdir) \2|" \
214 - -e "s|GENTOOCFLAGS|${CFLAGS}|g" \
215 - -e "s|LIBDIR = lib|LIBDIR = $(get_libdir)|" \
216 - -e "s|/usr/lib|${EPREFIX}/usr/$(get_libdir)|" \
217 - -e "s|/usr/include|${EPREFIX}/usr/include|" \
218 - -e "s|\$(BUILD)/lib|\$(BUILD)/$(get_libdir)|" \
219 - -e "s|^JULIA_COMMIT = .*|JULIA_COMMIT = v${PV}|" \
220 - -e "s|-lblas|$($(tc-getPKG_CONFIG) --libs blas)|" \
221 - -e "s|= libblas|= ${libblas}|" \
222 - -e "s|-llapack|$($(tc-getPKG_CONFIG) --libs lapack)|" \
223 - -e "s|= liblapack|= ${liblapack}|" \
224 - Make.inc || die
225 -
226 - sed -i \
227 - -e "s|,lib)|,$(get_libdir))|g" \
228 - -e "s|\$(BUILD)/lib|\$(BUILD)/$(get_libdir)|g" \
229 - Makefile || die
230 -
231 - sed -i \
232 - -e "s|ar -rcs|$(tc-getAR) -rcs|g" \
233 - src/Makefile || die
234 -
235 - # disable doc install starting git fetching
236 - sed -i -e 's~install: $(build_depsbindir)/stringreplace $(BUILDROOT)/doc/_build/html/en/index.html~install: $(build_depsbindir)/stringreplace~' Makefile || die
237 -}
238 -
239 -src_configure() {
240 - # julia does not play well with the system versions of dsfmt, libuv,
241 - # and utf8proc
242 -
243 - # USE_SYSTEM_LIBM=0 implies using external openlibm
244 - cat <<-EOF > Make.user
245 - USE_SYSTEM_DSFMT=0
246 - USE_SYSTEM_LIBUV=0
247 - USE_SYSTEM_PCRE=1
248 - USE_SYSTEM_RMATH=0
249 - USE_SYSTEM_UTF8PROC=0
250 - USE_LLVM_SHLIB=1
251 - USE_SYSTEM_ARPACK=1
252 - USE_SYSTEM_BLAS=1
253 - USE_SYSTEM_FFTW=1
254 - USE_SYSTEM_GMP=1
255 - USE_SYSTEM_GRISU=1
256 - USE_SYSTEM_LAPACK=1
257 - USE_SYSTEM_LIBGIT2=1
258 - USE_SYSTEM_LIBM=0
259 - USE_SYSTEM_LIBUNWIND=1
260 - USE_SYSTEM_LLVM=1
261 - USE_SYSTEM_MPFR=1
262 - USE_SYSTEM_OPENLIBM=1
263 - USE_SYSTEM_OPENSPECFUN=1
264 - USE_SYSTEM_PATCHELF=1
265 - USE_SYSTEM_READLINE=1
266 - USE_SYSTEM_SUITESPARSE=1
267 - USE_SYSTEM_ZLIB=1
268 - VERBOSE=1
269 - libdir="${EROOT}/usr/$(get_libdir)"
270 - EOF
271 -
272 -}
273 -
274 -src_compile() {
275 -
276 - # Julia accesses /proc/self/mem on Linux
277 - addpredict /proc/self/mem
278 -
279 - emake cleanall
280 - emake VERBOSE=1 julia-release \
281 - prefix="${EPREFIX}/usr" DESTDIR="${D}" \
282 - CC="$(tc-getCC)" CXX="$(tc-getCXX)"
283 - pax-mark m $(file usr/bin/julia-* | awk -F : '/ELF/ {print $1}')
284 - emake
285 -}
286 -
287 -src_test() {
288 - emake test
289 -}
290 -
291 -src_install() {
292 - # Julia is special. It tries to find a valid git repository (that would
293 - # normally be cloned during compilation/installation). Just make it
294 - # happy...
295 - git init && \
296 - git config --local user.email "whatyoudoing@×××××××.com" && \
297 - git config --local user.name "Whyyyyyy" && \
298 - git commit -a --allow-empty -m "initial" || die "git failed"
299 -
300 - emake install \
301 - prefix="${EPREFIX}/usr" DESTDIR="${D}" \
302 - CC="$(tc-getCC)" CXX="$(tc-getCXX)"
303 - cat > 99julia <<-EOF
304 - LDPATH=${EROOT%/}/usr/$(get_libdir)/julia
305 - EOF
306 - doenvd 99julia
307 -
308 - dodoc README.md
309 -
310 - mv "${ED}"/usr/etc/julia "${ED}"/etc || die
311 - rmdir "${ED}"/usr/etc || die
312 - mv "${ED}"/usr/share/doc/julia/{examples,html} \
313 - "${ED}"/usr/share/doc/${PF} || die
314 - rmdir "${ED}"/usr/share/doc/julia || die
315 - if [[ $(get_libdir) != lib ]]; then
316 - mkdir -p "${ED}"/usr/$(get_libdir) || die
317 - mv "${ED}"/usr/lib/julia "${ED}"/usr/$(get_libdir)/julia || die
318 - fi
319 -}