- Replace Mk/bsd.linux-apps.mk and Mk/bsd.linux-rpm.mk with
Mk/Uses/linux.mk.
- Replace USE_LINUX=yes with USES+=linux and USE_LINUX=(.*) with
USES+=linux:\1 in all ports.
- Replace USE_LINUX_APPS with USE_LINUX in all ports.
- Use INSTALL_SCRIPT instead of INSTALL_PROGRAM to install scripts in some
ports.
- When USE_LINUX_RPM is defined, simplify the way DISTFILES and EXTRACT_ONLY
are defined.
- Remove BRANDELF_DIRS and BRANDELF_FILES handling. In the very rare cases
that it is still necessary ports can run ${BRANDELF} from post-patch.
- Remove AUTOMATIC_PLIST handling. Only one port used it.
- Fix Linux MASTER_SITES.
- Replace OVERRIDE_LINUX_BASE_PORT and OVERRIDE_LINUX_NONBASE_PORTS with
default versions framework.
- bsd.port.mk:
- Move Linux related bits to Uses/linux.mk, except USE_LINUX_PREFIX.
- Put USE_LINUX_PREFIX handling after USES processing.
- Define DOCSDIR, DATADIR, etc. after handling USE_LINUX_PREFIX so it can
give these variables a different default value.
- When a package needs to run Linux ldconfig check before installation if
Linux support is enabled.
- emulators/linux_base-*:
- Use USES=linux and remove duplication.
- Remove files/lp. FreeBSD or CUPS lp(1) should work.
- Remove files/yp.conf. No longer seems to be used.
- Remove pkg-deinstall and move pkg-install into pkg-plist.
- Update pkg-descr and pkg-message.
- Fix handling of ldconfig cache in pkg-plist.
- devel/fb-adb: Use a Linux shell to run a Linux script but patch the script
to use FreeBSD mkdir so mkdir -p $path creates $path and not
/compat/linux/$path.
PR: 211645
Exp-run by: antoine
Approved by: portmgr (antoine)
Use LINUX_REPO_ARCH instead of LINUX_RPM_ARCH when setting DISTINFO_FILE
and PLIST for Linux ports. LINUX_RPM_ARCH is the CPU targetted by a
package and LINUX_REPO_ARCH is like our ARCH which is more suitable. This
only affects Centos 6 ports because they are the only ones where
LINUX_REPO_ARCH != LINUX_RPM_ARCH.
Remove the now unneeded ${PORTSDIR} from dependency definition in
The infrastructure Makefiles
PR: 206569
Exp run by: antoine
Differential Revision: D5047
Welcome Centos 6.7
- Upgrade all linux-c6- to CentOS 6.7
- Cleanups
PR: 205846
Submitted by: xmj
In Collaboration with: allanjude, netchild, xmj
Exp-run: antoine
Sponsored by: Perceivon Hosting Inc.
Differential Revision: D3428
We'd like to thanks for all the feedback and comments.
Change the meaning of NO_WRKSUBDIR to force a WRKDIR != WRKSRC.
Right now, NO_WRKSUBDIR means that the extraction does not produce a
subdirectory, and that everything goes straight into WRKDIR. It is
problematic, because during the build of a port, quite a few files are
created in there, and then, a stage directory, where everything is
installed, and then a pkg directory where the package is created, and
those often conflict, or get in the way, of the building process.
With this, NO_WRKSUBDIR will extract the distfiles directly into WRKSRC
instead of WRKDIR. In this case, WRKSRC is artificial and is based on
PKGNAME and not DISTNAME, mitigate conflicts with rc files.
PR: 204056
Submitted by: mat
Reviewed by: bapt
Exp-run: antoine
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D2735
Re-commit of
64 bit linuxulator support (not activated by default):
- most of the work was done by Alan Jude
- all errors are mine
- 64bit (may) have rough edges
- I validated
* that the 32bit part doesn't has deinstall regressions (incl. EXP runs by
antoine)
* 29 of 72 64bit ports ports don't have deinstall leftovers (more validation
later, when I dare to activate the 64bit linuxulator in the kernel)
- the infrastructure part looks mature enough to let more test-bunnies get
some experience with the new 64 bit parts
- to use it you shall have no linux ports installed and have to specify
(on your own risk) the following in make.conf before installing the ports:
OVERRIDE_LINUX_BASE_PORT=c6_64
OVERRIDE_LINUX_NONBASE_PORTS=c6_64
This is on top of the exiting c6 linux ports. Given that CentOS 7 is 64bits
only, we decided to have it as an "overlay" instead of new ports.
The 64bit part only installs 64bit executables, the 32bit ports can not be
installed at the same time (if needed we can think of letting the 64bit
overlay install the 32bit parts too, but given the CentOS 7 comment
above...).
Differential Revision: https://reviews.freebsd.org/D174
Submitted by: alanjude
Sponsored by: Essen FreeBSD Hackathon 2015
Reviewed by: xmj, eadler (earlier versions)
Approved by: portmgr (antoine after some EXP-runs)
64 bit linuxulator support (not activated by default):
- most of the work was done by Alan Jude
- all errors are mine
- 64bit (may) have rough edges
- I validated
* that the 32bit part doesn't has deinstall regressions
* 29 of 72 64bit ports ports don't have deinstall leftovers (more validation
later, when I dare to activate the 64bit linuxulator in the kernel)
- the infrastructure part looks mature enough to let more test-bunnies get
some experience with it
- to use it you shall have no linux ports installed and have to specify
(on your own risk) the following in make.conf before installing the ports:
OVERRIDE_LINUX_BASE_PORT=c6_64
OVERRIDE_LINUX_NONBASE_PORTS=c6_64
This is on top of the exiting c6 linux ports. Given that CentOS 7 is 64bits
only, we decided to have it as an "overlay" instead of new ports.
The 64bit part only installs 64bit executables, the 32bit ports can not be
installed at the same time (if needed we can think of letting the 64bit
overlay install the 32bit parts too, but given the CentOS 7 comment
above...).
Differential Revision: https://reviews.freebsd.org/D174
Submitted by: alanjude
Sponsored by: Essen FreeBSD Hackathon 2015
Reviewed by: xmj, eadler (earlier versions)
Approved by: portmgr (implicit, I remember blanked approval for
linux parts loooong ago, punish me if you don't
agree anymore)
Add USE_LINUX_RPM_BAD_PERMS
This allows extracting to extract rpm containings hardlinks on read only files
when extracted as a regular user
Differential Revision: https://reviews.freebsd.org/D2734
Reviewed by: mat
Set CentOS 6.6 as default Linux version.
Since CentOS 6.5 landed in the portstree and was updated to CentOS 6.6 and we've
fixed the remaining issues, it's time to replace Fedora 10 as Linux default --
given that in the past five years it has done its service and has long since
gone EOL upstream.
The CentOS 6 series will go End of Life in 2020, this should give us some time
to keep its annual releases up to date.
If you have not switched to using CentOS 6.6 ports, please refer to today's
UPDATING entry -- it contains detailed instructions.
If you have already switched to CentOS 6.6 userland,
you can now remove the following two lines from make.conf:
OVERRIDE_LINUX_BASE_PORT=c6
OVERRIDE_LINUX_NONBASE_PORTS=c6
If you encounter any difficulties, please follow the UPDATING entry from
20140922 but skip step 2. In case these steps do not fix the issues,
please submit an issue report in Bugzilla and send an email to FreeBSD's
emulation mailing list.
Differential Revision: https://reviews.freebsd.org/D1145
Reviewed by: wblock, bcr (doc), rene (emulation)
Approved by: swills (mentor)
Approved by: portmgr (swills)
Sponsored by: Perceivon Hosting Inc.
Update CentOS base to 6.5, add userland ports
The Fedora 10 infrastructure ports have been in use since June 2009 and, while
having served a great deed, have become unsupported upstream and hence affected
by unfixed security vulnerabilities. In addition to that, many recent Linux
binaries need newer libc / stdlibc++ versions.
This commit adds the linux-c6- userland as drop-in replacement for the -f10
infrastructure, as well as upgrading the linux_base-c6 port to CentOS 6.5.
If you want to switch to linux-c6 ports, please define at /etc/make.conf:
OVERRIDE_LINUX_BASE_PORT=c6
OVERRIDE_LINUX_NONBASE_PORTS=c6
Additionally, please add the following line to /etc/sysctl.conf:
compat.linux.osrelease=2.6.18
Upgrading procedures are shown in /usr/ports/UPDATING.
This work has been inspired by Artyom Mirgorodskiy's post to emulation@ in
November 2013, using and extending mav@'s work. It has been tested extensively
and most reported issues were already fixed. Please report any additional bug
or "features" to the emulation mailing list.
Many thanks to: mav@, rene@, allanjude@, netchild@, antoine@, everyone who's
filed Issues and Pull requests on GitHub,
PR: 186820
Differential Revision: https://reviews.freebsd.org/D793
Reviewed by: allanjude, antoine, bapt, rene
Approved by: portmgr (antoine, bapt)
Approved by: koobs (mentor)
Sponsored by: Perceivon Hosting Inc.
Convert all :U to :tu and :L to :tl
Since FreeBSD 8.4 and FreeBSD 9.1 make(1) do support :tu and :tl as a
replacement for :U and :L (which has been marked as deprecated)
bmake which is the default on FreeBSD 10+ only support by default
:tu/:tl a hack has been added at the time to support :U and :L to ease
migration. This hack is now not necessary anymore
Note that this makes the ports tree incompatible with make(1) from
FreeBSD 8.3 or earlier
With hat: portmgr
Let the linux rpm ports use grouping rules, e.g. to download the
binaries and the sources from differents MASTER_SITES.
PR: ports/186702
Approved by: netchild
- Remove a check insisting that Fedora 10 ports can only be run when
compat.linux.osrelease is set to 2.6.16. This enables running newer
libc versions wanting e.g. Linux 3.4.X. It was mostly a leftover
from the Fedora Core 4 support in the FreeBSD 7.X days. [1]
- While here shorten the IGNORE message of another check.
Submitted by: cognet [1]
- Finish removal of support for Linux 2.4 in bsd.linux-apps.mk and
bsd.linux-rpm.mk. The default linux version is now Fedora 10.
- Remove now obsolete checks for Linux 2.4 in emulators/linux_base-c6,
emulators/linux_base-f10, and emulators/linux_dist-gentoo-stage3.
While there, remove superfluous -p argument from ${MKDIR}.
- Remove now obsolete check for Linux 2.4 or FreeBSD 6 and lower from
astro/google-earth.
- Remove expired Fedora Core 4 ports which were only used on FreeBSD 7
and below.
- Update LEGAL and MOVED
PR: ports/176877
Submitted by: myself
Approved by: portmgr (bapt)
Exp-run by: bapt
Remove all traces of F8, now that the deprecated/expired ports are removed
by a brave soul. They served us well.
We are fully FC4 (releng-7) or F10 (all other supported branches) now.
Reviewed by: bsam, gj
Deprecate md5 in favour of sha256 checksums. md5 checksums will no longer
be generated or checked, and will be silently ignored for now. Also,
generalize the MD5_FILE macro to DISTINFO_FILO.
PR: 149657
Submitted by: rene
Approved by: portmgr
Tested on: pointyhat i386 7-exp
Welcome new defaults for linux ports!
The default is switched for OSVERSION >= 800076 (when the last known
issue was fixed at the base system). From now the default linux
base port is linux_base-f10. Default linux infrastrucure ports
are linux-f10-*.
HEADSUP to current@ is comming.
Exp-run by: portmgr (pav)
Switch default LINUX_DIST_VER to 4. This change was part of an exp-run
and only one application was affected and is fixed now
(x11-themes/linux-gtk-bluecurve-theme).
Tested by: exp-run (pav)
Here are new Linux Fedora 10 infrastructure ports.
Those ports are intended to be used with 8-CURRENT at least
with SVN r192206.
If you want to switch to linux-f10 ports, please define at /etc/make.conf:
OVERRIDE_LINUX_BASE_PORT=f10
OVERRIDE_LINUX_NONBASE_PORTS=f10
An upgrading procedure is shown at /usr/ports/UPDATING, entries 20090401
and 20070327.
For the first time all tested linux ports work as expected(!):
. acroread8;
. google-earth;
. skype;
. seamonkey.
Many thanks for kernel folks who really did the main work
(and I wrote only some lines of ports).
There is a good chance that those ports may become a default
for 8.0-RELEASE. Please, test and report back to emulation@ ML.
Move checks away for MASTER_SITES area and restruct them.
Linux Fredora 8 infrastructure ports should be used if:
. sysctl compat.linux.osrelease is 2.6.16;
. linux base port is set to f8 or f9;
. linux infrastructrue is used.
Remove _F8_COMPATIBLE_LINUX_BASE_PORTS for now (it will
be reintroduced later).
Please note, that there is no strict dependency upon OSRELEASE so far.
. add linux_base-f9 port to the list of used linux base ports;
. add a variable _F8_COMPATIBLE_LINUX_BASE_PORTS, it's a list
of linux base ports compatible (i.e. may be used) with
linux -f8- infrastructure ports;
. define apropriate _LINUX_BASE_SUFFIX;
. let ports with AUTOMATIC_PLIST=yes use the new value;
. add some comments about those changes.
Here are new Linux Fedora 8 infrastructure ports.
The recommended version of FreeBSD to use them is 8-CURRENT.
FreeBSD-7.x is not fully compatible with compat.linux.osrelease
2.6.16. Some syscalls cannot be MFCed due to native FreeBSD
ABI breakage.
Usage (and package building):
1. define compat.linux.osrelease=2.6.16;
2. add following variables to /etc/make.conf:
. OVERRIDE_LINUX_BASE_PORT=f8;
. OVERRIDE_LINUX_NONBASE_PORTS=f8.
Approved by: bsam (me) ;-)
Welcome to the new linux ports infrastructure which allows using
both current (fc4) and future linux (f8) distributions at one
ports tree.
The patch contains full changes to ports/Mk files and all ports involved.
But only infrastructure is changed. The resulting packages are the same as
before. Hence no need to bump PORTREVISIONs.
The idea was taken from bsd.gnome.mk and others.
More than 130 ports are switched to follow a new linux infrastructure
introduced by changes to bsd.port.mk, bsd.linux-rpm.mk and a new
bsd.linux-apps.mk.
Thanks for all who was involved and helped me with this work.
And help from Alexander Leidinger was incredible.
Other changes are coming. Stay tuned!
PR: ports/132510
Submitted by: bsam (me)
Exp-run by: portmgr (pav)
Add valid values fc6, f7 and f8:
. to USE_LINUX variable, so users can install linux ports which [1]
use AUTOMATIC_PLIST (while those values are assigned to
OVERRIDE_LINUX_BASE_PORT variable);
. to IGNORE message.
netchild said: "I don't think it will hurt if the fix for fc6 is committed.
There are users out there which already use the experimental 2.6.16 support,
and it would make their life easier."
me decided: "Why should we segragate f7/f8 users?" and committed f7/f8
parts as well.
PR: ports/122826 [1]
Submitted by: Naram Qashat <cyberbotx at cyberbotx.com> [1]
o change default linux package at bsd.linux-rpm.mk for automatic
plist creation to FC4;
o upgrade audio ports which use automatic plist creation to use FC4
packages or bump PORTREVISION for those which already use FC4
packages. [1]
Approved by: julefort (maintainer, implicit) [1]
netchild (mentor)
Extract only the binary RPM's.
This should fix linux-expat, linux-glib2, linux-gnomelibs and
linux-xorg-libs (and thus linux-jpeg) on pointyhat.
Noticed by: pointyhat (kris)
bsd.linux-rpm.mk:
- document some variables
- set some variables based upon presets [1]
- automatically guess the src RPM (needs to be overidden for multi-RPM
ports) [1]
- allow to specify complete directories or a set of files for
automatic brandelf handling (BRANDELF_DIRS/BRANDELF_FILES) [1]
- add fc3 to the automatic plist handling [1]
- allow to override the linux-rpm-generate-plist target
- also detect @dirrmtry in the automatic plist handling [1]
- adopt the new-plist target to the new world order [1]
ports: [1,2]
- edit WRKSRC (add rpm/i386/${LINUX_DIST}/${LINUX_DIST_VER})
- add source distfiles to distinfo to allow auto fetching sources
with defined PACKAGE_BUILDING;
- remove some variables already defined at linux-rpm
(i.e. MASTRE_SITE_SUBDIR);
- add LINUX_DIST_VER to every port (in case default linux_base
changes);
- bump PORTREVISION (so that the ports build cluster puts the
src and binary RPM's to the new location)
- update linux-openal to the newest FC3 port
All errors are mine because of cut&paste patch merging.
Aproved by: maintainer [2]
Reviewed on: multimedia [1]
Submitted by: Boris Samorodov <bsam@ipt.ru> [1]
- Fix 'all-depends-list' target in cases if dependencies list is
very long and if some dependencies can't be added into the list.
[1]
- Fix FAM support. Make gamin the default FAM system. [2]
- Introduce new 'quicksearch' target to show only port, path and
info section of the matching ports. [3]
- Introduce new category - rubygems. [4]
- Fix stale dependencies while installing qmail slaveport and
another port that depends on qmail. [5]
- Add commentary for describes target in bsd.port.mk. [6]
(Only the first 15 lines of the commit message are shown above )