- USE_LINUX now implies NO_FILTER_SHLIBS=yes. It also doesn't use FreeBSD
tools to strip binaries anymore, so it's not neccesary anymore to override
STRIP and STRIP_CMD.
- USE_LINUX_PREFIX implies NO_MTREE now.
- In the USE_LINUX case, USE_XLIB now depends upon the linux X11 libraries
instead upon the native FreeBSD libraries.
- The variable LINUX_BASE_PORT contains a string which is suitable as an
item in *_DEPENDS, so if a port BATCH_DEPENDS or FETCH_DEPENDS upon the
default (or overriden) linux base, ${LINUX_BASE_PORT} should be used
instead of a hardcoded reference.
- Change all ports to comply to the "new world order".
- The Ports Collection now allows to override the default linux_base port.
Specify e.g. OVERRIDE_LINUX_BASE_PORT=rh-9 in /etc/make.conf to use
${PORTSDIR}/emulators/linux_base-rh-9 (the logic is to use
${PORTSDIR}/emulators/linux_base-${OVERRIDE_LINUX_BASE_PORT}).
- If USE_LINUX or OVERRIDE_LINUX_BASE doesn't point to an existing linux_base
port and if USE_LINUX isn't set to "yes" (case insensitive), the port will
be marked as IGNORE. [1]
- Readd USE_LINUX knobs into several ports and make several uses of a
conditional dependency ("USE_LINUX?=") into an unconditional one
("USE_LINUX=") which where removed/changed by Trevor to allow the use of
alternative linux_base ports. While this is a nice goal, the implementation
resulted in missing dependencies. The OVERRIDE_LINUX_BASE_PORT knob
in this commit is supposed to fix the problem while keeping the feature.
Basicaly this includes a backout of Trevor's commit, to prevent confusion
I mention it here explicitely.
- Use the correct prefix (X11- instead of LOCAL- or LINUX-) for some ports.
Chase dependencies for this.
- Changes to make linux_devtools installable on amd64, remove some stray
device nodes (they don't work on recent OS versions and aren't really
needed).
- Make linux_base-8 PREFIX clean and remove some stray device nodes.
Additionally tell a little bit more about how to setup NIS/YP [2].
- Update the PGSQL dependency in the linux-opengroupware port to a recent
version (the old one isn't available anymore), I don't know if this
works (at least it isn't more broken than before).
- Use PREFIX/usr/share/doc instead of PREFIX/usr/doc in the divx4linux
ports, the former path exists already and gets populated by other
packages too (PREFIX=LINUXPREFIX!).
- Fix some obvious (non-linuxolator) bugs in some linux ports while being
there.
- Bump PORTREVISION where neccesary.
Requested by: portmgr (linimon) [1]
Submittted by: Gerrit Kuehn <gerrit_huehn@gruft.fido.de [2]
Approved by: portmgr (kris, linimon), maintainers (or maintainer timeout)
Tested on: ports cluster (kris)
Reviewed by: silence on emulation@
Superseedes PR: 69997
Maintainer approval from:
chris@chrisburkert.decracauer@cons.org
des
girgen
jamie@bishopston.net
mezz
mi
nivit@users.sf.net
pat
simond@irrelevant.orgriggs@rrr.deUdo.Schweigert@Siemens.com
little bit and allows to proceed to a more recent linux_base from
a stable (read as: the major bugs should be ironed out or identified
and most linux ports build just fine) source.
It also allows to ship 4.11 with a working linuxolator (the EOLed
linux_base is marked forbidden because of a security hole).
This is a major update, please read UPDATING (and CHANGES if you
develop linux ports).
Changes:
- change the default linux_base from v7 to v8
- add a newer freetype to linux_base-8 for nicer fonts display [1]
- don't let cpio use hardlinks in the linux_base-8 port to quiet some
warnings in some cases [2]
- fix a cut&past error in the linux_base-8 pkg-install script [3]
- convert the binary knob "USE_LINUX" to a version specifier, e.g.
USE_LINUX=<value> specifies a dependency upon
emulators/linux_base-<value>, exceptions are a value of "7" (which
does what you want and adds a dependency to linux_base) and any
value without a corresponding port in
PORTSDIR/emulators/linux_base-<value> (which adds a dependency to
the default linux_base)
- don't implicitly add USE_LINUX with the USE_LINUX_PREFIX knob,
this allows us to use the USE_LINUX_PREFIX knob for linux_base and
paves the way for splitting up future linux base ports into
individual pieces
- remove RESTRICTED from some GPL licensed ports, even when we only
distribute binaries, we get them from official linux sites, so
anyone can grab them there if he needs to
- add a dependency upon the linux X11 bits where necessary (based upon
guesswork)
- don't use USE_X_PREFIX in some linux ports since it adds a dependency
to the FreeBSD X11 libs, as a workaround use PREFIX?= (the clean
solution would be to remove the implicit USE_XLIB from USE_X_PREFIX)
- bump the portrevision of the linux ports ("better safe than sorry"
algorithm)
- pass maintainership of the important linux infrastructure to a
mailinglist, hijack freebsd-emulation@ for this purpose (if somebody
doesn't like this: tell us your bikeshed color at freebsd-emulation@,
my color would be "linuxolator@" in case someone cares...)
- add a pkg-install script for linux-fontconfig, but don't use it;
everything should work without it (the FreeBSD fc-cache program should
do all the work), but in case we need it we just need to decomment the
pkg-install part in the Makefile
- fix some dependencies
- fix some bugs
- add some static plists
- unbreak the ports with dependecies to more than one linux_base
This also fixes some ports which are marked BROKEN because of dependencies
to v7 and v8 of linux_base at the same time.
Known bugs:
- the linux-mesa and linux-devtools ports install libGL*.so symlinks
- some "minor" plist bugs (e.g. ld.so.{conf,cache} are modified by
the linux X11 port, so linx_Base-8 moans at deinstall time)
Future work (interested souls should coordinate with freebsd-emulation@):
- add some kind of USE_LINUX_X11 knob to streamline the X11 dependencies,
or modify the behavior of USE_XLIB in the USE_LINUX case
AFAIK trevor has some patches.
- make USE_XLIB and USE_X_PREFIX orthogonal to be able to get rid of
the PREFIX?= workaround in some linux ports
Should be discussed/coordinated on/with x11@.
- move the RPM bits from x11-toolkits/linux-gtk/Makefile to PORTSDIR/Mk/
- update to a more recent linux base
PR: 69997, 70539 (and maybe others)
Discussed with/on: java@, x11@, trevor, portmgr
Tested by: mezz, portmgr, pointyhat
RPM hunted down by: Joseph Gelinas <scirocco@tasam.com> [1]
Requested by: portmgr [2]
Submitted by: kris [3]
Approved by: portmgr
- Incorporate the C++ DSO Object Destruction API for < 502101 systems
(icc v8 already does this). [1]
If you use icc7 on such a system, you have to recompile C++ programs
(including stldport-icc).
- Simplify the post-extract now that we only extract one rpm. [1]
Submitted by: Marius Strobl <marius@alchemy.franken.de> [1]
where appropriate [1]
- make portlint happy [1]
- sync icc7 and icc [1]
- add linux_base as a patch depends for icc v8
Submitted by: Marius Strobl <marius@alchemy.franken.de> [1]
Requested by: maintainer [1]
- correct the use of ECHO_CMD and ECHO (swap them) [1]
icc:
- fix the DISTFILE handling, it's automatically available after
bsd.port.post.mk, not after bsd.port.pre.mk, so set it explicitly
to be able to use it in the check for the IGNORE message [1]
icc7:
- don't extract the Intel debugger, it's not usable without a
threads debugging lib
- USE_SIZE
Noticed after: reading the commit log/diff of the
ifc port [1]
Submitted indirectly by: maho, hrs [1]
There slipped in a hardcoded /usr/local, it was supposed to be a
placeholder for LOCALBASE (to find the stlport lib in the ld wrapper).
Thanks to: Marius Strobl <marius@alchemy.franken.de>
for reviewing the commits.
NOTE: you need to rebuild stlport-icc and maybe some other C++
programs/libs.
- rework ld.c to fix the build of stlport-icc on 4.x (first part
of the build fix, the second part follows shortly in a stlport
commit) [1]
Submitted by: Marius Strobl <marius@alchemy.franken.de> [1]
script was renamed to solve a conflict with archivers/rpm) to fix possible
build problems.
I've tested this with lang/icc. Any new errors because of this commit in
one of the modified ports may be because the ports previously may have used
rpm2cpio from archivers/rpm instead of the used {EXTRACT,BUILD}_DEPENDS
archivers/rpm2cpio.
- Transform some warnings into errors as suggested by some included
docs (some kind of MSVC compatibility which isn't reverted in icc
for linux).
ld.c:
- add possibility to use a different threads lib via PTHREAD_LIBS
variable (e.g. PTHREAD_LIBS=-lthr) [1]
this may be subject to change when gcc learns how to handle our
different threads libs
- refactor some code [1][2]
- remove mailwrapper license, there's no code from mailwrapper
anymore [2]
- correct the order of libc and libc_r [1][2]
Submitted by: mi [1]
Submitted by: Marius Strobl <marius@alchemy.franken.de> [2]
Reviewed by: Marius Strobl <marius@alchemy.franken.de> [1]
icc -shared -o libfoo.so foo.o -lbaz
the ld wrapper gets confused and thinks that a static link is intended
and the link fails. This patch appears to fix things.
Submitted by: dfr
(this may break ports which depend upon OpenSSL from ports which was
compiled as a base system replacement because it includes a system
header directory again)
- ignore "-pipe" in CFLAGS, this should unbreak some ports with hardcoded
"-pipe"
Noticed by: Krzysztof Parzyszek <kristof@swissmail.org> [1]
Tested by: Krzysztof Parzyszek <kristof@swissmail.org> [1]
path, thus adding a system path with -I results in not respecting the
sunstitute headers. This results in problems because we have some important
changes there.
Parts of this commit where
Submitted by: marius@alchemy.franken.de
- fix [dfi]vec.h with stlport-iostreams
- do not install a Windows header (mathf.h)
- do not install libompstub (depends on pthread_atfork(), see PR 17437)
Submitted by: marius@alchemy.franken.de
- point to the icc errata after make install