Enable compilation of libc++ same way as uClibc++
This commit is contained in:
parent
45ccf0cb79
commit
f50072bd6b
@ -38,6 +38,36 @@ config CXX_NEWLONG
|
||||
C++ library routines because the NuttX size_t might not have
|
||||
the same underlying type as your toolchain's size_t.
|
||||
|
||||
|
||||
comment "LLVM C++ Library (libcxx)"
|
||||
|
||||
config LIBCXX
|
||||
bool "Build LLVM libcxx (must be installed)"
|
||||
default n
|
||||
---help---
|
||||
If you have installed libcxx into the NuttX source try, then it can
|
||||
be built by selecting this option. See the README.txt file in the
|
||||
libcxx packet for information on installing libcxx.
|
||||
|
||||
if LIBCXX
|
||||
|
||||
config LIBCXX_EXCEPTION
|
||||
bool "Enable Exception Suppport"
|
||||
default y
|
||||
|
||||
config LIBCXX_IOSTREAM_BUFSIZE
|
||||
int "IO Stream Buffer Size"
|
||||
default 32
|
||||
|
||||
config LIBCXX_HAVE_LIBSUPCXX
|
||||
bool "Have libsupc++ (required)"
|
||||
default y
|
||||
---help---
|
||||
Select if your toolchain provides libsupc++. This option is required
|
||||
at present because the built-in libsupc++ support is incomplete.
|
||||
|
||||
endif
|
||||
|
||||
comment "uClibc++ Standard C++ Library"
|
||||
|
||||
config UCLIBCXX
|
||||
|
@ -41,18 +41,18 @@ ASRCS =
|
||||
CSRCS =
|
||||
|
||||
CXXSRCS = libxx_cxapurevirtual.cxx libxx_eabi_atexit.cxx libxx_cxa_atexit.cxx
|
||||
ifeq ($(CONFIG_UCLIBCXX_EXCEPTION),y)
|
||||
ifneq (,$(findstring y,$(CONFIG_UCLIBCXX_EXCEPTION) $(CONFIG_LIBCXX_EXCEPTION)))
|
||||
CXXSRCS += libxx__gnu_unwind_find_exidx.cxx
|
||||
endif
|
||||
|
||||
# Some of the libxx/ files are not need if uClibc++ is installed because
|
||||
# uClibx++ replaces them
|
||||
# Some of the libxx/ files are not need if uClibc++ or libcxx is installed
|
||||
# because uClibx++ or libcxx will replaces them
|
||||
|
||||
ifneq ($(CONFIG_UCLIBCXX),y)
|
||||
ifeq (,$(findstring y,$(CONFIG_UCLIBCXX) $(CONFIG_LIBCXX)))
|
||||
CXXSRCS += libxx_delete.cxx libxx_deletea.cxx libxx_new.cxx libxx_newa.cxx
|
||||
CXXSRCS += libxx_stdthrow.cxx libxx_cxa_guard.cxx
|
||||
else
|
||||
ifneq ($(UCLIBCXX_EXCEPTION),y)
|
||||
ifeq (,$(findstring y,$(CONFIG_UCLIBCXX_EXCEPTION) $(CONFIG_LIBCXX_EXCEPTION)))
|
||||
CXXSRCS += libxx_stdthrow.cxx
|
||||
endif
|
||||
endif
|
||||
@ -76,6 +76,10 @@ ifeq ($(CONFIG_UCLIBCXX),y)
|
||||
include uClibc++/Make.defs
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_LIBCXX),y)
|
||||
include libcxx/Make.defs
|
||||
endif
|
||||
|
||||
# Object Files
|
||||
|
||||
AOBJS = $(ASRCS:.S=$(OBJEXT))
|
||||
|
Loading…
Reference in New Issue
Block a user