You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by da...@apache.org on 2021/12/06 14:30:22 UTC

[incubator-nuttx] branch master updated: libc/getopt: Move struct getopt_s to include/nuttx/tls.h

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

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


The following commit(s) were added to refs/heads/master by this push:
     new a6eb6df  libc/getopt: Move struct getopt_s to include/nuttx/tls.h
a6eb6df is described below

commit a6eb6df688c4c8ccd9512092f930ef2e045d4eca
Author: Xiang Xiao <xi...@xiaomi.com>
AuthorDate: Mon Dec 6 01:01:01 2021 +0800

    libc/getopt: Move struct getopt_s to include/nuttx/tls.h
    
    and remove include/nuttx/lib/getopt.h
    
    Signed-off-by: Xiang Xiao <xi...@xiaomi.com>
---
 include/nuttx/lib/getopt.h | 75 ----------------------------------------------
 include/nuttx/tls.h        | 18 ++++++++++-
 libs/libc/unistd/unistd.h  |  3 +-
 3 files changed, 18 insertions(+), 78 deletions(-)

diff --git a/include/nuttx/lib/getopt.h b/include/nuttx/lib/getopt.h
deleted file mode 100644
index 9eb7b3a..0000000
--- a/include/nuttx/lib/getopt.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/****************************************************************************
- * include/nuttx/lib/getopt.h
- *
- * 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.
- *
- ****************************************************************************/
-
-#ifndef __INCLUDE_NUTTX_LIB_GETOPT_H
-#define __INCLUDE_NUTTX_LIB_GETOPT_H
-
-/****************************************************************************
- * Included Files
- ****************************************************************************/
-
-#include <nuttx/config.h>
-
-#include <stdbool.h>
-
-/****************************************************************************
- * Public Types
- ****************************************************************************/
-
-/* This structure encapsulates all variables associated with getopt(). */
-
-struct getopt_s
-{
-  /* Part of the implementation of the public getopt() interface */
-
-  FAR char *go_optarg;       /* Optional argument following option */
-  int       go_opterr;       /* Print error message */
-  int       go_optind;       /* Index into argv */
-  int       go_optopt;       /* unrecognized option character */
-
-  /* Internal getopt() state */
-
-  FAR char *go_optptr;       /* Current parsing location */
-  bool      go_binitialized; /* true:  getopt() has been initialized */
-};
-
-/****************************************************************************
- * Public Data
- ****************************************************************************/
-
-#undef EXTERN
-#if defined(__cplusplus)
-#define EXTERN extern "C"
-extern "C"
-{
-#else
-#define EXTERN extern
-#endif
-
-/****************************************************************************
- * Public Function Prototypes
- ****************************************************************************/
-
-#undef EXTERN
-#if defined(__cplusplus)
-}
-#endif
-
-#endif /* __INCLUDE_NUTTX_LIB_GETOPT_H */
diff --git a/include/nuttx/tls.h b/include/nuttx/tls.h
index 88ab9bf..0ba9549 100644
--- a/include/nuttx/tls.h
+++ b/include/nuttx/tls.h
@@ -29,7 +29,6 @@
 
 #include <nuttx/sched.h>
 #include <nuttx/arch.h>
-#include <nuttx/lib/getopt.h>
 #include <sys/types.h>
 
 /****************************************************************************
@@ -83,6 +82,23 @@ typedef CODE void (*tls_dtor_t)(FAR void *);
 
 #endif
 
+/* This structure encapsulates all variables associated with getopt(). */
+
+struct getopt_s
+{
+  /* Part of the implementation of the public getopt() interface */
+
+  FAR char *go_optarg;       /* Optional argument following option */
+  int       go_opterr;       /* Print error message */
+  int       go_optind;       /* Index into argv */
+  int       go_optopt;       /* unrecognized option character */
+
+  /* Internal getopt() state */
+
+  FAR char *go_optptr;       /* Current parsing location */
+  bool      go_binitialized; /* true:  getopt() has been initialized */
+};
+
 struct task_info_s
 {
   sem_t           ta_sem;
diff --git a/libs/libc/unistd/unistd.h b/libs/libc/unistd/unistd.h
index c63169c..2ddbbdf 100644
--- a/libs/libc/unistd/unistd.h
+++ b/libs/libc/unistd/unistd.h
@@ -26,12 +26,11 @@
  ****************************************************************************/
 
 #include <nuttx/config.h>
+#include <nuttx/tls.h>
 
 #include <stdbool.h>
 #include <getopt.h>
 
-#include <nuttx/lib/getopt.h>
-
 /****************************************************************************
  * Public Data
  ****************************************************************************/