RFC: cleanup of linux ports (enhanced version)

Alexander Leidinger Alexander at Leidinger.net
Sat Apr 30 07:52:33 PDT 2005


Hi,

at http://www.leidinger.net/FreeBSD/port-patches/ports-WIP.diff is a
mega-patch to cleanup some issues in linux ports. You get this mail
because your port is affected by this patch. This patch is subject to
testing on the ports build cluster (as soon as the necessary resources
are available, not before 5.4-Release), but it would be nice if you
could take a look at parts of the patch which affect your port.

Please apply the patch (cd into $PORTSDIR and run "patch --quiet -p1
</path/to/wip-patch") and have a look at the ports you maintain ("grep
^diff /path/to/wip-patch | cut -d ' ' -f 21" prints out a list of
affected files).

General aspects of the patch should be discussed on freebsd-emulation@,
specific issues related to just a port should be directed to me.

The patch addresses the following issues (the text is a part of the
commit log I want to use):
  - 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 DEFAULT_LINUX_BASE 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, ${DEFAULT_LINUX_BASE} 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_DEFAULT_LINUX_BASE=rh-9 in /etc/make.conf to use
    ${PORTSDIR}/emulators/linux_base-rh-9 (the logic is to use
    ${PORTSDIR}/emulators/linux_base-${OVERRIDE_DEFAULT_LINUX_BASE}).
  - 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_DEFAULT_LINUX_BASE 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.

The patch doesn't contain PORTREVISION bumps yet. Since I have to
reevaluate every port which needs a bump at commit time, I will bump at
commit time.

Feel free to suggest improvements or point out deficits of the patch.

Bye,
Alexander.

-- 
      ...and that is how we know the Earth to be banana-shaped.

http://www.Leidinger.net                       Alexander @ Leidinger.net
  GPG fingerprint = C518 BC70 E67F 143F BE91  3365 79E2 9C60 B006 3FE7


More information about the freebsd-emulation mailing list