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.

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