summaryrefslogtreecommitdiff
path: root/app-misc/getopt
diff options
context:
space:
mode:
Diffstat (limited to 'app-misc/getopt')
-rw-r--r--app-misc/getopt/Manifest7
-rw-r--r--app-misc/getopt/files/getopt-1.1.4-irix.patch17
-rw-r--r--app-misc/getopt/files/getopt-1.1.5-libintl.patch11
-rw-r--r--app-misc/getopt/files/getopt-1.1.5-setlocale.patch12
-rw-r--r--app-misc/getopt/files/getopt-1.1.6-longrename.patch70
-rw-r--r--app-misc/getopt/getopt-1.1.6.ebuild64
-rw-r--r--app-misc/getopt/metadata.xml12
7 files changed, 193 insertions, 0 deletions
diff --git a/app-misc/getopt/Manifest b/app-misc/getopt/Manifest
new file mode 100644
index 000000000000..f15246ae52d1
--- /dev/null
+++ b/app-misc/getopt/Manifest
@@ -0,0 +1,7 @@
+AUX getopt-1.1.4-irix.patch 357 BLAKE2B 12ec0e7a6dc156967731d8a09bae4fc91f6dfda55a3ffd549d3fa1292ff7fb6d8106aff44428adbba0bdf0e05c976b063c0f91848e8a9938d4c8cebd05d4b545 SHA512 001949835eafe86d5f1f9dfef9892ebbf6b1c5a3d870cf57c4ac7543c048c061429c8f7cb754260ff16e2694bb497ed89c0d4e746f1c7064883a55940563dd92
+AUX getopt-1.1.5-libintl.patch 353 BLAKE2B fa5f6c7eac124d16344b52227ab704656cc448c86ae871f67adb1d871000d74536d9c434285d046ec3667c53f3442b16db10da88a9ddabdb14e6a3b17a8b2046 SHA512 eca001588a940f5bc50f95c0f93fc352f5dc647325a5b1ff0c7ddf0bf93e2c8fd2ac4f735c0ae5d48e4c9b2c54799e6d6028a5602147a3b9a28dc5e65e66f5ec
+AUX getopt-1.1.5-setlocale.patch 323 BLAKE2B ee68f23549c402bdb91cd4475ee0b1d30d8254d5161874eb029ce7536b3679fe5f323590c86d28af2dec9c2c6ba8ac95b0a3ac6103cda13fe8349629c13c872c SHA512 1ceb4353355cd1af697b5d46bd58b092b8792a2add97fb8498bfa6e036487e8c811333b03d0461117f1c2c5e90a3f33cf773cb9b0732c753beb8d75345e6c36e
+AUX getopt-1.1.6-longrename.patch 3013 BLAKE2B 608ad737eaad184436a321797b5099bbe5a1436e812a40a2ee30aa7b80e86f360e9e3c18629ae96e5edd6d0090a74758b99699833052dee2db7e76bd055f2659 SHA512 7157f9bd2bc660519972898bd24f0f04f01196a54c44a3a3ba4b0fda0acfb9b13cabba7cfbd1e784e9f5b3c94f2955325f47933e5d6affcb1a0f740d933206b9
+DIST getopt-1.1.6.tar.gz 58926 BLAKE2B 839b9c1701c21425cbc6b68ab245eb693e0e575a0673f62e3cca8f6932485c1124f42710c0ebeb3c157ab89e56e02b251a99aca7a12723735c63f33443003007 SHA512 aa5476e729f33ddd3f32f38b2565da319fdfe034f11549218d5d9953e70dad764e0d9a82bb10efe4043c86ae87f944619b8a2f29a197f592bd855699961d8e10
+EBUILD getopt-1.1.6.ebuild 1805 BLAKE2B fb17973221578d2a6f596402458c4b284d85fb44c2bb5d3a15af93eb01d665dfbba6ec52f991ebfe73e3b5aeb8b4ad5965606a6ecc3bb8bf0dd562a2244bf054 SHA512 bbabb00afadc32048bb079dddf714392e98dad887cb3d0fa50d53d4bf4eb49848624fef44df390b9b950b3fe74a199aae2f23e21fd8b270d91d872542cb244c3
+MISC metadata.xml 342 BLAKE2B 799fd88b4f38206d301039f579ea9b29920c98946ad0c5fdc57d2ae32d280843c5dfbd4db50d3f4cf7aee7f287d79361878d366ecc8b415406182639a3cffca0 SHA512 90fdb073ca1dcd23506cb421440ec9719517f4bbb6839f5944898a3368bd01aba189346c26a27928a777ef59b22256ea5046ed9180b5b2ff034afbc7b4374b05
diff --git a/app-misc/getopt/files/getopt-1.1.4-irix.patch b/app-misc/getopt/files/getopt-1.1.4-irix.patch
new file mode 100644
index 000000000000..0c344a80131a
--- /dev/null
+++ b/app-misc/getopt/files/getopt-1.1.4-irix.patch
@@ -0,0 +1,17 @@
+http://bugs.gentoo.org/show_bug.cgi?id=211499
+
+--- gnu/getopt.c.dist
++++ gnu/getopt.c
+@@ -69,12 +69,7 @@
+ #include <unistd.h>
+ #endif /* GNU C library. */
+
+-#ifdef VMS
+-#include <unixlib.h>
+-#if HAVE_STRING_H - 0
+ #include <string.h>
+-#endif
+-#endif
+
+ #if defined (WIN32) && !defined (__CYGWIN32__)
+ /* It's not Unix, really. See? Capital letters. */
diff --git a/app-misc/getopt/files/getopt-1.1.5-libintl.patch b/app-misc/getopt/files/getopt-1.1.5-libintl.patch
new file mode 100644
index 000000000000..b40367105ed0
--- /dev/null
+++ b/app-misc/getopt/files/getopt-1.1.5-libintl.patch
@@ -0,0 +1,11 @@
+--- Makefile.orig 2012-12-28 11:40:09.524686698 +0100
++++ Makefile 2012-12-28 11:41:20.646157275 +0100
+@@ -61,7 +61,7 @@
+ -$(RM) $(objects) $(binaries)
+
+ getopt: $(objects)
+- $(CC) $(LDFLAGS) -o $@ $(objects)
++ $(CC) $(LDFLAGS) -o $@ $(objects) $(LIBINTL)
+
+ install: getopt install_po
+ $(INSTALL) -m 755 -d $(DESTDIR)$(bindir) $(DESTDIR)$(man1dir)
diff --git a/app-misc/getopt/files/getopt-1.1.5-setlocale.patch b/app-misc/getopt/files/getopt-1.1.5-setlocale.patch
new file mode 100644
index 000000000000..2d302d9c6a67
--- /dev/null
+++ b/app-misc/getopt/files/getopt-1.1.5-setlocale.patch
@@ -0,0 +1,12 @@
+setlocale: we need locale.h for LC_ALL on OpenIndiana
+
+--- getopt-1.1.5/nls.h
++++ getopt-1.1.5/nls.h
+@@ -40,6 +40,7 @@
+ #undef setlocale
+ #define setlocale(Category,Locale) /* empty */
+ #else /* not WITHOUT_GETTEXT */
++#include <locale.h>
+ #include <libintl.h>
+ #define _(Text) gettext (Text)
+ #endif /* WITHOUT_GETTEXT */
diff --git a/app-misc/getopt/files/getopt-1.1.6-longrename.patch b/app-misc/getopt/files/getopt-1.1.6-longrename.patch
new file mode 100644
index 000000000000..f2b4ba79a090
--- /dev/null
+++ b/app-misc/getopt/files/getopt-1.1.6-longrename.patch
@@ -0,0 +1,70 @@
+--- a/Makefile
++++ b/Makefile
+@@ -32,7 +32,7 @@ MSGFMT=msgfmt
+ LANGUAGES = ca cs da de es et eu fi fr gl hr hu id it ja nl pl pt_BR ru sl sv tr uk vi zh_CN zh_TW
+ MOFILES:=$(patsubst %,po/%.mo,$(LANGUAGES))
+
+-CPPFLAGS=-DLIBCGETOPT=$(LIBCGETOPT) -DWITHOUT_GETTEXT=$(WITHOUT_GETTEXT) -DLOCALEDIR=\"$(localedir)\" -DNOT_UTIL_LINUX -Dprogram_invocation_short_name=\"$(PACKAGE)\" -Dprogram_version=\"$(VERSION)\"
++CPPFLAGS=-DLIBCGETOPT=$(LIBCGETOPT) -DWITHOUT_GETTEXT=$(WITHOUT_GETTEXT) -DLOCALEDIR=\"$(localedir)\" -DNOT_UTIL_LINUX -Dprogram_invocation_short_name=\"$(PACKAGE)-long\" -Dprogram_version=\"$(VERSION)\"
+ ifeq ($(LIBCGETOPT),0)
+ CPPFLAGS+=-I./gnu
+ endif
+@@ -81,7 +81,7 @@ install_po: all_po
+ for lang in $(LANGUAGES) ; do \
+ dir=$(localedir)/$$lang/LC_MESSAGES; \
+ $(INSTALL) -m 755 -d $(DESTDIR)$$dir ;\
+- $(INSTALL) -m 644 po/$$lang.mo $(DESTDIR)$$dir/getopt.mo ;\
++ $(INSTALL) -m 644 po/$$lang.mo $(DESTDIR)$$dir/getopt-long.mo ;\
+ done
+ clean_po:
+ $(RM) $(MOFILES)
+--- a/getopt-parse.bash
++++ b/getopt-parse.bash
+@@ -19,7 +19,7 @@
+ # Note that we use `"$@"' to let each command-line parameter expand to a
+ # separate word. The quotes around `$@' are essential!
+ # We need TEMP as the `eval set --' would nuke the return value of getopt.
+-TEMP=`getopt -o ab:c:: --long a-long,b-long:,c-long:: \
++TEMP=`getopt-long -o ab:c:: --long a-long,b-long:,c-long:: \
+ -n 'example.bash' -- "$@"`
+
+ if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi
+--- a/getopt-parse.tcsh
++++ b/getopt-parse.tcsh
+@@ -26,7 +26,7 @@
+ # as a list. The ':q` copies that list without doing any substitutions:
+ # each element of argv becomes a separate argument for getopt. The braces
+ # are needed because the result is also a list.
+-set temp=(`getopt -s tcsh -o ab:c:: --long a-long,b-long:,c-long:: -- $argv:q`)
++set temp=(`getopt-long -s tcsh -o ab:c:: --long a-long,b-long:,c-long:: -- $argv:q`)
+ if ($? != 0) then
+ echo "Terminating..." >/dev/stderr
+ exit 1
+--- a/getopt.c
++++ b/getopt.c
+@@ -344,12 +344,12 @@ static void __attribute__ ((__noreturn__)) print_help(void)
+ fputs(_(" -q, --quiet Disable error reporting by getopt(3)\n"), stderr);
+ fputs(_(" -Q, --quiet-output No normal output\n"), stderr);
+ fputs(_(" -s, --shell <shell> Set shell quoting conventions\n"), stderr);
+- fputs(_(" -T, --test Test for getopt(1) version\n"), stderr);
++ fputs(_(" -T, --test Test for getopt-long(1) version\n"), stderr);
+ fputs(_(" -u, --unquoted Do not quote the output\n"), stderr);
+ fputs(USAGE_SEPARATOR, stderr);
+ fputs(USAGE_HELP, stderr);
+ fputs(USAGE_VERSION, stderr);
+- fprintf(stderr, USAGE_MAN_TAIL("getopt(1)"));
++ fprintf(stderr, USAGE_MAN_TAIL("getopt-long(1)"));
+ exit(PARAMETER_EXIT_CODE);
+ }
+
+--- a/nls.h
++++ b/nls.h
+@@ -29,7 +29,7 @@
+ #ifndef GETOPT_NLS
+ #define GETOPT_NLS
+
+-#define PACKAGE "getopt"
++#define PACKAGE "getopt-long"
+
+ #if WITHOUT_GETTEXT
+ #define _(Text) (Text)
diff --git a/app-misc/getopt/getopt-1.1.6.ebuild b/app-misc/getopt/getopt-1.1.6.ebuild
new file mode 100644
index 000000000000..b81506dc50a1
--- /dev/null
+++ b/app-misc/getopt/getopt-1.1.6.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit toolchain-funcs eutils
+
+DESCRIPTION="getopt(1) replacement supporting GNU-style long options"
+HOMEPAGE="http://software.frodo.looijaard.name/getopt/"
+SRC_URI="http://frodo.looijaard.name/system/files/software/getopt/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="nls"
+
+RDEPEND="nls? ( virtual/libintl )"
+DEPEND="${RDEPEND}
+ nls? ( sys-devel/gettext )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.1.5-libintl.patch
+ epatch "${FILESDIR}"/${PN}-1.1.5-setlocale.patch
+ epatch "${FILESDIR}"/${PN}-1.1.6-longrename.patch
+
+ # hopefully this is portable enough
+ epatch "${FILESDIR}"/${PN}-1.1.4-irix.patch
+}
+
+src_compile() {
+ local nogettext="1"
+ local libintl=""
+ local libcgetopt=1
+
+ if use nls; then
+ nogettext=0
+ has_version sys-libs/glibc || libintl="-lintl"
+ fi
+
+ [[ ${CHOST} == *-aix* ]] && libcgetopt=0
+ [[ ${CHOST} == *-irix* ]] && libcgetopt=0
+ [[ ${CHOST} == *-interix* ]] && libcgetopt=0
+
+ emake CC="$(tc-getCC)" prefix="${EPREFIX}/usr" \
+ LIBCGETOPT=${libcgetopt} \
+ WITHOUT_GETTEXT=${nogettext} LIBINTL=${libintl} \
+ CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" || die "emake failed"
+}
+
+src_install() {
+ use nls && emake prefix="${EPREFIX}/usr" DESTDIR="${D}" install_po
+
+ newbin getopt getopt-long
+
+ # at least on interix, the system getopt is ... broken...
+ # util-linux, which would provide the getopt binary, does not build &
+ # install on interix/prefix, so, this has to provide it.
+ [[ ${CHOST} == *-interix* || ${CHOST} == *-mint* ]] && \
+ dosym getopt-long /usr/bin/getopt
+
+ newman getopt.1 getopt-long.1
+
+ dodoc getopt-*sh
+}
diff --git a/app-misc/getopt/metadata.xml b/app-misc/getopt/metadata.xml
new file mode 100644
index 000000000000..b7214d2c696f
--- /dev/null
+++ b/app-misc/getopt/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>bsd@gentoo.org</email>
+ <name>BSD Project</name>
+</maintainer>
+<maintainer type="project">
+ <email>prefix@gentoo.org</email>
+ <name>Gentoo Prefix</name>
+</maintainer>
+</pkgmetadata>