Avoid config.h and DWM_CONF being out of sync. In case of update while
trying fix a build failure one may want to do |make clean| after
replacing a third-party patch in Makefile.local or files/ directory.
PR: 204658
Approved by: maintainer timeout (18 days)
At build time openbox tries to detect presence of some
X11 extentions libs and headers and silently disables
support for them if they cannot be found.
When building from port, these extensions are usually
available already, so user gets a fully functional package,
however, when installing from package user gets a package with
a limited functionality.
Fix this by adding all the required dependencies to USE_XORG.
PR: 204706
MFH: 2015Q4
2015-10-31 audio/cmus-post.fm: Broken for more than 6 months
2015-10-31 devel/libphish: Broken for more than 6 months
2015-10-31 devel/rubygem-debugger: This port is for Ruby 1.9 only. Upstream stopped maintenance.
2015-10-31 games/linux-ningpo-demo: Broken for more than 6 months
2015-10-30 graphics/gdal-grass: Superseded by gdal-2.0.0
2015-10-31 graphics/picviz: Broken for more than 6 months
2015-10-31 irc/weechat-devel: far behind stable irc/weechat (use it instead)
2015-10-31 mail/cucipop: Broken for more than 6 months
2015-10-31 math/rkward-kde4: Depends on deprecated math/R-cran-car
2015-10-31 multimedia/streamanalyze: Broken for more than 6 months
2015-10-31 net-mgmt/collectd: Please move to collectd5 - collect4 is not developed/patched
2015-10-31 sysutils/sdd: Broken for more than 6 months
2015-10-31 sysutils/xfce4-minicmd-plugin: Broken for more than 6 months
2015-10-31 www/linux-libgtkembedmoz: Broken for more than 6 months
2015-10-31 www/py-feedfinder: Broken for more than 6 months
2015-10-31 www/py-openssl-proxy: Broken for more than 6 months
2015-10-31 www/py-webware: Broken for more than 6 months
2015-10-31 www/py-webware-component: Depends on deprecated www/py-webware
2015-10-31 x11-fonts/code2001: Broken for more than 6 months
2015-10-31 x11-wm/e-module-diskio: Broken for more than 7 months
sole purpose to avoid using our standard MAKE_ENV.
They were introduced in r279589 as part of "update to 0.0.6" PR 159499 by
Kato (duh!) some four years ago; in r359185 bapt@ had mentioned that "lots
of invocation of MAKE_CMD here are wrong as they do not properly respect
MAKE_ENV" (which is ironic as avoiding MAKE_ENV *is* their only point) but
the the real problem was neither fixed nor rationale for ugly work-around
explained.
The port builds itself through a series of recursive make(1) calls, and is
using variables to pass various bits of internal state to submakes. This
approach typically requires strict discipline and can be hard to implement
correctly, to an extent being considered harmful [Miller 1997].
Incidentally, ${MAKE_ENV} includes variables that are 1) used by the port's
own build logic and 2) are not handled in a robust way by it.
Problem #1: consider the following code from `Makefile.rules.gnu.in':
ifndef LIBDIR
LIBDIR=.
endif
This is roughly equivalent to the following:
ifeq ($(origin LIBDIR), undefined)
LIBDIR=.
else
# use whatever LIBDIR value make(1) can deduce
endif
Knowing that LIBDIR is set to some other value (`..') by inner makefiles,
that code can be rewritten more elaborately like this:
ifeq ($(origin LIBDIR), undefined)
LIBDIR=.
else ifeq ($(origin LIBDIR), file)
# use LIBDIR value set by some Makefile
else
# use whatever LIBDIR value make(1) can deduce
endif
Now, because LIBDIR is passed to make(1) via MAKE_ENV and the code above
does not have "ifeq ($(origin LIBDIR), environment)" check, the build was
affected by unexpected bogus value of it and subsequently failed. Since
the only valid place we can expect "our" LIBDIR to come from is makefiles,
we can inhibit unwanted pollution from the environment by rewriting the
initial code like this:
ifneq ($(origin LIBDIR), file)
LIBDIR=.
endif
Problem #2 is similar: checking for CFLAGS and LDFLAGS to protect their
initial assignment is very fragile as many frameworks akin to the Ports
Collection would provide some default values. While it is usually safe
to append to them, it is almost always a bad idea to use them verbatim.
Apparently, these checks were put there to support resetting CFLAGS and
LDFLAGS in `util/Makefile', but since removing them does not hurt do so
regardless of small pollution in that one case that does not affect the
build in any noticeable way.
- Support multiple values in *_OLD_CMD, i.e. we can now fix both "/usr/bin/python" and "/usr/bin/env python" at the same time
- Default *_OLD_CMD values are now always appended, so you don't need to specify them in individual ports
- Add lua support (depends on USES=lua)
- Add more default values, such as "/usr/bin/env foo" for python, perl, bash, ruby and lua
- Shebangfix now matches whole words, e.g. we will no longer (erroneously) replace "/usr/bin/perl5.005" with "${perl_CMD}5.005" (but "/usr/bin/perl -tt" is still (correctly) replaced with "${perl_CMD} -tt")
Note that *_OLD_CMD items containing spaces must now be quoted (e.g. perl_OLD_CMD=/bin/perl /usr/bin/perl "/usr/bin/env perl")
Update shebangfix usage according to new rules in many ports:
- Remove *_OLD_CMD for patterns now replaced by default
- Quote custom *_OLD_CMD which contain spaces
Fix shebangfix usage in many ports (irrelevant to infrastructure change):
- Remove redundant SHEBANG_LANG (no need to duplicate default langs)
- Remove redundant *_CMD (such as python_CMD=${LOCALBASE}/bin/python${PYTHON_VER} when USES=python is present)
- Never use *_OLD_CMD in REINPLACE_CMD matchers, these should always look for exact string
Approved by: portmgr (bapt)
Differential Revision: D3756
- Use option helpers, GC no longer needed WANT_GNOME, sort USES, and
include b.p.m. bits just once at the end
- Drop explicit "support" for ia64: the port is marked broken on it,
while the architecture itself was never a first-class citizen in
FreeBSD and official killed in -CURRENT for a while now
These were FreeBSD specific aliases for libiconv(), libiconv_open() and
libiconv_close() that are now also provided by libc which complicates
writing configure tests that work correctly when both libc iconv and
libiconv are available.
Also, because the libiconv iconv.h header redefines iconv* to libiconv*
correct use of the header implies that the aliases aren't used.
The following ports needed fixes because there was something wrong with
the way they tried to detect or use iconv:
audio/deadbeef: Remove LIBICONV_PLUG from a source file. It's a
compile-time option and should not be set in source code.
comms/hidapi: Use standard AM_ICONV configure macro to look for iconv.
deskutils/fbreader: Let ports framework deal with LIBICONV_PLUG.
deskutils/ljclive: Override configure test for iconv.
deskutils/owncloudclient: Add USES=iconv and patch test for iconv.
devel/aegis: Bump PORTREVISION because it no longer uses libiconv.
devel/libexplain: Add USES=iconv and override test for iconv.
devel/sdl20: Override configure test for iconv.
emulators/vmw: Replace OSVERSION checks with ICONV_LIB checks and include
<iconv.h> instead of <sys/iconv.h>.
irc/scrollz: Override configure test for iconv.
japanese/chasen-base: Override configure test for iconv and patch
configure so it no longer adds -liconv to linker flags just because it
happens to be installed.
japanses/eb: Patch configure test for iconv.
japanses/eblook: Override configure test for iconv.
java/jikes: Override configure test for iconv.
multimedia/transcode: Bump PORTREVISION because only one plugin links with
libiconv now.
net/c3270: Override configure test for iconv.
net/samba4*: Bump PORTREVISION because it no longer uses libiconv. The
configure script will always add -liconv to the linker flags when it
happens to be installed which would be wrong but later on binaries are
linked with -Wl,--as-needed and the linker discards -liconv because it
finds iconv*() functions in libc now and no longer in libiconv.
net-mgmt/icinga-*: Remove dependency on iconv.
net-mgmt/netxms: Patch configure so it no longer adds -liconv to linker
flags just because it happens to be installed.
net/asterisk11: Patch configure so it no longer adds -liconv to linker
flags just because it happens to be installed.
net-p2p/transmission-*: Override configure test for iconv.
www/htmlcxx: Override configure test for iconv.
www/httrack: Override configure test for iconv.
www/xapian-omega: Override configure test for iconv.
x11/mrxvt(-devel): Add USES=iconv and override configure test for iconv.
x11/x3270: Override configure test for iconv.
x11-wm/jwm: Override configure test for iconv.
PR: 202838
Exp-run by: antoine
Approved by: portmgr (antoine)
- Window snapping (maximize a window to a side or corder of the screen) by
dragging is now supported.
- It is now possible to customize behavior when a maximized window is
dragged.
- A knob is added to globally ignore decoration hints from GNOME
appications.
- A ICCCM protocol for window manager replacement has been supported.