wok-next view libboost/receipt @ rev 20883

Check Repology info from h* to l* packages
author Aleksej Bobylev <al.bobylev@gmail.com>
date Wed Jul 11 02:06:34 2018 +0300 (2018-07-11)
parents 802e7ed99164
children a3c581bf52b8
line source
1 # SliTaz package receipt v2.
3 PACKAGE="libboost"
4 VERSION="1.66.0"
5 CATEGORY="meta"
6 SHORT_DESC="Boost C++ libraries"
7 MAINTAINER="chadi.elahmad@gmail.com"
8 LICENSE="MIT"
9 WEB_SITE="http://www.boost.org/"
10 LFS="http://www.linuxfromscratch.org/blfs/view/stable/general/boost.html"
11 REPOLOGY="boost"
13 TARBALL="boost-$VERSION.tar.bz2"
14 WGET_URL="https://dl.bintray.com/boostorg/release/$VERSION/source/boost_${VERSION//./_}.tar.bz2"
16 BUILD_DEPENDS="icu-dev zlib-dev bzip2-dev python-dev"
17 l="libboost"
18 SPLIT="$l-atomic $l-chrono $l-container $l-context $l-coroutine $l-date-time \
19 $l-fiber $l-filesystem $l-graph $l-iostreams $l-locale $l-log $l-math \
20 $l-math-tr1 $l-prg-exec-monitor $l-program-options $l-python $l-random \
21 $l-regex $l-serialization $l-signals $l-system $l-thread $l-timer \
22 $l-type-erasure $l-unit-test-framework $l-wave $l-wserialization $l-doc $l-dev"
24 # About splitting: there's complex relationships between header files.
25 # Previously, for example, the /usr/include/boost/chrono/* files were packed
26 # into libboost-chrono-dev package. And so on for many /usr/include/boost/*/
27 #
28 # But, for example:
29 # 1. /usr/include/boost/chrono/config.hpp (former libboost-chrono-dev package)
30 # includes <boost/config.hpp> (libboost-dev package)
31 # 2. /usr/include/boost/compute/detail/duration.hpp (former libboost-dev package)
32 # includes <boost/chrono/duration.hpp> (libboost-chrono package)
33 #
34 # And many other circular dependencies between libboost-dev and libboost-*-dev
35 # packages.
36 #
37 # Solution: make single solid big libboost-dev package with all development
38 # files.
39 #
40 # How to change dependencies of packages that depends on libboost: substitute
41 # libboost-x-dev by the pair libboost-x and libboost-dev.
44 compile_rules() {
45 ./bootstrap.sh --prefix=$install/usr &&
46 ./b2 stage threading=multi link=shared &&
47 ./b2 install threading=multi link=shared || return 1
49 cook_pick_docs doc/html/*
51 find $install -name '*.hpp' -exec chmod 644 '{}' \;
52 }
54 genpkg_rules() {
55 DEPENDS=" "
56 case $PACKAGE in
57 *-chrono) DEPENDS="$l-system";;
58 *-coroutine) DEPENDS="$l-chrono $l-context $l-system $l-thread";;
59 *-fiber) DEPENDS="$l-context $l-filesystem $l-system";;
60 *-filesystem) DEPENDS="$l-system";;
61 *-graph) DEPENDS="$l-regex icu libicu";;
62 *-iostreams) DEPENDS="bzlib zlib";;
63 *-locale) DEPENDS="$l-chrono $l-system $l-thread icu libicu";;
64 *-log) DEPENDS="$l-atomic $l-chrono $l-date-time $l-filesystem $l-regex $l-system $l-thread icu libicu";;
65 *-prg-exec-monitor) DEPENDS="$l-system $l-timer";;
66 *-random) DEPENDS="$l-system";;
67 *-regex) DEPENDS="icu libicu";;
68 *-thread) DEPENDS="$l-system";;
69 *-timer) DEPENDS="$l-chrono $l-system";;
70 *-type-erasure) DEPENDS="$l-chrono $l-system $l-thread";;
71 *-unit-test-framework) DEPENDS="$l-system $l-timer";;
72 *-wave) DEPENDS="$l-chrono $l-date-time $l-filesystem $l-system $l-thread";;
73 *-wserialization) DEPENDS="$l-serialization";;
74 esac
76 case $PACKAGE in
77 libboost)
78 DEPENDS="$l-date-time $l-iostreams $l-regex $l-serialization \
79 $l-system $l-thread"
80 CAT="meta|meta-package to install base modules"
81 ;;
82 *-doc)
83 copy doc/
84 CAT="doc|documentation"
85 ;;
86 libboost-dev)
87 copy @dev @rm
88 ;;
89 *)
90 p=${PACKAGE#*-}
91 copy libboost_${p//-/_}*.so*
92 CAT="libdevel|${PACKAGE#*-}"
93 ;;
94 esac
96 case $PACKAGE in
97 *-math) rm -f $fs/usr/lib/*math_tr1*.so*;;
98 esac
99 }