This is an automated email from the ASF dual-hosted git repository.

raiden00 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit 766e4a415470041c3e6c4b32909551acef374e08
Author: zhanghongyu <zhanghon...@xiaomi.com>
AuthorDate: Thu Oct 26 14:34:49 2023 +0800

    libs/libc: adapt the cmake script from the makefile
    
    fix the cmake build error.
    
    Signed-off-by: zhanghongyu <zhanghon...@xiaomi.com>
---
 libs/libc/builtin/CMakeLists.txt               | 12 ++++++++--
 libs/libc/{builtin => gpsutils}/CMakeLists.txt | 32 ++++++++++++++++++++++----
 libs/libc/misc/CMakeLists.txt                  |  8 +++++++
 3 files changed, 45 insertions(+), 7 deletions(-)

diff --git a/libs/libc/builtin/CMakeLists.txt b/libs/libc/builtin/CMakeLists.txt
index 6e5bf230a9..acb822b131 100644
--- a/libs/libc/builtin/CMakeLists.txt
+++ b/libs/libc/builtin/CMakeLists.txt
@@ -19,8 +19,16 @@
 # 
##############################################################################
 
 if(CONFIG_BUILTIN)
-  set(SRCS lib_builtin_getname.c lib_builtin_isavail.c lib_builtin_forindex.c
-           lib_builtin_setlist.c)
+  set(SRCS lib_builtin_getname.c lib_builtin_isavail.c lib_builtin_forindex.c)
+
+  if(CONFIG_BUILD_PROTECTED)
+    list(APPEND SRCS lib_builtin_setlist.c)
+  endif()
+
+  if(CONFIG_SCHED_USER_IDENTITY)
+    list(APPEND SRCS lib_builtin_getuid.c lib_builtin_getgid.c
+         lib_builtin_getmode.c)
+  endif()
 
   target_sources(c PRIVATE ${SRCS})
 endif()
diff --git a/libs/libc/builtin/CMakeLists.txt 
b/libs/libc/gpsutils/CMakeLists.txt
similarity index 55%
copy from libs/libc/builtin/CMakeLists.txt
copy to libs/libc/gpsutils/CMakeLists.txt
index 6e5bf230a9..8048a84058 100644
--- a/libs/libc/builtin/CMakeLists.txt
+++ b/libs/libc/gpsutils/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# libs/libc/builtin/CMakeLists.txt
+# libs/libc/gpsutils/CMakeLists.txt
 #
 # Licensed to the Apache Software Foundation (ASF) under one or more 
contributor
 # license agreements.  See the NOTICE file distributed with this work for
@@ -18,9 +18,31 @@
 #
 # 
##############################################################################
 
-if(CONFIG_BUILTIN)
-  set(SRCS lib_builtin_getname.c lib_builtin_isavail.c lib_builtin_forindex.c
-           lib_builtin_setlist.c)
+nuttx_generate_kconfig(MENUDESC "GPS Utilities")
+
+if(CONFIG_GPSUTILS_MINMEA_LIB)
+
+  set(MINMEA_DIR ${CMAKE_CURRENT_LIST_DIR}/minmea)
+
+  if(NOT EXISTS ${MINMEA_DIR})
+    set(MINMEA_URL https://github.com/kosma/minmea/archive)
+    set(MINMEA_VERSION db46128e73cee26d6a6eb0482dcba544ee1ea9f5)
+
+    FetchContent_Declare(
+      minmea_fetch
+      URL ${MINMEA_URL}/${MINMEA_VERSION}.zip SOURCE_DIR
+          ${CMAKE_CURRENT_LIST_DIR}/minmea BINARY_DIR
+          ${CMAKE_BINARY_DIR}/libs/libc/gpsutils/minmea
+      DOWNLOAD_NO_PROGRESS true
+      TIMEOUT 30)
+
+    FetchContent_GetProperties(minmea_fetch)
+
+    if(NOT minmea_fetch_POPULATED)
+      FetchContent_Populate(minmea_fetch)
+    endif()
+  endif()
+
+  target_sources(c PRIVATE minmea/minmea.c)
 
-  target_sources(c PRIVATE ${SRCS})
 endif()
diff --git a/libs/libc/misc/CMakeLists.txt b/libs/libc/misc/CMakeLists.txt
index 4add363982..077c348b06 100644
--- a/libs/libc/misc/CMakeLists.txt
+++ b/libs/libc/misc/CMakeLists.txt
@@ -98,4 +98,12 @@ if(CONFIG_LIBC_ENVPATH)
   list(APPEND SRCS lib_envpath.c)
 endif()
 
+if(CONFIG_FDSAN)
+  list(APPEND SRCS lib_fdsan.c)
+endif()
+
+if(CONFIG_FDCHECK)
+  list(APPEND SRCS lib_fdcheck.c)
+endif()
+
 target_sources(c PRIVATE ${SRCS})

Reply via email to