OpenBSD.cf: don't include xorg.cf (leftover)
[oweals/cde.git] / cde / config / cf / linux.cf
index fe0ad6b6c68167c65ae9abea2b1415728544c95a..c217dbdd9029570443c2466ec6e2f43935fd4d6b 100644 (file)
@@ -1,16 +1,21 @@
 XCOMM platform:  $TOG: linux.cf /main/47 1998/04/17 11:32:51 mgreess $
 
+/* To reduce the number of warnings generated by X11 and Motif headers that
+   dislike -ansi and -pedantic we can include them with -isystem instead of
+   -I, this tells GCC to treat them as system includes out of our control */
+#define TopXInclude -isystem$(TOP)/imports/x11/include
+
 #ifndef OSName
-#define OSName                 DefaultOSName
+# define OSName                        DefaultOSName
 #endif
 #ifndef OSMajorVersion
-#define OSMajorVersion         DefaultOSMajorVersion
+# define OSMajorVersion                DefaultOSMajorVersion
 #endif
 #ifndef OSMinorVersion
-#define OSMinorVersion         DefaultOSMinorVersion
+# define OSMinorVersion                DefaultOSMinorVersion
 #endif
 #ifndef OSTeenyVersion
-#define OSTeenyVersion         DefaultOSTeenyVersion
+# define OSTeenyVersion                DefaultOSTeenyVersion
 #endif
 
 #ifndef LinuxDistribution 
@@ -18,7 +23,7 @@ XCOMM platform:  $TOG: linux.cf /main/47 1998/04/17 11:32:51 mgreess $
 /*
   Add "#define LinuxDistribution Linux<mumble>" to your site.def or host.def.
   Currently only LinuxSuSE will be figured out automatically.
-  Valid values are (from the list at www.linux.org in Oct. '97):
+  Valid values are (from the list at www.linux.org in Oct. 1997):
     LinuxUnknown    (0)
     LinuxSuSE       (1)
     LinuxCaldera    (2)
@@ -35,16 +40,16 @@ XCOMM platform:  $TOG: linux.cf /main/47 1998/04/17 11:32:51 mgreess $
 */
 #endif
 #ifndef LinuxCLibMajorVersion
-#define LinuxCLibMajorVersion   DefaultLinuxCLibMajorVersion
+# define LinuxCLibMajorVersion   DefaultLinuxCLibMajorVersion
 #endif
 #ifndef LinuxCLibMinorVersion
-#define LinuxCLibMinorVersion   DefaultLinuxCLibMinorVersion
+# define LinuxCLibMinorVersion   DefaultLinuxCLibMinorVersion
 #endif
 #ifndef LinuxCLibTeenyVersion
-#define LinuxCLibTeenyVersion   DefaultLinuxCLibTeenyVersion
+# define LinuxCLibTeenyVersion   DefaultLinuxCLibTeenyVersion
 #endif
 #ifndef LinuxBinUtilsMajorVersion
-#define LinuxBinUtilsMajorVersion      DefaultLinuxBinUtilsMajorVersion
+# define LinuxBinUtilsMajorVersion     DefaultLinuxBinUtilsMajorVersion
 #endif
 
 XCOMM operating system:  OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion)
@@ -52,12 +57,14 @@ XCOMM libc:  (LinuxCLibMajorVersion./**/LinuxCLibMinorVersion./**/LinuxCLibTeeny
 XCOMM binutils:  (LinuxBinUtilsMajorVersion)
 
 #ifndef UseElfFormat
-#if OSMajorVersion > 1 || (OSMajorVersion == 1 && OSMinorVersion > 1)
-#define UseElfFormat           YES
-#else
-#define UseElfFormat           NO
-#endif
+# if OSMajorVersion > 1 || (OSMajorVersion == 1 && OSMinorVersion > 1)
+#  define UseElfFormat         YES
+# else
+#  define UseElfFormat         NO
+#  error "Only ELF format is supported on linux"
+# endif
 #endif
+
 #define BuildLibPathVar        LD_LIBRARY_PATH
 #define HasGcc                 YES
 #define HasGcc2                        YES
@@ -70,7 +77,7 @@ XCOMM binutils:  (LinuxBinUtilsMajorVersion)
 #define HasShm                 YES
 #define HasSockets             YES
 #if (LinuxDistribution == LinuxRedHat)
-#define HasZlib                        YES
+# define HasZlib               YES
 #endif
 
 #define AvoidNullMakeCommand   YES
@@ -84,36 +91,20 @@ XCOMM binutils:  (LinuxBinUtilsMajorVersion)
 #define NeedWidePrototypes     NO
 #define SetTtyGroup            YES
 
-#if UseElfFormat
-#if OSMajorVersion == 1 && OSMinorVersion < 2
-#define CcCmd                  gcc -b i486-linuxelf
-#define CplusplusCmd           g++ -b i486-linuxelf
-#define AsCmd                  /usr/i486-linuxelf/bin/as
-#define LdCmd                  ld -m elf_i386
-#else
-#define CcCmd                  gcc
-#define CplusplusCmd           g++
+#define CcCmd                  gcc -g -pipe
+#define CplusplusCmd           g++ -g -pipe -fpermissive
 #define AsCmd                  as
 #define LdCmd                  ld
-#endif
+
+#define CplusplusLibC           -lstdc++
 #define AsmDefines             -D__ELF__
-#else
-#define CcCmd                  gcc
-#if OSMajorVersion == 1 && OSMinorVersion > 1
-#define AsCmd                  /usr/i486-linuxaout/bin/as
-#define LdCmd                  ld -m i386linux
-#else
-#define AsCmd                  as
-#define LdCmd                  ld
-#endif
-#define AsmDefines             -DUSE_GAS -U__ELF__
-#endif
+
 #define MkdirHierCmd           mkdir -p
 #define CppCmd                 /lib/cpp
 #if OSMajorVersion >= 2
-#define YaccCmd                 yacc
+# define YaccCmd                yacc
 #else
-#define YaccCmd                 bison -y
+# define YaccCmd                bison -y
 #endif
 #define LexCmd                 flex -l
 #define LexLib                 -lfl
@@ -125,66 +116,128 @@ XCOMM binutils:  (LinuxBinUtilsMajorVersion)
 #define StandardCppDefines     -traditional StandardDefines
 #define ExtensionOSDefines     -DXTESTEXT1
 
-#if (LinuxDistribution == LinuxSuSE)
 #define LinuxLocaleDefines     /**/
+
+XCOMM If you have the tirpc library on your system, and you have the
+XCOMM libtirpc-dev installed, then define HasTIRPCLib to YES in either
+XCOMM your host.def or site.def file.  Using the tirpc lib should
+XCOMM allow running rpcbind in secure mode (ie: without the -i option).
+XCOMM The default is NO.
+
+#ifndef HasTIRPCLib
+# define HasTIRPCLib NO
+#endif
+
+#if HasTIRPCLib
+TIRPCLIB = -ltirpc
 #else
-#define LinuxLocaleDefines     -DX_LOCALE
+TIRPCLIB = 
+#endif
+
+#if !defined(DefaultGcc2i386Opt)
+# define DefaultGcc2i386Opt -O2 -fno-strict-aliasing
 #endif
 
 #if LinuxCLibMajorVersion < 6
-#define LinuxSourceDefines     -D_POSIX_SOURCE \
+# define LinuxSourceDefines    -D_POSIX_SOURCE \
                                -D_BSD_SOURCE -D_SVID_SOURCE LinuxLocaleDefines
-#ifndef HasLibCrypt
-# define HasLibCrypt           NO
-#endif
+# ifndef HasLibCrypt
+#  define HasLibCrypt          NO
+# endif
+
 #else
-#define LinuxSourceDefines     -D_POSIX_C_SOURCE=199309L \
+# define LinuxSourceDefines    -D_POSIX_C_SOURCE=199309L \
                                -D_POSIX_SOURCE \
-                               -D_BSD_SOURCE -D_SVID_SOURCE
-#define HasPosixThreads                YES
-#define ThreadedX              YES
-#define HasThreadSafeAPI       YES
-#define ThreadsLibraries       -lpthread
-#define SystemMTDefines                -D_REENTRANT
-#ifndef HasLibCrypt
-# define HasLibCrypt           YES
-#endif
+                               -D_BSD_SOURCE -D_SVID_SOURCE -D_XOPEN_SOURCE \
+                               -D__NO_STRING_INLINES -D__NO_MATH_INLINES \
+                               LinuxLocaleDefines
+# define HasPosixThreads       YES
+# define ThreadedX             YES
+# define HasThreadSafeAPI      YES
+# define ThreadsLibraries      -lpthread
+# define SystemMTDefines               -D_REENTRANT
+# ifndef HasLibCrypt
+#  define HasLibCrypt          YES
+# endif
 #endif
 
-#define LinuxMachineDefines
+#ifdef SparcArchitecture
+# define LinuxMachineDefines -Dsparc
+
+# if UseElfFormat
+#  define HasPlugin             YES
+#  define VendorHasX11R6_3libXext YES     /* XC or XFree86 3.3.1 */
+# endif
+#endif /* SparcArchitecture */
+
+#ifdef ARMArchitecture
+# define LinuxMachineDefines -D__arm__
+# define LSBBitOrder             YES
+
+# if UseElfFormat
+#  define HasPlugin              YES
+#  define VendorHasX11R6_3libXext YES     /* XC or XFree86 3.3.1 */
+# endif 
+#endif /* ARMArchitecture */
 
-#if 0
 #ifdef i386Architecture
-#define OptimizedCDebugFlags   DefaultGcc2i386Opt
-#define LinuxMachineDefines    -D__i386__
-#define ServerOSDefines                XFree86ServerOSDefines -DDDXTIME
-#define ServerExtraDefines     -DGCCUSESGAS XFree86ServerDefines
-#if UseElfFormat
-#define HasPlugin              YES
-#define VendorHasX11R6_3libXext        YES     /* XC or XFree86 3.3.1 */
-#endif
+# define OptimizedCDebugFlags  DefaultGcc2i386Opt
+# define LinuxMachineDefines   -D__i386__
+/* For DtHelp TIFF processing routines. */
+# define LSBBitOrder             YES
+
+# if UseElfFormat
+#  define HasPlugin            YES
+#  define VendorHasX11R6_3libXext      YES     /* XC or XFree86 3.3.1 */
+# endif
+/* add this to void screenfuls of warnings from makedepend */
+# define DependFlags -I/usr/include/i386-linux-gnu
 #endif /* i386Architecture */
 
+#ifdef AMD64Architecture
+# define OptimizedCDebugFlags  DefaultGcc2i386Opt
+# define LinuxMachineDefines   -D__x86_64__ 
+/* For DtHelp TIFF processing routines. */
+# define LSBBitOrder            YES
+
+# if UseElfFormat
+#  define HasPlugin            YES
+#  define VendorHasX11R6_3libXext      YES     /* XC or XFree86 3.3.1 */
+# endif
+/* add this to void screenfuls of warnings from makedepend */
+# define DependFlags -I/usr/include/x86_64-linux-gnu
+#endif /* AMD64Architecture */
+
+#ifdef PpcArchitecture
+# define OptimizedCDebugFlags    DefaultGcc2i386Opt
+# define LinuxMachineDefines     -D__powerpc__
+#endif /* PpcArchitecture */
+
 #ifdef AlphaArchitecture
-#define OptimizedCDebugFlags   -O2
-#define LinuxMachineDefines    -D__alpha__
-#define ServerOSDefines                XFree86ServerOSDefines -DDDXTIME -DPART_NET
-#define ServerExtraDefines     -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64
+# define OptimizedCDebugFlags  DefaultGcc2i386Opt
+# define LinuxMachineDefines   -D__alpha__
 #endif /* AlphaArchitecture */
 
 #ifdef Mc68020Architecture
-#define OptimizedCDebugFlags   -O2
-#define LinuxMachineDefines    -D__mc68000__
-#define StandardCppDefines      -traditional StandardDefines
-#define ServerOSDefines         XFree86ServerOSDefines -DDDXTIME -DPART_NET
-#define ServerExtraDefines      -DGCCUSESGAS XFree86ServerDefines
+# define OptimizedCDebugFlags  DefaultGcc2i386Opt
+# define LinuxMachineDefines   -D__mc68000__
+# define StandardCppDefines      -traditional 
 #endif /* Mc68020Architecture */
-#endif /* 0 */
+
+#ifdef HasGcc2
+CXXDEPENDINCLUDE = $(shell CppCmd -x c++ -Wp,-v < /dev/null \
+                  2>&1 | sed -n 's/ \(.*[cg]++.*\)/-I\1/p')
+#define CplusplusDependIncludes        $(CXXDEPENDINCLUDE)
+#endif
+#define DependDefines          -D_SYS_RESOURCE_H -D_SYS_UTSNAME_H
 
 #define StandardDefines                -Dlinux LinuxMachineDefines LinuxSourceDefines
 
 #define ConnectionFlags                -DUNIXCONN -DTCPCONN
 
+XCOMM This is needed for CDE currently
+#define CplusplusStandardDefines StandardDefines 
+
 /* Some of these man page defaults are overriden in the above OS sections */
 #ifndef ManSuffix
 # define ManSuffix     1x
@@ -207,7 +260,7 @@ XCOMM binutils:  (LinuxBinUtilsMajorVersion)
 
 #define ArchitectureDefines    -DLINUX_ARCHITECTURE
 
-#define TtClientLibs $(TTLIB) $(XTOOLLIB) $(XLIB)
+#define TtClientLibs $(TTLIB) $(TIRPCLIB) $(XTOOLLIB) $(XLIB)
 #define TtClientDepLibs $(DEPTTLIB) $(DEPXTOOLLIB) $(DEPXLIB)
 
 #include <lnxLib.rules>