Преглед на файлове

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
Felix Fietkau преди 13 години
родител
ревизия
cf788fc731
променени са 3 файла, в които са добавени 29 реда и са изтрити 0 реда
  1. 15 0
      Config.in
  2. 2 0
      include/package.mk
  3. 12 0
      include/uclibc++.mk

+ 15 - 0
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

+ 2 - 0
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))

+ 12 - 0
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