summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-05-09 20:50:49 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-05-09 20:50:49 +0000
commit9211713bc2e586f55d19f7b491fa2034833f0f05 (patch)
treef3ab4a8b33fa4787cc5c23a0fbb2fad99f59e247
parent3b5a35294b8a6f018bd4a6e935e3fe47cdcf7ca2 (diff)
toolchain: eliminate the INSTALL_LIBSTDCPP config symbol and make c++ support mandatory - fixes recursive config symbol dependency issues
Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36594 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--Config.in24
-rw-r--r--include/uclibc++.mk2
-rw-r--r--package/libs/ncurses/Makefile5
-rw-r--r--package/libs/uclibc++/Makefile1
-rw-r--r--package/toolchain/Makefile1
-rw-r--r--rules.mk2
-rw-r--r--toolchain/gcc/Config.in7
-rw-r--r--toolchain/gcc/common.mk2
8 files changed, 14 insertions, 30 deletions
diff --git a/Config.in b/Config.in
index 5c154691dd..9ad71e02cb 100644
--- a/Config.in
+++ b/Config.in
@@ -704,21 +704,19 @@ 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
- 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
diff --git a/include/uclibc++.mk b/include/uclibc++.mk
index 89298e3f30..a1a61f26d4 100644
--- a/include/uclibc++.mk
+++ b/include/uclibc++.mk
@@ -5,7 +5,7 @@ ifndef DUMP
endif
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_CCACHE),)
diff --git a/package/libs/ncurses/Makefile b/package/libs/ncurses/Makefile
index b360526572..62ffdfb0a0 100644
--- a/package/libs/ncurses/Makefile
+++ b/package/libs/ncurses/Makefile
@@ -67,11 +67,6 @@ CONFIGURE_ARGS += \
--with-terminfo-dirs=/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)
CONFIGURE_ARGS +=
--with-terminfo=/usr/share/terminfo.db
diff --git a/package/libs/uclibc++/Makefile b/package/libs/uclibc++/Makefile
index 2dd8f6507e..15c2bce54b 100644
--- a/package/libs/uclibc++/Makefile
+++ b/package/libs/uclibc++/Makefile
@@ -26,7 +26,6 @@ define Package/uclibcxx
NAME:=uclibc++
SECTION:=libs
CATEGORY:=Libraries
- DEPENDS:=@INSTALL_LIBSTDCPP
TITLE:=C++ library for embedded systems
URL:=http://cxx.uclibc.org/src/
endef
diff --git a/package/toolchain/Makefile b/package/toolchain/Makefile
index 7eadaba0d4..202e9d095d 100644
--- a/package/toolchain/Makefile
+++ b/package/toolchain/Makefile
@@ -84,7 +84,6 @@ define Package/libstdcpp
$(call Package/gcc/Default)
NAME:=libstdc++
TITLE:=GNU Standard C++ Library v3
- DEPENDS+=@INSTALL_LIBSTDCPP
endef
define Package/libstdcpp/config
diff --git a/rules.mk b/rules.mk
index b9510057b6..61c45a0090 100644
--- a/rules.mk
+++ b/rules.mk
@@ -202,7 +202,7 @@ HOST_LDFLAGS:=-L$(STAGING_DIR_HOST)/lib
TARGET_CC:=$(TARGET_CROSS)gcc
TARGET_AR:=$(TARGET_CROSS)ar
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
SED:=$(STAGING_DIR_HOST)/bin/sed -i -e
CP:=cp -fpR
diff --git a/toolchain/gcc/Config.in b/toolchain/gcc/Config.in
index b3fd5d665e..defb1b1b0e 100644
--- a/toolchain/gcc/Config.in
+++ b/toolchain/gcc/Config.in
@@ -71,13 +71,6 @@ config SJLJ_EXCEPTIONS
frame unwinding exceptions handling routines. Warning: increases
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
bool
prompt "Build/install java compiler and GNU classpath ?" if TOOLCHAINOPTS
diff --git a/toolchain/gcc/common.mk b/toolchain/gcc/common.mk
index 2e10f8dbef..688374e249 100644
--- a/toolchain/gcc/common.mk
+++ b/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
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
ifdef CONFIG_USE_UCLIBC