diff options
author | obo <obo@openoffice.org> | 2010-06-21 15:14:37 +0200 |
---|---|---|
committer | obo <obo@openoffice.org> | 2010-06-21 15:14:37 +0200 |
commit | 596da019d2b5c0d212652fe861e44d01f7a17e0c (patch) | |
tree | 2bd56a6b49958731c58379625cfc8bec993e5259 /idlc | |
parent | CWS-TOOLING: integrate CWS cbosdo03 (diff) | |
parent | CWS systemlibc: #i69033#: some fixes for mingw (diff) | |
download | core-596da019d2b5c0d212652fe861e44d01f7a17e0c.tar.gz core-596da019d2b5c0d212652fe861e44d01f7a17e0c.zip |
CWS-TOOLING: integrate CWS systemlibc
Diffstat (limited to 'idlc')
-rw-r--r-- | idlc/source/preproc/getopt.c | 94 | ||||
-rw-r--r-- | idlc/source/preproc/makefile.mk | 7 | ||||
-rw-r--r-- | idlc/source/preproc/nlist.c | 3 | ||||
-rw-r--r-- | idlc/source/preproc/unix.c | 7 |
4 files changed, 9 insertions, 102 deletions
diff --git a/idlc/source/preproc/getopt.c b/idlc/source/preproc/getopt.c deleted file mode 100644 index a6163e75075c..000000000000 --- a/idlc/source/preproc/getopt.c +++ /dev/null @@ -1,94 +0,0 @@ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org 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 Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ - -#include <stdio.h> -#include <string.h> - -#define EPR fprintf(stderr, -#define ERR(str, chr) if(opterr) { EPR "%s%c\n", str, chr); } - -int opterr = 1; -int optind = 1; -int optopt; -char *optarg; - -int - cppgetopt(int argc, char *const argv[], const char *opts) -{ - static int sp = 1; - register int c; - register char *cp; - - if (sp == 1) - { - if (optind >= argc || - argv[optind][0] != '-' || argv[optind][1] == '\0') - return -1; - else - if (strcmp(argv[optind], "--") == 0) - { - optind++; - return -1; - } - } - optopt = c = argv[optind][sp]; - if (c == ':' || (cp = strchr(opts, c)) == 0) - { - ERR(": illegal option -- ", c); - if (argv[optind][++sp] == '\0') - { - optind++; - sp = 1; - } - return '?'; - } - if (*++cp == ':') - { - if (argv[optind][sp + 1] != '\0') - optarg = &argv[optind++][sp + 1]; - else - if (++optind >= argc) - { - ERR(": option requires an argument -- ", c); - sp = 1; - return '?'; - } - else - optarg = argv[optind++]; - sp = 1; - } - else - { - if (argv[optind][++sp] == '\0') - { - sp = 1; - optind++; - } - optarg = 0; - } - return c; -} diff --git a/idlc/source/preproc/makefile.mk b/idlc/source/preproc/makefile.mk index 7347f815a23f..e6aa457e8b3d 100644 --- a/idlc/source/preproc/makefile.mk +++ b/idlc/source/preproc/makefile.mk @@ -43,7 +43,6 @@ LIBSALCPPRT=$(0) OBJFILES= \ $(OBJ)$/cpp.obj \ $(OBJ)$/eval.obj \ - $(OBJ)$/getopt.obj \ $(OBJ)$/include.obj \ $(OBJ)$/lex.obj \ $(OBJ)$/macro.obj \ @@ -64,6 +63,12 @@ APP1OBJS=$(OBJ)$/cpp.obj APP1LIBS= $(LB)$/idlcpp.lib +.IF "$(HAVE_GETOPT)" != "YES" +.IF "$(GUI)" == "WNT" +APP1STDLIBS=gnu_getopt.lib +.ENDIF +.ENDIF + # --- Targets ------------------------------------------------------ .INCLUDE : target.mk diff --git a/idlc/source/preproc/nlist.c b/idlc/source/preproc/nlist.c index 3f32fd4cca28..f41313c22aac 100644 --- a/idlc/source/preproc/nlist.c +++ b/idlc/source/preproc/nlist.c @@ -29,9 +29,6 @@ #include <string.h> #include "cpp.h" -extern int cppgetopt(int, char *const *, const char *); -extern char *optarg; -extern int optind; extern int Cplusplus; Nlist *kwdefined; char wd[128]; diff --git a/idlc/source/preproc/unix.c b/idlc/source/preproc/unix.c index a1b52ce72f06..4997e317e697 100644 --- a/idlc/source/preproc/unix.c +++ b/idlc/source/preproc/unix.c @@ -33,15 +33,14 @@ #if (defined(_WIN32) || defined(_MSDOS) || defined(__IBMC__)) #include <io.h> #include <sys/stat.h> +#include <external/glibc/getopt.h> #else #include <unistd.h> #endif #include "cpp.h" -extern int cppgetopt(int, char *const *, const char *); -extern char *optarg, rcsid[]; -extern int optind; +extern char rcsid[]; int Pflag = 0; /* print no line information */ int Iflag = 0; /* print includes */ @@ -62,7 +61,7 @@ void Tokenrow tr; setup_kwtab(); - while ((c = cppgetopt(argc, argv, "NOPV:I:D:U:F:A:X:u:l:+")) != -1) + while ((c = getopt(argc, argv, "NOPV:I:D:U:F:A:X:u:l:+")) != -1) switch (c) { case 'N': |