1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 include ${ADK_TOPDIR}/rules.mk
10 PKG_HASH
:= a77c7cc660ec02704c6884fbb20c552d52d60a18f26573c9cee0788bf00ed7e6
11 PKG_DESCR
:= portable c
++ library
12 PKG_SECTION
:= libs
/misc
13 PKG_BUILDDEP
:= python2-host
15 PKG_URL
:= http
://www.boost.org
/
16 PKG_SITES
:= ${MASTER_SITE_SOURCEFORGE
:=boost
/}
19 DISTFILES
:= boost_
$(PKG_EXTRAVER
)_0.
tar.gz
20 WRKDIST
= ${WRKDIR}/${PKG_NAME}_
$(PKG_EXTRAVER
)_0
22 PKG_FLAVOURS_BOOST
:= DATE_TIME GRAPH GRAPH_PARALLEL IOSTREAMS LOG MATH PROGRAM_OPTIONS PYTHON REGEX SERIALIZATION SIGNALS TEST WAVE
24 PKGFD_DATE_TIME
:= with date-time
25 PKGFD_PYTHON
:= with python
26 PKGFB_PYTHON
:= python2
27 PKGFS_PYTHON
:= python2
28 PKGFD_IOSTREAMS
:= with iostreams
29 PKGFD_GRAPH
:= with graph
30 PKGFD_GRAPH_PARALLEL
:= with graph_parallel
31 PKGFD_MATH
:= with math
33 PKGFD_PROGRAM_OPTIONS
:= with program_options
34 PKGFD_REGEX
:= with regex
35 PKGFD_SERIALIZATION
:= with serialization
36 PKGFD_SIGNALS
:= with signals
37 PKGFD_TEST
:= with
test
38 PKGFD_WAVE
:= with wave
40 include ${ADK_TOPDIR}/mk
/package.mk
42 $(eval
$(call PKG_template
,BOOST
,boost
,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
44 include ${ADK_TOPDIR}/mk
/python.mk
48 INSTALL_STYLE
:= manual
50 CONFIGURE_ARGS
+= --target
=$(GNU_TARGET_NAME
) \
51 --host
=$(GNU_TARGET_NAME
) \
52 --build
=$(GNU_HOST_NAME
) \
53 --prefix=${WRKINST}/usr \
54 --ignore-site-config \
58 --without-coroutine2 \
61 ifneq (${ADK_PACKAGE_BOOST_IOSTREAMS},)
62 CONFIGURE_ARGS
+= -sNO_BZIP2
=1 -sZLIB_INCLUDE
=${STAGING_TARGET_DIR}/usr
/include -sZLIB_LIBPATH
=${STAGING_TARGET_DIR}/usr
/lib
64 CONFIGURE_ARGS
+= --without-iostreams
66 ifeq (${ADK_PACKAGE_BOOST_DATE_TIME},)
67 CONFIGURE_ARGS
+= --without-date_time
69 ifeq (${ADK_PACKAGE_BOOST_PYTHON},)
70 CONFIGURE_ARGS
+= --without-python
72 ifeq (${ADK_PACKAGE_BOOST_GRAPH},)
73 CONFIGURE_ARGS
+= --without-graph
75 ifeq (${ADK_PACKAGE_BOOST_LOG},)
76 CONFIGURE_ARGS
+= --without-log
78 ifeq (${ADK_PACKAGE_BOOST_MATH},)
79 CONFIGURE_ARGS
+= --without-math
81 ifeq (${ADK_PACKAGE_BOOST_PROGRAM_OPTIONS},)
82 CONFIGURE_ARGS
+= --without-program_options
84 ifeq (${ADK_PACKAGE_BOOST_REGEX},)
85 CONFIGURE_ARGS
+= --without-regex
87 ifeq (${ADK_PACKAGE_BOOST_SERIALIZATION},)
88 CONFIGURE_ARGS
+= --without-serialization
90 ifeq (${ADK_PACKAGE_BOOST_SIGNALS},)
91 CONFIGURE_ARGS
+= --without-signals
93 ifeq (${ADK_PACKAGE_BOOST_TEST},)
94 CONFIGURE_ARGS
+= --without-test
96 ifeq (${ADK_PACKAGE_BOOST_WAVE},)
97 CONFIGURE_ARGS
+= --without-wave
100 ifeq ($(ADK_TARGET_ARCH
),arm
)
101 BOOST_ARCH
:= architecture
=arm
103 ifeq ($(ADK_TARGET_CPU_MIPS_MIPS32
),y
)
104 BOOST_ARCH
:= architecture
=mips32
106 ifeq ($(ADK_TARGET_CPU_MIPS_MIPS32R2
),y
)
107 BOOST_ARCH
:= architecture
=mips32r2
109 ifeq ($(ADK_TARGET_ARCH
),mips64
)
110 BOOST_ARCH
:= architecture
=mips64
112 ifeq ($(ADK_TARGET_ARCH
),ppc
)
113 BOOST_ARCH
:= architecture
=power
115 ifeq ($(ADK_TARGET_ARCH
),sparc
)
116 BOOST_ARCH
:= architecture
=sparc
118 ifeq ($(ADK_TARGET_ARCH
),x86_64
)
119 BOOST_ARCH
:= architecture
=x86
122 ifeq ($(ADK_TARGET_ARCH
),arm
)
123 BOOST_ABI
:= abi
=aapcs
125 ifeq ($(ADK_TARGET_ARCH
),mips
)
129 # some variables for build
130 GPP_PATH
:= ${TOOLCHAIN_DIR}/usr
/bin
/${GNU_TARGET_NAME}-g
++
131 GPP_VERSION
:= "`${GPP_PATH} -v 2>&1 | tail -1 | awk '{print $$3}'`"
132 BJAM_PATH
:= "`find ${WRKBUILD} -type f -name "bjam
$(EXEEXT
)"`"
133 PYTHON_PATH
:= ${STAGING_HOST_DIR}/usr
/bin
/python
134 PYTHON_INCLUDE
:="`find ${STAGING_TARGET_DIR}/usr/include/ -maxdepth 1 -type d -name "python
*" | head -1`"
135 PYTHON_LIB
:= "`find ${STAGING_TARGET_DIR}/usr/lib/ -maxdepth 1 -type d -name "python
*" | head -1`"
136 USER_JAM
:= ${WRKBUILD}/tools
/build
/user-config.jam
138 ifeq ($(ADK_TARGET_USE_STATIC_LIBS
)$(ADK_TARGET_BINFMT_FLAT
),y
)
145 @echo
"build bjam..."
146 cd
$(WRKBUILD
)/tools
/build
/src
/engine
; .
/build.sh gcc
149 @echo
"build boost library..."
150 echo
"using gcc : ${GPP_VERSION} : ${GPP_PATH} : <compileflags>\"${TARGET_CFLAGS}\" ;" > ${USER_JAM};
151 ifneq (${ADK_PACKAGE_BOOST_PYTHON},)
152 echo
"using python : ${PYTHON_VERSION} : ${PYTHON_PATH} : ${PYTHON_INCLUDE} : ${PYTHON_LIB} ;" >> ${USER_JAM};
161 runtime-link
=$(LINKMODE
) \
165 toolset
=gcc-
${GPP_VERSION} \
166 --user-config
=${USER_JAM} \
168 --disable-long-double \
174 ${INSTALL_DIR} ${IDIR_BOOST}/usr
/lib
175 ${CP} ${WRKINST}/usr
/lib
/*.so
* ${IDIR_BOOST}/usr
/lib
177 include ${ADK_TOPDIR}/mk
/pkg-bottom.mk