[Bug 197234] [UPDATE] lang/execline: update to 2.0.2.0 and take maintainership
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Thu Feb 5 15:00:05 UTC 2015
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=197234
--- Comment #5 from Jan Beich <jbeich at FreeBSD.org> ---
(In reply to Colin Booth from comment #4)
> (In reply to Jan Beich from comment #1)
>
>>> +LDFLAGS?= -s
>>> +STRIPFLAGS?= -x
>
>>Better use ${STRIP} or depend on ! ${PORT_OPTIONS:MDEBUG} and maybe use vendor `strip` make target e.g.,
>
>> # STRIP can only be `-s` or empty
>> ALL_TARGET= all ${STRIP:S/-s/strip/}
> Adapted from the old Makefile for skalibs in ports. I'll yank those out because
> it doesn't run strip by default anyway.
Not stripping binaries at all would induce a warning:
$ DEVELOPER=1 make
...
====> Running Q/A tests (stage-qa)
Warning: 'bin/shift' is not stripped consider trying
INSTALL_TARGET=install-strip or using ${STRIP_CMD}
Warning: 'bin/pipeline' is not stripped consider trying
INSTALL_TARGET=install-strip or using ${STRIP_CMD}
...
>>> +USES= ${GMAKE}
>>This works only by accident because the path to GNU make isn't an absolute one.
>
> That was on the suggestion of portlint since building execline (and skalibs and
> s6) don't work with the stock make and I'm working around a reasonably
> linux-tools centric design.
Many commands in Mk/bsd.commands.mk can be redefined by user or port
maintainer.
USES=gmake is valid, but not USES=${GMAKE}. And portlint(1) is smarter nowadays
not to print some bogus warnings.
>
>>Define HAS_CONFIGURE and populate CONFIGURE_ARGS. This would also fix
>> a case where CC contains spaces e.g.,
> Unless I'm reading the porters stuff wrong HAS_CONFIGURE only works with
> autoconf and its ilk. Since skalibs et. al. don't use autotools I'm going to
> omit HAS_CONFIGURE (it seems to be ignored). However, that appears to mean that
> I need the CC=${CC} definition which breaks if there's a multiple item CC
> definition. If I find out a better way to override this, I'll fix it.
HAS_CONFIGURE is for generic configure-like scripts. It has no assumption about
GNU autoconf. Look for defined(HAS_CONFIGURE) in Mk/bsd.port.mk to see what
exactly you'd get. To summarize, more environment variables passed by default,
they're properly quoted
Also check other ports with HAS_CONFIGURE e.g., lang/ocaml or lang/perl5.18.
>>> + --prefix=${LOCALBASE} \
>>This would break install if PREFIX != LOCALBASE i.e., poudriere
>> testport -P. >You may need to pass --with-sysdeps as well to unbreak
>> it.
> Changed all LOCALBASE to PREFIX though that's still going to break if skalibs
> isn't going to be installed in the same root tree since execline needs to find
> the skalibs headers and I'm unaware of a good way of autodetecting that.
LOCALBASE is where dependencies are already installed. PREFIX is where
the current port is supposed to install. Before STAGEDIR support people
used to check pkg-plist by overrding PREFIX to a temporary location.
The following should be enough for LOCALBASE != PREFIX support.
# devel/skalibs
CONFIGURE_ARGS= --prefix=${PREFIX} \
# lang/execline
CONFIGURE_ARGS= --prefix=${PREFIX} \
--with-sysdeps=${LOCALBASE}/lib/skalibs/sysdeps \
--with-include=${LOCALBASE}/include \
--with-lib=${LOCALBASE}/lib/skalibs \
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-ports-bugs
mailing list