1 XCOMM $XConsortium: os2.cf /main/1 1996/10/31 14:47:25 kaleb $
5 XCOMM platform: $XFree86: xc/config/cf/os2.cf,v 3.18.2.4 1998/02/22 01:04:50 robin Exp $
9 #define OSMajorVersion 3
10 #define OSMinorVersion 0
17 /* set this to what you like (almost :-)
18 * OS/2 does a nonstandard bootstrap of imake
20 #define BootstrapCFlags -DBSD43
22 /* X_WCHAR and X_LOCALE are set in Xosdefs.h */
23 #define StandardDefines /**/
24 #define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC
26 /* This will redirect everything to /XFree86
27 * Care will be taken that programs that need a file from this tree
28 * will add the environment variable X11ROOT to the search path
29 * so you can redirect the stuff to a different drive
34 /* This will be mangled with a drive letter in most OS/2 rules ... */
35 #define ProjectRoot /XFree86
37 /* ... but not when a user tries to compile something from a different drive
38 * Please report any directories missed to Holger.Veit@gmd.de
41 #define IncRoot $(X11ROOT)/XFree86/include
42 #define LdPreLib -L$(X11ROOT)/XFree86/lib
45 /* more directories */
46 #define AdmDir $(LIBDIR)/adm
47 #define ConfigDir $(X11ROOT)$(LIBDIR)/config
50 /* for the man pages */
51 #define BookFormatManPages YES
52 #define ManDirectoryRoot /XFree86/man/man
54 #define LibManSuffix 3
55 #define FileManSuffix 4
56 #define XmanSearchPath /XFree86/man/man
57 #define ManSourcePath $(MANPATH)
59 /* you must have installed groff! */
63 #define NroffCmd groff -Tascii
64 #define EqnCmd eqn -Tascii
65 #define TroffCmd groff -Tps
69 /* A set of standard defines: */
70 #define OSDefines -D__EMX__ -D__i386__ -Demxos2 -D_POSIX_SOURCE \
71 -D_BSD_SOURCE -D_GNU_SOURCE
74 #define BuildImplibs YES
77 /* some more properties of the OS/2 implementation */
80 #define HasSockets YES
81 #define HasSnprintf YES
83 #define HasLargeTmp NO
85 #define HasBSD44Sockets NO
86 #define HasSecureRPC NO
87 #define HasSymLinks NO
89 #define HasVarDirectory NO
90 #define HasStrcasecmp NO
91 #define Malloc0ReturnsNull YES
92 #define SetTtyGroup NO
94 # define HasLibCrypt NO
99 #define ConnectionFlags -DTCPCONN -DOS2PIPECONN
100 #define StdIncDir $(C_INCLUDE_PATH)
102 /* XF86Setup stuff - does not work yet! */
104 /*define TclLibDir $(X11ROOT)$(SHLIBDIR)*/
105 /*define TclIncDir $(X11ROOT)$(INCROOT)/tcl*/
106 /*define TclLibName xtcl*/
109 /*define TkLibDir $(X11ROOT)$(SHLIBDIR)*/
110 /*define TkIncDir $(X11ROOT)$(INCROOT)/tk*/
111 /*define TkLibName xtk*/
118 #define HasCplusplus YES
119 #define HasGcc2ForCplusplus YES
120 #define GccUsesGas YES
123 #define DoRanlibCmd YES
124 #define NeedConstPrototypes YES
125 #define NeedFunctionPrototypes YES
126 #define NeedNestedPrototypes YES
127 #define NeedVarargsPrototypes YES
128 #define NeedWidePrototypes NO
131 #define StandardCppDefines -traditional
132 #define PreProcessCmd CppCmd
135 #define DefaultCCOptions -D__ST_MT_ERRNO__ -Zmtd -Zsysv-signals
136 #define LibraryCCOptions -D__ST_MT_ERRNO__ -Zmtd -Zsysv-signals
137 #define ServerCCOptions -D__ST_MT_ERRNO__ -Zmtd -Zsysv-signals
139 #define CplusplusCmd g++
140 #define CplusplusOptions -Zmtd -Zsysv-signals
142 #define MakeCmd x11make
144 #define GccGasOption -DGCCUSESGAS
145 #define AsmDefines -DUSE_GAS
147 #define InstallCmd install
150 #define ExtraLoadFlags -Zbin-files
151 #define ExtraLibraries -lsocket -lbsd
153 /* quite a number of programs you need, most of them the same as
154 * with Unix, but listed here for completeness
157 #define RanlibCmd ar s
158 #define BourneShell /**/
159 #define LexCmd flex -l
164 #define CompressCmd compress
168 #define RmCmd ImakeHelper 4
171 #define ImakeCmd \imake
172 #define MkdirHierCmd \mkdirhier
173 #define DependCmd \makedepend
175 /* imake and mkdirhier come from Imake.tmpl, but DependCmd must be overriden */
176 #define DependCmd makedepend
179 /* "shell scripts" in OS/2 have this extension */
182 #define InstPgmFlags /**/
183 #define InstBinFlags /**/
184 #define InstUidFlags /**/
185 #define InstLibFlags /**/
186 #define InstIncFlags /**/
187 #define InstManFlags /**/
188 #define InstDatFlags /**/
189 #define InstallFlags /**/
191 #define OptimizedCDebugFlags DefaultGcc2i386Opt
192 #define ServerOSDefines XFree86ServerOSDefines -DDDXTIME
193 #define ServerExtraDefines GccGasOption XFree86ServerDefines
196 # define ServerExtraSysLibs -lshm
200 * Make & install Features
203 #define AvoidNullMakeCommand YES
205 #define NullMakeCommand @ rem
206 #define StripInstalledPrograms NO
207 #define CompressAllFonts YES
208 #define CompressManPages YES
209 #define GzipFontCompression YES
210 #define DefaultUserPath .;/os2;/emx/bin;/tcpip/bin;$(BINDIR)
211 #define DefaultSystemPath /os2;/emx/bin;$(BINDIR)
213 #ifndef ExtraFilesToClean
214 # define ExtraFilesToClean *.~* *.exe *.dll *.obj *.lib *.map
218 #define CompressManCmd gzip -n
219 COMPRESSMANCMD = CompressManCmd
222 #define ProgramTargetName(target)target.exe
224 /* we don't name libraries lib*.a */
225 #define LibraryTargetName(libname) libname.a
226 #define LibraryTargetNameSuffix(libname,suffix)Concat(libname,suffix.a)
228 /* ... and we even don't do it in rules that should have used the above
229 * LibraryTargetName macro
231 #ifndef UnSharedLibReferences
232 #define UnsharedLibReferences(varname,libname,libsource) @@\
233 Concat3(DEP,varname,LIB) = _UseCat($(USRLIBDIR)/,$(BUILDLIBDIR)/,libname.a) @@\
234 Concat(varname,LIB) = LoaderLibPrefix Concat(-l,libname) @@\
235 LintLibReferences(varname,libname,libsource)
238 #ifndef SharedLibReferences
239 #define SharedLibReferences(varname,libname,libsource,revname,rev) @@\
240 Concat3(DEP,varname,LIB) = SharedLibDependencies(libname,libsource,revname) @@\
241 Concat(varname,LIB) = LoaderLibPrefix Concat(-l,libname) @@\
242 LintLibReferences(varname,libname,libsource)
246 #include <os2Lib.rules>
248 # include <xfree86.cf>
251 #error You must edit os2.cf for your (non-EMX) OS/2 dev system