1PKGCONF-PERSONALITY(5) BSD File Formats Manual PKGCONF-PERSONALITY(5)
2
4 file.personality — pkgconf cross-compile personality file format
5
7 pkgconf cross-compile personality files provide a useful mechanism for
8 storing various information about system toolchains. Information stored
9 by .personality files include information about paths used by a cross-
10 compile toolchain, such as the sysroot directory and default include and
11 library paths. pkgconf uses this information to determine what informa‐
12 tion is necessary to use libraries.
13
14 FILE SYNTAX
15 The .personality file follows a format inspired by RFC822. Comments are
16 prefixed by a pound sign, hash sign or octothorpe (#), and variable
17 assignment is similar to POSIX shell. Properties are defined using
18 RFC822-style stanzas.
19
20 PROPERTIES
21 Properties are set using RFC822-style stanzas which consist of a keyword,
22 followed by a colon (:) and then the value the property should be set to.
23 Variable substitution is always performed regardless of property type.
24
25 There are two types of property:
26
27 Literal
28 The property will be set to the text of the value.
29
30 Fragment List
31 The property will be set to a list of fragments parsed from the
32 text. The input text must be in a format that is suitable for
33 passing to a POSIX shell without any shell expansions after vari‐
34 able substitution has been done. Elements are delimited with a
35 colon.
36
37 Boolean
38 The property will be set to true if the value is one of: true,
39 yes or 1. Otherwise it will be set to false.
40
41 PROPERTY KEYWORDS
42 Triplet
43 The triplet used by the cross-compile toolchain. (mandatory;
44 literal)
45
46 SysrootDir
47 The directory used by the system root of the cross-compile
48 toolchain. (mandatory; literal)
49
50 DefaultSearchPaths
51 A list of directories to look for pc(5) files in. (mandatory;
52 fragment list)
53
54 SystemIncludePaths
55 A list of directories that are included by default in the search
56 path for include files. (mandatory; fragment list)
57
58 SystemLibraryPaths
59 A list of directories that are included by default in the search
60 path for libraries. (mandatory; fragment list)
61
62 WantDefaultStatic
63 If true, pkgconf will default to operating in static linking
64 mode. (optional; boolean; default is false)
65
67 An example .personality file:
68
69 # This is a comment
70 Triplet: x86_64-pc-linux-gnu
71 SysrootDir: /home/kaniini/sysroot/x86_64-pc-linux-gnu
72 DefaultSearchPaths: /home/kaniini/sysroot/x86_64-pc-linux-gnu/lib/pkgconfig:/home/kaniini/sysroot/x86_64-pc-linux-gnu/share/pkgconfig
73 SystemIncludePaths: /home/kaniini/sysroot/x86_64-pc-linux-gnu/include
74 SystemLibraryPaths: /home/kaniini/sysroot/x86_64-pc-linux-gnu/lib
75
77 pkgconf(1), pkg.m4(7), pc(5)
78
79BSD July 19, 2018 BSD