From cf788fc7317c3e4a5bab17194c680ed5b0df39a7 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Thu, 14 Jun 2012 20:26:04 +0000 Subject: [PATCH] build: add a config option for choosing the prefered standard c++ library and add uclibc++.mk to make this easy to handle in packages SVN-Revision: 32369 --- Config.in | 15 +++++++++++++++ include/package.mk | 2 ++ include/uclibc++.mk | 12 ++++++++++++ 3 files changed, 29 insertions(+) create mode 100644 include/uclibc++.mk diff --git a/Config.in b/Config.in index ddf02614b3..5f61905c92 100644 --- a/Config.in +++ b/Config.in @@ -395,6 +395,21 @@ menu "Global build settings" Note that this will make the system libraries incompatible with most of the packages that are not selected during the build process + choice + prompt "Preferred standard C++ library" + default USE_LIBSTDCXX if USE_EGLIBC + default USE_UCLIBCXX + help + Select the preferred standard C++ library for all packages that support this. + + config USE_UCLIBCXX + bool "uClibc++" + + config USE_LIBSTDCXX + bool "libstdc++" + + endchoice + endmenu menuconfig DEVEL diff --git a/include/package.mk b/include/package.mk index e955c207ae..abffa0c64c 100644 --- a/include/package.mk +++ b/include/package.mk @@ -5,6 +5,8 @@ # See /LICENSE for more information. # +__package_mk:=1 + all: $(if $(DUMP),dumpinfo,compile) PKG_BUILD_DIR ?= $(BUILD_DIR)/$(PKG_NAME)$(if $(PKG_VERSION),-$(PKG_VERSION)) diff --git a/include/uclibc++.mk b/include/uclibc++.mk new file mode 100644 index 0000000000..817484377f --- /dev/null +++ b/include/uclibc++.mk @@ -0,0 +1,12 @@ +ifndef DUMP + ifdef __package_mk + $(error uclibc++.mk must be included before package.mk) + endif +endif + +PKG_PREPARED_DEPENDS += CONFIG_USE_UCLIBCXX +CXX_DEPENDS = +USE_UCLIBCXX:uclibcxx +USE_LIBSTDCXX:libstdcpp + +ifneq ($(CONFIG_USE_UCLIBCXX),) + TARGET_CXX="g++-uc" +endif