Added support for configuration of boost binary names layout
authorUwe Kindler <uwe_kindler@web.de>
Sat, 15 Mar 2014 04:27:52 +0000 (05:27 +0100)
committerPeter Korsgaard <peter@korsgaard.com>
Sat, 15 Mar 2014 21:18:48 +0000 (22:18 +0100)
[Peter: fix trailing whitescape / too long lines]
Signed-off-by: Uwe Kindler <uwe_kindler@web.de>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/boost/Config.in
package/boost/boost.mk

index 68c39096643d6bc2bff0623156c5d7a804f58646..fa6806129e3c4d5af81f27c76ef77c6035f8fcb8 100644 (file)
@@ -16,6 +16,40 @@ config BR2_PACKAGE_BOOST
 
 if BR2_PACKAGE_BOOST
 
+choice
+       prompt "Layout"
+       default BR2_PACKAGE_BOOST_LAYOUT_SYSTEM
+       help
+         Selects the layout of Boost binary names
+
+config BR2_PACKAGE_BOOST_LAYOUT_SYSTEM
+       bool "system"
+       help
+         Boost binary names do not include the Boost version number
+         or the name and version number of the compiler.
+
+config BR2_PACKAGE_BOOST_LAYOUT_TAGGED
+       bool "tagged"
+       help
+         Boost binary names include the encoded build properties such
+         as variant and threading, but do not include compiler name
+         and version, or Boost version. This option is useful if you
+         build several variants of Boost, using the same compiler.
+
+config BR2_PACKAGE_BOOST_LAYOUT_VERSIONED
+       bool "versioned"
+       help
+         Boost binary names include the Boost version number, name
+         and version of the compiler and encoded build properties.
+
+endchoice
+
+config BR2_PACKAGE_BOOST_LAYOUT
+       string
+       default "system" if BR2_PACKAGE_BOOST_LAYOUT_SYSTEM
+       default "tagged" if BR2_PACKAGE_BOOST_LAYOUT_TAGGED
+       default "versioned" if BR2_PACKAGE_BOOST_LAYOUT_VERSIONED
+
 config BR2_PACKAGE_BOOST_CHRONO
        bool "boost-chrono"
 
index 7aab6145a44223d98afafcc3c382c652c056323e..2ae80341560bf2a7e7a26112236e1e98bd7081af 100644 (file)
@@ -81,6 +81,7 @@ endif
 
 BOOST_WITHOUT_FLAGS_COMMASEPERATED += $(subst $(space),$(comma),$(strip $(BOOST_WITHOUT_FLAGS)))
 BOOST_FLAGS += $(if $(BOOST_WITHOUT_FLAGS_COMMASEPERATED), --without-libraries=$(BOOST_WITHOUT_FLAGS_COMMASEPERATED))
+BOOST_LAYOUT = $(call qstrip, $(BR2_PACKAGE_BOOST_LAYOUT))
 
 define BOOST_CONFIGURE_CMDS
        (cd $(@D) && ./bootstrap.sh $(BOOST_FLAGS))
@@ -99,7 +100,7 @@ define BOOST_INSTALL_TARGET_CMDS
        --user-config=$(@D)/user-config.jam \
        $(BOOST_OPT) \
        --prefix=$(TARGET_DIR)/usr \
-       --layout=system install )
+       --layout=$(BOOST_LAYOUT) install )
 endef
 
 define HOST_BOOST_BUILD_CMDS
@@ -114,7 +115,7 @@ define HOST_BOOST_INSTALL_CMDS
        --user-config=$(@D)/user-config.jam \
        $(HOST_BOOST_OPT) \
        --prefix=$(HOST_DIR)/usr \
-       --layout=system install )
+       --layout=$(BOOST_LAYOUT) install )
 endef
 
 define BOOST_INSTALL_STAGING_CMDS
@@ -122,7 +123,7 @@ define BOOST_INSTALL_STAGING_CMDS
        --user-config=$(@D)/user-config.jam \
        $(BOOST_OPT) \
        --prefix=$(STAGING_DIR)/usr \
-       --layout=system install)
+       --layout=$(BOOST_LAYOUT) install)
 endef
 
 $(eval $(generic-package))