source: libcf/trunk/makeinclude/platform.mk@ 119

Last change on this file since 119 was 119, checked in by cheese, 11 years ago

#1 fix and arrange doxygen configuration file and doxygen comments

File size: 3.2 KB
Line 
1#------------------------------------------------------------
2# set command to check os
3#------------------------------------------------------------
4UNAME_S := $(shell uname -s)
5UNAME_M := $(shell uname -m)
6UNAME_R := $(shell uname -r)
7UNAME_V := $(shell uname -v)
8UNAME_A := $(shell uname -a)
9DOXYGEN := $(shell which doxygen)
10
11#------------------------------------------------------------
12# set options
13#------------------------------------------------------------
14ifeq ($(DEBUG), YES)
15 DEFS = -D_DEBUG
16 FLAG = -g
17else
18 DEFS =
19 FLAG = -O2
20endif
21
22EXT_SHARED = so
23EXT_STATIC = a
24EXT_EXECUTE = ex
25
26#------------------------------------------------------------
27# set platform
28#------------------------------------------------------------
29ifeq ($(UNAME_S), SunOS)
30 ifeq ($(UNAME_M), i86pc)
31 ifeq ($(VER), 32)
32 OS_DEF = solaris_x86
33 else
34 OS_DEF = solaris_x86_64
35 endif
36 else
37 ifeq ($(VER), 32)
38 OS_DEF = solaris
39 else
40 OS_DEF = solaris64
41 endif
42 endif
43endif
44
45ifeq ($(UNAME_S), AIX)
46 ifeq ($(VER), 32)
47 OS_DEF = aix
48 else
49 OS_DEF = aix64
50 endif
51endif
52
53ifeq ($(UNAME_S), HP-UX)
54 ifeq ($(UNAME_M), ia64)
55 UNAME_S := HP-UX_IA
56 ifeq ($(VER), 32)
57 OS_DEF = hp_ia
58 else
59 OS_DEF = hp_ia64
60 endif
61 else
62 ifeq ($(VER), 32)
63 OS_DEF = hp
64 else
65 OS_DEF = hp64
66 endif
67 endif
68endif
69
70ifeq ($(UNAME_S), Linux)
71 ifeq ($(UNAME_M), ppc64)
72 OS_DEF = linux_ppc64
73 else
74 ifeq ($(VER), 32)
75 OS_DEF = linux
76 else
77 OS_DEF = linux_x86_64
78 endif
79 endif
80endif
81
82ifeq ($(filter $(UNAME_A),Cygwin),Cygwin)
83 # forced
84 VER = 32
85 EXT_SHARED = dll
86 EXT_STATIC = lib
87 EXT_EXECUTE = exe
88
89 # run as linux
90 OS_DEF = linux
91endif
92
93#------------------------------------------------------------
94# set build env.
95#------------------------------------------------------------
96ifeq ($(OS_DEF), $(filter $(OS_DEF),solaris solaris64 solaris_x86 solaris_x86_64))
97CC = gcc
98LD = gcc
99AR = ar
100CDEFS = $(DEFS) -D_SOLARIS -D_REENTRANT
101CFLAGS = $(FLAG) -m$(VER) -Wall -Wconversion -Wpointer-arith -Wcast-align -fPIC
102LDFLAGS = -m$(VER)
103SHARED_FLAGS = $(LDFLAGS) -G
104ARFLAGS = rc
105LIBS = -lnsl -lsocket -lpthread
106endif
107
108ifeq ($(OS_DEF), $(filter $(OS_DEF),aix aix64))
109CC = cc_r
110LD = ld
111AR = ar
112CDEFS = $(DEFS) -D_AIX -D_REENTRANT -D__STDC__=1
113CFLAGS = $(FLAG) -q$(VER) -qcpluscmt
114LDFLAGS = -b$(VER) -brtl
115SHARED_FLAGS = $(LDFLAGS) -bnoentry -bM:SRE -bexpall
116ARFLAGS = cru
117LIBS = -lc -lpthread
118endif
119
120ifeq ($(OS_DEF), $(filter $(OS_DEF),hp hp64 hp_ia hp_ia64))
121CC = cc
122LD = ld
123AR = ar
124CDEFS = $(DEFS) -D_HPUX -D_REENTRANT
125CFLAGS = $(FLAG) +z -q -n
126LDFLAGS =
127SHARED_FLAGS = $(LDFLAGS) -b +s
128ARFLAGS = cru
129LIBS = -lc -lpthread
130
131 ifeq ($(OS_DEF), hp)
132 CFLAGS += +DA1.1 +s
133 EXT_SHARED = sl
134 endif
135
136 ifeq ($(OS_DEF), hp64)
137 CFLAGS += +DA2.0W +w1 -Ae -z +u4
138 EXT_SHARED = sl
139 endif
140
141 ifeq ($(OS_DEF), hp_ia)
142 CFLAGS += +DA1.1 +s
143 endif
144
145 ifeq ($(OS_DEF), hp_ia64)
146 CFLAGS += +DD64 +w1 -Ae -z +u4
147 endif
148endif
149
150ifeq ($(OS_DEF), $(filter $(OS_DEF),linux linux_x86_64 linux_ppc64))
151CC = gcc
152LD = gcc
153AR = ar
154CDEFS = $(DEFS) -D_LINUX -D_REENTRANT
155CFLAGS = $(FLAG) -m$(VER) -Wall -Wconversion -Wpointer-arith -Wcast-align -fPIC
156LDFLAGS = -m$(VER) -Wl,-Bsymbolic
157SHARED_FLAGS = $(LDFLAGS) -shared
158ARFLAGS = rc
159LIBS = -lpthread
160endif
Note: See TracBrowser for help on using the repository browser.