Gentoo Archives: gentoo-commits

From: Guilherme Amadio <amadio@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-physics/root/
Date: Tue, 05 Feb 2019 09:51:39
Message-Id: 1549360149.e525231758bd7a4a53c4e51b1f4530e8f0eb66e6.amadio@gentoo
1 commit: e525231758bd7a4a53c4e51b1f4530e8f0eb66e6
2 Author: Guilherme Amadio <amadio <AT> gentoo <DOT> org>
3 AuthorDate: Mon Feb 4 10:16:04 2019 +0000
4 Commit: Guilherme Amadio <amadio <AT> gentoo <DOT> org>
5 CommitDate: Tue Feb 5 09:49:09 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e5252317
7
8 sci-physics/root: backport ebuild fixes to older versions
9
10 - Update REQUIRED_USE and dependencies
11 - Use usr/lib (like LLVM) to avoid ROOT bug
12 - Create versioned symlinks to binaries to easily allow
13 running a specific version of ROOT when more than one
14 version is installed
15
16 Package-Manager: Portage-2.3.59, Repoman-2.3.12
17 Signed-off-by: Guilherme Amadio <amadio <AT> gentoo.org>
18
19 ...ot-6.12.06-r8.ebuild => root-6.12.06-r9.ebuild} | 38 +++++-------
20 ...ot-6.14.08-r1.ebuild => root-6.14.08-r2.ebuild} | 72 ++++++++++------------
21 2 files changed, 47 insertions(+), 63 deletions(-)
22
23 diff --git a/sci-physics/root/root-6.12.06-r8.ebuild b/sci-physics/root/root-6.12.06-r9.ebuild
24 similarity index 90%
25 rename from sci-physics/root/root-6.12.06-r8.ebuild
26 rename to sci-physics/root/root-6.12.06-r9.ebuild
27 index 373b866eeae..3baa2bb1b7e 100644
28 --- a/sci-physics/root/root-6.12.06-r8.ebuild
29 +++ b/sci-physics/root/root-6.12.06-r9.ebuild
30 @@ -146,9 +146,9 @@ src_configure() {
31 local mycmakeargs=(
32 -DCMAKE_C_FLAGS="${CFLAGS}"
33 -DCMAKE_CXX_FLAGS="${CXXFLAGS}"
34 - -DCMAKE_INSTALL_PREFIX="${EPREFIX%/}/usr/$(get_libdir)/${PN}/$(ver_cut 1-2)"
35 - -DCMAKE_INSTALL_MANDIR="${EPREFIX%/}/usr/$(get_libdir)/${PN}/$(ver_cut 1-2)/share/man"
36 - -DMCAKE_INSTALL_LIBDIR=$(get_libdir)
37 + -DCMAKE_INSTALL_PREFIX="${EPREFIX%/}/usr/lib/${PN}/$(ver_cut 1-2)"
38 + -DCMAKE_INSTALL_MANDIR="${EPREFIX%/}/usr/lib/${PN}/$(ver_cut 1-2)/share/man"
39 + -DCMAKE_INSTALL_LIBDIR="lib"
40 -DDEFAULT_SYSROOT="${EPREFIX}"
41 -Dexplicitlink=ON
42 -Dexceptions=ON
43 @@ -269,45 +269,37 @@ src_configure() {
44 src_install() {
45 cmake-utils_src_install
46
47 - ROOTSYS=${EPREFIX%/}/usr/$(get_libdir)/${PN}/$(ver_cut 1-2)
48 + ROOTSYS=${EPREFIX%/}/usr/lib/${PN}/$(ver_cut 1-2)
49 ROOTENV=$((9999 - $(ver_cut 2)))${PN}-$(ver_cut 1-2)
50
51 - # ROOT fails without this symlink because it only looks in lib
52 - if [[ ! -d ${D}/${ROOTSYS}/lib ]]; then
53 - dosym $(get_libdir) /usr/$(get_libdir)/${PN}/$(ver_cut 1-2)/lib
54 - fi
55 -
56 cat > ${ROOTENV} <<- EOF || die
57 MANPATH="${ROOTSYS}/share/man"
58 PATH="${ROOTSYS}/bin"
59 ROOTPATH="${ROOTSYS}/bin"
60 - LDPATH="${ROOTSYS}/$(get_libdir)"
61 + LDPATH="${ROOTSYS}/lib"
62 EOF
63
64 if use python; then
65 - echo "PYTHONPATH=${ROOTSYS}/$(get_libdir)" >> ${ROOTENV} || die
66 + echo "PYTHONPATH=${ROOTSYS}/lib" >> ${ROOTENV} || die
67 fi
68
69 doenvd ${ROOTENV}
70
71 - pushd "${D}/${ROOTSYS}" > /dev/null
72 -
73 if use emacs; then
74 elisp-install ${PN}-$(ver_cut 1-2) "${BUILD_DIR}"/root-help.el
75 fi
76
77 - if ! use gdml; then
78 - rm -r geom || die
79 - fi
80 + pushd "${D}/${ROOTSYS}" > /dev/null
81
82 - if ! use examples; then
83 - rm -r test tutorials || die
84 - fi
85 + rm -r test emacs bin/*.{csh,sh} || die
86
87 - if use tmva; then
88 - rm -r tmva || die
89 + if ! use examples; then
90 + rm -r tutorials || die
91 fi
92
93 - # clean up unnecessary files from installation
94 - rm -r emacs || die
95 + # create versioned symlinks for binaries
96 + cd bin;
97 + for exe in *; do
98 + dosym "${exe}" "/usr/lib/${PN}/$(ver_cut 1-2)/bin/${exe}-$(ver_cut 1-2)"
99 + done
100 }
101
102 diff --git a/sci-physics/root/root-6.14.08-r1.ebuild b/sci-physics/root/root-6.14.08-r2.ebuild
103 similarity index 82%
104 rename from sci-physics/root/root-6.14.08-r1.ebuild
105 rename to sci-physics/root/root-6.14.08-r2.ebuild
106 index 591ae2768d3..2a1d13bad9d 100644
107 --- a/sci-physics/root/root-6.14.08-r1.ebuild
108 +++ b/sci-physics/root/root-6.14.08-r2.ebuild
109 @@ -29,6 +29,7 @@ KEYWORDS="~amd64 ~x86"
110
111 REQUIRED_USE="
112 ^^ ( c++11 c++14 c++17 )
113 + cuda? ( tmva !c++17 )
114 !X? ( !asimage !opengl !qt5 !tiff )
115 davix? ( ssl xml )
116 python? ( ${PYTHON_REQUIRED_USE} )
117 @@ -41,18 +42,18 @@ CDEPEND="
118 app-arch/lz4
119 app-arch/xz-utils
120 fortran? ( dev-lang/cfortran )
121 - dev-libs/libpcre:3=
122 + dev-libs/libpcre:3
123 dev-libs/xxhash
124 media-fonts/dejavu
125 - media-libs/freetype:2=
126 + media-libs/freetype:2
127 media-libs/libpng:0=
128 sys-libs/ncurses:=
129 sys-libs/zlib
130 X? (
131 - x11-libs/libX11:0=
132 - x11-libs/libXext:0=
133 - x11-libs/libXft:0=
134 - x11-libs/libXpm:0=
135 + x11-libs/libX11:0
136 + x11-libs/libXext:0
137 + x11-libs/libXft:0
138 + x11-libs/libXpm:0
139 opengl? (
140 media-libs/ftgl:0=
141 media-libs/glew:0=
142 @@ -76,8 +77,8 @@ CDEPEND="
143 emacs? ( virtual/emacs )
144 fftw? ( sci-libs/fftw:3.0= )
145 fits? ( sci-libs/cfitsio:0= )
146 - graphviz? ( media-gfx/graphviz:0= )
147 - gsl? ( sci-libs/gsl )
148 + graphviz? ( media-gfx/graphviz )
149 + gsl? ( sci-libs/gsl:= )
150 http? ( dev-libs/fcgi:0= )
151 jemalloc? ( dev-libs/jemalloc )
152 kerberos? ( virtual/krb5 )
153 @@ -89,8 +90,8 @@ CDEPEND="
154 odbc? ( || ( dev-db/libiodbc dev-db/unixODBC ) )
155 oracle? ( dev-db/oracle-instantclient-basic )
156 postgres? ( dev-db/postgresql:= )
157 - pythia6? ( sci-physics/pythia:6= )
158 - pythia8? ( sci-physics/pythia:8= )
159 + pythia6? ( sci-physics/pythia:6 )
160 + pythia8? ( sci-physics/pythia:8 )
161 python? ( ${PYTHON_DEPS} )
162 R? ( dev-lang/R )
163 shadow? ( virtual/shadow )
164 @@ -98,7 +99,7 @@ CDEPEND="
165 ssl? ( dev-libs/openssl:0= )
166 tbb? ( >=dev-cpp/tbb-2018 )
167 tmva? ( dev-python/numpy[${PYTHON_USEDEP}] )
168 - vc? ( dev-libs/vc )
169 + vc? ( dev-libs/vc:= )
170 xml? ( dev-libs/libxml2:2= )
171 xrootd? ( net-libs/xrootd:0= )
172 "
173 @@ -119,12 +120,10 @@ pkg_setup() {
174 use fortran && fortran-2_pkg_setup
175 use python && python-single-r1_pkg_setup
176
177 - elog "There are extra options on packages not yet in Gentoo:"
178 - elog "Afdsmgrd, AliEn, castor, Chirp, dCache, gfal, Globus, gLite,"
179 - elog "HDFS, Monalisa, MaxDB/SapDB, SRP, VecCore."
180 - elog "You can use the environment variable EXTRA_ECONF for this."
181 - elog "For example, for Chirp, you would set: "
182 - elog "EXTRA_ECONF=\"-Dchirp=ON\""
183 + elog "There are extra options on packages not available in Gentoo."
184 + elog "You can use the environment variable EXTRA_ECONF to enable"
185 + elog "these packages. For example, for Vdt you would set:"
186 + elog "EXTRA_ECONF=\"-Dbuiltin_vdt=ON -Dvdt=ON\""
187 }
188
189 src_prepare() {
190 @@ -140,7 +139,7 @@ src_prepare() {
191
192 # Note: ROOT uses bundled clang because it is patched and API-incompatible
193 # with vanilla clang. The patches enable the C++ interpreter to work.
194 -# Since ROOT installs many files into /etc (~100MB in total) that don't
195 +# Since ROOT installs many files into /etc (>100MB in total) that don't
196 # really belong there, we install it into another directory to avoid
197 # making /etc too big.
198
199 @@ -149,9 +148,9 @@ src_configure() {
200 -DCMAKE_C_FLAGS="${CFLAGS}"
201 -DCMAKE_CXX_FLAGS="${CXXFLAGS}"
202 -DPYTHON_EXECUTABLE="${PYTHON}"
203 - -DCMAKE_INSTALL_PREFIX="${EPREFIX%/}/usr/$(get_libdir)/${PN}/$(ver_cut 1-2)"
204 - -DCMAKE_INSTALL_MANDIR="${EPREFIX%/}/usr/$(get_libdir)/${PN}/$(ver_cut 1-2)/share/man"
205 - -DCMAKE_INSTALL_LIBDIR=$(get_libdir)
206 + -DCMAKE_INSTALL_PREFIX="${EPREFIX%/}/usr/lib/${PN}/$(ver_cut 1-2)"
207 + -DCMAKE_INSTALL_MANDIR="${EPREFIX%/}/usr/lib/${PN}/$(ver_cut 1-2)/share/man"
208 + -DCMAKE_INSTALL_LIBDIR="lib"
209 -DDEFAULT_SYSROOT="${EPREFIX}"
210 -DCLING_BUILD_PLUGINS=OFF
211 -Dexplicitlink=ON
212 @@ -285,44 +284,37 @@ src_compile() {
213 src_install() {
214 cmake-utils_src_install
215
216 - ROOTSYS=${EPREFIX%/}/usr/$(get_libdir)/${PN}/$(ver_cut 1-2)
217 + ROOTSYS=${EPREFIX%/}/usr/lib/${PN}/$(ver_cut 1-2)
218 ROOTENV=$((9999 - $(ver_cut 2)))${PN}-$(ver_cut 1-2)
219
220 - # ROOT fails without this symlink because it only looks in lib
221 - if [[ ! -d ${D}/${ROOTSYS}/lib ]]; then
222 - dosym $(get_libdir) /usr/$(get_libdir)/${PN}/$(ver_cut 1-2)/lib
223 - fi
224 -
225 cat > ${ROOTENV} <<- EOF || die
226 MANPATH="${ROOTSYS}/share/man"
227 PATH="${ROOTSYS}/bin"
228 ROOTPATH="${ROOTSYS}/bin"
229 - LDPATH="${ROOTSYS}/$(get_libdir)"
230 + LDPATH="${ROOTSYS}/lib"
231 EOF
232
233 if use python; then
234 - echo "PYTHONPATH=${ROOTSYS}/$(get_libdir)" >> ${ROOTENV} || die
235 + echo "PYTHONPATH=\"${ROOTSYS}/lib\"" >> ${ROOTENV} || die
236 fi
237
238 doenvd ${ROOTENV}
239
240 - pushd "${D}/${ROOTSYS}" > /dev/null
241 -
242 if use emacs; then
243 elisp-install ${PN}-$(ver_cut 1-2) "${BUILD_DIR}"/root-help.el
244 fi
245
246 + pushd "${D}/${ROOTSYS}" > /dev/null
247 +
248 + rm -r test emacs bin/*.{csh,sh} || die
249 +
250 if ! use examples; then
251 rm -r tutorials || die
252 fi
253
254 - if ! use tmva; then
255 - rm -r tmva || die
256 - fi
257 -
258 - # Environment variables are managed by env.d.
259 - rm -f bin/*.{c,}sh || die
260 -
261 - # clean up unnecessary files from installation
262 - rm -r emacs test || die
263 + # create versioned symlinks for binaries
264 + cd bin;
265 + for exe in *; do
266 + dosym "${exe}" "/usr/lib/${PN}/$(ver_cut 1-2)/bin/${exe}-$(ver_cut 1-2)"
267 + done
268 }