1 |
gienah 14/02/26 09:22:53 |
2 |
|
3 |
Modified: ChangeLog |
4 |
Added: julia-0.2.0-r1.ebuild |
5 |
Log: |
6 |
Add 0.2.0-r1 with calchan's fix for bug #501868 and USE_BLAS64=0. paxmark m executables during build for Gentoo hardened. Tweak for multilib-strict. |
7 |
|
8 |
(Portage version: 2.2.8-r1/cvs/Linux x86_64, signed Manifest commit with key 618E971F) |
9 |
|
10 |
Revision Changes Path |
11 |
1.5 dev-lang/julia/ChangeLog |
12 |
|
13 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/julia/ChangeLog?rev=1.5&view=markup |
14 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/julia/ChangeLog?rev=1.5&content-type=text/plain |
15 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/julia/ChangeLog?r1=1.4&r2=1.5 |
16 |
|
17 |
Index: ChangeLog |
18 |
=================================================================== |
19 |
RCS file: /var/cvsroot/gentoo-x86/dev-lang/julia/ChangeLog,v |
20 |
retrieving revision 1.4 |
21 |
retrieving revision 1.5 |
22 |
diff -u -r1.4 -r1.5 |
23 |
--- ChangeLog 26 Feb 2014 03:37:12 -0000 1.4 |
24 |
+++ ChangeLog 26 Feb 2014 09:22:53 -0000 1.5 |
25 |
@@ -1,6 +1,12 @@ |
26 |
# ChangeLog for dev-lang/julia |
27 |
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 |
28 |
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/julia/ChangeLog,v 1.4 2014/02/26 03:37:12 patrick Exp $ |
29 |
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/julia/ChangeLog,v 1.5 2014/02/26 09:22:53 gienah Exp $ |
30 |
+ |
31 |
+*julia-0.2.0-r1 (26 Feb 2014) |
32 |
+ |
33 |
+ 26 Feb 2014; Mark Wright <gienah@g.o> +julia-0.2.0-r1.ebuild: |
34 |
+ Add 0.2.0-r1 with calchan's fix for bug #501868 and USE_BLAS64=0. paxmark m |
35 |
+ executables during build for Gentoo hardened. Tweak for multilib-strict. |
36 |
|
37 |
26 Feb 2014; Patrick Lauer <patrick@g.o> julia-0.2.0.ebuild: |
38 |
Revert changes that break build #501868 |
39 |
|
40 |
|
41 |
|
42 |
1.1 dev-lang/julia/julia-0.2.0-r1.ebuild |
43 |
|
44 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/julia/julia-0.2.0-r1.ebuild?rev=1.1&view=markup |
45 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/julia/julia-0.2.0-r1.ebuild?rev=1.1&content-type=text/plain |
46 |
|
47 |
Index: julia-0.2.0-r1.ebuild |
48 |
=================================================================== |
49 |
# Copyright 1999-2014 Gentoo Foundation |
50 |
# Distributed under the terms of the GNU General Public License v2 |
51 |
# $Header: /var/cvsroot/gentoo-x86/dev-lang/julia/julia-0.2.0-r1.ebuild,v 1.1 2014/02/26 09:22:53 gienah Exp $ |
52 |
EAPI=5 |
53 |
|
54 |
inherit eutils multilib pax-utils |
55 |
|
56 |
DESCRIPTION="High-level, high-performance dynamic programming language for technical computing" |
57 |
|
58 |
HOMEPAGE="http://julialang.org/" |
59 |
|
60 |
# uses gfortran in some places, dependencies don't reflect that yet |
61 |
|
62 |
# tarball remade because upstream lacks submodules, so it's not able to build |
63 |
# soo ... they bundle a split out part of v8 that has no build system that makes sense |
64 |
# double-conversion nailed in to make build system happy |
65 |
# dSFMT is not meant to be packaged |
66 |
SRC_URI="http://gentooexperimental.org/~patrick/${P}.tar.bz2 |
67 |
http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/dSFMT-src-2.2.tar.gz -> dsfmt-2.2.tar.gz |
68 |
http://double-conversion.googlecode.com/files/double-conversion-1.1.1.tar.gz" |
69 |
|
70 |
LICENSE="MIT" |
71 |
SLOT="0" |
72 |
|
73 |
KEYWORDS="~amd64 ~x86" |
74 |
|
75 |
IUSE="" |
76 |
|
77 |
S="${WORKDIR}" |
78 |
|
79 |
# Avoid fragile duplication - see compile and install phases |
80 |
JULIAMAKEARGS="QUIET_MAKE= USE_SYSTEM_LLVM=1 USE_SYSTEM_READLINE=1 USE_SYSTEM_PCRE=1 USE_SYSTEM_LIBM=1 \ |
81 |
USE_SYSTEM_GMP=1 USE_SYSTEM_LIBUNWIND=1 USE_SYSTEM_PATCHELF=1 USE_SYSTEM_FFTW=1 USE_SYSTEM_ZLIB=1 \ |
82 |
USE_SYSTEM_MPFR=1 USE_SYSTEM_SUITESPARSE=1 USE_SYSTEM_ARPACK=1 USE_SYSTEM_BLAS=1 USE_SYSTEM_LAPACK=1 \ |
83 |
LLVM_CONFIG=/usr/bin/llvm-config USE_BLAS64=0" |
84 |
|
85 |
# Forcing use of 64-bit integers. If you want 64-bit integers then you need to use a BLAS implementation from the |
86 |
# science overlay and julia-9999 also from the science overlay. |
87 |
|
88 |
# scons is a dep of double-conversion |
89 |
DEPEND=" |
90 |
=sys-devel/llvm-3.3* |
91 |
dev-lang/perl |
92 |
sys-libs/readline |
93 |
dev-libs/libpcre |
94 |
dev-util/scons |
95 |
dev-libs/gmp |
96 |
sys-libs/libunwind |
97 |
dev-util/patchelf |
98 |
sci-libs/fftw |
99 |
sys-libs/zlib |
100 |
dev-libs/mpfr |
101 |
sci-libs/suitesparse |
102 |
sci-libs/arpack |
103 |
virtual/lapack |
104 |
virtual/blas |
105 |
" |
106 |
RDEPEND="sys-libs/readline" |
107 |
|
108 |
src_prepare() { |
109 |
#uurgh, no fetching in ebuild |
110 |
sed -i -e 's~$(JLDOWNLOAD)~/bin/true~' deps/Makefile || die "Oopsie" |
111 |
sed -i -e 's~git submodule~/bin/true~g' deps/Makefile || die "Ooopsie" |
112 |
# and we need to build stuff, so ... let's just copy around and pray! |
113 |
mkdir -p deps/random |
114 |
cp "${DISTDIR}/dsfmt-2.2.tar.gz" deps/random/ |
115 |
cp "${DISTDIR}/double-conversion-1.1.1.tar.gz" deps/ |
116 |
# Detect what BLAS and LAPACK implementations are being used |
117 |
local BLAS_LIB="$($(tc-getPKG_CONFIG) --libs blas | sed 's/ .*$//')" |
118 |
local LAPACK_LIB="$($(tc-getPKG_CONFIG) --libs lapack | sed 's/ .*$//')" |
119 |
sed -e "s|-lblas|${BLAS_LIB}|" -i Make.inc || die |
120 |
sed -e "s|libblas|${BLAS_LIB/-l/lib}.so|" -i Make.inc || die |
121 |
sed -e "s|-llapack|${LAPACK_LIB}|" -i Make.inc || die |
122 |
sed -e "s|liblapack|${LAPACK_LIB/-l/lib}.so|" -i Make.inc || die |
123 |
sed -e "s|JL_PRIVATE_LIBDIR = lib/julia|JL_PRIVATE_LIBDIR = $(get_libdir)/julia|" \ |
124 |
-e "s|JL_LIBDIR = lib|JL_LIBDIR = $(get_libdir)|" \ |
125 |
-e "s|/usr/lib|/usr/$(get_libdir)|" \ |
126 |
-e "s|\$(BUILD)/lib|\$(BUILD)/$(get_libdir)|g" \ |
127 |
-i Make.inc || die |
128 |
# Set version to package version instead of git commit number |
129 |
sed -e "s|^JULIA_COMMIT = .*|JULIA_COMMIT = v${PV}|" -i Make.inc || die |
130 |
sed -e "s|\$(BUILD)/lib|\$(BUILD)/$(get_libdir)|g" \ |
131 |
-i Makefile || die |
132 |
} |
133 |
|
134 |
src_compile() { |
135 |
mkdir -p usr/$(get_libdir) || die |
136 |
pushd usr || die |
137 |
ln -s $(get_libdir) lib || die |
138 |
popd |
139 |
emake $JULIAMAKEARGS julia-release || die |
140 |
for i in usr/bin/julia-* |
141 |
do |
142 |
if file ${i} | grep ELF >/dev/null; then |
143 |
pax-mark m ${i} |
144 |
fi |
145 |
done |
146 |
emake $JULIAMAKEARGS || die |
147 |
# makefile weirdness - avoid compile in src_install |
148 |
emake $JULIAMAKEARGS debug || die |
149 |
} |
150 |
|
151 |
src_install() { |
152 |
# config goes to /usr/etc/ - should be fixed |
153 |
emake $JULIAMAKEARGS PREFIX="${D}/usr" install || die |
154 |
} |