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> SVN-Revision: 36594
This commit is contained in:
parent
dc00dbd085
commit
2430e9a4f5
8 changed files with 14 additions and 30 deletions
24
Config.in
24
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
|
||||||
choice
|
prompt "Preferred standard C++ library"
|
||||||
prompt "Preferred standard C++ library"
|
default USE_LIBSTDCXX if USE_EGLIBC
|
||||||
default USE_LIBSTDCXX if USE_EGLIBC
|
default USE_UCLIBCXX
|
||||||
default USE_UCLIBCXX
|
help
|
||||||
help
|
Select the preferred standard C++ library for all packages that support this.
|
||||||
Select the preferred standard C++ library for all packages that support this.
|
|
||||||
|
|
||||||
config USE_UCLIBCXX
|
config USE_UCLIBCXX
|
||||||
bool "uClibc++"
|
bool "uClibc++"
|
||||||
|
|
||||||
config USE_LIBSTDCXX
|
config USE_LIBSTDCXX
|
||||||
bool "libstdc++"
|
bool "libstdc++"
|
||||||
endchoice
|
endchoice
|
||||||
endif
|
|
||||||
|
|
||||||
endmenu
|
endmenu
|
||||||
|
|
||||||
|
|
|
@ -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),)
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
2
rules.mk
2
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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
Loading…
Reference in a new issue