Magellan Linux

Contents of /branches/R11-unstable/extras/boost/boost-1.64.0-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 29647 - (show annotations) (download)
Mon Jul 10 07:49:48 2017 UTC (6 years, 10 months ago) by niro
Original Path: trunk/extras/boost/boost-1.64.0-r1.smage2
File size: 13179 byte(s)
auto added: ver bump to 1.64.0-r1
1 # $Id$
2
3 PNAME="boost"
4 PVER="1.64.0"
5 PBUILD="r1"
6
7 SPLIT_PACKAGES="
8 boost-system
9 boost-regex
10 boost-atomic
11 boost-chrono
12 boost-container
13 boost-context
14 boost-coroutine
15 boost-date-time
16 boost-fiber
17 boost-filesystem
18 boost-graph
19 boost-iostreams
20 boost-locale
21 boost-log
22 boost-math
23 boost-program-options
24 boost-python
25 boost-numpy
26 boost-random
27 boost-serialization
28 boost-signals
29 boost-test
30 boost-thread
31 boost-timer
32 boost-type_erasure
33 boost-wave
34 boost-jam
35 boost-build
36 boost
37 boost-doc
38 boost-examples"
39
40 PCAT="dev-libs"
41 HOMEPAGE="http://www.boost.org/"
42
43 COMMON_DEPEND=">= sys-libs/libstdc++-5.3"
44 BZIP_DEPEND=">= app-arch/bzip2-1.0.6"
45 ZLIB_DEPEND=">= sys-libs/zlib-1.2"
46 PYTHON_DEPEND=">= dev-lang/python-2.7"
47 NUMPY_DEPEND=">= dev-python/numpy-1.9"
48 ICU_DEPEND=">= dev-libs/icu-57.1"
49
50 SDEPEND="${COMMON_DEPEND}
51 ${BZIP_DEPEND}
52 ${ZLIB_DEPEND}
53 ${PYTHON_DEPEND}
54 ${NUMPY_DEPEND}
55 ${ICU_DEPEND}"
56
57 SRCFILE="${PNAME}_$(echo ${PVER} | sed "s:\.:_:g").tar.bz2"
58 SRCDIR="${BUILDDIR}/${PNAME}_$(echo ${PVER} | sed "s:\.:_:g")"
59
60 sminclude python mbuild mtools
61 msetfeature "!check"
62
63 SRC_URI=(
64 sourceforge://${PNAME}/${SRCFILE}
65 mirror://${PNAME}/${SRCFILE}
66 )
67
68 UP2SEPERATOR="_"
69 UP2DATE="updatecmd_sourceforge ${PNAME} | sed 's:_:.:g'"
70
71 # install_boost_lib ${name}
72 install_boost_lib()
73 {
74 local name="$1"
75 local libname
76 [[ -z ${name} ]] && die "no name given"
77 # replace all - with _
78 libname="${name//-/_}"
79
80 minstalldir /usr/$(mlibdir) || die
81
82 # install normal libs if tehy exist
83 if [ -f stage/lib/lib${libname}.so.${PVER} ]
84 then
85 minstallexec stage/lib/lib${libname}.so.${PVER} /usr/$(mlibdir) || die
86 mlink lib${libname}.so.${PVER} /usr/$(mlibdir)/lib${libname}.so || die
87 else
88 echo -e "${COLYELLOW}No normal lib for '${libname}' found!${COLDEFAULT}"
89 fi
90
91 # install multithread libs if they exist
92 if [ -f stage/lib/lib${libname}-mt.so.${PVER} ]
93 then
94 minstallexec stage/lib/lib${libname}-mt.so.${PVER} /usr/$(mlibdir) || die
95 mlink lib${libname}-mt.so.${PVER} /usr/$(mlibdir)/lib${libname}-mt.so || die
96 else
97 echo -e "${COLYELLOW}No multithreading lib for '${libname}' found!${COLDEFAULT}"
98 fi
99
100 minstalldocs LICENSE_1_0.txt || die
101 }
102
103 split_info_boost-atomic()
104 {
105 DESCRIPTION="Run-Time component of boost atomic library."
106 DEPEND="${COMMON_DEPEND}"
107 }
108
109 split_info_boost-chrono()
110 {
111 DESCRIPTION="Run-Time component of boost chrono library."
112 DEPEND="${COMMON_DEPEND}
113 == dev-libs/boost-system-${PVER}"
114 }
115
116 split_info_boost-container()
117 {
118 DESCRIPTION="Run-Time component of boost container library."
119 DEPEND="${COMMON_DEPEND}"
120 }
121
122 split_info_boost-context()
123 {
124 DESCRIPTION="Run-Time component of boost context library."
125 DEPEND="${COMMON_DEPEND}"
126 }
127
128 split_info_boost-coroutine()
129 {
130 DESCRIPTION="Run-Time component of boost coroutine library."
131 DEPEND="${COMMON_DEPEND}"
132 }
133
134 split_info_boost-date-time()
135 {
136 DESCRIPTION="Run-Time component of boost date-time library."
137 DEPEND="${COMMON_DEPEND}"
138 }
139
140 split_info_boost-fiber()
141 {
142 DESCRIPTION="Run-time component of boost fiber library."
143 DEPEND="${COMMON_DEPEND}
144 == dev-libs/boost-system-${PVER}"
145 }
146
147 split_info_boost-filesystem()
148 {
149 DESCRIPTION="Run-Time component of boost filesystem library."
150 DEPEND="${COMMON_DEPEND}
151 == dev-libs/boost-system-${PVER}"
152 }
153
154 split_info_boost-graph()
155 {
156 DESCRIPTION="Run-Time component of boost graph library."
157 DEPEND="${COMMON_DEPEND}
158 ${ICU_DEPEND}
159 == dev-libs/boost-regex-${PVER}"
160 }
161
162 split_info_boost-iostreams()
163 {
164 DESCRIPTION="Run-Time component of boost iostreams library."
165 DEPEND="${COMMON_DEPEND}
166 ${BZIP_DEPEND}
167 ${ZLIB_DEPEND}"
168 }
169
170 split_info_boost-locale()
171 {
172 DESCRIPTION="Run-Time component of boost locale library."
173 DEPEND="${COMMON_DEPEND}
174 ${ICU_DEPEND}
175 == dev-libs/boost-system-${PVER}
176 == dev-libs/boost-chrono-${PVER}
177 == dev-libs/boost-thread-${PVER}"
178 }
179
180 split_info_boost-log()
181 {
182 DESCRIPTION="Run-Time component of boost log library."
183 DEPEND="${COMMON_DEPEND}"
184 }
185
186 split_info_boost-math()
187 {
188 DESCRIPTION="Math functions for boost TR1/C99 library."
189 DEPEND="${COMMON_DEPEND}"
190 }
191
192 split_info_boost-numpy()
193 {
194 DESCRIPTION="Run-time component of boost python numpy extension."
195 DEPEND="${COMMON_DEPEND}
196 ${NUMPY_DEPEND}
197 == dev-libs/boost-python-${PVER}"
198 }
199
200 split_info_boost-program-options()
201 {
202 DESCRIPTION="Run-Time component of boost program_options library."
203 DEPEND="${COMMON_DEPEND}"
204 }
205
206 split_info_boost-python()
207 {
208 DESCRIPTION="Run-Time component of boost python library."
209 DEPEND="${COMMON_DEPEND}
210 ${PYTHON_DEPEND}"
211 }
212
213 split_info_boost-random()
214 {
215 DESCRIPTION="Run-Time component of boost random library."
216 DEPEND="${COMMON_DEPEND}"
217 }
218
219 split_info_boost-regex()
220 {
221 DESCRIPTION="Run-Time component of boost regex library."
222 DEPEND="${COMMON_DEPEND}
223 ${ICU_DEPEND}"
224 }
225
226 split_info_boost-serialization()
227 {
228 DESCRIPTION="Run-Time component of boost serialization library."
229 DEPEND="${COMMON_DEPEND}"
230 }
231
232 split_info_boost-signals()
233 {
234 DESCRIPTION="Run-Time component of boost signals and slots library."
235 DEPEND="${COMMON_DEPEND}"
236 }
237
238 split_info_boost-system()
239 {
240 DESCRIPTION="Run-Time component of boost system support library."
241 DEPEND="${COMMON_DEPEND}"
242 }
243
244 split_info_boost-test()
245 {
246 DESCRIPTION="Run-Time component of boost test library."
247 DEPEND="${COMMON_DEPEND}"
248 }
249
250 split_info_boost-type_erasure()
251 {
252 DESCRIPTION="Run-Time component of boost type erasure library."
253 DEPEND="${COMMON_DEPEND}
254 == dev-libs/boost-system-${PVER}
255 == dev-libs/boost-chrono-${PVER}"
256 }
257
258 split_info_boost-thread()
259 {
260 DESCRIPTION="Run-Time component of boost thead library."
261 DEPEND="${COMMON_DEPEND}
262 == dev-libs/boost-system-${PVER}"
263 }
264
265 split_info_boost-timer()
266 {
267 DESCRIPTION="Run-Time component of boost timer library."
268 DEPEND="${COMMON_DEPEND}
269 == dev-libs/boost-system-${PVER}
270 == dev-libs/boost-chrono-${PVER}"
271 }
272
273 split_info_boost-wave()
274 {
275 DESCRIPTION="Run-Time component of boost C99/C++ pre-processing library."
276 DEPEND="${COMMON_DEPEND}
277 == dev-libs/boost-system-${PVER}
278 == dev-libs/boost-chrono-${PVER}
279 == dev-libs/boost-date-time-${PVER}
280 == dev-libs/boost-filesystem-${PVER}
281 == dev-libs/boost-thread-${PVER}"
282 }
283
284 split_info_boost-doc()
285 {
286 DESCRIPTION="HTML documentation for the Boost C++ libraries."
287 DEPEND=""
288 }
289
290 split_info_boost-examples()
291 {
292 DESCRIPTION="Source examples for the Boost C++ libraries"
293 DEPEND=">= dev-libs/boost-${PVER}"
294 }
295
296 split_info_boost-jam()
297 {
298 PCAT="dev-util"
299 DESCRIPTION="Boost.Jam is an alternative to make based on Jam."
300 DEPEND="${COMMON_DEPEND}"
301 }
302
303 split_info_boost-build()
304 {
305 PCAT="dev-util"
306 DESCRIPTION="Cross platform build system for C++ projects."
307 DEPEND="== dev-util/boost-jam-${PVER}"
308 }
309
310 split_info_boost()
311 {
312 DESCRIPTION="Boost provides free peer-reviewed portable C++ source libraries."
313 DEPEND="== dev-libs/boost-system-${PVER}
314 == dev-libs/boost-regex-${PVER}
315 == dev-libs/boost-atomic-${PVER}
316 == dev-libs/boost-chrono-${PVER}
317 == dev-libs/boost-container-${PVER}
318 == dev-libs/boost-context-${PVER}
319 == dev-libs/boost-coroutine-${PVER}
320 == dev-libs/boost-date-time-${PVER}
321 == dev-libs/boost-fiber-${PVER}
322 == dev-libs/boost-filesystem-${PVER}
323 == dev-libs/boost-graph-${PVER}
324 == dev-libs/boost-iostreams-${PVER}
325 == dev-libs/boost-locale-${PVER}
326 == dev-libs/boost-log-${PVER}
327 == dev-libs/boost-math-${PVER}
328 == dev-libs/boost-numpy-${PVER}
329 == dev-libs/boost-program-options-${PVER}
330 == dev-libs/boost-python-${PVER}
331 == dev-libs/boost-random-${PVER}
332 == dev-libs/boost-test-${PVER}
333 == dev-libs/boost-serialization-${PVER}
334 == dev-libs/boost-signals-${PVER}
335 == dev-libs/boost-test-${PVER}
336 == dev-libs/boost-thread-${PVER}
337 == dev-libs/boost-timer-${PVER}
338 == dev-libs/boost-type_erasure-${PVER}
339 == dev-libs/boost-wave-${PVER}
340 == dev-util/boost-jam-${PVER}
341 == dev-util/boost-build-${PVER}"
342 }
343
344 src_compile()
345 {
346 # bjam builded with gcc-4.2 segfaults without '-fno-strict-aliasing'
347 # see: http://svn.boost.org/trac/boost/ticket/977
348 export CFLAGS="${CFLAGS} -fno-strict-aliasing"
349 export CXXFLAGS="${CXXFLAGS} -fno-strict-aliasing"
350
351 # first build bjam (must use cc not gcc to use our modified cflags)
352 cd ${SRCDIR}/tools/build/src/engine
353 ./build.sh cc || die
354
355 # find bjam exec
356 local bjam=$(find ${SRCDIR}/tools/build/src/engine -name bjam -a -type f)
357
358 # build bcp
359 cd ${SRCDIR}/tools/bcp
360 ${bjam} || die
361
362 # build boost libraries
363 # --layout=tagged will add the "-mt" suffix for multithreaded libraries
364 # and installs includes in /usr/include/boost.
365 # --layout=system no longer adds the -mt suffix for multi-threaded libs.
366 cd ${SRCDIR}
367 ${bjam} \
368 variant=release \
369 debug-symbols=off \
370 runtime-link=shared \
371 link=shared \
372 threading=multi \
373 python=$(mget-python-version) \
374 toolset=gcc \
375 --prefix=${BINDIR}/usr \
376 --layout=system \
377 || die
378
379 # build pyste
380 cd ${SRCDIR}/libs/python/pyste/install
381 python_docompile || die
382 }
383
384 src_install_boost-atomic()
385 {
386 cd ${SRCDIR}
387 install_boost_lib "${PNAME}" || die
388 }
389
390 src_install_boost-chrono()
391 {
392 cd ${SRCDIR}
393 install_boost_lib "${PNAME}" || die
394 }
395
396 src_install_boost-context()
397 {
398 cd ${SRCDIR}
399 install_boost_lib "${PNAME}" || die
400 }
401
402 src_install_boost-container()
403 {
404 cd ${SRCDIR}
405 install_boost_lib "${PNAME}" || die
406 }
407
408 src_install_boost-coroutine()
409 {
410 cd ${SRCDIR}
411 install_boost_lib "${PNAME}" || die
412 }
413
414 src_install_boost-date-time()
415 {
416 cd ${SRCDIR}
417 install_boost_lib "${PNAME}" || die
418 }
419
420 src_install_boost-fiber()
421 {
422 cd ${SRCDIR}
423 install_boost_lib "${PNAME}" || die
424 }
425
426 src_install_boost-filesystem()
427 {
428 cd ${SRCDIR}
429 install_boost_lib "${PNAME}" || die
430 }
431
432 src_install_boost-graph()
433 {
434 cd ${SRCDIR}
435 install_boost_lib "${PNAME}" || die
436 }
437
438 src_install_boost-iostreams()
439 {
440 cd ${SRCDIR}
441 install_boost_lib "${PNAME}" || die
442 }
443
444 src_install_boost-locale()
445 {
446 cd ${SRCDIR}
447 install_boost_lib "${PNAME}" || die
448 }
449
450 src_install_boost-log()
451 {
452 cd ${SRCDIR}
453 install_boost_lib "${PNAME}" || die
454 install_boost_lib "${PNAME}_setup" || die
455 }
456
457 src_install_boost-math()
458 {
459 cd ${SRCDIR}
460 install_boost_lib "${PNAME}_c99" || die
461 install_boost_lib "${PNAME}_c99f" || die
462 install_boost_lib "${PNAME}_c99l" || die
463 install_boost_lib "${PNAME}_tr1" || die
464 install_boost_lib "${PNAME}_tr1f" || die
465 install_boost_lib "${PNAME}_tr1l" || die
466 }
467
468 src_install_boost-numpy()
469 {
470 cd ${SRCDIR}
471 install_boost_lib "${PNAME}" || die
472 }
473
474 src_install_boost-program-options()
475 {
476 cd ${SRCDIR}
477 install_boost_lib "${PNAME}" || die
478 }
479
480 src_install_boost-python()
481 {
482 cd ${SRCDIR}
483 install_boost_lib "${PNAME}" || die
484 }
485
486 src_install_boost-random()
487 {
488 cd ${SRCDIR}
489 install_boost_lib "${PNAME}" || die
490 }
491
492 src_install_boost-regex()
493 {
494 cd ${SRCDIR}
495 install_boost_lib "${PNAME}" || die
496 }
497
498 src_install_boost-serialization()
499 {
500 cd ${SRCDIR}
501 install_boost_lib "${PNAME}" || die
502 install_boost_lib "boost_wserialization" || die
503 }
504
505 src_install_boost-signals()
506 {
507 cd ${SRCDIR}
508 install_boost_lib "${PNAME}" || die
509 }
510
511 src_install_boost-system()
512 {
513 cd ${SRCDIR}
514 install_boost_lib "${PNAME}" || die
515 }
516
517 src_install_boost-test()
518 {
519 cd ${SRCDIR}
520 install_boost_lib "boost_prg_exec_monitor" || die
521 install_boost_lib "boost_unit_test_framework" || die
522 }
523
524 src_install_boost-thread()
525 {
526 cd ${SRCDIR}
527 install_boost_lib "${PNAME}" || die
528 }
529
530 src_install_boost-timer()
531 {
532 cd ${SRCDIR}
533 install_boost_lib "${PNAME}" || die
534 }
535
536 src_install_boost-type_erasure()
537 {
538 cd ${SRCDIR}
539 install_boost_lib "${PNAME}" || die
540 }
541
542 src_install_boost-wave()
543 {
544 cd ${SRCDIR}
545 install_boost_lib "${PNAME}" || die
546 }
547
548 src_install_boost-jam()
549 {
550 cd ${SRCDIR}
551
552 # find bjam exec
553 local bjam=$(find ${SRCDIR}/tools/build/src/engine -name bjam -a -type f)
554 minstallexec ${bjam} || die
555
556 minstalldocs LICENSE_1_0.txt || die
557 }
558
559 src_install_boost-build()
560 {
561 cd ${SRCDIR}
562 minstalldir /usr/share || die
563 mcopy -a tools/build /usr/share/boost-build || die
564
565 # cleanup things provided by other packages
566 mdelete -r /usr/share/boost-build/doc || die
567 mdelete -r /usr/share/boost-build/example || die
568
569 # cleanup uneccessary stuff
570 #mdelete -r /usr/share/boost-build/debian || die
571 mdelete -r /usr/share/boost-build/notes || die
572 #mdelete /usr/share/boost-build/\*.txt || die
573
574 minstalldocs LICENSE_1_0.txt || die
575 #minstalldocs tools/build/*.txt || die
576 minstalldocs tools/build/notes/*.txt || die
577 }
578
579 src_install_boost-doc()
580 {
581 cd ${SRCDIR}
582 minstalldir /usr/share/doc || die
583 mcopy -a doc/html /usr/share/doc/${PNAME}-${PVER} || die
584 }
585
586 src_install_boost-examples()
587 {
588 cd ${SRCDIR}
589 minstalldir /usr/share/doc || die
590 mcopy -a tools/build/example /usr/share/doc/${PNAME}-${PVER} || die
591 minstalldocs LICENSE_1_0.txt || die
592 }
593
594 src_install_boost()
595 {
596 cd ${SRCDIR}
597
598 # find bjam exec
599 local bjam=$(find ${SRCDIR}/tools/build/src/engine -name bjam -a -type f)
600
601 # install boost
602 ${bjam} \
603 variant=release \
604 debug-symbols=off \
605 runtime-link=shared \
606 link=shared \
607 threading=multi \
608 python=$(mget-python-version) \
609 toolset=gcc \
610 --prefix=${BINDIR}/usr \
611 --libdir=${BINDIR}/usr/$(mlibdir) \
612 --layout=system \
613 install \
614 || die
615
616 # install bcp executables
617 minstallexec dist/bin/bcp || die
618
619 # install pyste
620 cd libs/python/pyste/install
621 python_doinstall || die
622
623 # install docs
624 cd ${SRCDIR}
625 minstalldocs LICENSE_1_0.txt README || die
626
627 # cleanup things provided by other packages
628 mdelete /usr/$(mlibdir)/libboost\*.so\* || die
629 mdelete /usr/$(mlibdir)/libboost\*.a || die
630 }