[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lib-src/getopt.h
From: |
Miles Bader |
Subject: |
[Emacs-diffs] Changes to emacs/lib-src/getopt.h |
Date: |
Fri, 04 Apr 2003 01:21:36 -0500 |
Index: emacs/lib-src/getopt.h
diff -c emacs/lib-src/getopt.h:1.11 emacs/lib-src/getopt.h:1.12
*** emacs/lib-src/getopt.h:1.11 Wed Aug 23 17:41:36 2000
--- emacs/lib-src/getopt.h Wed Dec 4 06:08:06 2002
***************
*** 1,21 ****
/* Declarations for getopt.
! Copyright (C) 1989,90,91,92,93,94,96,97,98 Free Software Foundation, Inc.
! NOTE: The canonical source of this file is maintained with the GNU C
Library.
! Bugs can be reported to address@hidden
! This program is free software; you can redistribute it and/or modify it
! under the terms of the GNU General Public License as published by the
! Free Software Foundation; either version 2, or (at your option) any
! later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
! You should have received a copy of the GNU General Public License
! along with this program; if not, write to the Free Software
! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
! USA. */
#ifndef _GETOPT_H
--- 1,20 ----
/* Declarations for getopt.
! Copyright (C) 1989-1994, 1996-1999, 2001 Free Software Foundation, Inc.
! This file is part of the GNU C Library.
!
! This program is free software; you can redistribute it and/or modify
! it under the terms of the GNU General Public License as published by
! the Free Software Foundation; either version 2, or (at your option)
! any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
! You should have received a copy of the GNU General Public License along
! with this program; if not, write to the Free Software Foundation,
! Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#ifndef _GETOPT_H
***************
*** 23,28 ****
--- 22,38 ----
# define _GETOPT_H 1
#endif
+ /* If __GNU_LIBRARY__ is not already defined, either we are being used
+ standalone, or this is the first header included in the source file.
+ If we are being used with glibc, we need to include <features.h>, but
+ that does not exist if we are standalone. So: if __GNU_LIBRARY__ is
+ not defined, include <ctype.h>, which will pull in <features.h> for us
+ if it's from glibc. (Why ctype.h? It's guaranteed to exist and it
+ doesn't flood the namespace with stuff the way some other headers do.) */
+ #if !defined __GNU_LIBRARY__
+ # include <ctype.h>
+ #endif
+
#ifdef __cplusplus
extern "C" {
#endif
***************
*** 82,88 ****
struct option
{
! # if defined __STDC__ && __STDC__
const char *name;
# else
char *name;
--- 92,98 ----
struct option
{
! # if (defined __STDC__ && __STDC__) || defined __cplusplus
const char *name;
# else
char *name;
***************
*** 126,150 ****
arguments to the option '\0'. This behavior is specific to the GNU
`getopt'. */
! #if defined __STDC__ && __STDC__
# ifdef __GNU_LIBRARY__
/* Many other libraries have conflicting prototypes for getopt, with
differences in the consts, in stdlib.h. To avoid compilation
errors, only prototype getopt for the GNU C library. */
! extern int getopt (int __argc, char *const *__argv, const char *__shortopts);
# else /* not __GNU_LIBRARY__ */
extern int getopt ();
# endif /* __GNU_LIBRARY__ */
# ifndef __need_getopt
! extern int getopt_long (int argc, char *const *argv, const char *__shortopts,
const struct option *__longopts, int *__longind);
! extern int getopt_long_only (int argc, char *const *argv,
const char *__shortopts,
const struct option *__longopts, int *__longind);
/* Internal only. Users should not call this directly. */
! extern int _getopt_internal (int argc, char *const *argv,
const char *__shortopts,
const struct option *__longopts, int *__longind,
int __long_only);
--- 136,161 ----
arguments to the option '\0'. This behavior is specific to the GNU
`getopt'. */
! #if (defined __STDC__ && __STDC__) || defined __cplusplus
# ifdef __GNU_LIBRARY__
/* Many other libraries have conflicting prototypes for getopt, with
differences in the consts, in stdlib.h. To avoid compilation
errors, only prototype getopt for the GNU C library. */
! extern int getopt (int ___argc, char *const *___argv, const char
*__shortopts);
# else /* not __GNU_LIBRARY__ */
extern int getopt ();
# endif /* __GNU_LIBRARY__ */
# ifndef __need_getopt
! extern int getopt_long (int ___argc, char *const *___argv,
! const char *__shortopts,
const struct option *__longopts, int *__longind);
! extern int getopt_long_only (int ___argc, char *const *___argv,
const char *__shortopts,
const struct option *__longopts, int *__longind);
/* Internal only. Users should not call this directly. */
! extern int _getopt_internal (int ___argc, char *const *___argv,
const char *__shortopts,
const struct option *__longopts, int *__longind,
int __long_only);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] Changes to emacs/lib-src/getopt.h,
Miles Bader <=