Adjust cpp location for FreeBSD
authorMarcin Cieslak <saper@saper.info>
Sun, 12 Aug 2012 22:37:42 +0000 (00:37 +0200)
committerJon Trulson <jon@radscan.com>
Mon, 13 Aug 2012 02:57:48 +0000 (20:57 -0600)
cpp was removed from /usr/libexec with FreeBSD 5.0-RELEASE.
Use __FreeBSD_version to tell imake if it's still there.

While here, X.Y.Z versioning ended with FreeBSD 3.0, so
we must be dealing with 2.Y.Z when checking for -lgnumalloc.

cde/config/cf/FreeBSD.cf
cde/config/imake/imakemdep.h

index d91827cd44139be3d795d13d014509c91d618244..5e3a00d85d1740921dd9704cdc13848179039def 100644 (file)
@@ -21,8 +21,13 @@ XCOMM operating system:  OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVe
 #define HasBSD44Sockets                YES
 #define HasZlib                        YES
 
+#if OSMajorVersion >= 5
+#define CppCmd                 /usr/bin/cpp -traditional
+#define PreProcessCmd          /usr/bin/cpp -traditional
+#else
 #define CppCmd                 /usr/libexec/cpp -traditional
 #define PreProcessCmd          /usr/libexec/cpp -traditional
+#endif
 #undef  InstallCmd
 #define InstallCmd             /usr/bin/install
 
@@ -58,6 +63,7 @@ XCOMM operating system:  OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVe
 #define HasMakefileSafeInclude YES
 #define IncludeMakefile(file)  @@# dependencies are in .depend
 #define DependFileName         .depend
+#if OSMajorVersion < 3
 #if OSMinorVersion < 2
 #ifndef ExtraLibraries
 #define ExtraLibraries         -lgnumalloc
@@ -66,6 +72,7 @@ XCOMM operating system:  OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVe
 #if OSTeenyVersion == 2
 #define HasSetUserContext      YES
 #endif
+#endif
 #ifndef ExtraLoadFlags
 /* 
  * This doesn't work the way it does on every other system. On FreeBSD it's
index 2c97383ec278c39a295f59ef8354bb57294e4235..56f3a0bf2ec713607dca39cd21674eaee864623b 100644 (file)
@@ -188,6 +188,17 @@ in this Software without prior written authorization from The Open Group.
 #define imake_ccflags "-DNOSTDHDRS"
 #endif
 
+#ifdef  __FreeBSD__
+#include <sys/param.h>
+#if defined(__FreeBSD_version)
+#if __FreeBSD_version < 500000
+#define imake_ccflags "-DCPP_IN_LIBEXEC"
+#endif
+#else
+#define imake_ccflags "-DCPP_IN_LIBEXEC"
+#endif
+#endif
+
 /* this is for OS/2 under EMX. This won't work with DOS */
 #if defined(__EMX__)
 #define imake_ccflags "-DBSD43"
@@ -247,7 +258,7 @@ in this Software without prior written authorization from The Open Group.
 #if defined(sun) && (defined(SVR4) || defined(__svr4__) || defined(__SVR4) || defined(__sol__))
 #define DEFAULT_CPP "/usr/ccs/lib/cpp"
 #endif
-#ifdef __bsdi__
+#if defined(__bsdi__) || (defined(__FreeBSD__) && !defined(CPP_IN_LIBEXEC))
 #define DEFAULT_CPP "/usr/bin/cpp"
 #endif
 #ifdef __uxp__
@@ -259,7 +270,8 @@ in this Software without prior written authorization from The Open Group.
 #ifdef _CRAY
 #define DEFAULT_CPP "/lib/pcpp"
 #endif
-#if defined(__386BSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__)
+#if defined(__386BSD__) || defined(__NetBSD__) || defined(__OpenBSD__) \
+       || (defined(__FreeBSD__) && defined(CPP_IN_LIBEXEC))
 #define DEFAULT_CPP "/usr/libexec/cpp"
 #endif
 #if defined(__sgi) && defined(__ANSI_CPP__)