2015-02-07 19:37:14 +01:00
#
2017-01-05 01:49:50 +01:00
# Copyright (C) 2015-2017 OpenWrt.org
2015-02-07 19:37:14 +01:00
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
#
# Original Boost 1.51 Makefile by Mirko Vogt <mirko@openwrt.org>
# Dude, this "boost" is really one of the most crude stuff I ported yet.
#
i n c l u d e $( TOPDIR ) / r u l e s . m k
2015-02-20 16:00:27 +01:00
i n c l u d e $( INCLUDE_DIR ) / n l s . m k
i n c l u d e $( INCLUDE_DIR ) / t a r g e t . m k
2015-02-07 19:37:14 +01:00
PKG_NAME := boost
2017-01-05 01:49:50 +01:00
PKG_VERSION := 1.63.0
PKG_SOURCE_VERSION := 1_63_0
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
PKG_RELEASE := 3
2016-10-04 22:30:29 +02:00
2016-10-10 00:01:07 +02:00
PKG_SOURCE := $( PKG_NAME) _$( PKG_SOURCE_VERSION) .tar.bz2
PKG_SOURCE_URL := https://sourceforge.net/projects/boost/files/boost/$( PKG_VERSION)
2016-10-04 22:30:29 +02:00
PKG_BUILD_DIR := $( BUILD_DIR) /$( PKG_NAME) _$( PKG_SOURCE_VERSION)
HOST_BUILD_DIR := $( BUILD_DIR_HOST) /$( PKG_NAME) _$( PKG_SOURCE_VERSION)
2017-01-05 01:49:50 +01:00
PKG_MD5SUM := beae2529f759f6b3bf3f4969a19c2e9d6f0c503edcb2de4a61d1428519fcb3b0
2015-02-07 19:37:14 +01:00
PKG_LICENSE := Boost Software License <http://www.boost.org/users/license.html>
2015-03-02 19:21:30 +01:00
PKG_MAINTAINER := Carlos M. Ferreira <carlosmf.pt@gmail.com>
2015-02-07 19:37:14 +01:00
PKG_BUILD_PARALLEL := 0
PKG_USE_MIPS16 := 0
i n c l u d e $( INCLUDE_DIR ) / p a c k a g e . m k
i n c l u d e $( INCLUDE_DIR ) / h o s t - b u i l d . m k
2015-11-19 01:09:50 +01:00
2015-02-07 19:37:14 +01:00
d e f i n e P a c k a g e / b o o s t / D e f a u l t
SECTION:= libs
CATEGORY:= Libraries
2015-03-02 19:21:30 +01:00
TITLE:= Boost C++ source library
2015-02-07 19:37:14 +01:00
URL:= http://www.boost.org
2015-11-19 01:09:50 +01:00
DEPENDS:= +libstdcpp +libpthread +librt
2015-02-07 19:37:14 +01:00
e n d e f
2015-11-19 01:09:50 +01:00
d e f i n e P a c k a g e / b o o s t / d e s c r i p t i o n
2017-01-05 01:49:50 +01:00
T h i s p a c k a g e p r o v i d e s t h e B o o s t v 1 . 6 3 l i b r a r i e s .
2015-11-19 01:09:50 +01:00
B o o s t i s a s e t o f f r e e , p e e r - r e v i e w e d , p o r t a b l e C + + s o u r c e l i b r a r i e s .
2016-10-10 00:01:07 +02:00
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
| W a r n i n g |
| I n o r d e r t o b u i l d a l l o f t h e B o o s t L i b r a r i e s , i t i s n e c e s s a r y |
| t o u s e , a t l e a s t , G C C v e r s i o n 5 ( C + + 1 4 s u p p o r t ) a n d , i t i s n e c e s s a r y t o |
| c o m p i l e t h e k e r n e l w i t h F u l l L a n g u a g e S u p p o r t . |
| Without these requirerements, the following libs will not be available : |
| - B o o s t . L o c a l e |
| - B o o s t . C o r o u t i n e 2 |
| - B o o s t . F i b e r |
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
| A l s o , d u e t o h a r d w a r e c o n t r a i n t s , t h e f o l l o w i n g l i b s a n d t h o s e t h a t a r e |
| d e p e n d e n t , a r e d i s a b l e d f o r s o m e T a r g e t s . |
| - B o o s t . C o n t e x t |
| - D i s a b l e d f o r - > a v r 3 2 , o c t e o n a n d n e t l o g i c . |
| - B o o s t . F i b e r |
| - D i s a b l e d f o r - > a r 7 , r b 5 3 2 , b r c m 6 3 x x . s m p , b r c m 6 3 x x , b r c m 4 7 x x , |
| b r c m 4 7 x x . l e g a c y , b r c m 2 7 0 8 _ b c m 2 7 0 8 , a u 1 0 0 0 , a t h 2 5 , |
| a d m 8 6 6 8 a n d a d m 5 1 2 0 . |
2016-10-10 00:01:07 +02:00
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2016-05-16 01:56:57 +02:00
This package provides the following run-time libraries :
2015-11-25 11:35:47 +01:00
- atomic
- chrono
- container
- context
2016-10-10 00:01:07 +02:00
- coroutine ( Deprecated - use Coroutine2)
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
- - coroutine2 ( Requires GCC v5 or newer)
2015-11-25 11:35:47 +01:00
- date_time
- exception
- filesystem
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
- fiber ( Requires GCC v5 or newer)
2015-11-25 11:35:47 +01:00
- graph
- - graph-parallel
- iostreams
2016-10-10 00:01:07 +02:00
- locale ( Requires kernel being compiled with full language support)
2015-11-25 11:35:47 +01:00
- log
- math
- program_options
- python
- python3
- random
- regex
- serialization
- signals
- system
- thread
- timer
- wave
2016-10-10 00:01:07 +02:00
T h e r e a r e m a n y m o r e h e a d e r - o n l y l i b r a r i e s s u p p o r t e d b y B o o s t .
2017-01-05 01:49:50 +01:00
See more at http : //www .boost .org /doc /libs /1_ 63_ 0/
2015-02-07 19:37:14 +01:00
e n d e f
2016-11-09 00:04:47 +01:00
PKG_BUILD_DEPENDS := boost/host PACKAGE_python:python PACKAGE_python3:python3
2016-11-07 23:05:52 +01:00
2015-03-02 19:21:30 +01:00
BOOST_LIBS =
2015-02-07 19:37:14 +01:00
2015-03-02 19:21:30 +01:00
d e f i n e P a c k a g e / b o o s t - l i b s
$( call Package /boost /Default )
TITLE += ( all libs)
DEPENDS += $( BOOST_DEPENDS)
HIDDEN:= 1
2015-02-07 19:37:14 +01:00
e n d e f
2015-03-02 19:21:30 +01:00
d e f i n e P a c k a g e / b o o s t - l i b s / d e s c r i p t i o n
This meta package contains only dependencies to the other libraries from
the boost libraries collection.
2015-02-07 19:37:14 +01:00
e n d e f
2015-03-02 19:21:30 +01:00
# Create a meta-package of dependent libraries (for ALL)
d e f i n e P a c k a g e / b o o s t - l i b s / i n s t a l l
true
2015-02-07 19:37:14 +01:00
e n d e f
2015-06-26 22:49:11 +02:00
d e f i n e P a c k a g e / b o o s t / i n s t a l l
true
e n d e f
2015-03-02 19:21:30 +01:00
d e f i n e P a c k a g e / b o o s t
2015-02-07 19:37:14 +01:00
$( call Package/boost/Default)
2015-03-02 19:21:30 +01:00
TITLE += packages
2015-02-07 19:37:14 +01:00
e n d e f
2015-03-02 19:21:30 +01:00
d e f i n e P a c k a g e / b o o s t / c o n f i g
2016-10-10 00:01:07 +02:00
menu "Select Boost Options"
depends on PACKAGE_boost
comment "Boost compilation options."
choice
prompt "Compile Boost libraries."
default boost-static-and-shared-libs
help
Choose which version to compile.
-> Shared:
- Only Shared libs will be compiled.
-> Static:
- Only Static libs will be compiled.
-> Both:
- Both Static and Shared libs will be compiled.
config boost-shared-libs
bool "Shared"
2015-12-10 21:56:22 +01:00
config boost-static-libs
2016-10-10 00:01:07 +02:00
bool "Static"
2015-12-10 21:56:22 +01:00
config boost-static-and-shared-libs
2016-10-10 00:01:07 +02:00
bool "Both"
endchoice
choice
prompt "Selects Boost Runtime linkage."
default boost-runtime-shared
help
Choose which C and C++ runtimes to use:
-> Use Shared runtimes.
-> Use Static runtimes.
- Not available if Shared libs are to be built.
-> Use both runtimes.
- Not available if Shared libs are to be built.
- Two separate versions of Boost are built, linking each to a different runtime.
- This option requires "Use tagged names" option to be active.
config boost-runtime-shared
bool "Shared"
config boost-runtime-static
depends on @( !boost-shared-libs&& !boost-static-and-shared-libs)
bool "Static"
config boost-runtime-static-and-shared
depends on @( boost-use-name-tags&& !boost-shared-libs&& !boost-static-and-shared-libs)
bool "Both"
endchoice
choice
prompt "Select a Variant."
default boost-variant-release
help
Chooses which boost variant should be selected:
-> Release: Optimizes Boost for release.
- Optimization: Speed; Debug Symbols: Off; Inlining: Full; Runtime Debugging: Off.
-> Debug:
- Optimization: Off; Debug Symbols: On; Inlining: Off; Runtime Debugging: On.
-> Profile:
- Profiling: On; Debug Symbols: On.
config boost-variant-release
bool "Release"
config boost-variant-debug
bool "Debug"
config boost-variant-profile
bool "Profile"
endchoice
config boost-use-name-tags
bool "Use tagged names."
help
Add name tags the lib files, to diferentiate each library version:
"-mt" for multi-threading.
"-d" for debugging.
"-s" for runtime static link" .
Might break compatibility with libraries that expect boost libs with default names.
default n
config boost-single-thread
depends on @boost-use-name-tags
bool "Single thread Support."
help
Compile Boost libraries in single-thread mode.
default n
2015-12-10 21:56:22 +01:00
2016-10-10 00:01:07 +02:00
config boost-build-type-complete
depends on @boost-use-name-tags
bool "Complete Boost Build."
help
Builds both release and debug libs. It will take much longer to compile.
default n
endmenu
menu "Select Boost libraries"
depends on PACKAGE_boost
2015-11-19 01:09:50 +01:00
comment "Libraries"
2015-11-23 19:51:54 +01:00
config boost-libs-all
2016-10-10 00:01:07 +02:00
bool "Include all Boost libraries."
2016-11-09 00:04:47 +01:00
default m if ALL
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
select PACKAGE_boost-container
select PACKAGE_boost-date_time
select PACKAGE_boost-iostreams
select PACKAGE_boost-math
select PACKAGE_boost-program_options
select PACKAGE_boost-serialization
select PACKAGE_boost-signals
select PACKAGE_boost-regex
select PACKAGE_boost-graph if PACKAGE_boost-regex
select PACKAGE_boost-system
select PACKAGE_boost-atomic if PACKAGE_boost-system
select PACKAGE_boost-chrono if PACKAGE_boost-system
select PACKAGE_boost-random if PACKAGE_boost-system
select PACKAGE_boost-filesystem if PACKAGE_boost-system
select PACKAGE_boost-locale if PACKAGE_boost-system
select PACKAGE_boost-timer if PACKAGE_boost-chrono
select PACKAGE_boost-thread if PACKAGE_boost-chrono&& PACKAGE_boost-atomic
select PACKAGE_boost-context if PACKAGE_boost-chrono&& PACKAGE_boost-thread
select PACKAGE_boost-coroutine if PACKAGE_boost-context
select PACKAGE_boost-fiber if boost-coroutine2
select PACKAGE_boost-log if PACKAGE_boost-chrono&& PACKAGE_boost-date_time&& PACKAGE_boost-thread&& PACKAGE_boost-filesystem&& PACKAGE_boost-regex
select PACKAGE_boost-wave if PACKAGE_boost-date_time&& PACKAGE_boost-thread&& PACKAGE_boost-filesystem
select PACKAGE_boost-python
select PACKAGE_boost-python3
select boost-test-pkg if PACKAGE_boost-system&& PACKAGE_boost-timer
select boost-coroutine2 if PACKAGE_boost-coroutine
select boost-graph-parallel if PACKAGE_boost-graph
2015-11-19 01:09:50 +01:00
config boost-test-pkg
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
depends on PACKAGE_boost-system&& PACKAGE_boost-timer
2016-10-10 00:01:07 +02:00
bool "Boost test package."
2016-11-09 00:04:47 +01:00
default m if ALL
2016-10-10 00:01:07 +02:00
select PACKAGE_boost-test
2015-11-23 19:51:54 +01:00
config boost-coroutine2
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
depends on !@GCC_VERSION_4_8&& PACKAGE_boost-coroutine
2016-10-10 00:01:07 +02:00
bool "Boost couroutine2 support."
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
default m if ALL
2015-11-23 19:51:54 +01:00
config boost-graph-parallel
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
depends on PACKAGE_boost-graph
2016-10-10 00:01:07 +02:00
bool "Boost parallel graph support."
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
default m if ALL
2015-11-23 19:51:54 +01:00
$( foreach lib,$( BOOST_LIBS) , \
2016-10-10 00:01:07 +02:00
config PACKAGE_boost-$( lib)
prompt " Boost $( lib) library. "
2016-11-07 23:05:52 +01:00
default m if ALL
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
$( if $( findstring graph,$( lib) ) ,depends on PACKAGE_boost-regex,) \
$( if $( findstring atomic,$( lib) ) ,depends on PACKAGE_boost-system,) \
$( if $( findstring chrono,$( lib) ) ,depends on PACKAGE_boost-system,) \
$( if $( findstring random,$( lib) ) ,depends on PACKAGE_boost-system,) \
$( if $( findstring filesystem,$( lib) ) ,depends on PACKAGE_boost-system,) \
$( if $( findstring locale,$( lib) ) ,depends on PACKAGE_boost-system&& BUILD_NLS,) \
$( if $( findstring timer,$( lib) ) ,depends on PACKAGE_boost-chrono,) \
$( if $( findstring thread,$( lib) ) ,depends on PACKAGE_boost-chrono&& PACKAGE_boost-atomic,) \
$( if $( findstring context,$( lib) ) ,depends on PACKAGE_boost-chrono&& PACKAGE_boost-thread&& @( !TARGET_avr32&& !TARGET_octeon&& !TARGET_netlogic) ,) \
$( if $( findstring coroutine,$( lib) ) ,depends on PACKAGE_boost-context,) \
$( if $( findstring fiber,$( lib) ) ,depends on @boost-coroutine2&& @( !TARGET_ar7&& !TARGET_rb532&& !TARGET_brcm63xx_smp&& !TARGET_brcm63xx&& !TARGET_brcm47xx&& !TARGET_brcm47xx_legacy&& !TARGET_brcm2708_bcm2708&& !TARGET_au1000&& !TARGET_ath25&& !TARGET_adm8668&& !TARGET_adm5120) ,) \
$( if $( findstring log,$( lib) ) ,depends on PACKAGE_boost-chrono&& PACKAGE_boost-date_time&& PACKAGE_boost-thread&& PACKAGE_boost-filesystem&& PACKAGE_boost-regex,) \
$( if $( findstring wave,$( lib) ) ,depends on PACKAGE_boost-date_time&& PACKAGE_boost-thread&& PACKAGE_boost-filesystem,) \
2016-11-07 23:05:52 +01:00
$( if $( findstring python,$( lib) ) ,depends on PACKAGE_$( lib) ,)
2015-11-23 19:51:54 +01:00
)
2016-10-10 00:01:07 +02:00
endmenu
2015-02-07 19:37:14 +01:00
e n d e f
2015-03-02 19:21:30 +01:00
PKG_CONFIG_DEPENDS := CONFIG_PACKAGE_boost-test
2015-02-07 19:37:14 +01:00
d e f i n e P a c k a g e / b o o s t - t e s t
2016-10-10 00:01:07 +02:00
$( call Package/boost/Default)
TITLE += ( test )
HIDDEN:= 1
2015-02-07 19:37:14 +01:00
e n d e f
d e f i n e B u i l d / C o n f i g u r e
e n d e f
2015-03-02 19:21:30 +01:00
# 1: short name
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
# 2: dependencies on other boost libraries (short name) - Deprecated
2015-03-02 19:21:30 +01:00
# 3: dependencies on other packages
2016-11-07 23:05:52 +01:00
# 4: conditional/inward dependencies
2015-03-02 19:21:30 +01:00
d e f i n e D e f i n e B o o s t L i b r a r y
2016-11-07 23:05:52 +01:00
BOOST_DEPENDS += +$( if $( 4) ,$( 4) :boost-$( 1) ,boost-$( 1) )
2015-03-02 19:21:30 +01:00
PKG_CONFIG_DEPENDS += CONFIG_PACKAGE_boost-$( 1)
2016-11-07 23:05:52 +01:00
BOOST_LIBS += $( 1)
2015-03-02 19:21:30 +01:00
define Package/boost-$( 1)
$( call Package/boost/Default)
TITLE += ( $( 1) )
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
DEPENDS += $( 3) $( if $( 4) ,@$( 4) ,)
2015-03-02 19:21:30 +01:00
HIDDEN:= 1
endef
define Package/boost-$( 1) /description
This package contains the Boost $( 1) library.
endef
e n d e f
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
## If you are thinking in making changes to the following list, for some reason, the order of what follows matters.
$( eval $ ( call DefineBoostLibrary ,container ,,,) )
$( eval $ ( call DefineBoostLibrary ,date_time ,,,) )
$( eval $ ( call DefineBoostLibrary ,iostreams ,,+zlib ,) )
$( eval $ ( call DefineBoostLibrary ,math ,,,) )
$( eval $ ( call DefineBoostLibrary ,program_options ,,,) )
$( eval $ ( call DefineBoostLibrary ,serialization ,,,) )
$( eval $ ( call DefineBoostLibrary ,signals ,,,) )
$( eval $ ( call DefineBoostLibrary ,regex ,,,) )
$( eval $ ( call DefineBoostLibrary ,graph ,,,) )
$( eval $ ( call DefineBoostLibrary ,system ,,,) )
$( eval $ ( call DefineBoostLibrary ,atomic ,,,) )
$( eval $ ( call DefineBoostLibrary ,chrono ,,,) )
$( eval $ ( call DefineBoostLibrary ,random ,,,) )
$( eval $ ( call DefineBoostLibrary ,filesystem ,,,) )
$( eval $ ( call DefineBoostLibrary ,locale ,,$ ( ICONV_DEPENDS ) ,BUILD_NLS ) )
$( eval $ ( call DefineBoostLibrary ,timer ,,,) )
$( eval $ ( call DefineBoostLibrary ,thread ,,,) )
$( eval $ ( call DefineBoostLibrary ,context ,,,) )
$( eval $ ( call DefineBoostLibrary ,coroutine ,,,) )
$( eval $ ( call DefineBoostLibrary ,fiber ,,,) )
$( eval $ ( call DefineBoostLibrary ,log ,,,) )
$( eval $ ( call DefineBoostLibrary ,wave ,,,) )
2016-11-07 23:05:52 +01:00
$( eval $ ( call DefineBoostLibrary ,python ,,,PACKAGE_python ) )
$( eval $ ( call DefineBoostLibrary ,python 3,,,PACKAGE_python 3) )
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
#$(eval $(call DefineBoostLibrary,mpi,,)) # OpenMPI does no exist in OpenWRT at this time.
#$(eval $(call DefineBoostLibrary,exception,,))
2015-03-02 19:21:30 +01:00
2015-11-23 19:51:54 +01:00
2015-02-07 19:37:14 +01:00
d e f i n e H o s t / C o m p i l e
2015-12-10 21:56:22 +01:00
# b2 does not provide a configure-script nor a Makefile
2015-02-07 19:37:14 +01:00
( cd $( HOST_BUILD_DIR) /tools/build/src/engine ; ./build.sh gcc )
e n d e f
CONFIGURE_PREFIX := $( PKG_INSTALL_DIR)
TARGET_LDFLAGS += -pthread -lrt
2015-11-23 19:51:54 +01:00
TARGET_CFLAGS += \
$( if $( CONFIG_SOFT_FLOAT) ,-DBOOST_NO_FENV_H) -fPIC
2015-02-20 16:00:27 +01:00
2016-12-17 17:52:32 +01:00
EXTRA_CXXFLAGS += $( if $( CONFIG_GCC_VERSION_4_8) ,-std= gnu++11,-std= gnu++14)
2015-02-20 16:00:27 +01:00
i f n e q ( $( findstring mips ,$ ( ARCH ) ) , )
2015-03-02 19:21:30 +01:00
BOOST_ABI = o32
ifneq ( $( findstring 64,$( ARCH) ) ,)
BOOST_ABI = o64
2015-02-20 16:00:27 +01:00
endif
2015-03-02 19:21:30 +01:00
e l s e i f n e q ( $( findstring arm ,$ ( ARCH ) ) , )
BOOST_ABI = aapcs
e l s e i f e q ( $( ARCH ) , a a r c h 6 4 )
BOOST_ABI = aapcs
2015-02-20 16:00:27 +01:00
e l s e
2015-03-02 19:21:30 +01:00
BOOST_ABI = sysv
2015-02-20 16:00:27 +01:00
e n d i f
2015-12-10 21:56:22 +01:00
comma := ,
2015-02-20 16:00:27 +01:00
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
2015-02-07 19:37:14 +01:00
d e f i n e B u i l d / C o m p i l e
2015-03-02 19:21:30 +01:00
$( info Selected Boost API $( BOOST_ABI) for architecture $( ARCH) and cpu $( CPU_TYPE) $( CPU_SUBTYPE) )
2015-02-07 19:37:14 +01:00
( cd $( PKG_BUILD_DIR) ; \
2016-12-17 17:52:32 +01:00
echo " using gcc : $( ARCH) : $( GNU_TARGET_NAME) -gcc : <compileflags>\" $( TARGET_CFLAGS) \" <cxxflags>\" $( TARGET_CXXFLAGS) $( EXTRA_CXXFLAGS) \" <linkflags>\" $( TARGET_LDFLAGS) \" ; " > tools/build/src/user-config.jam ; \
2015-11-19 01:09:50 +01:00
$( if $( CONFIG_PACKAGE_boost-python3) , \
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
echo " using python : 3.6 : : $( STAGING_DIR) /usr/include/python3.6/ ; " >> \
2015-11-19 01:09:50 +01:00
tools/build/src/user-config.jam; \
) \
2015-02-07 19:37:14 +01:00
$( if $( CONFIG_PACKAGE_boost-python) , \
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
echo " using python : 2.7 : : $( STAGING_DIR) /usr/include/python2.7/ ; " >> \
2015-02-07 19:37:14 +01:00
tools/build/src/user-config.jam; \
) \
2015-12-10 21:56:22 +01:00
b2 \
$( CONFIGURE_ARGS) \
2015-11-04 21:33:10 +01:00
--ignore-site-config \
2015-11-25 11:35:47 +01:00
--toolset= gcc-$( ARCH) abi = $( BOOST_ABI) \
2015-02-07 19:37:14 +01:00
--disable-long-double \
2015-12-10 21:56:22 +01:00
$( if $( CONFIG_boost-variant-release) , variant = release,) \
$( if $( CONFIG_boost-variant-debug) , variant = debug,) \
$( if $( CONFIG_boost-variant-profile) , variant = profile,) \
2015-12-07 05:41:07 +01:00
$( if $( CONFIG_boost-use-name-tags) ,--layout= tagged,--layout= system) \
2015-12-10 21:56:22 +01:00
$( if $( CONFIG_boost-build-type-complete) ,--build-type= complete,--build-type= minimal) \
2015-11-25 11:35:47 +01:00
$( if $( CONFIG_boost-shared-libs) ,link= shared,) \
2015-12-10 21:56:22 +01:00
$( if $( CONFIG_boost-static-libs) ,link= static,) \
$( if $( CONFIG_boost-static-and-shared-libs) ,link= static$( comma) shared,) \
2015-11-25 11:35:47 +01:00
$( if $( CONFIG_boost-runtime-shared) ,runtime-link= shared,) \
2015-12-10 21:56:22 +01:00
$( if $( CONFIG_boost-runtime-static) ,runtime-link= static,) \
$( if $( CONFIG_boost-runtime-static-and-shared) ,runtime-link= shared$( comma) static,) \
2015-11-25 11:35:47 +01:00
$( if $( CONFIG_boost-single-thread) ,threading= single,) \
2015-12-07 05:41:07 +01:00
threading = multi \
2015-03-02 19:21:30 +01:00
--without-mpi \
2015-11-23 19:51:54 +01:00
$( if $( CONFIG_boost-coroutine2) ,,--without-coroutine2) \
$( if $( CONFIG_boost-graph-parallel) ,,--without-graph_parallel) \
2015-02-07 19:37:14 +01:00
$( if $( CONFIG_PACKAGE_boost-test) ,,--without-test) \
2015-03-02 19:21:30 +01:00
$( foreach lib,$( BOOST_LIBS) , \
2015-11-23 19:51:54 +01:00
$( if $( findstring python,$( lib) ) , \
2016-10-10 00:01:07 +02:00
$( if $( or $( CONFIG_PACKAGE_boost-python) ,$( CONFIG_PACKAGE_boost-python3) ) ,,--without-python) , \
$( if $( CONFIG_PACKAGE_boost-$( lib) ) ,,--without-$( lib) ) ) \
2015-03-02 19:21:30 +01:00
) \
boost: 1.63 Revision 3 -> Python 3.6 Support Fixed and Unsupported Target Fixes
Update:
- Python 3.6 support fixed. It is now correctly compiled and available.
Fixes:
- disabled context and fiber for unsupported targets
There are several architectures which are not supported by context nor
fiber. Because of this, Boost build was failing targets. This created the
situation where the other boost libs were not being built and consequently,
becoming unavailable at the OpenWRT/LEDE repositories.
To solve this issue, it was necessary to disabled fiber and context for
the incompatible targets.
Boost.Fiber is disabled for:
-> ar7, rb532, brcm63xx.smp, brcm63xx, brcm47xx, brcm47xx.legacy, brcm2708,
au1000, ath25, adm8668 and adm5120.
Boost.Context is disabled for:
-> avr32, octeon and netlogic.
Signed-off-by: Carlos Miguel Ferreira <carlosmf.pt@gmail.com>
2017-02-22 03:58:50 +01:00
$( if $( CONFIG_PACKAGE_boost-python) ,python= 2.7,) \
$( if $( CONFIG_PACKAGE_boost-python3) ,python= 3.6,) \
2015-11-19 01:09:50 +01:00
$( if $( CONFIG_PACKAGE_boost-locale) ,boost.locale.iconv= on -sICONV_PATH= $( ICONV_PREFIX) boost.locale.posix= $( if $( USE_MUSL) ,on,off) , \
2015-03-02 19:21:30 +01:00
boost.locale.iconv= off) \
2015-02-07 19:37:14 +01:00
\
$( if $( CONFIG_PACKAGE_boost-iostreams) ,-sNO_BZIP2= 1 -sZLIB_INCLUDE= $( STAGING_DIR) /usr/include \
-sZLIB_LIBPATH= $( STAGING_DIR) /usr/lib) \
install \
)
e n d e f
d e f i n e B u i l d / I n s t a l l D e v
$( INSTALL_DIR) \
$( 1) /usr/include/boost/
$( CP) \
$( PKG_INSTALL_DIR) /include/boost/* \
$( 1) /usr/include/boost/ \
# copies _all_ header files - independent of <--with-library>-argument above
2015-06-29 21:25:34 +02:00
$( INSTALL_DIR) $( 1) /usr/lib
2015-12-10 21:56:22 +01:00
$( CP) -v $( PKG_INSTALL_DIR) /lib/*.a $( 1) /usr/lib/ # copies all compiled archive files
2015-11-19 01:09:50 +01:00
$( FIND) $( PKG_INSTALL_DIR) /lib/ -name '*.so*' -exec $( CP) { } $( 1) /usr/lib/ \; # copies all the shared objects files
2015-02-07 19:37:14 +01:00
e n d e f
d e f i n e H o s t / I n s t a l l
$( INSTALL_DIR) \
2017-01-10 15:02:50 +01:00
$( STAGING_DIR_HOSTPKG) /bin
2015-02-07 19:37:14 +01:00
$( CP) \
2015-12-10 21:56:22 +01:00
$( HOST_BUILD_DIR) /tools/build/src/engine/bin.*/b2 \
2017-01-10 15:02:50 +01:00
$( STAGING_DIR_HOSTPKG) /bin/
2015-02-07 19:37:14 +01:00
e n d e f
d e f i n e P a c k a g e / b o o s t / D e f a u l t / i n s t a l l
$( INSTALL_DIR) \
$( 1) /usr/lib
2015-11-19 01:09:50 +01:00
$( FIND) \
2016-11-09 00:04:47 +01:00
$( PKG_INSTALL_DIR) /lib/ -name 'libboost_$(2).so*' -exec $( CP) { } $( 1) /usr/lib/ \;
$( FIND) \
$( PKG_INSTALL_DIR) /lib/ -name 'libboost_$(2)_*.so*' -exec $( CP) { } $( 1) /usr/lib/ \;
2015-02-07 19:37:14 +01:00
e n d e f
2016-10-10 00:01:07 +02:00
d e f i n e P a c k a g e / b o o s t - t e s t / i n s t a l l
2015-11-19 01:09:50 +01:00
$( INSTALL_DIR) \
$( 1) /usr/lib
2015-02-07 19:37:14 +01:00
2015-11-19 01:09:50 +01:00
$( FIND) \
$( PKG_INSTALL_DIR) /lib/ -name 'libboost_unit_test_framework*.so*' -exec $( CP) { } $( 1) /usr/lib/ \;
$( FIND) \
$( PKG_INSTALL_DIR) /lib/ -name 'libboost_prg_exec_monitor*.so*' -exec $( CP) { } $( 1) /usr/lib/ \;
2015-02-07 19:37:14 +01:00
e n d e f
2015-03-02 19:21:30 +01:00
d e f i n e B u i l d B o o s t L i b r a r y
define Package/boost-$( 1) /install
2016-10-10 00:01:07 +02:00
$( call Package/boost/Default/install,$$ ( 1) ,$( 1) )
2015-03-02 19:21:30 +01:00
endef
2015-02-07 19:37:14 +01:00
2015-03-02 19:21:30 +01:00
$$ ( eval $$ ( call BuildPackage,boost-$( 1) ) )
2015-02-20 16:00:27 +01:00
e n d e f
2015-03-02 19:21:30 +01:00
$( eval $ ( call HostBuild ) )
2015-02-20 16:00:27 +01:00
2015-03-02 19:21:30 +01:00
$( foreach lib ,$ ( BOOST_LIBS ) ,$ ( eval $ ( call BuildBoostLibrary ,$ ( lib ) ) ) )
$( eval $ ( call BuildPackage ,boost -test ) )
$( eval $ ( call BuildPackage ,boost -libs ) )
2015-02-07 19:37:14 +01:00
$( eval $ ( call BuildPackage ,boost ) )