diff options
Diffstat (limited to 'app-misc/getopt')
-rw-r--r-- | app-misc/getopt/Manifest | 7 | ||||
-rw-r--r-- | app-misc/getopt/files/getopt-1.1.4-irix.patch | 17 | ||||
-rw-r--r-- | app-misc/getopt/files/getopt-1.1.5-libintl.patch | 11 | ||||
-rw-r--r-- | app-misc/getopt/files/getopt-1.1.5-setlocale.patch | 12 | ||||
-rw-r--r-- | app-misc/getopt/files/getopt-1.1.6-longrename.patch | 70 | ||||
-rw-r--r-- | app-misc/getopt/getopt-1.1.6.ebuild | 64 | ||||
-rw-r--r-- | app-misc/getopt/metadata.xml | 12 |
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> |