openbsd-ports/infrastructure
espie 6bc4c47f7f Rework the dependency framework.
* pull every dependency under the same rule, using specialized fragments.
* re-check after the dependency is expanded, unless earlyexit is true.
* explicitly recognize /nonexistent as a specific way to have always
triggered dependencies, use it to handle DEPENDS in a uniform way.
* parse dependencies fully. Note that we know have a pkg variable that will
be used.

Thanks to naddy@ for useful tweaks.

This is probably not quite perfect yet, stuff may break. Other stuff that
remain to be done:

- handle library dependencies better, so that lib.10 will match only
lib.10.x and not lib.100.
- handle default FLAVORS correctly. This involves not
passing FLAVOR='', but rearranging ${MAKE} ${_DEPEND_THRU} to remove
FLAVOR from the environment and from MAKEFLAGS (yucky).
2001-02-24 22:02:08 +00:00
..
build Create PATCHDIR if first call of update-patches 2000-06-09 17:08:37 +00:00
db update these to reflect reality, some ports have been moved or do not 2000-11-02 16:05:14 +00:00
fetch Handle cases like lgrind 2000-12-19 15:10:37 +00:00
install Tell user to add directory to rc.conf here, instead of doing that in 2000-12-16 23:25:36 +00:00
mk Rework the dependency framework. 2001-02-24 22:02:08 +00:00
package Grotty little script to webify packages, written by Ryan Walker 2001-01-16 20:51:48 +00:00
patches Bogus newline, I wonder why noone noticed this before... 2000-12-15 08:05:45 +00:00
templates - indent 2001-01-18 15:48:04 +00:00
README Document what currently exists 1999-10-26 15:38:06 +00:00

This directory does not hold ports, but rather stuff to help
with building specific ports, or with checking packages.

Better documentation will be written as this progresses.

Quick list of what exists, most useful stuff first

build/bundle-readmes: 
	create README.html files and bundle them as one tar archive.

fetch/check-distfiles
	heuristic to check the whole contents of /usr/ports/distfiles against
	all MD5 files in the ports tree.
	
packages/check-dependencies
	Check dependencies for all packages in the current directory.
	Basically, verifies that the tsort in bsd.port.mk did their job.

build/find-build-order
	used such as cat db/essentials | build/find-build-order
	outputs a list of stuff that actually needs to be built to obtain those
	packges, in a suitable order for removing backward dependencies.

	Optional arg `build' or `run' to take only build or run dependencies
	into account.

	Major defect: tsort is not a stable sort, so find-build-order will
	rearrange the list it gets as input.

build/out-of-date
	compare installed registered  packages with INDEX, try to find out 
	of date ports.

install/make-plist
	perl helper for the make plist target

db/network.conf
	Distfiles configuration. Tweakable by the user

fetch/check-license
	legacy script used by Marco to check the LICENSE files

install/create-user
	simple script to create new users account, based on db/users.db