summaryrefslogtreecommitdiff
path: root/doc/pkgsrc.txt
diff options
context:
space:
mode:
authorrillig <rillig@pkgsrc.org>2005-11-21 09:40:30 +0000
committerrillig <rillig@pkgsrc.org>2005-11-21 09:40:30 +0000
commit8563978799a3476556314e1e842df7d981594d7c (patch)
treeca3a24da0641acd74af38e3df9dd7294befaca90 /doc/pkgsrc.txt
parent750c275eb75edc8796e41a723ad3ad1330c2845a (diff)
downloadpkgsrc-8563978799a3476556314e1e842df7d981594d7c.tar.gz
regen.
Diffstat (limited to 'doc/pkgsrc.txt')
-rw-r--r--doc/pkgsrc.txt48
1 files changed, 36 insertions, 12 deletions
diff --git a/doc/pkgsrc.txt b/doc/pkgsrc.txt
index cfba676e0d6..18fada4b7ee 100644
--- a/doc/pkgsrc.txt
+++ b/doc/pkgsrc.txt
@@ -245,7 +245,8 @@ II. The pkgsrc developer's guide
15.4. Building the package
15.4.1. CPP defines
- 15.4.2. Getting a list of CPP defines
+ 15.4.2. Examples of CPP defines for some platforms
+ 15.4.3. Getting a list of CPP defines
15.5. Package specific actions
@@ -2280,7 +2281,8 @@ Table of Contents
15.4. Building the package
15.4.1. CPP defines
- 15.4.2. Getting a list of CPP defines
+ 15.4.2. Examples of CPP defines for some platforms
+ 15.4.3. Getting a list of CPP defines
15.5. Package specific actions
@@ -4387,7 +4389,8 @@ Table of Contents
15.4. Building the package
15.4.1. CPP defines
- 15.4.2. Getting a list of CPP defines
+ 15.4.2. Examples of CPP defines for some platforms
+ 15.4.3. Getting a list of CPP defines
15.5. Package specific actions
@@ -4947,9 +4950,9 @@ should use the following code.
#include <sys/param.h>
#if (defined(BSD) && BSD >= 199306)
- /* your BSD-specific code goes here */
+ /* BSD-specific code goes here */
#else
- /* non-BSD-specific code */
+ /* non-BSD-specific code goes here */
#endif
If this distinction is not fine enough, you can also use the following defines.
@@ -4960,7 +4963,7 @@ If this distinction is not fine enough, you can also use the following defines.
Linux linux, __linux, __linux__
NetBSD __NetBSD__
OpenBSD __OpenBSD__
- Solaris sun, __sun (GCC and SunPro), __sun__ (only GCC)
+ Solaris sun, __sun
15.4.1.2. CPP defines for CPUs
@@ -4971,15 +4974,36 @@ If this distinction is not fine enough, you can also use the following defines.
15.4.1.3. CPP defines for compilers
GCC __GNUC__ (major version), __GNUC_MINOR__
+ SunPro __SUNPRO_C (0x570 for version 5.7)
-15.4.2. Getting a list of CPP defines
+15.4.2. Examples of CPP defines for some platforms
-When your system uses the GNU C Compiler, you can get a list of symbols that
-are defined by default, e.g. to identify the platform, with the following
-command:
+The list of the CPP identification macros for hardware and operating system may
+depend on the compiler that is used. The following list contains some examples
+that may help you to choose the right ones. For example, if you want to
+conditionally compile code on Solaris, don't use __sun__, as the SunPro
+compiler does not define it. Use __sun instead.
+
+SunPro 5.7 + Solaris 8 + SPARC
+
+ __SVR4, __sparc, __sun, __unix, sparc, sun, unix.
+
+GCC 4 + Solaris 8 + SPARC
+
+ __ELF__, __sparc, __sparc__, __sun, __sun__, __SVR4, __svr4__, __unix,
+ __unix__, sparc, sun, unix.
+
+15.4.3. Getting a list of CPP defines
+
+If your system uses the GNU C Compiler, you can get a list of symbols that are
+defined by default, e.g. to identify the platform, with the following command:
gcc -E -dM - < /dev/null
+On other systems you may get the list by using the system's syscall trace
+utility (ktrace, truss, strace) to have a look which arguments are passed to
+the actual compiler.
+
15.5. Package specific actions
15.5.1. User interaction
@@ -5643,8 +5667,8 @@ change to the directory of the package you wish to examine and execute pkglint:
$ pkglint
looks fine.
-Depending on the supplied command line arguments (see pkglint(1)), more verbose
-checks will be performed. Use e.g. pkglint -v for a very verbose check.
+Depending on the supplied command line arguments (see pkglint(1)), more checks
+will be performed. Use e.g. pkglint -Call -Wall for a very thorough check.
A.2. Steps for building, installing, packaging