buildflags.conf man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

BUILDFLAGS.CONF(1)	  BSD General Commands Manual	    BUILDFLAGS.CONF(1)

NAME
     buildflags.conf — set build options for ports(7), world and everything

DESCRIPTION
     The buildflags.conf file is used by buildflags.mk(1) to configure make(1)
     jobs.

     The intended way to use it is to add the following lines to make.conf(5).

	   BUILDFLAGS=	   %%DATADIR%%/buildflags.mk
	   .if exists(${BUILDFLAGS})
	   .include "${BUILDFLAGS}"
	   .endif

SYNTAX
     A buildflags.conf file gets parsed into a make file. If you want to make
     sure that your syntax is right you can do so by running:

     %%DATADIR%%/buildflags.awk buildflags.conf | less

     The buildflags.conf syntax only knows four kinds of data:

	   comments, locations, knobs and variables

   COMMENTS
     Comments are everything behind a '#'. The only exception is a '#' within
     a '"' block.

	   # This is a comment.

   LOCATIONS
     A location is a folder in which a make job runs.  Locations make it pos‐
     sible to limit assignments only to certain ports or other build systems.

     A location consists of a path and/or a pattern. The difference between a
     path and a pattern is that the pattern will remain untouched and a path
     will be resolved as far as possible. Resolving a path means that a path
     will be substituted with its physical path.

     Several locations can be connected with '&' (logical and) and '|' (logi‐
     cal or).

     If e.g. '%%PORTS%%' is a link to '/mnt/vault/ports' a location like
     '%%PORTS%%/x11*' will be resolved into '/mnt/vault/ports/x11*'.  In this
     case '%%PORTS%%' is the path and '/x11*' the pattern.

     Every location is followed by a block that can contain comments, knobs,
     variables and other locations. A block is opened with the character '{'
     and closed with '}'. Here is an example:

	   %%PORTS%%/* & !*/work/*{
		   WITH_IPV6
		   */x11/toolkits-gtk20	   {WITHOUT_DEBUG}
	   }

   KNOBS
     A knob really is a variable with a default assignment:

	   WITH_DEBUG
	   !CPUTYPE

     This example would set 'WITH_DEBUG=yes' and undefine 'CPUTYPE'. You can
     have several knobs in a single line:

	   WITH_DEBUG !CPUTYPE

   VARIABLES
     Assigning variables is simply done with an '=' other ways of assignment
     known from make(1) like '?=', ':=' or '!=' can also be used. There may
     not be spaces in front of a '='.

     If the '=' is followed by spaces. The whole trailing line will be
     assigned as the value, unless the first character is a '"'.  Values may
     not contain a '"'. If the value is right behind the '=' only one word
     will be assigned, the next word will be treated as a knob or variable.

     Here are some examples of valid assignments:

	   CPUTYPE?="pentium-m" CFLAGS="-O2 -pipe" THREADS=5
	   SUPFLAGS=	   -E -g -L 2 -z

   DIRECTIVES
     Native make(1) directives can be included. Apart from putting trailing
     comments in front of them and removing preceding spaces they are not
     changed. Make directives begin with a '.', among them are '.if',
     '.include' and '.for'.

     The following is a valid example:

	   %%PORTS%%/* {
		   .if defined(WANT_I386)
			   CFLAGS+=	   -m32
			   LDCONFIG+=	   -32
		   .endif
	   }

WARNINGS
     There are things that should not be done.

   WRKDIRPREFIX
     Do not set the WRKDIRPREFIX directive in buildflags.conf.	Doing so would
     break updating of bsdadminscripts(1) in the FreeBSD ports(7) collection.

COMPATIBILITY
     The script has been tested on FreeBSD 7.2-PRERELEASE.

SEE ALSO
     buildflags.awk(1), buildflags.mk(1), bsdadminscripts(1), make(1)

FILES
     %%PREFIX%%/etc/buildflags.conf
	     Default location of the buildflags.conf.

     %%PREFIX%%/etc/buildflags.conf.sample
	     An example configuration file.

HISTORY
     The buildflags.conf file first appeared in the bsdadminscripts-2.0 col‐
     lection.

AUTHOR
     Dominic Fandrey <kamikaze@bsdforen.de>

BSD				April 23, 2009				   BSD
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net