You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by GitBox <gi...@apache.org> on 2020/08/14 18:35:37 UTC

[GitHub] [incubator-nuttx] xiaoxiang781216 opened a new pull request #1592: libxx: Integrate libc++ latest official release

xiaoxiang781216 opened a new pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592


   ## Summary
   See discussion here:
   https://lists.apache.org/thread.html/r2c3b7d31cddec16ba31e50748207826bfe1908bc90d4dfc6e232144c%40%3Cdev.nuttx.apache.org%3E
   
   ## Impact
   
   ## Testing
   
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] xiaoxiang781216 commented on pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
xiaoxiang781216 commented on pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#issuecomment-715314018


   > @xiaoxiang781216
   > can you explain about libs/libxx/libxx_impure.cxx?
   
   _global_impure_ptr is used by libsupc++ to print error which normally provide by newlib but since NuttX has the builtin libc, we have to prvovide a dummy one.
   
   > for which configurations is it necessary?
   
   you can remove libxx_impure.cpp and try cxxtest in board/arm.
   
   > with what version of libsupc++ and reent.h?
   > 
   
   ```
   arm-none-eabi-gcc --version
   arm-none-eabi-gcc (GNU Tools for Arm Embedded Processors 9-2019-q4-major) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599]
   ```
   
   > for me it's broken.
   > #2063 + a few esp32 patch.
   > xtensa/esp32, with ESP-IDF provided gcc/libsupc++. (esp-2020r3-8.4.0)
   > reverting this libxx_impure.cxx commit makes it builds.
   
   can it pass link?
   
   > 
   > ```
   > libxx_impure.cxx:58:50: error: conflicting declaration '_reent* const _global_impure_ptr'
   >     struct _reent *const __ATTRIBUTE_IMPURE_PTR__ _global_impure_ptr = &impure_data;
   >                                                   ^~~~~~~~~~~~~~~~~~
   > In file included from /Users/yamamoto/.espressif/tools/xtensa-esp32-elf/esp-2020r3-8.4.0/xtensa-esp32-elf/xtensa-esp32-elf/sys-include/reent.h:93,
   >                  from libxx_impure.cxx:27:
   > /Users/yamamoto/.espressif/tools/xtensa-esp32-elf/esp-2020r3-8.4.0/xtensa-esp32-elf/xtensa-esp32-elf/sys-include/sys/reent.h:778:24: note: previous declaration as '_reent* _global_impure_ptr'
   >  extern struct _reent * _global_impure_ptr __ATTRIBUTE_IMPURE_PTR__;
   >                         ^~~~~~~~~~~~~~~~~~
   > ```
   
   it seem that the latest newlib add const to _global_impure_ptr.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] xiaoxiang781216 commented on a change in pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
xiaoxiang781216 commented on a change in pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#discussion_r471539374



##########
File path: libs/libxx/libcxx.defs
##########
@@ -0,0 +1,50 @@
+############################################################################
+# libs/libxx/libcxx.defs
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.  The
+# ASF licenses this file to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance with the
+# License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+###########################################################################
+
+VERSION=11.0.0
+
+$(TOPDIR)/include/libcxx:
+	$(Q) wget https://github.com/llvm/llvm-project/releases/download/llvmorg-$(VERSION)-rc1/libcxx-$(VERSION)rc1.src.tar.xz

Review comment:
       I have to move rc1 out of VERSION, because the directory contain '-'(llvmorg-$(VERSION)-rc1), but the file name don't(libcxx-$(VERSION)rc1.src.tar.xz).
   
   




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] Ouss4 commented on a change in pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
Ouss4 commented on a change in pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#discussion_r471172036



##########
File path: libs/libxx/libcxx.defs
##########
@@ -0,0 +1,56 @@
+############################################################################
+# libs/libxx/libcxx.defs
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.  The
+# ASF licenses this file to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance with the
+# License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+###########################################################################
+
+VERSION=11.0.0
+
+$(TOPDIR)/include/libcxx:
+	$(Q) wget https://github.com/llvm/llvm-project/releases/download/llvmorg-$(VERSION)-rc1/libcxx-$(VERSION)rc1.src.tar.xz
+	$(Q) tar -xf libcxx-$(VERSION)rc1.src.tar.xz
+	$(Q) $(DELFILE) libcxx-$(VERSION)rc1.src.tar.xz
+	$(Q) mv libcxx-$(VERSION)rc1.src libcxx
+	$(Q) patch -p0 < 0001-libcxx-Port-to-NuttX-https-nuttx.apache.org-RTOS.patch
+	$(Q) $(DIRLINK) $(CURDIR)/libcxx/include $(TOPDIR)/include/libcxx
+
+dirlinks:: $(TOPDIR)/include/libcxx
+
+distclean::
+	$(Q) $(DIRUNLINK) $(TOPDIR)/include/libcxx
+	$(call DELDIR, libcxx)
+
+CXXFLAGS += ${shell $(DEFINE) "$(CC)" __GLIBCXX__}
+CXXFLAGS += ${shell $(DEFINE) "$(CC)" _LIBCPP_BUILDING_LIBRARY}
+
+CPPSRCS += algorithm.cpp any.cpp atomic.cpp barrier.cpp bind.cpp charconv.cpp
+CPPSRCS += chrono.cpp condition_variable.cpp condition_variable_destructor.cpp
+CPPSRCS += debug.cpp exception.cpp functional.cpp future.cpp hash.cpp ios.cpp
+CPPSRCS += iostream.cpp locale.cpp memory.cpp mutex.cpp mutex_destructor.cpp
+CPPSRCS += new.cpp optional.cpp random.cpp regex.cpp shared_mutex.cpp
+CPPSRCS += stdexcept.cpp string.cpp strstream.cpp system_error.cpp thread.cpp
+CPPSRCS += typeinfo.cpp utility.cpp valarray.cpp variant.cpp vector.cpp
+CPPSRCS += memory_resource.cpp
+CPPSRCS += directory_iterator.cpp int128_builtins.cpp operations.cpp

Review comment:
       These are all the files present in some directories? Can't you just grab everything with:
   `CPPSRCS := $(notdir $(wildcard $(DIR_NAME)$(DELIM)*.cpp))`
   




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] xiaoxiang781216 commented on pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
xiaoxiang781216 commented on pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#issuecomment-674219861


   > Do I understand correctly that @acassis 's fork of libcxx is no longer needed with this?
   
   Yes.
   
   > Is that patch the only modification required from upstream libcxx? If so, it does not seem something difficult to request to be upstreamed. That would be ideal.
   > Anyway, not opposing to the change which includes the patch, just thought it was worth mentioning.
   
   
   Yes, I plan to upstream the patch to libc++ community in the next couple weeks. Once llvm official release include the patch, I will remove it from NuttX.
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] v01d commented on pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
v01d commented on pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#issuecomment-674940220


   BTW, have you looked at this commit from Alan's fork? There are a few extra modifications he did to the config which I'm not sure if are still relevant: https://bitbucket.org/acassis/libcxx/commits/dc04de88990b2911db25335f9039e53743ea2bd7
   
   Also, is there a libcxx build on CI? Maybe later we should add a CI configuration using libcxx if not. 
   Anyway, if it builds for you I can merge, unless @acassis has something to say about it.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] v01d commented on a change in pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
v01d commented on a change in pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#discussion_r471549627



##########
File path: libs/libxx/libcxx.defs
##########
@@ -0,0 +1,50 @@
+############################################################################
+# libs/libxx/libcxx.defs
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.  The
+# ASF licenses this file to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance with the
+# License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+###########################################################################
+
+VERSION=11.0.0
+
+$(TOPDIR)/include/libcxx:
+	$(Q) wget https://github.com/llvm/llvm-project/releases/download/llvmorg-$(VERSION)-rc1/libcxx-$(VERSION)rc1.src.tar.xz

Review comment:
       Ok, I agree




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] v01d commented on a change in pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
v01d commented on a change in pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#discussion_r471527797



##########
File path: libs/libxx/libcxx.defs
##########
@@ -0,0 +1,50 @@
+############################################################################
+# libs/libxx/libcxx.defs
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.  The
+# ASF licenses this file to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance with the
+# License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+###########################################################################
+
+VERSION=11.0.0
+
+$(TOPDIR)/include/libcxx:
+	$(Q) wget https://github.com/llvm/llvm-project/releases/download/llvmorg-$(VERSION)-rc1/libcxx-$(VERSION)rc1.src.tar.xz

Review comment:
       is it ok that this is based around the rc1 of every version? maybe rc1 should be part of VERSION




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] v01d commented on pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
v01d commented on pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#issuecomment-674989535


   Ok, I'll merge then.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] xiaoxiang781216 commented on a change in pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
xiaoxiang781216 commented on a change in pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#discussion_r471548252



##########
File path: libs/libxx/libcxx.defs
##########
@@ -0,0 +1,50 @@
+############################################################################
+# libs/libxx/libcxx.defs
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.  The
+# ASF licenses this file to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance with the
+# License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+###########################################################################
+
+VERSION=11.0.0
+
+$(TOPDIR)/include/libcxx:
+	$(Q) wget https://github.com/llvm/llvm-project/releases/download/llvmorg-$(VERSION)-rc1/libcxx-$(VERSION)rc1.src.tar.xz

Review comment:
       rc1 is a special case, I have to use rc1 becasue it's more match our code base than 10.0.1. In the furture, it's better to align with the official release instead of release candidate. So rc1 will disappear once libc++ 11.0.0 is out.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] yamt commented on pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
yamt commented on pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#issuecomment-715301848


   @xiaoxiang781216 
   can you explain about libs/libxx/libxx_impure.cxx?
   for which configurations is it necessary?
   with what version of libsupc++ and reent.h?
   
   for me it's broken.
   https://github.com/apache/incubator-nuttx/pull/2063 + a few esp32 patch.
   xtensa/esp32, with ESP-IDF provided gcc/libsupc++. (esp-2020r3-8.4.0)
   reverting this libxx_impure.cxx commit makes it builds.
   ```
   libxx_impure.cxx:58:50: error: conflicting declaration '_reent* const _global_impure_ptr'
       struct _reent *const __ATTRIBUTE_IMPURE_PTR__ _global_impure_ptr = &impure_data;
                                                     ^~~~~~~~~~~~~~~~~~
   In file included from /Users/yamamoto/.espressif/tools/xtensa-esp32-elf/esp-2020r3-8.4.0/xtensa-esp32-elf/xtensa-esp32-elf/sys-include/reent.h:93,
                    from libxx_impure.cxx:27:
   /Users/yamamoto/.espressif/tools/xtensa-esp32-elf/esp-2020r3-8.4.0/xtensa-esp32-elf/xtensa-esp32-elf/sys-include/sys/reent.h:778:24: note: previous declaration as '_reent* _global_impure_ptr'
    extern struct _reent * _global_impure_ptr __ATTRIBUTE_IMPURE_PTR__;
                           ^~~~~~~~~~~~~~~~~~
   ```


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] xiaoxiang781216 commented on pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
xiaoxiang781216 commented on pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#issuecomment-674947959


   > BTW, have you looked at this commit from Alan's fork? There are a few extra modifications he did to the config which I'm not sure if are still relevant: https://bitbucket.org/acassis/libcxx/commits/dc04de88990b2911db25335f9039e53743ea2bd7
   > 
   
   The exra modification don't need in the latest libc++ code base.
   
   > Also, is there a libcxx build on CI? Maybe later we should add a CI configuration using libcxx if not.
   > Anyway, if it builds for you I can merge, unless @acassis has something to say about it.
   
   I will update CI later after I finish to move the compiler setting to Toolchain.defs. Yes, the same code work well in our internal repo.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] v01d merged pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
v01d merged pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592


   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] v01d commented on pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
v01d commented on pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#issuecomment-674211441


   Do I understand correctly that @acassis 's fork of libcxx is no longer needed with this? Is that patch the only modification required from upstream libcxx? If so, it does not seem something difficult to request to be upstreamed. That would be ideal.
   Anyway, not opposing to the change which includes the patch, just thought it was worth mentioning.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] v01d commented on a change in pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
v01d commented on a change in pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#discussion_r471542457



##########
File path: libs/libxx/libcxx.defs
##########
@@ -0,0 +1,50 @@
+############################################################################
+# libs/libxx/libcxx.defs
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.  The
+# ASF licenses this file to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance with the
+# License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+###########################################################################
+
+VERSION=11.0.0
+
+$(TOPDIR)/include/libcxx:
+	$(Q) wget https://github.com/llvm/llvm-project/releases/download/llvmorg-$(VERSION)-rc1/libcxx-$(VERSION)rc1.src.tar.xz

Review comment:
       Maybe something like defining `EXTRAVERSION=rc1` and build the required tar and directory names from that.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] yamt commented on pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
yamt commented on pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#issuecomment-715359623


   > > for me it's broken.
   > > #2063 + a few esp32 patch.
   > > xtensa/esp32, with ESP-IDF provided gcc/libsupc++. (esp-2020r3-8.4.0)
   > > reverting this libxx_impure.cxx commit makes it builds.
   > 
   > can it pass link?
   
   yes.
   helloxx works on qemu.
   
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] xiaoxiang781216 commented on a change in pull request #1592: libxx: Integrate libc++ latest official release

Posted by GitBox <gi...@apache.org>.
xiaoxiang781216 commented on a change in pull request #1592:
URL: https://github.com/apache/incubator-nuttx/pull/1592#discussion_r471213303



##########
File path: libs/libxx/libcxx.defs
##########
@@ -0,0 +1,56 @@
+############################################################################
+# libs/libxx/libcxx.defs
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.  The
+# ASF licenses this file to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance with the
+# License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+###########################################################################
+
+VERSION=11.0.0
+
+$(TOPDIR)/include/libcxx:
+	$(Q) wget https://github.com/llvm/llvm-project/releases/download/llvmorg-$(VERSION)-rc1/libcxx-$(VERSION)rc1.src.tar.xz
+	$(Q) tar -xf libcxx-$(VERSION)rc1.src.tar.xz
+	$(Q) $(DELFILE) libcxx-$(VERSION)rc1.src.tar.xz
+	$(Q) mv libcxx-$(VERSION)rc1.src libcxx
+	$(Q) patch -p0 < 0001-libcxx-Port-to-NuttX-https-nuttx.apache.org-RTOS.patch
+	$(Q) $(DIRLINK) $(CURDIR)/libcxx/include $(TOPDIR)/include/libcxx
+
+dirlinks:: $(TOPDIR)/include/libcxx
+
+distclean::
+	$(Q) $(DIRUNLINK) $(TOPDIR)/include/libcxx
+	$(call DELDIR, libcxx)
+
+CXXFLAGS += ${shell $(DEFINE) "$(CC)" __GLIBCXX__}
+CXXFLAGS += ${shell $(DEFINE) "$(CC)" _LIBCPP_BUILDING_LIBRARY}
+
+CPPSRCS += algorithm.cpp any.cpp atomic.cpp barrier.cpp bind.cpp charconv.cpp
+CPPSRCS += chrono.cpp condition_variable.cpp condition_variable_destructor.cpp
+CPPSRCS += debug.cpp exception.cpp functional.cpp future.cpp hash.cpp ios.cpp
+CPPSRCS += iostream.cpp locale.cpp memory.cpp mutex.cpp mutex_destructor.cpp
+CPPSRCS += new.cpp optional.cpp random.cpp regex.cpp shared_mutex.cpp
+CPPSRCS += stdexcept.cpp string.cpp strstream.cpp system_error.cpp thread.cpp
+CPPSRCS += typeinfo.cpp utility.cpp valarray.cpp variant.cpp vector.cpp
+CPPSRCS += memory_resource.cpp
+CPPSRCS += directory_iterator.cpp int128_builtins.cpp operations.cpp

Review comment:
       @Ouss4 done.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org