NAME¶
pmk.conf —
premake configuration
file
DESCRIPTION¶
pmk.conf contains a series of assignements that are used by
pmk(1) and created by
pmksetup(8).
DATA TYPES¶
These are common types used by pmk, see
pmkfile(5) for a
complete description.
OPERATORS¶
- =
- This operator makes the value dynamic, which means that it
will be (re)assigned everytime you run pmksetup(8).
For example:
- :
- This operator makes the value static, which means that if
you want to regenerate the pmk.conf, the value will be
kept and not dynamically assigned by pmksetup(8).
For example:
BIN_INSTALL:"/usr/local/bin/install"
FAMILY CLASSES¶
Assignements can be classed in different families.
AC_*
- Compatibility with autoconf.
BIN_*
- This class is used for binary paths.
HW_*
- Hardware related data like for example byte order or cpu
features.
PATH_*
- Specific paths family.
OS_*
- System specific data.
misc
- Some other data (such as PREFIX) cannot fit into previous
families.
AC CLASS¶
This class is providing some variables for GNU Autoconf compatibility:
AC_ECHO_C
- Support for "\c".
AC_ECHO_N
- Support for "\n".
AC_ECHO_T
- Support for "\t".
BIN CLASS¶
This class is providing locations of various useful binaries such as ar, as, cc,
cpp, ...
HW CLASS¶
This class is giving some information about the host hardware.
HW_BYTEORDER
- Provide the byte order of the host: 'BIG_ENDIAN' or
'LITTLE_ENDIAN'.
HW_CPU_ARCH
- Identify the cpu architecture.
We support actually the following architectures (with cpu identification for
some of them):
alpha
-
HW_ALPHA_CPU_CLASS
- Cpu class (EV4, EV5 or EV6).
HW_ALPHA_CPU_FEATURES
- Cpu features list (BWX, FIX, CIX, MVI, PAT and
PMI)
ia_64
-
HW_IA64_CPU_ARCHREV
- Cpu architecture revision number.
HW_IA64_CPU_CLASS
- Cpu class ('Itanium' or 'Itanium2')
HW_IA64_CPU_FAMILY
- Cpu family number.
HW_IA64_CPU_FEATURES
- Cpu features list (LB, SD and AO).
HW_IA64_CPU_MODEL
- Cpu model number.
HW_IA64_CPU_REVISION
- Cpu revision number.
HW_IA64_CPU_VENDOR
- Cpu vendor string.
m68k
- No specific variables.
parisc_64
- No specific variables.
ppc
- No specific variables.
sparc_32
- No specific variables.
sparc_64
- No specific variables.
x86_32
-
HW_X86_CPU_CLASS
- Cpu family class (386, 486, 586, ...).
HW_X86_CPU_EXTFAM
- Extended family number.
HW_X86_CPU_EXTMOD
- Extended model number.
HW_X86_CPU_FAMILY
- Cpu family number.
HW_X86_CPU_FEATURES
- Cpu features list (FPU, VME, DE, PSE, TSC, ...).
HW_X86_CPU_MODEL
- Cpu model number.
HW_X86_CPU_STD_VENDOR
- Standardised cpu vendor ('INTEL', 'AMD', ...).
HW_X86_CPU_VENDOR
- Cpu vendor string.
x86_64
- Same as x86_32 architecture.
vax
- No specific variables.
OS CLASS¶
This class is providing informations about the host's operating system:
OS_ARCH
- Operating system architecture (warning: this is OS
specific).
OS_NAME
- Operating system name (warning: linux distributions return
the kernel name).
OS_VERSION
- Operating system version (warning: linux distributions
return the kernel version).
PATH CLASS¶
This class is providing path for binaries, headers and libraries.
MISC CLASS¶
This class is regrouping what can not be classed elsewhere.
PREFIX
- Prefix environnement variable.
SYSCONFDIR
- System configuration directory.
PC_PATH_LIB
- Library path for pmkpc or pkg_config.
FILES¶
- /etc/pmk/pmk.conf
- default pmk(1) configuration file
EXAMPLES¶
A typical pmk.conf might appear as follows:
# autoconf compatibility
AC_ECHO_C = "\c"
AC_ECHO_N = ""
AC_ECHO_T = ""
# specific binaries
BIN_AR = "/usr/bin/ar"
BIN_AS = "/usr/bin/as"
BIN_AWK = "/usr/bin/awk"
BIN_CAT = "/bin/cat"
BIN_CC = "/usr/bin/cc"
BIN_CPP = "/usr/bin/cpp"
BIN_CXX = "/usr/bin/c++"
BIN_ECHO = "/bin/echo"
BIN_EGREP = "/usr/bin/egrep"
BIN_GREP = "/usr/bin/grep"
BIN_ID = "/usr/bin/id"
BIN_INSTALL = "/usr/bin/install"
BIN_LEX = "/usr/bin/lex"
BIN_LN = "/bin/ln"
BIN_PKGCONFIG = "/usr/local/bin/pkg-config"
BIN_RANLIB = "/usr/bin/ranlib"
BIN_SH = "/bin/sh"
BIN_STRIP = "/usr/bin/strip"
BIN_SUDO = "/usr/bin/sudo"
BIN_TAR = "/bin/tar"
BIN_YACC = "/usr/bin/yacc"
# architecture specific
HW_BYTEORDER = "LITTLE_ENDIAN"
HW_CPU_ARCH = "x86_32"
HW_X86_CPU_CLASS = "i686"
HW_X86_CPU_EXTFAM = "0"
HW_X86_CPU_EXTMOD = "0"
HW_X86_CPU_FAMILY = "15"
HW_X86_CPU_FEATURES = "FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT PSE36 CLFL DTES ACPI MMX FXR SSE SSE2 HTT TM1 PBE FPU MON DSCPL EST TM2 CX16 ETPRD "
HW_X86_CPU_MODEL = "2"
HW_X86_CPU_STD_VENDOR = "INTEL"
HW_X86_CPU_VENDOR = "GenuineIntel"
# OS related
OS_ARCH = "i386"
OS_NAME = "OpenBSD"
OS_VERSION = "3.6"
# PATH related
PATH_BIN = "/bin,/sbin,/usr/bin,/usr/sbin,/usr/X11R6/bin,/usr/local/sbin,/usr/local/bin"
PATH_INC = "/usr/include"
PATH_LIB = "/usr/lib"
# misc
PC_PATH_LIB = "$PREFIX/lib/pkgconfig"
PREFIX = "/usr/local"
SYSCONFDIR = "/etc"
SEE ALSO¶
make(1),
pmk(1),
pmkscan(1),
pmkfile(5),
pmksetup(8)