GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  BUILDFLAGS.CONF (1)

NAME

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

CONTENTS

Description
Syntax
     Comments
     Locations
     Knobs
     Variables
     Directives
Warnings
     Wrkdirprefix
Compatibility
See Also
Files
History
Author

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 possible 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 ’|’ (logical 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 collection.

AUTHOR

Dominic Fandrey <kamikaze@bsdforen.de>
Search for    or go to Top of page |  Section 1 |  Main Index


Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.