1 XCOMM $XConsortium: Threads.tmpl /main/11 1996/09/28 16:07:06 rws $
2 XCOMM $XFree86: xc/config/cf/Threads.tmpl,v 3.2 1996/12/23 05:50:12 dawes Exp $
5 * For a multi-threaded application or library,
6 * Define LocalThreadsDefines in your Imakefile (unless you like the
7 * project default), then include this file.
8 * Everything else should be automatic.
11 #ifndef LocalThreadsDefines
12 #ifdef ProjectThreadsDefines
13 #define LocalThreadsDefines ProjectThreadsDefines
15 #define LocalThreadsDefines /**/
20 #ifdef ThreadedProject
21 #define LocalThreads ThreadedProject
23 #define LocalThreads YES
27 #ifndef ThreadTypeDefines
29 #define ThreadTypeDefines -DCTHREADS
31 #define ThreadTypeDefines /**/
34 #ifndef SystemMTDefines
35 #define SystemMTDefines /**/
37 #ifndef LibraryMTDefines
38 #define LibraryMTDefines /**/
40 #ifndef HasThreadSafeAPI /* does it have getpwnam_r, etc. */
41 #define HasThreadSafeAPI YES
43 #ifndef MTSafeAPIDefines
45 #define MTSafeAPIDefines -DXUSE_MTSAFE_API
47 #define MTSafeAPIDefines /**/
50 #ifndef ThreadPreStdAPIDefines
51 #define ThreadPreStdAPIDefines /* nominally for POSIX P1003.4a (Draft 4) API */
53 #ifndef CplusplusSystemMTDefines
54 # ifdef SystemMTDefines
55 # define CplusplusSystemMTDefines SystemMTDefines
57 # define CplusplusSystemMTDefines /**/
60 #ifndef ThreadsCompileFlags
61 #define ThreadsCompileFlags /**/
63 #ifndef ThreadsCplusplusCompileFlags
64 # ifdef ThreadsCompileFlags
65 # define ThreadsCplusplusCompileFlags ThreadsCompileFlags
67 # define ThreadsCplusplusCompileFlags /**/
71 #ifndef ThreadsLibraries
72 #define ThreadsLibraries /**/
74 #ifndef ThreadsCplusplusLibraries
75 # ifdef ThreadsLibraries
76 # define ThreadsCplusplusLibraries ThreadsLibraries
78 # define ThreadsCplusplusLibraries /**/
81 #ifndef ThreadsLoadFlags
82 #define ThreadsLoadFlags ThreadsCompileFlags
84 #ifndef ThreadsCplusplusLoadFlags
85 #define ThreadsCplusplusLoadFlags ThreadsCplusplusCompileFlags
89 THREADS_CFLAGS = ThreadsCompileFlags
90 THREADS_DEFINES = LocalThreadsDefines ThreadTypeDefines SystemMTDefines MTSafeAPIDefines ThreadPreStdAPIDefines $(LIB_MT_DEFINES)
91 THREADS_LDFLAGS = ThreadsLoadFlags
92 THREADS_LIBS = ThreadsLibraries
94 THREADS_CXXFLAGS = ThreadsCplusplusCompileFlags
95 THREADS_CXXDEFINES = LocalThreadsDefines ThreadTypeDefines CplusplusSystemMTDefines MTSafeAPIDefines ThreadPreStdAPIDefines $(LIB_MT_DEFINES)
96 THREADS_CXXLDFLAGS = ThreadsCplusplusLoadFlags
97 THREADS_CXXLIBS = ThreadsCplusplusLibraries