Browse Source

toolchain: eliminate the INSTALL_LIBSTDCPP config symbol and make c++ support mandatory - fixes recursive config symbol dependency issues

Signed-off-by: Felix Fietkau <[email protected]>

SVN-Revision: 36594
Felix Fietkau 12 years ago
parent
commit
2430e9a4f5

+ 11 - 13
Config.in

@@ -704,21 +704,19 @@ menu "Global build settings"
 		  Note that this will make the system libraries incompatible with most of the packages
 		  Note that this will make the system libraries incompatible with most of the packages
 		  that are not selected during the build process
 		  that are not selected during the build process
 
 
-	if INSTALL_LIBSTDCPP
-		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.
+	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_UCLIBCXX
+			bool "uClibc++"
 
 
-			config USE_LIBSTDCXX
-				bool "libstdc++"
-		endchoice
-	endif
+		config USE_LIBSTDCXX
+			bool "libstdc++"
+	endchoice
 
 
 endmenu
 endmenu
 
 

+ 1 - 1
include/uclibc++.mk

@@ -5,7 +5,7 @@ ifndef DUMP
 endif
 endif
 
 
 PKG_PREPARED_DEPENDS += CONFIG_USE_UCLIBCXX
 PKG_PREPARED_DEPENDS += CONFIG_USE_UCLIBCXX
-CXX_DEPENDS = @INSTALL_LIBSTDCPP +USE_UCLIBCXX:uclibcxx +USE_LIBSTDCXX:libstdcpp
+CXX_DEPENDS = +USE_UCLIBCXX:uclibcxx +USE_LIBSTDCXX:libstdcpp
 
 
 ifneq ($(CONFIG_USE_UCLIBCXX),)
 ifneq ($(CONFIG_USE_UCLIBCXX),)
  ifneq ($(CONFIG_CCACHE),)
  ifneq ($(CONFIG_CCACHE),)

+ 0 - 5
package/libs/ncurses/Makefile

@@ -67,11 +67,6 @@ CONFIGURE_ARGS += \
 	--with-terminfo-dirs=/usr/share/terminfo \
 	--with-terminfo-dirs=/usr/share/terminfo \
 	--with-default-terminfo-dir=/usr/share/terminfo
 	--with-default-terminfo-dir=/usr/share/terminfo
 
 
-ifneq ($(CONFIG_INSTALL_LIBSTDCPP),y)
-CONFIGURE_ARGS += \
-	--without-cxx-binding
-endif
-
 ifeq ($(HOST_OS),FreeBSD)
 ifeq ($(HOST_OS),FreeBSD)
 	CONFIGURE_ARGS +=
 	CONFIGURE_ARGS +=
 		--with-terminfo=/usr/share/terminfo.db 
 		--with-terminfo=/usr/share/terminfo.db 

+ 0 - 1
package/libs/uclibc++/Makefile

@@ -26,7 +26,6 @@ define Package/uclibcxx
   NAME:=uclibc++
   NAME:=uclibc++
   SECTION:=libs
   SECTION:=libs
   CATEGORY:=Libraries
   CATEGORY:=Libraries
-  DEPENDS:=@INSTALL_LIBSTDCPP
   TITLE:=C++ library for embedded systems
   TITLE:=C++ library for embedded systems
   URL:=http://cxx.uclibc.org/src/
   URL:=http://cxx.uclibc.org/src/
 endef
 endef

+ 0 - 1
package/toolchain/Makefile

@@ -84,7 +84,6 @@ define Package/libstdcpp
 $(call Package/gcc/Default)
 $(call Package/gcc/Default)
   NAME:=libstdc++
   NAME:=libstdc++
   TITLE:=GNU Standard C++ Library v3
   TITLE:=GNU Standard C++ Library v3
-  DEPENDS+=@INSTALL_LIBSTDCPP
 endef
 endef
 
 
 define Package/libstdcpp/config
 define Package/libstdcpp/config

+ 1 - 1
rules.mk

@@ -202,7 +202,7 @@ HOST_LDFLAGS:=-L$(STAGING_DIR_HOST)/lib
 TARGET_CC:=$(TARGET_CROSS)gcc
 TARGET_CC:=$(TARGET_CROSS)gcc
 TARGET_AR:=$(TARGET_CROSS)ar
 TARGET_AR:=$(TARGET_CROSS)ar
 TARGET_RANLIB:=$(TARGET_CROSS)ranlib
 TARGET_RANLIB:=$(TARGET_CROSS)ranlib
-TARGET_CXX:=$(if $(CONFIG_INSTALL_LIBSTDCPP),$(TARGET_CROSS)g++,no)
+TARGET_CXX:=$(TARGET_CROSS)g++
 KPATCH:=$(SCRIPT_DIR)/patch-kernel.sh
 KPATCH:=$(SCRIPT_DIR)/patch-kernel.sh
 SED:=$(STAGING_DIR_HOST)/bin/sed -i -e
 SED:=$(STAGING_DIR_HOST)/bin/sed -i -e
 CP:=cp -fpR
 CP:=cp -fpR

+ 0 - 7
toolchain/gcc/Config.in

@@ -71,13 +71,6 @@ config SJLJ_EXCEPTIONS
 	    frame unwinding exceptions handling routines.  Warning: increases
 	    frame unwinding exceptions handling routines.  Warning: increases
 	    code size and runtime memory usage.
 	    code size and runtime memory usage.
 
 
-config INSTALL_LIBSTDCPP
-	bool
-	prompt "Build/install c++ compiler and libstdc++?" if TOOLCHAINOPTS
-	default y if !USE_MUSL
-	help
-	    Build/install c++ compiler and libstdc++?
-
 config INSTALL_LIBGCJ
 config INSTALL_LIBGCJ
 	bool
 	bool
 	prompt "Build/install java compiler and GNU classpath ?" if TOOLCHAINOPTS
 	prompt "Build/install java compiler and GNU classpath ?" if TOOLCHAINOPTS

+ 1 - 1
toolchain/gcc/common.mk

@@ -93,7 +93,7 @@ HOST_STAMP_CONFIGURED:=$(GCC_BUILD_DIR)/.configured
 HOST_STAMP_INSTALLED:=$(STAGING_DIR_HOST)/stamp/.gcc_$(GCC_VARIANT)_installed
 HOST_STAMP_INSTALLED:=$(STAGING_DIR_HOST)/stamp/.gcc_$(GCC_VARIANT)_installed
 
 
 SEP:=,
 SEP:=,
-TARGET_LANGUAGES:="c$(if $(CONFIG_INSTALL_LIBSTDCPP),$(SEP)c++)$(if $(CONFIG_INSTALL_LIBGCJ),$(SEP)java)$(if $(CONFIG_INSTALL_GFORTRAN),$(SEP)fortran)"
+TARGET_LANGUAGES:="c,c++$(if $(CONFIG_INSTALL_LIBGCJ),$(SEP)java)$(if $(CONFIG_INSTALL_GFORTRAN),$(SEP)fortran)"
 
 
 export libgcc_cv_fixed_point=no
 export libgcc_cv_fixed_point=no
 ifdef CONFIG_USE_UCLIBC
 ifdef CONFIG_USE_UCLIBC