156a835a5SJohn Marino /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ 256a835a5SJohn Marino /* Declarations for getopt. 3*4ce1b016SDaniel Fojt Copyright (C) 1989-2020 Free Software Foundation, Inc. 4*4ce1b016SDaniel Fojt This file is part of gnulib. 5*4ce1b016SDaniel Fojt Unlike most of the getopt implementation, it is NOT shared 6*4ce1b016SDaniel Fojt with the GNU C Library, which supplies a different version of 7*4ce1b016SDaniel Fojt this file. 856a835a5SJohn Marino 9*4ce1b016SDaniel Fojt This file is free software; you can redistribute it and/or modify it 10*4ce1b016SDaniel Fojt under the terms of the GNU General Public License as 11*4ce1b016SDaniel Fojt published by the Free Software Foundation; either version 3 of 12*4ce1b016SDaniel Fojt the License, or (at your option) any later version. 1356a835a5SJohn Marino 14*4ce1b016SDaniel Fojt This file is distributed in the hope that it will be useful, but 15*4ce1b016SDaniel Fojt WITHOUT ANY WARRANTY; without even the implied warranty of 16*4ce1b016SDaniel Fojt MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17*4ce1b016SDaniel Fojt General Public License for more details. 1856a835a5SJohn Marino 19*4ce1b016SDaniel Fojt You should have received a copy of the GNU General Public 20*4ce1b016SDaniel Fojt License along with gnulib; if not, see <https://www.gnu.org/licenses/>. */ 2156a835a5SJohn Marino 2256a835a5SJohn Marino #ifndef _GL_GETOPT_H 2356a835a5SJohn Marino 2456a835a5SJohn Marino #if __GNUC__ >= 3 2556a835a5SJohn Marino #pragma GCC system_header 2656a835a5SJohn Marino #endif 2756a835a5SJohn Marino 28e54473e5SJohn Marino 2956a835a5SJohn Marino /* The include_next requires a split double-inclusion guard. We must 3056a835a5SJohn Marino also inform the replacement unistd.h to not recursively use 3156a835a5SJohn Marino <getopt.h>; our definitions will be present soon enough. */ 3256a835a5SJohn Marino #if 1 3356a835a5SJohn Marino # define _GL_SYSTEM_GETOPT 3456a835a5SJohn Marino # include_next <getopt.h> 3556a835a5SJohn Marino # undef _GL_SYSTEM_GETOPT 3656a835a5SJohn Marino #endif 3756a835a5SJohn Marino 3856a835a5SJohn Marino #define _GL_GETOPT_H 1 3956a835a5SJohn Marino 4056a835a5SJohn Marino /* Standalone applications should #define __GETOPT_PREFIX to an 4156a835a5SJohn Marino identifier that prefixes the external functions and variables 42*4ce1b016SDaniel Fojt defined in getopt-core.h and getopt-ext.h. When this happens, 43*4ce1b016SDaniel Fojt include the headers that might declare getopt so that they will not 44*4ce1b016SDaniel Fojt cause confusion if included after this file (if the system had 45*4ce1b016SDaniel Fojt <getopt.h>, we have already included it). */ 46*4ce1b016SDaniel Fojt #if defined __GETOPT_PREFIX 4756a835a5SJohn Marino # if !1 4851ddd709SJohn Marino # define __need_system_stdlib_h 4956a835a5SJohn Marino # include <stdlib.h> 5051ddd709SJohn Marino # undef __need_system_stdlib_h 5156a835a5SJohn Marino # include <stdio.h> 5256a835a5SJohn Marino # include <unistd.h> 5356a835a5SJohn Marino # endif 5456a835a5SJohn Marino #endif 5556a835a5SJohn Marino 5656a835a5SJohn Marino /* The definition of _GL_ARG_NONNULL is copied here. */ 57*4ce1b016SDaniel Fojt /* A C macro for declaring that specific arguments must not be NULL. 58*4ce1b016SDaniel Fojt Copyright (C) 2009-2020 Free Software Foundation, Inc. 59*4ce1b016SDaniel Fojt 60*4ce1b016SDaniel Fojt This program is free software: you can redistribute it and/or modify it 61*4ce1b016SDaniel Fojt under the terms of the GNU General Public License as published 62*4ce1b016SDaniel Fojt by the Free Software Foundation; either version 3 of the License, or 63*4ce1b016SDaniel Fojt (at your option) any later version. 64*4ce1b016SDaniel Fojt 65*4ce1b016SDaniel Fojt This program is distributed in the hope that it will be useful, 66*4ce1b016SDaniel Fojt but WITHOUT ANY WARRANTY; without even the implied warranty of 67*4ce1b016SDaniel Fojt MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 68*4ce1b016SDaniel Fojt General Public License for more details. 69*4ce1b016SDaniel Fojt 70*4ce1b016SDaniel Fojt You should have received a copy of the GNU General Public License 71*4ce1b016SDaniel Fojt along with this program. If not, see <https://www.gnu.org/licenses/>. */ 72*4ce1b016SDaniel Fojt 7356a835a5SJohn Marino /* _GL_ARG_NONNULL((n,...,m)) tells the compiler and static analyzer tools 7456a835a5SJohn Marino that the values passed as arguments n, ..., m must be non-NULL pointers. 7556a835a5SJohn Marino n = 1 stands for the first argument, n = 2 for the second argument etc. */ 7656a835a5SJohn Marino #ifndef _GL_ARG_NONNULL 7756a835a5SJohn Marino # if (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || __GNUC__ > 3 7856a835a5SJohn Marino # define _GL_ARG_NONNULL(params) __attribute__ ((__nonnull__ params)) 7956a835a5SJohn Marino # else 8056a835a5SJohn Marino # define _GL_ARG_NONNULL(params) 8156a835a5SJohn Marino # endif 8256a835a5SJohn Marino #endif 8356a835a5SJohn Marino 84*4ce1b016SDaniel Fojt #include <getopt-cdefs.h> 85*4ce1b016SDaniel Fojt #include <getopt-pfx-core.h> 86*4ce1b016SDaniel Fojt #include <getopt-pfx-ext.h> 8756a835a5SJohn Marino 88e54473e5SJohn Marino #endif /* _GL_GETOPT_H */ 89