1 XCOMM platform: $TOG: linux.cf /main/47 1998/04/17 11:32:51 mgreess $
4 #define OSName DefaultOSName
7 #define OSMajorVersion DefaultOSMajorVersion
10 #define OSMinorVersion DefaultOSMinorVersion
12 #ifndef OSTeenyVersion
13 #define OSTeenyVersion DefaultOSTeenyVersion
16 #ifndef LinuxDistribution
17 #define LinuxDistribution DefaultLinuxDistribution
19 Add "#define LinuxDistribution Linux<mumble>" to your site.def or host.def.
20 Currently only LinuxSuSE will be figured out automatically.
21 Valid values are (from the list at www.linux.org in Oct. '97):
37 #ifndef LinuxCLibMajorVersion
38 #define LinuxCLibMajorVersion DefaultLinuxCLibMajorVersion
40 #ifndef LinuxCLibMinorVersion
41 #define LinuxCLibMinorVersion DefaultLinuxCLibMinorVersion
43 #ifndef LinuxCLibTeenyVersion
44 #define LinuxCLibTeenyVersion DefaultLinuxCLibTeenyVersion
46 #ifndef LinuxBinUtilsMajorVersion
47 #define LinuxBinUtilsMajorVersion DefaultLinuxBinUtilsMajorVersion
50 XCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion)
51 XCOMM libc: (LinuxCLibMajorVersion./**/LinuxCLibMinorVersion./**/LinuxCLibTeenyVersion)
52 XCOMM binutils: (LinuxBinUtilsMajorVersion)
55 #if OSMajorVersion > 1 || (OSMajorVersion == 1 && OSMinorVersion > 1)
56 #define UseElfFormat YES
58 #define UseElfFormat NO
59 #error "Only ELF format is supported on linux"
62 #define BuildLibPathVar LD_LIBRARY_PATH
65 #define HasGcc2ForCplusplus YES
66 #define GccUsesGas YES
69 #define HasShadowPasswd YES
72 #define HasSockets YES
73 #if (LinuxDistribution == LinuxRedHat)
77 #define AvoidNullMakeCommand YES
78 #define StripInstalledPrograms YES
79 #define CompressAllFonts YES
80 #define Malloc0ReturnsNull YES
81 #define NeedConstPrototypes YES
82 #define NeedFunctionPrototypes YES
83 #define NeedNestedPrototypes YES
84 #define NeedVarargsPrototypes YES
85 #define NeedWidePrototypes NO
86 #define SetTtyGroup YES
88 #define CcCmd gcc -g -pipe
89 #define CplusplusCmd g++ -g -pipe -fpermissive
93 #define CplusplusLibC -lstdc++
94 #define AsmDefines -D__ELF__
96 #define MkdirHierCmd mkdir -p
97 #define CppCmd /lib/cpp
98 #if OSMajorVersion >= 2
101 #define YaccCmd bison -y
103 #define LexCmd flex -l
105 #define PreProcessCmd CcCmd -E
106 #define PostIncDir DefaultGccIncludeDir
107 #define LdCombineFlags -r
108 #define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC
109 #define HasWChar32 YES
110 #define StandardCppDefines -traditional StandardDefines
111 #define ExtensionOSDefines -DXTESTEXT1
113 #define LinuxLocaleDefines /**/
115 #if LinuxCLibMajorVersion < 6
116 # define LinuxSourceDefines -D_POSIX_SOURCE \
117 -D_BSD_SOURCE -D_SVID_SOURCE LinuxLocaleDefines
119 # define HasLibCrypt NO
123 # define LinuxSourceDefines -D_POSIX_C_SOURCE=199309L \
125 -D_BSD_SOURCE -D_SVID_SOURCE -D_XOPEN_SOURCE \
126 -D__NO_STRING_INLINES -D__NO_MATH_INLINES \
128 # define HasPosixThreads YES
129 # define ThreadedX YES
130 # define HasThreadSafeAPI YES
131 # define ThreadsLibraries -lpthread
132 # define SystemMTDefines -D_REENTRANT
134 # define HasLibCrypt YES
138 #ifdef ARMArchitecture
139 #define LinuxMachineDefines -D__arm__
140 #define LSBBitOrder YES
143 #define HasPlugin YES
144 #define VendorHasX11R6_3libXext YES /* XC or XFree86 3.3.1 */
146 #endif /* ARMArchitecture */
148 #ifdef i386Architecture
149 #define OptimizedCDebugFlags DefaultGcc2i386Opt
150 #define LinuxMachineDefines -D__i386__
151 /* For DtHelp TIFF processing routines. */
152 #define LSBBitOrder YES
155 #define HasPlugin YES
156 #define VendorHasX11R6_3libXext YES /* XC or XFree86 3.3.1 */
158 #endif /* i386Architecture */
160 #ifdef AMD64Architecture
161 #define OptimizedCDebugFlags DefaultGcc2i386Opt
162 #define LinuxMachineDefines -D__x86_64__
163 /* For DtHelp TIFF processing routines. */
164 #define LSBBitOrder YES
167 #define HasPlugin YES
168 #define VendorHasX11R6_3libXext YES /* XC or XFree86 3.3.1 */
170 #endif /* AMD64Architecture */
172 #ifdef PpcArchitecture
173 #define OptimizedCDebugFlags -O2
174 #define LinuxMachineDefines -D__powerpc__
175 #endif /* PpcArchitecture */
177 #ifdef AlphaArchitecture
178 #define OptimizedCDebugFlags -O2
179 #define LinuxMachineDefines -D__alpha__
180 #endif /* AlphaArchitecture */
182 #ifdef Mc68020Architecture
183 #define OptimizedCDebugFlags -O2
184 #define LinuxMachineDefines -D__mc68000__
185 #define StandardCppDefines -traditional
186 #endif /* Mc68020Architecture */
188 #define StandardDefines -Dlinux LinuxMachineDefines LinuxSourceDefines
190 #define ConnectionFlags -DUNIXCONN -DTCPCONN
192 XCOMM This is needed for CDE currently
193 #define CplusplusStandardDefines StandardDefines
195 /* Some of these man page defaults are overriden in the above OS sections */
197 # define ManSuffix 1x
200 # define ManDir $(MANSOURCEPATH)1
203 # define LibManSuffix 3x
206 # define LibmanDir $(MANSOURCEPATH)3
208 #ifndef FileManSuffix
209 # define FileManSuffix 5x
212 # define FileManDir $(MANSOURCEPATH)5
215 #define ArchitectureDefines -DLINUX_ARCHITECTURE
217 #define TtClientLibs $(TTLIB) $(XTOOLLIB) $(XLIB)
218 #define TtClientDepLibs $(DEPTTLIB) $(DEPXTOOLLIB) $(DEPXLIB)
220 #include <lnxLib.rules>
221 #include <xfree86.cf>