You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

546 lines
18 KiB

  1. #
  2. # This is free software, licensed under the GNU General Public License v2.
  3. # See /LICENSE for more information.
  4. #
  5. #
  6. # Original Boost 1.51 Makefile by Mirko Vogt <mirko@openwrt.org>
  7. # Dude, this "boost" is really one of the most crude stuff I ported yet.
  8. #
  9. include $(TOPDIR)/rules.mk
  10. PKG_NAME:=boost
  11. PKG_VERSION:=1.70.0
  12. PKG_SOURCE_VERSION:=1_70_0
  13. PKG_RELEASE:=7
  14. PKG_SOURCE:=$(PKG_NAME)_$(PKG_SOURCE_VERSION).tar.bz2
  15. PKG_SOURCE_URL:=@SF/$(PKG_NAME)/$(PKG_NAME)/$(PKG_VERSION) https://dl.bintray.com/boostorg/release/$(PKG_VERSION)/source/
  16. PKG_HASH:=430ae8354789de4fd19ee52f3b1f739e1fba576f0aded0897c3c2bc00fb38778
  17. PKG_MAINTAINER:=Carlos M. Ferreira <carlosmf.pt@gmail.com>
  18. PKG_LICENSE:=BSL-1.0
  19. PKG_LICENSE_FILES:=LICENSE_1_0.txt
  20. PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)_$(PKG_SOURCE_VERSION)
  21. HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/$(PKG_NAME)_$(PKG_SOURCE_VERSION)
  22. PKG_BUILD_PARALLEL:=1
  23. PKG_USE_MIPS16:=0
  24. include $(INCLUDE_DIR)/package.mk
  25. include $(INCLUDE_DIR)/nls.mk
  26. define Package/boost/Default
  27. SECTION:=libs
  28. CATEGORY:=Libraries
  29. TITLE:=Boost C++ source library
  30. URL:=https://www.boost.org
  31. DEPENDS:=+libstdcpp +libpthread +librt
  32. endef
  33. define Package/boost/description
  34. This package provides the Boost v1.70.0 libraries.
  35. Boost is a set of free, peer-reviewed, portable C++ source libraries.
  36. -----------------------------------------------------------------------------
  37. | Warning |
  38. | In order to build all of the Boost Libraries, it is necessary |
  39. | to use, at least, GCC version 5 (C++14 support) and, it is necessary to |
  40. | compile the kernel with Full Language Support. |
  41. | Without these requirerements, the following libs will not be available: |
  42. | - Boost.Locale |
  43. | - Boost.Coroutine2 (header-only library - requires C++11) |
  44. | - Boost.Fiber (requires C++14) |
  45. -----------------------------------------------------------------------------
  46. This package provides the following run-time libraries:
  47. - atomic
  48. - chrono
  49. - container
  50. - context
  51. - contract
  52. - coroutine (Deprecated - use Coroutine2)
  53. - - coroutine2 (Requires GCC v5 and up)
  54. - date_time
  55. - exception
  56. - filesystem
  57. - fiber (Requires GCC v5 and up)
  58. - graph
  59. - - graph-parallel
  60. - iostreams
  61. - locale (Requires kernel being compiled with full language support)
  62. - log
  63. - math
  64. - program_options
  65. - python
  66. - python3
  67. - random
  68. - regex
  69. - serialization and wserialization
  70. - stackstrace
  71. - system
  72. - thread
  73. - timer
  74. - type_erasure
  75. - wave
  76. There are many more header-only libraries supported by Boost.
  77. See more at http://www.boost.org/doc/libs/1_70_0/
  78. endef
  79. PKG_BUILD_DEPENDS:=boost/host PACKAGE_python:python PACKAGE_python3:python3
  80. include ../../lang/python/python-version.mk
  81. BOOST_PYTHON_VER=$(PYTHON_VERSION)
  82. include ../../lang/python/python3-version.mk
  83. BOOST_PYTHON3_VER=$(PYTHON3_VERSION)
  84. BOOST_LIBS =
  85. define Package/boost-libs
  86. $(call Package/boost/Default)
  87. TITLE+= (all libs)
  88. DEPENDS+= $(BOOST_DEPENDS)
  89. HIDDEN:=1
  90. endef
  91. define Package/boost-libs/description
  92. This meta package contains only dependencies to the other libraries from
  93. the boost libraries collection.
  94. endef
  95. # Create a meta-package of dependent libraries (for ALL)
  96. define Package/boost-libs/install
  97. true
  98. endef
  99. define Package/boost/install
  100. true
  101. endef
  102. define Package/boost
  103. $(call Package/boost/Default)
  104. TITLE+= packages
  105. endef
  106. define Package/boost/config
  107. menu "Select Boost Options"
  108. depends on PACKAGE_boost
  109. comment "Boost compilation options."
  110. choice
  111. prompt "Compile Visibility."
  112. default boost-compile-visibility-hidden
  113. help
  114. Choose Boost symbols compilation visibility.
  115. -> Global:
  116. - a.k.a. "default" in gcc documentation. Global symbols are considered public,
  117. they are exported from shared libraries and can be redefined by another
  118. shared library or executable.
  119. -> Protected:
  120. - a.k.a. "symbolic". Protected symbols are exported from shared libraries but
  121. cannot be redefined by another shared library or executable. This mode is
  122. not supported on some platforms, for example OS X.
  123. -> Hidden:
  124. - Hidden symbols are not exported from shared libraries and cannot be
  125. redefined by a different shared library or executable loaded in a process.
  126. In this mode, public symbols have to be explicitly marked in the source code
  127. to be exported from shared libraries. This is the recommended mode.
  128. config boost-compile-visibility-global
  129. bool "Global"
  130. config boost-compile-visibility-protected
  131. bool "Protected"
  132. config boost-compile-visibility-hidden
  133. bool "Hidden"
  134. endchoice
  135. choice
  136. prompt "Compile Boost libraries."
  137. default boost-static-and-shared-libs
  138. help
  139. Choose which version to compile.
  140. -> Shared:
  141. - Only Shared libs will be compiled.
  142. -> Static:
  143. - Only Static libs will be compiled.
  144. -> Both:
  145. - Both Static and Shared libs will be compiled.
  146. config boost-shared-libs
  147. bool "Shared"
  148. config boost-static-libs
  149. bool "Static"
  150. config boost-static-and-shared-libs
  151. bool "Both"
  152. endchoice
  153. choice
  154. prompt "Selects Boost Runtime linkage."
  155. default boost-runtime-shared
  156. help
  157. Choose which C and C++ runtimes to use:
  158. -> Use Shared runtimes.
  159. -> Use Static runtimes.
  160. - Not available if Shared libs are to be built.
  161. -> Use both runtimes.
  162. - Not available if Shared libs are to be built.
  163. - Two separate versions of Boost are built, linking each to a different runtime.
  164. - This option requires "Use tagged names" option to be active.
  165. config boost-runtime-shared
  166. bool "Shared"
  167. config boost-runtime-static
  168. depends on !boost-shared-libs&&!boost-static-and-shared-libs
  169. bool "Static"
  170. config boost-runtime-static-and-shared
  171. depends on boost-use-name-tags&&!boost-shared-libs&&!boost-static-and-shared-libs
  172. bool "Both"
  173. endchoice
  174. choice
  175. prompt "Select a Variant."
  176. default boost-variant-release
  177. help
  178. Chooses which boost variant should be selected:
  179. -> Release: Optimizes Boost for release.
  180. - Optimization: Speed; Debug Symbols: Off; Inlining: Full; Runtime Debugging: Off.
  181. -> Debug:
  182. - Optimization: Off; Debug Symbols: On; Inlining: Off; Runtime Debugging: On.
  183. -> Profile:
  184. - Profiling: On; Debug Symbols: On.
  185. config boost-variant-release
  186. bool "Release"
  187. config boost-variant-debug
  188. bool "Debug"
  189. config boost-variant-profile
  190. bool "Profile"
  191. endchoice
  192. config boost-use-name-tags
  193. bool "Use tagged names."
  194. help
  195. Add name tags the lib files, to diferentiate each library version:
  196. "-mt" for multi-threading.
  197. "-d" for debugging.
  198. "-s" for runtime static link".
  199. Might break compatibility with libraries that expect boost libs with default names.
  200. default n
  201. config boost-single-thread
  202. depends on boost-use-name-tags
  203. bool "Single thread Support."
  204. help
  205. Compile Boost libraries in single-thread mode.
  206. default n
  207. config boost-build-type-complete
  208. depends on boost-use-name-tags
  209. bool "Complete Boost Build."
  210. help
  211. Builds both release and debug libs. It will take much longer to compile.
  212. default n
  213. endmenu
  214. menu "Select Boost libraries"
  215. depends on PACKAGE_boost
  216. comment "Libraries"
  217. config boost-libs-all
  218. bool "Include all Boost libraries."
  219. default m if ALL
  220. select PACKAGE_boost-libs
  221. select boost-test-pkg
  222. select boost-coroutine2
  223. select boost-graph-parallel
  224. # Invisible config dependency
  225. config boost-fiber-exclude
  226. bool
  227. default y if (CPU_TYPE=mips32 || CPU_TYPE=mips64)
  228. config boost-test-pkg
  229. bool "Boost test package."
  230. default m if ALL
  231. select PACKAGE_boost-test
  232. config boost-coroutine2
  233. depends on !GCC_VERSION_4_8
  234. bool "Boost couroutine2 support."
  235. select PACKAGE_boost-coroutine
  236. default n
  237. config boost-graph-parallel
  238. bool "Boost parallel graph support."
  239. select PACKAGE_boost-graph
  240. default n
  241. $(foreach lib,$(BOOST_LIBS), \
  242. config PACKAGE_boost-$(lib)
  243. prompt "Boost $(lib) $(if $(findstring python,$(lib)),$(paren_left)v$(if $(findstring 3,$(lib)),$(BOOST_PYTHON3_VER),$(BOOST_PYTHON_VER))$(paren_right) ,)library."
  244. default m if ALL
  245. $(if $(findstring locale,$(lib)),depends on BUILD_NLS,)\
  246. $(if $(findstring python,$(lib)),depends on PACKAGE_$(lib),)\
  247. $(if $(findstring fiber,$(lib)),depends on (CPU_TYPE!=mips32 && CPU_TYPE!=mips64),)
  248. )
  249. endmenu
  250. endef
  251. PKG_CONFIG_DEPENDS:= CONFIG_PACKAGE_boost-test
  252. define Package/boost-test
  253. $(call Package/boost/Default)
  254. TITLE+= (test)
  255. HIDDEN:=1
  256. DEPENDS+=+boost-system +boost-timer
  257. endef
  258. define Build/Configure
  259. endef
  260. # 1: short name
  261. # 2: dependencies on other boost libraries (short name)
  262. # 3: dependencies on other packages
  263. # 4: conditional/inward dependencies
  264. define DefineBoostLibrary
  265. BOOST_DEPENDS+= +$(if $(4),$(4):boost-$(1),boost-$(1))
  266. PKG_CONFIG_DEPENDS+= CONFIG_PACKAGE_boost-$(1)
  267. BOOST_LIBS+= $(1)
  268. define Package/boost-$(1)
  269. $(call Package/boost/Default)
  270. TITLE+= ($(1))
  271. DEPENDS+= $$(foreach lib,$(2),+boost-$$(lib)) $(3) $(if $(4),@$(4),)
  272. HIDDEN:=1
  273. endef
  274. define Package/boost-$(1)/description
  275. This package contains the Boost $(1) library.
  276. endef
  277. endef
  278. $(eval $(call DefineBoostLibrary,atomic,system,))
  279. $(eval $(call DefineBoostLibrary,chrono,system,))
  280. $(eval $(call DefineBoostLibrary,container,,))
  281. $(eval $(call DefineBoostLibrary,context,chrono system thread,))
  282. $(eval $(call DefineBoostLibrary,contract,system,))
  283. $(eval $(call DefineBoostLibrary,coroutine,system chrono context thread,))
  284. $(eval $(call DefineBoostLibrary,date_time,,))
  285. #$(eval $(call DefineBoostLibrary,exception,,))
  286. $(eval $(call DefineBoostLibrary,fiber,coroutine filesystem,,!boost-fiber-exclude))
  287. $(eval $(call DefineBoostLibrary,filesystem,system,))
  288. $(eval $(call DefineBoostLibrary,graph,regex,))
  289. $(eval $(call DefineBoostLibrary,iostreams,,+zlib +liblzma +libbz2 +zstd))
  290. $(eval $(call DefineBoostLibrary,locale,system,$(ICONV_DEPENDS),BUILD_NLS))
  291. $(eval $(call DefineBoostLibrary,log,system chrono date_time thread filesystem regex,))
  292. $(eval $(call DefineBoostLibrary,math,,))
  293. #$(eval $(call DefineBoostLibrary,mpi,,)) # OpenMPI does no exist in OpenWRT at this time.
  294. $(eval $(call DefineBoostLibrary,program_options,,))
  295. $(eval $(call DefineBoostLibrary,python,,,PACKAGE_python))
  296. $(eval $(call DefineBoostLibrary,python3,,,PACKAGE_python3))
  297. $(eval $(call DefineBoostLibrary,random,system,))
  298. $(eval $(call DefineBoostLibrary,regex,,))
  299. $(eval $(call DefineBoostLibrary,serialization,,))
  300. $(eval $(call DefineBoostLibrary,wserialization,serialization,))
  301. $(eval $(call DefineBoostLibrary,stacktrace,,))
  302. $(eval $(call DefineBoostLibrary,system,,))
  303. $(eval $(call DefineBoostLibrary,thread,system chrono atomic,))
  304. $(eval $(call DefineBoostLibrary,timer,chrono))
  305. $(eval $(call DefineBoostLibrary,type_erasure,chrono system thread,))
  306. $(eval $(call DefineBoostLibrary,wave,date_time thread filesystem,))
  307. include $(INCLUDE_DIR)/host-build.mk
  308. define Host/Compile
  309. # b2 does not provide a configure-script nor a Makefile
  310. ( cd $(HOST_BUILD_DIR)/tools/build/src/engine ; ./build.sh gcc )
  311. ( cd $(HOST_BUILD_DIR) ; \
  312. ./bootstrap.sh --prefix=$(STAGING_DIR_HOSTPKG) \
  313. --with-libraries=atomic,chrono,date_time,filesystem,headers,thread,system ;\
  314. ./b2 --ignore-site-config install )
  315. endef
  316. CONFIGURE_PREFIX:=$(PKG_INSTALL_DIR)
  317. TARGET_LDFLAGS += -pthread -lrt
  318. TARGET_CFLAGS += \
  319. $(if $(CONFIG_SOFT_FLOAT),-DBOOST_NO_FENV_H) -fPIC
  320. EXTRA_CXXFLAGS += $(if $(CONFIG_GCC_USE_VERSION_5),-std=gnu++14,-std=gnu++17)
  321. ifneq ($(findstring mips,$(ARCH)),)
  322. BOOST_ABI = o32
  323. ifneq ($(findstring 64,$(ARCH)),)
  324. BOOST_ABI = o64
  325. endif
  326. else ifneq ($(findstring arm,$(ARCH)),)
  327. BOOST_ABI = aapcs
  328. else ifeq ($(ARCH),aarch64)
  329. BOOST_ABI = aapcs
  330. else
  331. BOOST_ABI = sysv
  332. endif
  333. comma := ,
  334. define Build/Compile
  335. $(info Selected Boost API $(BOOST_ABI) for architecture $(ARCH) and cpu type $(CONFIG_CPU_TYPE) $(if $(CONFIG_CPU_SUBTYPE),and cpu subtype $(CONFIG_CPU_SUBTYPE),))
  336. ( cd $(PKG_BUILD_DIR) ; \
  337. echo "using gcc : $(GCC_VERSION) : $(GNU_TARGET_NAME)-gcc : <compileflags>\"$(TARGET_CFLAGS)\" <cxxflags>\"$(TARGET_CXXFLAGS) $(EXTRA_CXXFLAGS)\" <linkflags>\"$(TARGET_LDFLAGS)\" ;" > \
  338. tools/build/src/user-config.jam ; \
  339. b2 \
  340. $(CONFIGURE_ARGS) \
  341. --ignore-site-config \
  342. --toolset=gcc abi=$(BOOST_ABI) \
  343. --disable-long-double \
  344. $(if $(CONFIG_boost-compile-visibility-global), visibility=global,) \
  345. $(if $(CONFIG_boost-compile-visibility-protected), visibility=protected,) \
  346. $(if $(CONFIG_boost-compile-visibility-hidden), visibility=hidden,) \
  347. $(if $(CONFIG_boost-variant-release), variant=release,) \
  348. $(if $(CONFIG_boost-variant-debug), variant=debug,) \
  349. $(if $(CONFIG_boost-variant-profile), variant=profile,) \
  350. $(if $(CONFIG_boost-use-name-tags),--layout=tagged,--layout=system) \
  351. $(if $(CONFIG_boost-build-type-complete),--build-type=complete,--build-type=minimal) \
  352. $(if $(CONFIG_boost-shared-libs),link=shared,) \
  353. $(if $(CONFIG_boost-static-libs),link=static,) \
  354. $(if $(CONFIG_boost-static-and-shared-libs),link=static$(comma)shared,) \
  355. $(if $(CONFIG_boost-runtime-shared),runtime-link=shared,) \
  356. $(if $(CONFIG_boost-runtime-static),runtime-link=static,) \
  357. $(if $(CONFIG_boost-runtime-static-and-shared),runtime-link=shared$(comma)static,) \
  358. $(if $(CONFIG_boost-single-thread),threading=single,) \
  359. threading=multi \
  360. --without-mpi \
  361. $(if $(CONFIG_boost-graph-parallel),,--without-graph_parallel) \
  362. $(if $(CONFIG_PACKAGE_boost-test),,--without-test) \
  363. --without-python \
  364. $(foreach lib,$(BOOST_LIBS), \
  365. $(if $(findstring python,$(lib)),, \
  366. $(if $(CONFIG_PACKAGE_boost-$(lib)),, \
  367. $(if $(findstring wserialization,$(lib)),,--without-$(lib)) \
  368. ) \
  369. ) \
  370. ) \
  371. $(if $(CONFIG_PACKAGE_boost-locale),boost.locale.iconv=on -sICONV_PATH=$(ICONV_PREFIX) boost.locale.posix=$(if $(USE_MUSL),on,off), \
  372. boost.locale.iconv=off) \
  373. \
  374. $(if $(CONFIG_PACKAGE_boost-iostreams),-sNO_BZIP2=1 -sZLIB_INCLUDE=$(STAGING_DIR)/usr/include \
  375. -sZLIB_LIBPATH=$(STAGING_DIR)/usr/lib) \
  376. install ;\
  377. $(if $(CONFIG_PACKAGE_boost-python), \
  378. echo "using gcc : $(GCC_VERSION) : $(GNU_TARGET_NAME)-gcc : <compileflags>\"$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include/python$(BOOST_PYTHON_VER)/ \" <cxxflags>\"$(TARGET_CXXFLAGS) $(EXTRA_CXXFLAGS)\" <linkflags>\"$(TARGET_LDFLAGS)\" ;" > \
  379. tools/build/src/user-config.jam ; \
  380. echo "using python : $(BOOST_PYTHON_VER) : : $(STAGING_DIR)/usr/include/python$(BOOST_PYTHON_VER)/ : $(STAGING_DIR)/usr/lib/libpython$(BOOST_PYTHON_VER).so ;" >> \
  381. tools/build/src/user-config.jam; \
  382. b2 -a \
  383. $(CONFIGURE_ARGS) \
  384. --ignore-site-config \
  385. --toolset=gcc abi=$(BOOST_ABI) \
  386. --disable-long-double \
  387. $(if $(CONFIG_boost-variant-release), variant=release,) \
  388. $(if $(CONFIG_boost-variant-debug), variant=debug,) \
  389. $(if $(CONFIG_boost-variant-profile), variant=profile,) \
  390. $(if $(CONFIG_boost-use-name-tags),--layout=tagged,--layout=system) \
  391. $(if $(CONFIG_boost-build-type-complete),--build-type=complete,--build-type=minimal) \
  392. $(if $(CONFIG_boost-shared-libs),link=shared,) \
  393. $(if $(CONFIG_boost-static-libs),link=static,) \
  394. $(if $(CONFIG_boost-static-and-shared-libs),link=static$(comma)shared,) \
  395. $(if $(CONFIG_boost-runtime-shared),runtime-link=shared,) \
  396. $(if $(CONFIG_boost-runtime-static),runtime-link=static,) \
  397. $(if $(CONFIG_boost-runtime-static-and-shared),runtime-link=shared$(comma)static,) \
  398. $(if $(CONFIG_boost-single-thread),threading=single,) \
  399. threading=multi \
  400. --with-python \
  401. install ;\
  402. ,) \
  403. $(if $(CONFIG_PACKAGE_boost-python3), \
  404. echo "using gcc : $(GCC_VERSION) : $(GNU_TARGET_NAME)-gcc : <compileflags>\"$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include/python$(BOOST_PYTHON3_VER)/ \" <cxxflags>\"$(TARGET_CXXFLAGS) $(EXTRA_CXXFLAGS)\" <linkflags>\"$(TARGET_LDFLAGS)\" ;" > \
  405. tools/build/src/user-config.jam ; \
  406. echo "using python : $(BOOST_PYTHON3_VER) : : $(STAGING_DIR)/usr/include/python$(BOOST_PYTHON3_VER)/ : $(STAGING_DIR)/usr/lib/libpython$(BOOST_PYTHON3_VER).so ;" >> \
  407. tools/build/src/user-config.jam; \
  408. b2 -a \
  409. $(CONFIGURE_ARGS) \
  410. --ignore-site-config \
  411. --toolset=gcc abi=$(BOOST_ABI) \
  412. --disable-long-double \
  413. $(if $(CONFIG_boost-variant-release), variant=release,) \
  414. $(if $(CONFIG_boost-variant-debug), variant=debug,) \
  415. $(if $(CONFIG_boost-variant-profile), variant=profile,) \
  416. $(if $(CONFIG_boost-use-name-tags),--layout=tagged,--layout=system) \
  417. $(if $(CONFIG_boost-build-type-complete),--build-type=complete,--build-type=minimal) \
  418. $(if $(CONFIG_boost-shared-libs),link=shared,) \
  419. $(if $(CONFIG_boost-static-libs),link=static,) \
  420. $(if $(CONFIG_boost-static-and-shared-libs),link=static$(comma)shared,) \
  421. $(if $(CONFIG_boost-runtime-shared),runtime-link=shared,) \
  422. $(if $(CONFIG_boost-runtime-static),runtime-link=static,) \
  423. $(if $(CONFIG_boost-runtime-static-and-shared),runtime-link=shared$(comma)static,) \
  424. $(if $(CONFIG_boost-single-thread),threading=single,) \
  425. threading=multi \
  426. --with-python \
  427. install ;\
  428. ,) \
  429. )
  430. endef
  431. define Build/InstallDev
  432. $(INSTALL_DIR) \
  433. $(1)/usr/include/boost/
  434. $(CP) \
  435. $(PKG_INSTALL_DIR)/include/boost/* \
  436. $(1)/usr/include/boost/ \
  437. # copies _all_ header files - independent of <--with-library>-argument above
  438. $(INSTALL_DIR) $(1)/usr/lib
  439. # copies all cmake files, compiled archive and shared object files
  440. $(CP) -v $(PKG_INSTALL_DIR)/lib/{*.{a,so*},cmake} $(1)/usr/lib/ || :
  441. endef
  442. define Host/Install
  443. $(INSTALL_DIR) $(STAGING_DIR_HOSTPKG)/bin
  444. $(CP) $(HOST_BUILD_DIR)/tools/build/src/engine/bin.*/b2 $(STAGING_DIR_HOSTPKG)/bin/
  445. endef
  446. define Package/boost/Default/install
  447. $(INSTALL_DIR) $(1)/usr/lib
  448. $(if $(findstring python,$(2)), $(if $(findstring 3,$(2)), \
  449. $(CP) $(PKG_INSTALL_DIR)/lib/libboost_python3*.so* $(1)/usr/lib/ , \
  450. $(CP) $(PKG_INSTALL_DIR)/lib/libboost_python2*.so* $(1)/usr/lib/ ), \
  451. $(CP) $(PKG_INSTALL_DIR)/lib/libboost_$(2)*.so* $(1)/usr/lib/ )
  452. endef
  453. define Package/boost-test/install
  454. $(INSTALL_DIR) $(1)/usr/lib
  455. $(CP) $(PKG_INSTALL_DIR)/lib/libboost_unit_test_framework*.so* $(1)/usr/lib/
  456. $(CP) $(PKG_INSTALL_DIR)/lib/libboost_prg_exec_monitor*.so* $(1)/usr/lib/
  457. endef
  458. define BuildBoostLibrary
  459. define Package/boost-$(1)/install
  460. $(call Package/boost/Default/install,$$(1),$(1))
  461. endef
  462. $$(eval $$(call BuildPackage,boost-$(1)))
  463. endef
  464. $(eval $(call HostBuild))
  465. $(foreach lib,$(BOOST_LIBS),$(eval $(call BuildBoostLibrary,$(lib))))
  466. $(eval $(call BuildPackage,boost-test))
  467. $(eval $(call BuildPackage,boost-libs))
  468. $(eval $(call BuildPackage,boost))