XCOMM platform: $TOG: linux.cf /main/47 1998/04/17 11:32:51 mgreess $
#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
/*
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)
LinuxYggdrasil (12)
*/
#endif
+
+#ifndef DefaultLinuxCLibMajorVersion
+# define DefaultLinuxCLibMajorVersion 6
+#endif
+#ifndef DefaultLinuxCLibMinorVersion
+# define DefaultLinuxCLibMinorVersion 0
+#endif
+#ifndef DefaultLinuxCLibTeenyVersion
+# define DefaultLinuxCLibTeenyVersion 0
+#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)
XCOMM binutils: (LinuxBinUtilsMajorVersion)
#ifndef UseElfFormat
-#if OSMajorVersion > 1 || (OSMajorVersion == 1 && OSMinorVersion > 1)
-#define UseElfFormat YES
-#else
-#define UseElfFormat NO
-#error "Only ELF format is supported on linux"
-#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 UseInstalledX11 YES
+
#define BuildLibPathVar LD_LIBRARY_PATH
#define HasGcc YES
#define HasGcc2 YES
#define HasPutenv YES
#define HasShm YES
#define HasSockets YES
+
+#define HasMakefileSafeInclude YES
+#define DependFileName .depend
+#define DependCmd $(CC) -E -MM -MG
+
+#ifdef IncludeMakefile
+# undef IncludeMakefile
+#endif
+
+#define IncludeMakefile(file) -include file
+
#if (LinuxDistribution == LinuxRedHat)
-#define HasZlib YES
+# define HasZlib YES
#endif
#define AvoidNullMakeCommand YES
-#define StripInstalledPrograms YES
+#define StripInstalledPrograms NO
#define CompressAllFonts YES
#define Malloc0ReturnsNull YES
#define NeedConstPrototypes YES
#define SetTtyGroup YES
#define CcCmd gcc -g -pipe
-#define CplusplusCmd g++ -g -pipe -fpermissive
+#define CplusplusCmd g++ -g -pipe -fpermissive
#define AsCmd as
#define LdCmd ld
#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
#define LdCombineFlags -r
#define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC
#define HasWChar32 YES
-#define StandardCppDefines -traditional StandardDefines
+#define StandardCppDefines -traditional -nostdinc StandardDefines
#define ExtensionOSDefines -DXTESTEXT1
#define LinuxLocaleDefines /**/
+#define DefaultCCOptions -ansi
+
+XCOMM Lets try XdmAuth instead of the ancient MIT/DES auth
+#define HasXdmAuth YES
+
+XCOMM TIRPC is enabled by default now on Linux. The libtirpc-dev package is
+XCOMM required for this support. If you cannot use tirpc for some reason,
+XCOMM can disable it by defining HasTIRPCLib to NO in either
+XCOMM your host.def or site.def file. Not using the TIRPC lib will require
+XCOMM that you run rpcbind in insecure mode (ie: with the -i option).
+XCOMM The default is YES.
+
+#ifndef HasTIRPCLib
+# define HasTIRPCLib YES
+#endif
+
+#if HasTIRPCLib
+TIRPCLIB = -ltirpc
+TIRPCINC = -I/usr/include/tirpc
+#else
+TIRPCLIB =
+TIRPCINC =
+#endif
+
+#if !defined(DefaultGcc2i386Opt)
+# define DefaultGcc2i386Opt -O2 -fno-strict-aliasing -Wno-write-strings \
+ -Wno-unused-result
+#endif
+
#if LinuxCLibMajorVersion < 6
-# define LinuxSourceDefines -D_POSIX_SOURCE \
+# define LinuxSourceDefines -D_POSIX_SOURCE -D_DEFAULT_SOURCE \
-D_BSD_SOURCE -D_SVID_SOURCE LinuxLocaleDefines
# ifndef HasLibCrypt
# define HasLibCrypt NO
# endif
#else
-# define LinuxSourceDefines -D_POSIX_C_SOURCE=199309L \
- -D_POSIX_SOURCE \
- -D_BSD_SOURCE -D_SVID_SOURCE -D_XOPEN_SOURCE \
- -D__NO_STRING_INLINES -D__NO_MATH_INLINES \
- LinuxLocaleDefines
+# define LinuxSourceDefines -D_POSIX_SOURCE -D_DEFAULT_SOURCE \
+ -D_BSD_SOURCE -D_SVID_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
+# define SystemMTDefines -D_REENTRANT
# ifndef HasLibCrypt
# define HasLibCrypt YES
# endif
#endif
#ifdef SparcArchitecture
-#define LinuxMachineDefines -Dsparc
+# define LinuxMachineDefines -Dsparc
-#if UseElfFormat
-#define HasPlugin YES
-#define VendorHasX11R6_3libXext YES /* XC or XFree86 3.3.1 */
-#endif
+# 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
+# ifndef OptimizedCDebugFlags
+# define OptimizedCDebugFlags DefaultGcc2i386Opt
+# endif
+# define LinuxMachineDefines -D__arm__
+# define LSBBitOrder YES
-#if UseElfFormat
-#define HasPlugin YES
-#define VendorHasX11R6_3libXext YES /* XC or XFree86 3.3.1 */
-#endif
+# if UseElfFormat
+# define HasPlugin YES
+# define VendorHasX11R6_3libXext YES /* XC or XFree86 3.3.1 */
+# endif
#endif /* ARMArchitecture */
#ifdef i386Architecture
-#define OptimizedCDebugFlags DefaultGcc2i386Opt
-#define LinuxMachineDefines -D__i386__
+# ifndef OptimizedCDebugFlags
+# define OptimizedCDebugFlags DefaultGcc2i386Opt
+# endif
+# define LinuxMachineDefines -D__i386__
/* For DtHelp TIFF processing routines. */
-#define LSBBitOrder YES
+# define LSBBitOrder YES
-#if UseElfFormat
-#define HasPlugin YES
-#define VendorHasX11R6_3libXext YES /* XC or XFree86 3.3.1 */
-#endif
+# if UseElfFormat
+# define HasPlugin YES
+# define VendorHasX11R6_3libXext YES /* XC or XFree86 3.3.1 */
+# endif
#endif /* i386Architecture */
#ifdef AMD64Architecture
-#define OptimizedCDebugFlags DefaultGcc2i386Opt
-#define LinuxMachineDefines -D__x86_64__
+# ifndef OptimizedCDebugFlags
+# define OptimizedCDebugFlags DefaultGcc2i386Opt
+# endif
+# define LinuxMachineDefines -D__x86_64__
/* For DtHelp TIFF processing routines. */
-#define LSBBitOrder YES
+# define LSBBitOrder YES
-#if UseElfFormat
-#define HasPlugin YES
-#define VendorHasX11R6_3libXext YES /* XC or XFree86 3.3.1 */
-#endif
+# if UseElfFormat
+# define HasPlugin YES
+# define VendorHasX11R6_3libXext YES /* XC or XFree86 3.3.1 */
+# endif
#endif /* AMD64Architecture */
#ifdef PpcArchitecture
-#define OptimizedCDebugFlags -O2
-#define LinuxMachineDefines -D__powerpc__
+# ifndef OptimizedCDebugFlags
+# define OptimizedCDebugFlags DefaultGcc2i386Opt
+# endif
+# define LinuxMachineDefines -D__powerpc__
#endif /* PpcArchitecture */
#ifdef AlphaArchitecture
-#define OptimizedCDebugFlags -O2
-#define LinuxMachineDefines -D__alpha__
+# ifndef OptimizedCDebugFlags
+# define OptimizedCDebugFlags DefaultGcc2i386Opt
+# endif
+# define LinuxMachineDefines -D__alpha__
#endif /* AlphaArchitecture */
#ifdef Mc68020Architecture
-#define OptimizedCDebugFlags -O2
-#define LinuxMachineDefines -D__mc68000__
-#define StandardCppDefines -traditional
+# ifndef OptimizedCDebugFlags
+# define OptimizedCDebugFlags DefaultGcc2i386Opt
+# endif
+# define LinuxMachineDefines -D__mc68000__
+# define StandardCppDefines -traditional
#endif /* Mc68020Architecture */
-#define StandardDefines -Dlinux LinuxMachineDefines LinuxSourceDefines
+#define StandardDefines -D__linux__ LinuxMachineDefines LinuxSourceDefines
#define ConnectionFlags -DUNIXCONN -DTCPCONN
#define ArchitectureDefines -DLINUX_ARCHITECTURE
-#define TtClientLibs $(TTLIB) $(XTOOLLIB) $(XLIB)
-#define TtClientDepLibs $(DEPTTLIB) $(DEPXTOOLLIB) $(DEPXLIB)
+#define TtClientLibs $(TTLIB) $(TIRPCLIB) $(XTOOLLIB) $(XLIB)
+
+#define SharedTtReqs $(TIRPCLIB) $(LDPRELIBS) SharedXReqs $(CXXLIB)
+#include <lnxDep.rules>
#include <lnxLib.rules>
-#include <xfree86.cf>