Re: git: 4ddfd281f8eb - main - misc/getopt: Re-add getopt 1.1.6
Date: Sun, 03 Nov 2024 12:30:39 UTC
On 2024-11-03T12:50:26.000+01:00, Po-Chuan Hsieh <sunpoet@FreeBSD.org> wrote: > The branch main has been updated by sunpoet: > > URL: https://cgit.FreeBSD.org/ports/commit/?id=4ddfd281f8eb07657fd1e268fed59478a4a2ce38 > > commit 4ddfd281f8eb07657fd1e268fed59478a4a2ce38 > > Author: Po-Chuan Hsieh <sunpoet@FreeBSD.org> > > AuthorDate: 2024-11-03 11:34:23 +0000 > > Commit: Po-Chuan Hsieh <sunpoet@FreeBSD.org> > > CommitDate: 2024-11-03 11:34:23 +0000 > > misc/getopt: Re-add getopt 1.1.6 > > > > PR: 281625 > > --- > > MOVED | 1 - > > misc/Makefile | 1 + > > misc/getopt/Makefile | 38 +++++++++++++++++++++++++++++++ > > misc/getopt/distinfo | 3 +++ > > misc/getopt/files/patch-Makefile | 49 ++++++++++++++++++++++++++++++++++++++++ > > misc/getopt/pkg-descr | 11 +++++++++ > > misc/getopt/pkg-plist | 28 +++++++++++++++++++++++ > > 7 files changed, 130 insertions(+), 1 deletion(-) > > diff --git a/MOVED b/MOVED > > index 7d96a4d146ee..6d75cf949f97 100644 > > --- a/MOVED > > +++ b/MOVED > > @@ -3577,4 +3577,3 @@ misc/uk-phone||2024-10-31|Has expired: Obsolete, 20+ year old data > > textproc/ssddiff||2024-10-31|Has expired: Abandonware, unfetchable and upstream is gone > > sysutils/pydf||2024-11-02|Has expired: Inactive upstream. Does not properly work on FreeBSD > > ports-mgmt/freebsd-bugzilla-cli||2024-11-02|Has expired: Broken. Upstream unavailable > > -misc/getopt||2024-11-02|Has expired: Use getopt from devel/util-linux instead > > diff --git a/misc/Makefile b/misc/Makefile > > index f6b464417a65..34195fc80e54 100644 > > --- a/misc/Makefile > > +++ b/misc/Makefile > > @@ -152,6 +152,7 @@ > > SUBDIR += g810-led > > SUBDIR += gedkeeper > > SUBDIR += geekcode > > + SUBDIR += getopt > > SUBDIR += gimp-help-en > > SUBDIR += gkrellm-gamma > > SUBDIR += gkrellm-xkb > > diff --git a/misc/getopt/Makefile b/misc/getopt/Makefile > > new file mode 100644 > > index 000000000000..7dcb45220b28 > > --- /dev/null > > +++ b/misc/getopt/Makefile > > @@ -0,0 +1,38 @@ > > +PORTNAME= getopt > > +PORTVERSION= 1.1.6 > > +PORTREVISION= 1 > > +CATEGORIES= misc > > +MASTER_SITES= http://frodo.looijaard.name/system/files/software/getopt/ \ > > + LOCAL/sunpoet > > + > > +MAINTAINER= sunpoet@FreeBSD.org > > +COMMENT= Replacement for getopt(1) that supports GNU-style long options > > +WWW= https://software.frodo.looijaard.name/getopt/ > > + > > +LICENSE= GPLv2 GPLv3 > > +LICENSE_COMB= dual > > + > > +DEPRECATED= Use getopt from devel/util-linux instead > > +EXPIRATION_DATE=2024-10-31 > > + > > +OPTIONS_DEFINE= DOCS NLS > > +OPTIONS_SUB= yes > > + > > +MAKE_ARGS= CC=${CC} LIBCGETOPT=0 > > +USES= gmake > > + > > +PORTDOCS= Changelog README > > + > > +NLS_MAKE_ARGS= WITHOUT_GETTEXT=0 > > +NLS_MAKE_ARGS_OFF= WITHOUT_GETTEXT=1 > > +NLS_LDFLAGS= -lintl > > +NLS_USES= gettext localbase:ldflags > > + > > +post-install: > > + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/getopt > > + > > +post-install-DOCS-on: > > + ${MKDIR} ${STAGEDIR}${DOCSDIR}/ > > + cd ${WRKSRC}/ && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}/ > > + > > +.include <bsd.port.mk> [http://bsd.port.mk>]; > > diff --git a/misc/getopt/distinfo b/misc/getopt/distinfo > > new file mode 100644 > > index 000000000000..649952d571db > > --- /dev/null > > +++ b/misc/getopt/distinfo > > @@ -0,0 +1,3 @@ > > +TIMESTAMP = 1730633654 > > +SHA256 (getopt-1.1.6.tar.gz) = d0bf1dc642a993e7388a1cddfb9409bed375c21d5278056ccca3a0acd09dc5fe > > +SIZE (getopt-1.1.6.tar.gz) = 58926 > > diff --git a/misc/getopt/files/patch-Makefile b/misc/getopt/files/patch-Makefile > > new file mode 100644 > > index 000000000000..3383ee09c28f > > --- /dev/null > > +++ b/misc/getopt/files/patch-Makefile > > @@ -0,0 +1,49 @@ > > +--- Makefile.orig 2014-11-24 12:33:39 UTC > > ++++ Makefile > > +@@ -1,9 +1,9 @@ DESTDIR= > > + .SUFFIXES: > > + > > + DESTDIR= > > +-prefix=/usr/local > > ++prefix=$(PREFIX) > > + bindir=$(prefix)/bin > > +-mandir=$(prefix)/man > > ++mandir=$(prefix)/share/man > > + man1dir=$(mandir)/man1 > > + sharedir=$(prefix)/share > > + getoptdir=$(sharedir)/getopt > > +@@ -32,18 +32,15 @@ MOFILES:=$(patsubst %,po/%.mo,$(LANGUAGES)) > > + 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)\" -Dprogram_version=\"$(VERSION)\" > > + ifeq ($(LIBCGETOPT),0) > > +-CPPFLAGS+=-I./gnu > > ++CPPFLAGS+=-I./gnu > > + endif > > + WARNINGS=-Wall \ > > + -W -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual \ > > + -Wcast-align -Wmissing-declarations \ > > + -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes \ > > + -Wnested-externs -Winline > > +-OPTIMIZE=-O3 -fno-strength-reduce > > +-CFLAGS=$(WARNINGS) $(OPTIMIZE) > > +-LDFLAGS= > > + > > + sources=getopt.c > > + ifeq ($(LIBCGETOPT),0) > > +@@ -54,11 +51,11 @@ binaries=getopt > > + > > + binaries=getopt > > + > > +-.PHONY: all clean realclean > > ++.PHONY: all clean realclean > > + all: $(binaries) all_po > > + > > + clean: clean_po > > +- -$(RM) $(objects) $(binaries) > > ++ -$(RM) $(objects) $(binaries) > > + > > + getopt: $(objects) > > + $(CC) $(LDFLAGS) -o $@ $(objects) > > diff --git a/misc/getopt/pkg-descr b/misc/getopt/pkg-descr > > new file mode 100644 > > index 000000000000..799c23ba34c8 > > --- /dev/null > > +++ b/misc/getopt/pkg-descr > > @@ -0,0 +1,11 @@ > > +Rewrite of getopt(1) with the following features: > > + > > +* It can do anything that the GNU getopt(3) routines can do. > > +* It can cope with spaces and shell metacharacters within arguments. > > +* It can parse long parameters. > > +* It can shuffle parameters, so you can mix options and other parameters > > + on the command-line. > > +* It can be easily identified as an enhanced getopt(1) from within shell > > + scripts. > > +* It can report parse errors as coming from the shell script. > > +* It compiles cleanly with both libc-5 and glibc-2. > > diff --git a/misc/getopt/pkg-plist b/misc/getopt/pkg-plist > > new file mode 100644 > > index 000000000000..c1a68f51212d > > --- /dev/null > > +++ b/misc/getopt/pkg-plist > > @@ -0,0 +1,28 @@ > > +bin/getopt > > +%%NLS%%share/locale/ca/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/cs/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/da/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/de/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/es/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/et/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/eu/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/fi/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/fr/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/gl/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/hr/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/hu/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/id/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/it/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/ja/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/nl/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/pl/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/pt_BR/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/ru/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/sl/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/sv/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/tr/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/uk/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/vi/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/zh_CN/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +%%NLS%%share/locale/zh_TW/LC_MESSAGES/getopt.mo [http://getopt.mo] > > +share/man/man1/getopt.1.gz Hi, Versioning is incorrect work/stage/usr/local/bin/getopt -V getopt from util-linux 2.39.4 This approach is also bound to get unsynced with util-linux, if anything it should be a slave port until subpackages are usable. Best regards, Daniel