History log of /freebsd-current/share/mk/bsd.port.subdir.mk
Revision Date Author Comments
# 5a4b548a 02-Jan-2024 Warner Losh <imp@FreeBSD.org>

bsd.port.mk: No need to support fmake anymore

There's no need to support fmake anymore. Always assume we can use
bmake's :tA modifier. The ports tree hasn't supported fmake in about a
decade anyway. Simplify here.

Sponsored by: Netflix
Reviewed by: brooks, emaste
Pull Request: https://github.com/freebsd/freebsd-src/pull/980


# d0b2dbfa 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

Remove $FreeBSD$: one-line sh pattern

Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/


# 880c41ba 03-Sep-2015 Bryan Drewery <bdrewery@FreeBSD.org>

Avoid sub-shell for realpath(1) for bmake by using its built-in :tA.

MFC after: 2 weeks
Approved by: portmgr (implicit)


# 6cc777bf 01-Oct-2014 Will Andrews <will@FreeBSD.org>

Revise r272363 by collapsing the tests into a for loop.

This has the side effect of ensuring that realpath is also run for the
nominal case of PORTSDIR=/usr/ports (assuming .CURDIR is a ports directory
that relies on /usr/ports but is not rooted in it). This ensures that any
generated PORTSDIR used is always the actual location.

Submitted by: jkim (different implementation)


# ff48e371 01-Oct-2014 Will Andrews <will@FreeBSD.org>

Always resolve PORTSDIR to absolute paths using realpath(1).

Reported by: madpilot
Reviewed by: bapt
X-MFC-With: 272282


# a0dec793 29-Sep-2014 Will Andrews <will@FreeBSD.org>

Search for the nearest PORTSDIR where Mk/bsd.ports.mk exists, from .CURDIR.
This will only take effect if PORTSDIR is not set, as previously supported.

Use .if exists(), for four specific possibilities relative to .CURDIR:
., .., ../.., and ../../.. The fourth possibility is primarily in case
ports ever grows a third level. If none of these paths exist, fall back to
the old default of /usr/ports.

This removes the need to set PORTSDIR explicitly (or via wrapper script) if
one is running out of a ports tree that is not in /usr/ports, but in a
home directory.

Reviewed by: bapt, bdrewery (older version)
CR: D799
MFC after: 1 week
Sponsored by: Spectra Logic


# a7d5f7eb 19-Oct-2010 Jamie Gritton <jamie@FreeBSD.org>

A new jail(8) with a configuration file, to replace the work currently done
by /etc/rc.d/jail.


# fe0506d7 09-Mar-2010 Marcel Moolenaar <marcel@FreeBSD.org>

Create the altix project branch. The altix project will add support
for the SGI Altix 350 to FreeBSD/ia64. The hardware used for porting
is a two-module system, consisting of a base compute module and a
CPU expansion module. SGI's NUMAFlex architecture can be an excellent
platform to test CPU affinity and NUMA-aware features in FreeBSD.


# d7f03759 19-Oct-2008 Ulf Lilleengen <lulf@FreeBSD.org>

- Import the HEAD csup code which is the basis for the cvsmode work.


# 4a209e39 02-Jul-2004 Oliver Eikemeier <eik@FreeBSD.org>

Enable testing of customized variants of bsd.port.mk and
bsd.port.subdir.mk, without the overhead of an additional ports tree.

Use
make BSDPORTMK='${PORTSDIR}/My.Mk/bsd.port.mk' target
and
make BSDPORTSUBDIRMK='${PORTSDIR}/My.Mk/bsd.port.subdir.mk' target

to build with the alternate versions.

MFC after: 3 days


# 139df655 19-Apr-2002 Ruslan Ermilov <ru@FreeBSD.org>

Style.


# e36a59f7 28-Dec-2000 Peter Wemm <peter@FreeBSD.org>

Add $FreeBSD$


# 500ada61 25-Jan-1999 Satoshi Asami <asami@FreeBSD.org>

Move bsd.port.*mk to under ${PORTSDIR}/Mk (already repository copied).
There are only skeletons left here; they merely serve as a backup to
include the real versions under ${PORTSDIR}/Mk while we update the ports
tree to include them directly.


# 01e85cb3 12-Dec-1998 Satoshi Asami <asami@FreeBSD.org>

(0) Fast INDEX generation. Only print out the directory name and
don't recurse in "make describe". The new INDEX target in
ports/Makefile invokes a perl script to recurse and convert them
into package names.

While I'm here, change the name of targets and move them around a
little bit for the sake of consistency.

It is also probably worth noting here that the meaning of the
"build dependency" list in INDEX has been changed slightly
changed. The old list was "build depends and its build depends"
-- not particularly useful if you had things like autoconf, which
run-depend on gm4 (you install all the things listed here and
you'll get an autoconf that won't run).

It is now "build depends and its run depends" -- you install
everything listed here, and you'll be able to build the port.
Submitted by: steve

(0') Fast README.html generation. It uses ports/INDEX to find
dependencies instead of embarking on to a recursive loop.
Submitted by: steve

(1) Remove NO_WRKDIR and NO_EXTRACT. Their functionality are easily
replacable with NO_WRKSUBDIR=t and EXTRACT_ONLY= (nothing on right
side), and they get in the way of read-only port trees.

(2) Surround first few variable definitions with ".if !defined()".
This will make cross-compilation easier and also speed up make
processes.

(3) Call sysctl with absolute path. Prefer the one in /sbin over the
one in /usr/sbin.

(4) Add four new variables

PKGINSTALL?= ${PKGDIR}/INSTALL
PKGDEINSTALL?= ${PKGDIR}/DEINSTALL
PKGREQ?= ${PKGDIR}/REQ
PKGMESSAGE?= ${PKGDIR}/MESSAGE

and use them in PKG_ARGS. Frobbing with PKG_ARGS directly is
strongly discouraged.

(5) Change PKG_SUFX to ".tar" (instead of ".tgz") if PKG_NOCOMPRESS is
defined. This is intended only for our own use.

(6) Add more sites to MASTER_SITE_GNU.
Submitted by: billf

(7) Override MANUAL_PACKAGE_BUILD if PARALLEL_PACKAGE_BUILD is
defined. This is intended only for our own use.

(8) Add new target "ignorelist" which will print out the package name
if the port is not going to be built on this machine. This is
intended only for our own use.

(9) Make mtree a little quieter.


# 9fbb2e1c 08-Nov-1998 Satoshi Asami <asami@FreeBSD.org>

(1) New variable MAKE_ARGS: will be appended to build/install make argument
list. The old MAKE_FLAGS was a little hard to use since it had a weird
default ("-f").
Suggested by: Shigeyuki FUKUSHIMA <shige@kuis.kyoto-u.ac.jp>

(2) Add new targets clean-restricted and clean-for-cdrom, which will
delete RESTRICTED and NO_CDROM packages and distfiles from the top.
Reviewed by: jkh

(3) Add depends to list of things to recurse on. It will help people
who are trying to fetch some ports plus their dependencies.

Requested by: Chris Dillon <cdillon@wolves.k12.mo.us>


# fc006fb4 30-Oct-1998 Satoshi Asami <asami@FreeBSD.org>

(1) Add new variables LOOP_VAR and LOOP_OPTIONS to implement building several
packages from a single port. LOOP_VAR is the name of the variable
and LOOP_OPTIONS is a space-separated list of values it should
take. When these are set, the target "package-loop" will go
through a clean and package loop for all the options. The
"package-loop" target is defined as "package" when LOOP_VAR is not
defined, so if you are in the business for building packages, you
should use "package-loop" all the time. (This target is added to
bsd.port.subdir.mk too.)

Also, the "describe" target prints out multiple lines so that all
options will go into the INDEX. (In other words, if you define
these variables, INDEX is going to look real silly if you don't
put ${${LOOP_VAR}} in PKGNAME.)

Seconded by: obrien ("ANYTHING")

(2) Turn off regexp support for LIB_DEPENDS. It is a fixed string of
the form <NAME>.<VER> now.
Tested by: several rounds of complete package builds

(3) Check checksum even if NO_EXTRACT is defined.

(4) Cosmetic fix for message in MANUAL_PACKAGE_BUILD case.


# 38bcfc5c 26-Aug-1998 Satoshi Asami <asami@FreeBSD.org>

Add "deinstall" to list of targets. This is only fair since "install" and
"reinstall" are already here. :)


# 6f6617ad 19-Nov-1997 Satoshi Asami <asami@FreeBSD.org>

Add new target "checksubdirs". It will warn about any subdirectories that
are not in the SUBDIR list. It also knows about the "standard" directories
that are to be ignored ("CVS", "distfiles", etc.).


# 5e1b557e 09-Nov-1997 Wolfram Schneider <wosch@FreeBSD.org>

target(__target) -> target(${__target})

PR: bin/4736
Submitted by: Martin Kammerhofer <dada@sbox.tu-graz.ac.at>


# ca8fdeef 05-Nov-1997 Bill Fenner <fenner@FreeBSD.org>

Convert <, > and & into &lt;, &gt; and &amp; in port names, COMMENT and
DESCR files when building README.html .
Don't use control characters in sed statement.

Problems reported by "Chris G. Demetriou" <cgd@pa.dec.com> in NetBSD PR
pkg/4341.


# 27224598 22-Aug-1997 Satoshi Asami <asami@FreeBSD.org>

Add "distclean" to list of targets to descend into subdirs for.


# d66539fb 09-Mar-1997 Wolfram Schneider <wosch@FreeBSD.org>

Add comments.


# b97fa2ef 22-Feb-1997 Peter Wemm <peter@FreeBSD.org>

Revert $FreeBSD$ to $Id$


# 1130b656 14-Jan-1997 Jordan K. Hubbard <jkh@FreeBSD.org>

Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.


# 79353ba0 12-Jan-1997 Satoshi Asami <asami@FreeBSD.org>

Skip non-existent subdirectories. The diff is rather large because
the original logic went into a section of code assuming some
incarnation is there, but it's basically a "test -d" fix. Closes PR
ports/2082.

Reviewed by: max ("although I didn't test it, it looks fine")


# 7bf5b94f 01-Nov-1996 Satoshi Asami <asami@FreeBSD.org>

(1) Add NetBSD support. Closes PR bin/1643.
Submitted by: Jason Thorpe <thorpej@nas.nasa.gov>

(2) Remove the bogus "CAT+=" definition. Closes PR ports/1703.
Submitted by: Peter Childs <pjchilds@imforei.apana.org.au>

(3) Change MKDIR to "/bin/mkdir -p", remove "-p" from ${MKDIR}
invocations. Closes PR ports/1901.
Submitted by: obrien

(4) Add a new macro variable COMPRESS_MAN, which will evaluate to gzip
if NOMANCOMPRESS isn't set (default), or true if it is.

(5) Add a new variable NO_CHECKSUM, which will disable the md5 checksum.
Submitted by: jkh

(6) Also, move NO_PATCH and NO_PACKAGE checks to right place in
invocation order.

(7) Check for LIB_DEPENDS before installation too. (It used to check
only before extraction.)
Forgotten a long time ago by: asami


# cd8e84c7 09-Apr-1996 Wolfram Schneider <wosch@FreeBSD.org>

use .for loop for common targets


# 25f2b006 01-Apr-1996 Satoshi Asami <asami@FreeBSD.org>

Thanks for the overwhelming response (which can be only summarized by the
word: "zilch"). I guess the only way to get people try and comment on
these kind of things is to shove it down their throat.... ;)

Anyway, here's a set of changes required for auto-generation of READMEs
in ports directories. Necessary changes and additions of templates
to the ports tree will follow shortly.

Eventually I'll commit all the generated READMEs to the tree, but that
will be in the rather distant future. For now, I encourage anyone
with a -current systam and a matching ports tree to do a "make readmes"
at the top level and see what they get.

Next step will be to add pkg/{COMMENT,DESCR} to all the categories.


# 110dbd10 23-Mar-1996 Wolfram Schneider <wosch@FreeBSD.org>

remove BINGRP?= BINOWN?= BINMODE?=


# 3dd8895e 20-Mar-1995 Jordan K. Hubbard <jkh@FreeBSD.org>

Add fetch-list command for Rod
Use ECHO_MSG macro for printing "===>" line things so that I can now turn
those OFF when I don't want them.


# 3c4d31f1 03-Mar-1995 Gary Palmer <gpalmer@FreeBSD.org>

Add support to miss out ``DUDS'' subdirectories. See thread in freebsd-ports
for more.


# 333881d5 04-Jan-1995 Jordan K. Hubbard <jkh@FreeBSD.org>

Rename check-md5 target to checksum.
Submitted by: gpalmer


# c723fc3f 03-Jan-1995 Jordan K. Hubbard <jkh@FreeBSD.org>

Add describe target support.


# cf6be758 17-Dec-1994 Gary Palmer <gpalmer@FreeBSD.org>

bsd.port.mk: missing semicolon added
bsd.port.subdir.mk: added check-md5 as target


# 30229c53 17-Nov-1994 Jordan K. Hubbard <jkh@FreeBSD.org>

Add reinstall.


# e82b0b99 16-Sep-1994 Jordan K. Hubbard <jkh@FreeBSD.org>

Add support for DEBUG_FLAGS. If you say something like:

make DEBUG_FLAGS=-g2

You can compile something for debugging at debugging level 2.
It will also take care not to strip the resulting executable(s).


# e967aefa 14-Sep-1994 Jordan K. Hubbard <jkh@FreeBSD.org>

Remove obsolete bundle target, add new fetch target.


# 301cdacf 22-Aug-1994 Jordan K. Hubbard <jkh@FreeBSD.org>

Whoops - left out the package rule!
Submitted by: jkh


# 984dd1a9 22-Aug-1994 Jordan K. Hubbard <jkh@FreeBSD.org>

New bsd.port.subdir.mk file for use by ports. This groks all the
special ports building targets and will recurse properly. Sorry,
Julian E - no fancy prompts, just recursion! :-)

Added a `bundle' target. Purpose is as follows:

You want to give someone a complete tree sans distfiles (for
sticking on CDROM perhaps?) but the difficulty there is that
the first time the user types `make clean', all the unpacked
sources are gone again. Typing `make bundle' recreates the
original distfile if it can, so someone can "back up" their
unpacked tree easily with one command.

Whoops, just thought of something - it should warn if you
configured the working source.
Ok, next commit! :)
Submitted by: jkh


# 44204c43 22-Aug-1994 Jordan K. Hubbard <jkh@FreeBSD.org>

I had to bite the bullet: There's now a port.subdir.mk that does the right
thing with recursive build, configure, bundle or extract targets.
Reviewed by:
Submitted by: