to besolved differently, since the ldconfig call has to be chrooted, else
the linux ldconfig will cache some FreeBSD native libs which results in
not being able to start some programs:
- remove the symlink (linux_base)
- revert to chroot the ldconfig call (with internal functionality this
time)
- pet portlint a little bit
- don't create LINUXBASE/var/run, to let linux apps access /var/run
- link LINUXBASE/etc/ld.so.cache to /var/run/linux-ld.so.cache on a
recent -current (where /etc/rc.d/abi knows how to handle the symlink);
this should allow a read-only LINUXBASE
- don't remove LINUXBASE/usr/local, someone may have installed something
there
commands that are dependent on the host machine architecture.
This fixes installation failure on amd64 in some circumstances.
PR: ports/80679 [1], ports/90252 [2]
Submitted by: OMATSU Shinichiro <koma2@lovepeers.org> [1]
Torfinn Ingolfsen <tingo@start.no> [2]
Approved by: emulation (maintainer, timeout 7 months)
- don't remove nsswitch.conf if modified [1]
- utilize the new "store GPLed sources" feature [2]
- use a master site which carries the files
Submitted by: Ulrich Spoerlein <q@galgenberg.net> [1]
Requested by: kris [2]
commit tries to solve this by adding some @exec calls into the plist.
Add a pkg-deinstall script with appropriate content which was previously
in pkg-install (ouch). [1]
PR: 82625 [1]
Submitted by: Boris B. Samorodov <bsam ipt ru>
- don't generate the plist at install time, use a static plist instead
(this fixes the empty plist after the change to pre-su-install) [1]
- brand _every_ ELF executable in {,usr/}{,s}bin/
(short command line, should be used by other linux ports with a lot of
files too; contrary to the commit messages of some linux ports: brandelf
is usefull and doesn't result in foot-shooting in edge cases)
- install directly into the destination instead of bouncing through WRKSRC
Noticed by: marcus [1]
Pointy hat to: netchild [1]
- 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
in any order:
- add the X11 lib path to ld.so.conf in the linux base port
- (re)generate the ld.so.cache file in the linux base port too
- don't change the ld.so.conf in the linux X11 port
At deinstall time the linux base port may still complain about a changed
ld.so.cache file. A clean way to solve this would be to use ("@unexec" and
"@exec") in the plist. Since the plist is autogenerated this would need
some little magic in the plist generation or we have to switch to a static
plist. Delay the decission about how to handle this until we know when/how
to update to a more recent linux base port.
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
I think it's a bug that linux_base thinks it conflicts with itself.
--petef
The problem occurs if you do
make install; make install FORCE_PKG_REGISTER=yes
which is somewhat supported, although [seldom] (never?) used.
--eik
Also record conflicts with cle_base.
that states that the software is based in part of [sic] the
work of the FreeType Team, in the distribution documentation.
We also encourage you to put an URL to the FreeType web
page in your documentation, though this isn't mandatory.
-- <URL:http://cvs.freetype.org/cgi-bin/viewcvs.cgi/~checkout~/freetype2/docs/
FTL.txt?rev=1.7>
by programs such as mv (used in installation); remove librpm404 and
rpm404-python which are unused. Make rpm an EXTRACT_DEPENDS rather
than BUILD_DEPENDS, based on Phil Pennock's suggestion for the
sgifonts port.
Submitted by: Frank Reppin (adding libattr and libacl)
Installation of linux_base-7.1_2 fails when linprocfs is
mounted. Unmounting linprocfs before installing works
around the issue.
At Lars' suggestion, this script also mounts the linprocfs after
installation. I assume that if the user has a linprocfs entry in
/etc/fstab, the user wants it to be mounted. It also seemed like
a good idea to un-mount it before de-installation.
PR: 46172
The function gzprintf within zlib, when called with a string
longer than Z_PRINTF_BUFZISE (= 4096 bytes), can overflow
without giving a warning. zlib-1.1.4 and earlier exhibit
this behavior. There are no known exploits of the gzprintf
overrun, and only a few programs, including rpm2html and
gimp-print, are known to use the gzprintf function. The
problem has been fixed by checking the length of the output
string within gzprintf.
--<URL:http://rhn.redhat.com/errata/RHSA-2003-079.html>
package. libstdc++-2.96 is a core package that is referenced by many
linux_base applications such as linux-eagle. For instance, linux-eagle
doesn't work with linux_base-7.1_3.
Despite the importance, libstdc++-2.96 has been forgotten to be extracted
since 6 months. (Actually, the RPM package is listed in the Makefile,
but was badly defined so that no extraction was performed.)
Since linux_base is an important package, I hesitated to commit this
correction (for a long time :). If there is any incovenience in the
way of package definition, please feel free to correct my change.