[Bug 234833] USES=autoreconf fails if a port uses gettext but user disables NLS port option
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Sat Jan 12 13:21:32 UTC 2019
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=234833
--- Comment #10 from Matthias Andree <mandree at FreeBSD.org> ---
Tijl, let's not discuss autoconf details, but thanks for remaining constructive
and explaining your vantage point and focus.
I know all those because I think all upstream packages I maintain use it, and
I've introduced most of the things. Proposing to reimplement autoreconf in
Makefile syntax is certainly something that I know will not happen in FreeBSD
ports, it was provocative just as I perceive the assumption everyone has NLS
stuff installed as presumptuous.
Let's get back to the original issue I have had, and that is:
*disabling* NLS made the port build in poudriere fail in a pretty non-obvious
way. The port configure phase fails when it cannot find autopoint in poudriere,
and you as the port contributor start thinking, hang on, I deselect NLS and
then it fails because it doesn't have some NLS developer tool?
I know from a more distant view and with more thinking one can recognize that
autopoint is normally a development-time requisite, that - through
USES+=autoreconf - has been made a build-time requisite.
/!\ -> It seems that either I have not been looking in the right places, or
that the Uses/Mk/autoreconf.mk comment banner and/or OptionsNG "NLS"
documentation and possibly implementation are incomplete.
I see several alternative solutions out portmgr/global scale:
a. have autoreconf.mk introduce build requisites on ALL tools potentially
invoked by autoreconf from its scanning the Makefile.am/configure.ac and
whatnot. From scanning the documentation, that is autoconf, automake, libtool,
gettext, m4, with all its development siblings.
b. have autoreconf.mk scan the configure.* for required tools and add that set
of requisites to BUILD_DEPENDS.
c. some middle way between b. and d., not adding, just warning with
DEVELOPER=yes
d. document what other tools might be required by USES=autoreconf. This is
certainly non-obvious, just the routine "if it fails in poudriere but not in
the plain system, some requisite is missing from _DEPENDS" let me figure this
out.
We may also need to hint to a list of GNU tools such as coreutils, GNU grep,
GNU sed, and bash, as these are often requisites when the packages have been
predominantly developed on Linux, but I would not cast these into foo_DEPENDS+=
or USES+=bar entries.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the freebsd-ports-bugs
mailing list