diff --git a/libs/libxx/Kconfig b/libs/libxx/Kconfig index e7709d5793e..866cf59d48d 100644 --- a/libs/libxx/Kconfig +++ b/libs/libxx/Kconfig @@ -24,7 +24,10 @@ if HAVE_CXX choice prompt "C++ Library" - default LIBCXXMINI + default LIBCXXNONE + +config LIBCXXNONE + bool "No default C++ Standard Template Library" config LIBCXXTOOLCHAIN bool "Toolchain C++ support" @@ -32,13 +35,6 @@ config LIBCXXTOOLCHAIN ---help--- Use Standard C++ library from toolchain. -config LIBCXXMINI - bool "Basic C++ support" - ---help--- - A fragmentary C++ library that will allow to build only - the simplest of C++ applications. Only contain basic C++ - runtime support function. - config LIBCXX bool "LLVM libc++ C++ Standard Library" select HAVE_CXXINITIALIZE @@ -60,18 +56,24 @@ endchoice config ETL bool "Embedded Template Library (ETL)" - depends on LIBCXXMINI && ALLOW_MIT_COMPONENTS + depends on ALLOW_MIT_COMPONENTS ---help--- ETL A C++ Template library for Embedded applications Implements C++ templates such as containers, string singleton math without C++ STL libraries -if !LIBCXXMINI - choice prompt "C++ low level library select" + default LIBMINIABI if LIBCXXNONE default LIBSUPCXX_TOOLCHAIN +config LIBMINIABI + bool "Basic C++ support" + ---help--- + A fragmentary C++ library that will allow to build only + the simplest of C++ applications. Only contain basic C++ + runtime support function. + config LIBCXXABI bool "LLVM low level C++ Library" ---help--- @@ -93,8 +95,6 @@ config LIBSUPCXX_TOOLCHAIN endchoice -endif - config LIBCXXABI_VERSION string "Select libcxxabi version" depends on LIBCXXABI diff --git a/libs/libxx/Makefile b/libs/libxx/Makefile index 86a9f0b7f79..ab9521c4f9c 100644 --- a/libs/libxx/Makefile +++ b/libs/libxx/Makefile @@ -35,8 +35,6 @@ ifeq ($(CONFIG_UCLIBCXX),y) include uClibc++/Make.defs else ifeq ($(CONFIG_LIBCXX),y) include libcxx/Make.defs -else ifeq ($(CONFIG_LIBCXXMINI),y) -include libcxxmini/Make.defs endif ifeq ($(CONFIG_ETL),y) @@ -45,6 +43,8 @@ endif ifeq ($(CONFIG_LIBCXXABI),y) include libcxxabi/Make.defs +else ifeq ($(CONFIG_LIBMINIABI),y) +include libminiabi/Make.defs endif # Object Files diff --git a/libs/libxx/libcxxmini/CMakeLists.txt b/libs/libxx/libminiabi/CMakeLists.txt similarity index 93% rename from libs/libxx/libcxxmini/CMakeLists.txt rename to libs/libxx/libminiabi/CMakeLists.txt index a36ef8c96fb..eac650b1501 100644 --- a/libs/libxx/libcxxmini/CMakeLists.txt +++ b/libs/libxx/libminiabi/CMakeLists.txt @@ -1,5 +1,5 @@ # ############################################################################## -# libs/libxx/libcxxmini/CMakeLists.txt +# libs/libxx/libminiabi/CMakeLists.txt # # SPDX-License-Identifier: Apache-2.0 # @@ -20,16 +20,16 @@ # # ############################################################################## -if(CONFIG_LIBCXXMINI) +if(CONFIG_LIBMINIABI) - nuttx_add_system_library(libcxxmini) + nuttx_add_system_library(libminiabi) if(NOT CONFIG_XTENSA_TOOLCHAIN_XCC) add_compile_options(-Wno-missing-exception-spec) endif() target_sources( - libcxxmini + libminiabi PRIVATE libxx_cxa_guard.cxx libxx_cxapurevirtual.cxx libxx_delete.cxx diff --git a/libs/libxx/libcxxmini/Make.defs b/libs/libxx/libminiabi/Make.defs similarity index 93% rename from libs/libxx/libcxxmini/Make.defs rename to libs/libxx/libminiabi/Make.defs index 816de500115..7272dd7ba9e 100644 --- a/libs/libxx/libcxxmini/Make.defs +++ b/libs/libxx/libminiabi/Make.defs @@ -1,5 +1,5 @@ ############################################################################ -# libs/libxx/libcxxmini/Make.defs +# libs/libxx/libminiabi/Make.defs # # SPDX-License-Identifier: Apache-2.0 # @@ -29,5 +29,5 @@ ifneq ($(CONFIG_XTENSA_TOOLCHAIN_XCC), y) CXXFLAGS += -Wno-missing-exception-spec endif -DEPPATH += --dep-path libcxxmini -VPATH += libcxxmini +DEPPATH += --dep-path libminiabi +VPATH += libminiabi diff --git a/libs/libxx/libcxxmini/libxx_cxa_guard.cxx b/libs/libxx/libminiabi/libxx_cxa_guard.cxx similarity index 98% rename from libs/libxx/libcxxmini/libxx_cxa_guard.cxx rename to libs/libxx/libminiabi/libxx_cxa_guard.cxx index ea7bac6a1e2..07cb2cbe398 100644 --- a/libs/libxx/libcxxmini/libxx_cxa_guard.cxx +++ b/libs/libxx/libminiabi/libxx_cxa_guard.cxx @@ -1,5 +1,5 @@ //*************************************************************************** -// libs/libxx/libcxxmini/libxx_cxa_guard.cxx +// libs/libxx/libminiabi/libxx_cxa_guard.cxx // // SPDX-License-Identifier: Apache-2.0 // diff --git a/libs/libxx/libcxxmini/libxx_cxapurevirtual.cxx b/libs/libxx/libminiabi/libxx_cxapurevirtual.cxx similarity index 97% rename from libs/libxx/libcxxmini/libxx_cxapurevirtual.cxx rename to libs/libxx/libminiabi/libxx_cxapurevirtual.cxx index d9a122363f5..95885100b9f 100644 --- a/libs/libxx/libcxxmini/libxx_cxapurevirtual.cxx +++ b/libs/libxx/libminiabi/libxx_cxapurevirtual.cxx @@ -1,5 +1,5 @@ //*************************************************************************** -// libs/libxx/libcxxmini/libxx_cxapurevirtual.cxx +// libs/libxx/libminiabi/libxx_cxapurevirtual.cxx // // SPDX-License-Identifier: Apache-2.0 // diff --git a/libs/libxx/libcxxmini/libxx_delete.cxx b/libs/libxx/libminiabi/libxx_delete.cxx similarity index 98% rename from libs/libxx/libcxxmini/libxx_delete.cxx rename to libs/libxx/libminiabi/libxx_delete.cxx index 8cd04d0f818..a363c949243 100644 --- a/libs/libxx/libcxxmini/libxx_delete.cxx +++ b/libs/libxx/libminiabi/libxx_delete.cxx @@ -1,5 +1,5 @@ //*************************************************************************** -// libs/libxx/libcxxmini/libxx_delete.cxx +// libs/libxx/libminiabi/libxx_delete.cxx // // SPDX-License-Identifier: Apache-2.0 // diff --git a/libs/libxx/libcxxmini/libxx_deletea.cxx b/libs/libxx/libminiabi/libxx_deletea.cxx similarity index 98% rename from libs/libxx/libcxxmini/libxx_deletea.cxx rename to libs/libxx/libminiabi/libxx_deletea.cxx index ca935f05dae..8218b734121 100644 --- a/libs/libxx/libcxxmini/libxx_deletea.cxx +++ b/libs/libxx/libminiabi/libxx_deletea.cxx @@ -1,5 +1,5 @@ //*************************************************************************** -// libs/libxx/libcxxmini/libxx_deletea.cxx +// libs/libxx/libminiabi/libxx_deletea.cxx // // Licensed to the Apache Software Foundation (ASF) under one or more // contributor license agreements. See the NOTICE file distributed with diff --git a/libs/libxx/libcxxmini/libxx_dynamic_cast.cxx b/libs/libxx/libminiabi/libxx_dynamic_cast.cxx similarity index 99% rename from libs/libxx/libcxxmini/libxx_dynamic_cast.cxx rename to libs/libxx/libminiabi/libxx_dynamic_cast.cxx index 046dea07229..62c066731ba 100644 --- a/libs/libxx/libcxxmini/libxx_dynamic_cast.cxx +++ b/libs/libxx/libminiabi/libxx_dynamic_cast.cxx @@ -1,5 +1,5 @@ /**************************************************************************** - * libs/libxx/libcxxmini/libxx_dynamic_cast.cxx + * libs/libxx/libminiabi/libxx_dynamic_cast.cxx * * Copyright 2010-2011 PathScale, Inc. All rights reserved. * diff --git a/libs/libxx/libcxxmini/libxx_new.cxx b/libs/libxx/libminiabi/libxx_new.cxx similarity index 98% rename from libs/libxx/libcxxmini/libxx_new.cxx rename to libs/libxx/libminiabi/libxx_new.cxx index 8416febc44b..80ce8b8f4ef 100644 --- a/libs/libxx/libcxxmini/libxx_new.cxx +++ b/libs/libxx/libminiabi/libxx_new.cxx @@ -1,5 +1,5 @@ //*************************************************************************** -// libs/libxx/libcxxmini/libxx_new.cxx +// libs/libxx/libminiabi/libxx_new.cxx // // SPDX-License-Identifier: Apache-2.0 // diff --git a/libs/libxx/libcxxmini/libxx_newa.cxx b/libs/libxx/libminiabi/libxx_newa.cxx similarity index 98% rename from libs/libxx/libcxxmini/libxx_newa.cxx rename to libs/libxx/libminiabi/libxx_newa.cxx index 8dbc57fa21c..6d53c358b6f 100644 --- a/libs/libxx/libcxxmini/libxx_newa.cxx +++ b/libs/libxx/libminiabi/libxx_newa.cxx @@ -1,5 +1,5 @@ //*************************************************************************** -// libs/libxx/libcxxmini/libxx_newa.cxx +// libs/libxx/libminiabi/libxx_newa.cxx // // SPDX-License-Identifier: Apache-2.0 // diff --git a/libs/libxx/libcxxmini/libxx_typeinfo.cxx b/libs/libxx/libminiabi/libxx_typeinfo.cxx similarity index 98% rename from libs/libxx/libcxxmini/libxx_typeinfo.cxx rename to libs/libxx/libminiabi/libxx_typeinfo.cxx index 662dcad790c..1172fb50306 100644 --- a/libs/libxx/libcxxmini/libxx_typeinfo.cxx +++ b/libs/libxx/libminiabi/libxx_typeinfo.cxx @@ -1,5 +1,5 @@ /**************************************************************************** - * libs/libxx/libcxxmini/libxx_typeinfo.cxx + * libs/libxx/libminiabi/libxx_typeinfo.cxx * * Copyright 2010-2011 PathScale, Inc. All rights reserved. * diff --git a/libs/libxx/libcxxmini/libxx_typeinfo.h b/libs/libxx/libminiabi/libxx_typeinfo.h similarity index 99% rename from libs/libxx/libcxxmini/libxx_typeinfo.h rename to libs/libxx/libminiabi/libxx_typeinfo.h index 8feb10ed9fc..f65e9e1096b 100644 --- a/libs/libxx/libcxxmini/libxx_typeinfo.h +++ b/libs/libxx/libminiabi/libxx_typeinfo.h @@ -1,5 +1,5 @@ /**************************************************************************** - * libs/libxx/libcxxmini/libxx_typeinfo.h + * libs/libxx/libminiabi/libxx_typeinfo.h * * Copyright 2010-2011 PathScale, Inc. All rights reserved. *