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 2023/01/20 09:00:19 UTC

[GitHub] [nuttx] pkarashchenko commented on a diff in pull request #8173: LLVM libcxx upgrade from 12.0.0 to 14.0.6

pkarashchenko commented on code in PR #8173:
URL: https://github.com/apache/nuttx/pull/8173#discussion_r1082252596


##########
libs/libxx/__config_site:
##########
@@ -0,0 +1,69 @@
+/****************************************************************************
+ * libs/libxx/__config_site
+ *
+ * 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.
+ *
+ ****************************************************************************/
+
+/* Additional port configuration used by llvm libcxx.
+ * 
+ * This file is typically generated by CMake during configuration and used 
+ * to customize the build configuration for libcxx. As NuttX does not have 
+ * this functionality, this file is copied into the libcxx tree when NuttX 
+ * is initially built.
+ */
+
+
+#ifndef _LIBCPP_CONFIG_SITE
+#define _LIBCPP_CONFIG_SITE

Review Comment:
   ```suggestion
   #ifndef __LIBS_LIBXX_LIBCPP___CONFIG_SITE
   #define __LIBS_LIBXX_LIBCPP___CONFIG_SITE
   ```



##########
libs/libxx/__config_site:
##########
@@ -0,0 +1,69 @@
+/****************************************************************************
+ * libs/libxx/__config_site
+ *
+ * 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.
+ *
+ ****************************************************************************/
+
+/* Additional port configuration used by llvm libcxx.
+ * 
+ * This file is typically generated by CMake during configuration and used 
+ * to customize the build configuration for libcxx. As NuttX does not have 
+ * this functionality, this file is copied into the libcxx tree when NuttX 
+ * is initially built.
+ */
+
+
+#ifndef _LIBCPP_CONFIG_SITE
+#define _LIBCPP_CONFIG_SITE
+
+/* 
+ * Use a directory iterator for __remove_all implementation, as openat and 
+ * unlinkat are not defined.
+*/
+#define REMOVE_ALL_USE_DIRECTORY_ITERATOR
+
+/*
+ * The following is the original contents of __config_site.in. The necessity
+ * of supplying these options is yet to be determined.
+
+ * #cmakedefine _LIBCPP_ABI_VERSION @_LIBCPP_ABI_VERSION@
+ * #cmakedefine _LIBCPP_ABI_UNSTABLE
+ * #cmakedefine _LIBCPP_ABI_FORCE_ITANIUM
+ * #cmakedefine _LIBCPP_ABI_FORCE_MICROSOFT
+ * #cmakedefine _LIBCPP_HIDE_FROM_ABI_PER_TU_BY_DEFAULT
+ * #cmakedefine _LIBCPP_HAS_NO_THREADS
+ * #cmakedefine _LIBCPP_HAS_NO_MONOTONIC_CLOCK
+ * #cmakedefine _LIBCPP_HAS_MUSL_LIBC
+ * #cmakedefine _LIBCPP_HAS_THREAD_API_PTHREAD
+ * #cmakedefine _LIBCPP_HAS_THREAD_API_EXTERNAL
+ * #cmakedefine _LIBCPP_HAS_THREAD_API_WIN32
+ * #cmakedefine _LIBCPP_HAS_THREAD_LIBRARY_EXTERNAL
+ * #cmakedefine _LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS
+ * #cmakedefine _LIBCPP_HAS_NO_VENDOR_AVAILABILITY_ANNOTATIONS
+ * #cmakedefine _LIBCPP_NO_VCRUNTIME
+ * #cmakedefine _LIBCPP_TYPEINFO_COMPARISON_IMPLEMENTATION @_LIBCPP_TYPEINFO_COMPARISON_IMPLEMENTATION@
+ * #cmakedefine _LIBCPP_ABI_NAMESPACE @_LIBCPP_ABI_NAMESPACE@
+ * #cmakedefine _LIBCPP_HAS_NO_FILESYSTEM_LIBRARY
+ * #cmakedefine _LIBCPP_HAS_PARALLEL_ALGORITHMS
+ * #cmakedefine _LIBCPP_HAS_NO_RANDOM_DEVICE
+ * #cmakedefine _LIBCPP_HAS_NO_LOCALIZATION
+ * #cmakedefine _LIBCPP_HAS_NO_WIDE_CHARACTERS
+ * #cmakedefine _LIBCPP_HAS_NO_INCOMPLETE_FORMAT
+ * #cmakedefine _LIBCPP_HAS_NO_INCOMPLETE_RANGES
+*/
+
+#endif // _LIBCPP_CONFIG_SITE

Review Comment:
   ```suggestion
   #endif // __LIBS_LIBXX_LIBCPP___CONFIG_SITE
   ```



##########
fs/vfs/fs_symlink.c:
##########
@@ -180,4 +180,30 @@ int symlink(FAR const char *path1, FAR const char *path2)
   return ERROR;
 }
 
+/****************************************************************************
+ * Name: link
+ *
+ * Description:
+ *  The link function provides a wrapper to symlink. Solely to provide
+ *  compatibility to posix compatibility layer, in
+ *  libxx/libcxx/src/filesystem/posix_compat.h.
+ *
+ *  See symlink for details on limitations.
+ *
+ * Input Parameters:
+ *   path1 - Points to a pathname naming an existing file.
+ *   path2 - Points to a pathname naming the new directory entry to be
+ *           created.
+ *
+ * Returned Value:
+ *   On success, zero (OK) is returned.  Otherwise, -1 (ERROR) is returned
+ *   the errno variable is set appropriately.
+ *
+ ****************************************************************************/
+
+int link(FAR const char *path1, FAR const char *path2)

Review Comment:
   is `link` required to be a function? Can we use macro instead?



-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@nuttx.apache.org

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