Fri Feb 22 01:27:55 2008 UTC ()
Update to libgetopt-1.4.3.
On IRIX, getopt.h is expected to provide extern declarations of optind
et al. (Not unistd.h) Do it here since we shadow the system header.
Part of PR pkg/38054


(tnn)
diff -r1.27 -r1.28 pkgsrc/devel/libgetopt/Makefile
diff -r1.4 -r1.5 pkgsrc/devel/libgetopt/files/getopt.h

cvs diff -r1.27 -r1.28 pkgsrc/devel/libgetopt/Makefile (switch to unified diff)

--- pkgsrc/devel/libgetopt/Makefile 2008/02/16 23:38:42 1.27
+++ pkgsrc/devel/libgetopt/Makefile 2008/02/22 01:27:55 1.28
@@ -1,38 +1,38 @@ @@ -1,38 +1,38 @@
1# $NetBSD: Makefile,v 1.27 2008/02/16 23:38:42 tnn Exp $ 1# $NetBSD: Makefile,v 1.28 2008/02/22 01:27:55 tnn Exp $
2# 2#
3 3
4DISTNAME= libgetopt-1.4.2 4DISTNAME= libgetopt-1.4.3
5CATEGORIES= pkgtools sysutils 5CATEGORIES= pkgtools sysutils
6MASTER_SITES= # empty 6MASTER_SITES= # empty
7DISTFILES= # empty 7DISTFILES= # empty
8 8
9MAINTAINER= pkgsrc-users@NetBSD.org 9MAINTAINER= pkgsrc-users@NetBSD.org
10COMMENT= Library for handling --long options 10COMMENT= Library for handling --long options
11 11
12NO_CHECKSUM= YES 12NO_CHECKSUM= YES
13USE_LIBTOOL= YES 13USE_LIBTOOL= YES
14WRKSRC= ${WRKDIR}/libgetopt 14WRKSRC= ${WRKDIR}/libgetopt
15 15
16.include "../../mk/bsd.prefs.mk" 16.include "../../mk/bsd.prefs.mk"
17 17
18.if ${OPSYS} == "SunOS" || ${OPSYS} == "AIX" || ${OPSYS} == "HPUX" 18.if ${OPSYS} == "SunOS" || ${OPSYS} == "AIX" || ${OPSYS} == "HPUX"
19CFLAGS+= -DREPLACE_GETOPT 19CFLAGS+= -DREPLACE_GETOPT
20.endif 20.endif
21 21
22INSTALLATION_DIRS= include lib ${PKGMANDIR}/man3 22INSTALLATION_DIRS= include lib ${PKGMANDIR}/man3
23 23
24do-extract: 24do-extract:
25 ${MKDIR} ${WRKSRC} 25 ${MKDIR} ${WRKSRC}
26 ${CP} ${FILESDIR}/getopt_long.? ${WRKSRC} 26 ${CP} ${FILESDIR}/getopt_long.? ${WRKSRC}
27 ${CP} ${FILESDIR}/getopt.h ${WRKSRC} 27 ${CP} ${FILESDIR}/getopt.h ${WRKSRC}
28 28
29do-build: 29do-build:
30 cd ${WRKSRC} && ${LIBTOOL} --mode=compile ${COMPILE.c} getopt_long.c 30 cd ${WRKSRC} && ${LIBTOOL} --mode=compile ${COMPILE.c} getopt_long.c
31 cd ${WRKSRC} && ${LIBTOOL} --mode=link ${LINK.c} -o libgetopt.la getopt_long.lo -version-info 5:1:4 -rpath ${PREFIX}/lib 31 cd ${WRKSRC} && ${LIBTOOL} --mode=link ${LINK.c} -o libgetopt.la getopt_long.lo -version-info 5:1:4 -rpath ${PREFIX}/lib
32 32
33do-install: 33do-install:
34 ${LIBTOOL} --mode=install ${INSTALL_LIB} ${WRKSRC}/libgetopt.la ${PREFIX}/lib/ 34 ${LIBTOOL} --mode=install ${INSTALL_LIB} ${WRKSRC}/libgetopt.la ${PREFIX}/lib/
35 ${INSTALL_DATA} ${WRKSRC}/getopt.h ${PREFIX}/include/ 35 ${INSTALL_DATA} ${WRKSRC}/getopt.h ${PREFIX}/include/
36 ${INSTALL_MAN} ${WRKSRC}/getopt_long.3 ${PREFIX}/${PKGMANDIR}/man3/ 36 ${INSTALL_MAN} ${WRKSRC}/getopt_long.3 ${PREFIX}/${PKGMANDIR}/man3/
37 37
38.include "../../mk/bsd.pkg.mk" 38.include "../../mk/bsd.pkg.mk"

cvs diff -r1.4 -r1.5 pkgsrc/devel/libgetopt/files/getopt.h (switch to unified diff)

--- pkgsrc/devel/libgetopt/files/getopt.h 2005/03/10 19:19:47 1.4
+++ pkgsrc/devel/libgetopt/files/getopt.h 2008/02/22 01:27:55 1.5
@@ -1,82 +1,88 @@ @@ -1,82 +1,88 @@
1/* $NetBSD: getopt.h,v 1.4 2005/03/10 19:19:47 tv Exp $ */ 1/* $NetBSD: getopt.h,v 1.5 2008/02/22 01:27:55 tnn Exp $ */
2 2
3/*- 3/*-
4 * Copyright (c) 2000 The NetBSD Foundation, Inc. 4 * Copyright (c) 2000 The NetBSD Foundation, Inc.
5 * All rights reserved. 5 * All rights reserved.
6 * 6 *
7 * This code is derived from software contributed to The NetBSD Foundation 7 * This code is derived from software contributed to The NetBSD Foundation
8 * by Dieter Baron and Thomas Klausner. 8 * by Dieter Baron and Thomas Klausner.
9 * 9 *
10 * Redistribution and use in source and binary forms, with or without 10 * Redistribution and use in source and binary forms, with or without
11 * modification, are permitted provided that the following conditions 11 * modification, are permitted provided that the following conditions
12 * are met: 12 * are met:
13 * 1. Redistributions of source code must retain the above copyright 13 * 1. Redistributions of source code must retain the above copyright
14 * notice, this list of conditions and the following disclaimer. 14 * notice, this list of conditions and the following disclaimer.
15 * 2. Redistributions in binary form must reproduce the above copyright 15 * 2. Redistributions in binary form must reproduce the above copyright
16 * notice, this list of conditions and the following disclaimer in the 16 * notice, this list of conditions and the following disclaimer in the
17 * documentation and/or other materials provided with the distribution. 17 * documentation and/or other materials provided with the distribution.
18 * 3. All advertising materials mentioning features or use of this software 18 * 3. All advertising materials mentioning features or use of this software
19 * must display the following acknowledgement: 19 * must display the following acknowledgement:
20 * This product includes software developed by the NetBSD 20 * This product includes software developed by the NetBSD
21 * Foundation, Inc. and its contributors. 21 * Foundation, Inc. and its contributors.
22 * 4. Neither the name of The NetBSD Foundation nor the names of its 22 * 4. Neither the name of The NetBSD Foundation nor the names of its
23 * contributors may be used to endorse or promote products derived 23 * contributors may be used to endorse or promote products derived
24 * from this software without specific prior written permission. 24 * from this software without specific prior written permission.
25 * 25 *
26 * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 26 * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
27 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 27 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
28 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 28 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
29 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 29 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
30 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 30 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
31 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 31 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
32 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 32 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
33 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 33 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
34 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 34 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
35 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 35 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
36 * POSSIBILITY OF SUCH DAMAGE. 36 * POSSIBILITY OF SUCH DAMAGE.
37 */ 37 */
38 38
39#ifndef _GETOPT_H_ 39#ifndef _GETOPT_H_
40#define _GETOPT_H_ 40#define _GETOPT_H_
41 41
42#include <unistd.h> 42#include <unistd.h>
43 43
44/* 44/*
45 * Gnu like getopt_long() and BSD4.4 getsubopt()/optreset extensions 45 * Gnu like getopt_long() and BSD4.4 getsubopt()/optreset extensions
46 */ 46 */
47#if !defined(_POSIX_SOURCE) && !defined(_XOPEN_SOURCE) 47#if !defined(_POSIX_SOURCE) && !defined(_XOPEN_SOURCE)
48#define no_argument 0 48#define no_argument 0
49#define required_argument 1 49#define required_argument 1
50#define optional_argument 2 50#define optional_argument 2
51 51
52struct option { 52struct option {
53 /* name of long option */ 53 /* name of long option */
54 const char *name; 54 const char *name;
55 /* 55 /*
56 * one of no_argument, required_argument, and optional_argument: 56 * one of no_argument, required_argument, and optional_argument:
57 * whether option takes an argument 57 * whether option takes an argument
58 */ 58 */
59 int has_arg; 59 int has_arg;
60 /* if not NULL, set *flag to val when option found */ 60 /* if not NULL, set *flag to val when option found */
61 int *flag; 61 int *flag;
62 /* if flag not NULL, value to set *flag to; else return value */ 62 /* if flag not NULL, value to set *flag to; else return value */
63 int val; 63 int val;
64}; 64};
65 65
66#ifdef __cplusplus 66#ifdef __cplusplus
67extern "C" { 67extern "C" {
68#endif 68#endif
69 69
70int getopt_long(int, char * const *, const char *, 70int getopt_long(int, char * const *, const char *,
71 const struct option *, int *); 71 const struct option *, int *);
72 72
73/* On some platforms, this is in libc, but not in a system header */ 73/* On some platforms, this is in libc, but not in a system header */
74extern int optreset; 74extern int optreset;
 75#ifdef __sgi
 76extern char *optarg;
 77extern int opterr;
 78extern int optind;
 79extern int optopt;
 80#endif
75 81
76#ifdef __cplusplus 82#ifdef __cplusplus
77}; 83};
78#endif 84#endif
79 85
80#endif 86#endif
81  87
82#endif /* !_GETOPT_H_ */ 88#endif /* !_GETOPT_H_ */