Subversion Repositories gelsvn

Rev

Rev 198 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 198 Rev 217
Line 1... Line 1...
1
// -*- MPC -*-
1
// -*- MPC -*-
2
// $Id: makedll.mpt 198 2005-12-15 11:30:53Z bj $
2
// $Id: makedll.mpt 217 2006-05-05 09:35:48Z bj $
3
 
3
 
4
// ***********************************************************************
4
// ***********************************************************************
5
// The default configuration for the 'make' project type is gcc.  This
5
// The default compiler for the 'make' project type is gcc (provided by
-
 
6
// the fill_value() method in MakeProjectCreator.pm).  This can be
6
// is controlled by the configurations template variable.  It may be
7
// controlled by setting the compilers template variable.  It may be
7
// changed on the MPC command line via the -value_template option.
8
// changed on the MPC command line via the -value_template option.
8
// Additionally, each compiler has a default platform.  The default
9
// Additionally, each compiler has a default platform.  The default
9
// platform for gcc is linux.  This too can be changed via the
10
// platform for gcc is linux.  This too can be changed via the
10
// -value_template option.  Below are some examples.
11
// -value_template option.  Below are some examples.
11
//
12
//
12
// Use SunCC on the default platform (solaris):
13
// Use SunCC on the default platform (solaris):
13
//   mwc.pl -type make -value_template configurations=SunCC
14
//   mwc.pl -type make -value_template compilers=SunCC
14
// Use the default configuration (gcc) on LynxOS:
15
// Use the default compiler (gcc) on LynxOS:
15
//   mwc.pl -type make -value_template platforms=lynxos
16
//   mwc.pl -type make -value_template platforms=lynxos
16
// Use HP-UX aCC on the default platform (HP-UX):
17
// Use HP-UX aCC on the default platform (HP-UX):
17
//   mwc.pl -type make -value_template configurations=aCC
18
//   mwc.pl -type make -value_template compilers=aCC
18
// ***********************************************************************
19
// ***********************************************************************
19
 
20
 
20
conditional_include "common"
21
conditional_include "common"
21
conditional_include "unixcommon"
22
conditional_include "unixcommon"
22
 
23
 
23
configurations   = gcc
24
configurations   = Release
24
obj_ext          = .o
25
obj_ext          = .o
-
 
26
res_ext          = .res
25
compile_flags    =
27
compile_flags    =
26
arflags          =
28
arflags          =
27
pchsupport       = 1
29
pchsupport       = 1
28
targetoutdir     =
30
targetoutdir     =
29
slash            = /
31
slash            = /
30
libopt           = -l
32
libopt           = -l
31
build64bit       = 1
33
build64bit       = 1
-
 
34
pchext           = .gch
-
 
35
versupport       = 1
-
 
36
dependencies     = 1
-
 
37
visibility       =
32
 
38
 
33
// ***********************************************************************
39
// ***********************************************************************
34
// Configuration Section
40
// Configuration Section
35
// ***********************************************************************
41
// ***********************************************************************
36
 
42
 
-
 
43
Debug {
-
 
44
  lib_modifier = d
-
 
45
}
-
 
46
 
-
 
47
Release {
-
 
48
  optimize = 1
-
 
49
}
-
 
50
 
-
 
51
// ***********************************************************************
-
 
52
// Compiler Section
-
 
53
// ***********************************************************************
-
 
54
 
37
java {
55
java {
38
  cxx            = javac
56
  cxx            = javac
39
  ld             = echo
57
  ld             = :
40
  obj_ext        = .class
58
  obj_ext        = .class
41
  output_option  =
59
  output_option  =
42
  compile_option =
60
  compile_option =
43
  ar             = jar
61
  ar             = jar
44
  arflags        = cvf
62
  arflags        = cvf
45
  platforms      = jvm
63
  platforms      = jvm
46
}
64
}
47
 
65
 
48
cxx {
66
cxx_tru64 {
49
  cxx        = cxx
67
  cxx        = cxx
50
  clean      = cxx_repository so_locations
68
  clean      = cxx_repository so_locations
51
  tempincopt = "-ptr "
69
  tempincopt = "-ptr "
52
  tempinc    = cxx_repository
70
  tempinc    = cxx_repository
53
  platforms  = tru64
71
  platforms  = tru64
Line 64... Line 82...
64
  clean           = cxx_repository
82
  clean           = cxx_repository
65
  tempinc         = cxx_repository
83
  tempinc         = cxx_repository
66
  platforms       = openvms
84
  platforms       = openvms
67
}
85
}
68
 
86
 
-
 
87
dmc {
-
 
88
  cxx          = dmc
-
 
89
  dmclink      = 1
-
 
90
  ar           = lib
-
 
91
  arflags      = -c
-
 
92
  obj_ext      = .obj
-
 
93
  dependencies =
-
 
94
  platforms    = dmc_win
-
 
95
}
-
 
96
 
69
gcc {
97
gcc {
70
  cxx       = g++
98
  cxx       = g++
71
  pic       = -fPIC
99
  pic       = -fPIC
72
  shflags   = -shared
100
  shflags   = -shared
73
  platforms = linux
101
  platforms = linux
74
  pchcreate = "-o "
102
  pchcreate = "-o "
75
  pchnobj   = 1
103
  pchnobj   = 1
-
 
104
  visopt    = -fvisibility=hidden -fvisibility-inlines-hidden
-
 
105
}
-
 
106
 
-
 
107
Intel {
-
 
108
  cxx       = icpc
-
 
109
  pic       = -fPIC
-
 
110
  shflags   = -shared
-
 
111
  platforms = linux
-
 
112
  visopt    = -fvisibility=hidden
76
}
113
}
77
 
114
 
78
SunCC {
115
SunCC {
79
  cxx             = CC
116
  cxx             = CC
80
  pic             = -KPIC
117
  pic             = -KPIC
81
  shflags         = -G
118
  shflags         = -G
82
  compilerflags64 = -xarch=v9
119
  compilerflags64 = -xarch=v9
83
  linkflags       = -library=Cstd -library=Crun
120
  linkflags       = -library=Cstd -library=Crun
84
  clean           = SunWS_cache ir.out
121
  clean           = SunWS_cache ir.out
85
  platforms       = solaris
122
  platforms       = solaris
-
 
123
  pchcreate       = -xpch=collect:
-
 
124
  pchuse          = -xpch=use:
-
 
125
  pchstop         = -xpchstop=
-
 
126
  pchext          = .Cpch
-
 
127
  visopt          = -xldscope=hidden
86
}
128
}
87
 
129
 
88
aCC {
130
aCC {
89
  cxx             = aCC
131
  cxx             = aCC
90
  pic             = +Z
132
  pic             = +Z
Line 103... Line 145...
103
  arflags64      += -X64 -rv
145
  arflags64      += -X64 -rv
104
  compilerflags64 = -q64
146
  compilerflags64 = -q64
105
  platforms       = aix
147
  platforms       = aix
106
  pchcreate       = -qgenpcomp=
148
  pchcreate       = -qgenpcomp=
107
  pchuse          = -qusepcomp=
149
  pchuse          = -qusepcomp=
-
 
150
  dependencies    =
108
}
151
}
109
 
152
 
110
SGICC {
153
SGICC {
111
  cxx             = CC
154
  cxx             = CC
112
  pic             = -KPIC
155
  pic             = -KPIC
Line 119... Line 162...
119
  pchuse          = -diag_suppress 3056 -LANG:use_pch=
162
  pchuse          = -diag_suppress 3056 -LANG:use_pch=
120
}
163
}
121
 
164
 
122
wrsppc {
165
wrsppc {
123
  cxx           = g++ppc
166
  cxx           = g++ppc
124
  ld            = ldppc
-
 
125
  cputype       = ppc
167
  cputype       = ppc
126
  cpu           = PPC604
168
  cpu           = PPC604
127
  ar            = arppc
169
  ar            = arppc
128
  nm            = nmppc
170
  nm            = nmppc
129
  compilerflags = -mlongcall -nostdlib
171
  compilerflags = -mlongcall
130
  linkflags     = -X -r
-
 
131
  platforms     = vxworks
172
  platforms     = vxworks
132
}
173
}
133
 
174
 
134
wrspentium {
175
wrspentium {
135
  cxx           = g++pentium
176
  cxx           = g++pentium
136
  ld            = ldpentium
-
 
137
  cputype       = pentium
177
  cputype       = pentium
138
  cpu           = PENTIUM
178
  cpu           = PENTIUM
139
  ar            = arpentium
179
  ar            = arpentium
140
  nm            = nmpentium
180
  nm            = nmpentium
141
  compilerflags = -nostdlib
-
 
142
  linkflags     = -X -r
-
 
143
  platforms     = vxworks
181
  platforms     = vxworks
144
}
182
}
145
 
183
 
146
NCC {
184
NCC {
147
  cxx       = NCC
185
  cxx       = NCC
Line 160... Line 198...
160
// ***********************************************************************
198
// ***********************************************************************
161
// Platform Section
199
// Platform Section
162
// ***********************************************************************
200
// ***********************************************************************
163
 
201
 
164
jvm {
202
jvm {
-
 
203
  versupport =
165
  lib_prefix =
204
  lib_prefix =
166
  dll_ext    =
205
  dll_ext    =
167
  lib_ext    = .jar
206
  lib_ext    = .jar
168
}
207
}
169
 
208
 
Line 174... Line 213...
174
}
213
}
175
 
214
 
176
openvms {
215
openvms {
177
  // If you want to create shareable images, you can
216
  // If you want to create shareable images, you can
178
  // set dll_ext to .exe using the -value_template option of MPC.
217
  // set dll_ext to .exe using the -value_template option of MPC.
-
 
218
  versupport    =
179
  lib_prefix    =
219
  lib_prefix    =
180
  dll_ext       =
220
  dll_ext       =
181
  exe_ext       = .exe
221
  exe_ext       = .exe
182
  ldlibs        = -lpthread
222
  ldlibs        = -lpthread
183
  extracppflags = -D__USE_STD_IOSTREAM -D_REENTRANT
223
  extracppflags = -D__USE_STD_IOSTREAM -D_REENTRANT
184
}
224
}
185
 
225
 
186
linux {
226
linux {
187
  ldlibs        = -ldl -lpthread
227
  ldlibs        = -ldl -lpthread $(subst lib,-l,$(sort $(basename $(notdir $(wildcard /usr/lib/librt.so /lib/librt.so)))))
188
  extracppflags = -D_REENTRANT
228
  extracppflags = -D_REENTRANT
189
}
229
}
190
 
230
 
191
solaris {
231
solaris {
192
  shflags       = -G
232
  shflags       = -G
Line 210... Line 250...
210
  ldlibs  = -lsocket -lgen -lpthread
250
  ldlibs  = -lsocket -lgen -lpthread
211
}
251
}
212
 
252
 
213
lynxos {
253
lynxos {
214
  dll_ext       =
254
  dll_ext       =
215
  extracppflags = -D__NO_INCLUDE_WARN__
255
  extracppflags = -D__NO_INCLUDE_WARN__ -mthreads -mminimal-toc
216
}
256
}
217
 
257
 
218
macos {
258
macos {
219
  dld     = libtool
259
  dld     = libtool
220
  ranlib  = 1
260
  ranlib  = 1
Line 224... Line 264...
224
}
264
}
225
 
265
 
226
unixware {
266
unixware {
227
  ldlibs        = -lsocket -ldl -lnsl -lgen -lposix4 -lthread
267
  ldlibs        = -lsocket -ldl -lnsl -lgen -lposix4 -lthread
228
  extracppflags = -D_REENTRANT
268
  extracppflags = -D_REENTRANT
229
 
-
 
230
}
269
}
231
 
270
 
232
qnx {
271
qnx {
233
  ldlibs        = -lsocket
272
  ldlibs        = -lsocket
234
  extracppflags = -D__GCC_BUILTIN
273
  extracppflags = -D__GCC_BUILTIN
235
}
274
}
236
 
275
 
237
vxworks {
276
vxworks {
-
 
277
  versupport    =
238
  dll_ext       =
278
  dll_ext       =
-
 
279
  exe_ext       = .out
239
  specialscript = "#!/bin/sh\nfor i in $$3; do\nfor j in $$4; do\ni=`echo $$i | sed sa\^-laa`\n[ -r \"$$j/lib$$i.a\" ] && libs=\"$$libs $$j/lib$$i.a\" && break\ndone\ndone\n$$1 $$2 $$libs | munch | grep -v \\.cpp > $$5"
280
  specialscript = "for i in $$3; do for j in $$4; do i=`echo $$i | sed sa\^-laa`;[ -r \"$$j/lib$$i.a\" ] && libs=\"$$libs $$j/lib$$i.a\" && break;done;done;$$1 $$2 $$libs | munch | grep -v \\.cpp > $$5"
240
  prelink       = __ctordtor.c
281
  prelink       = __ctordtor.c
-
 
282
  clean         = __ctordtor$(OBJEXT)
241
  ldlibs        = -L$(WIND_BASE)/target/lib/$(CPUTYPE)/$(CPU)/common -larch
283
  ldlibs        = -L$(WIND_BASE)/target/lib/$(CPUTYPE)/$(CPU)/common -larch
242
  extracppflags = -I$(WIND_BASE)/target/h
284
  extracppflags = -nostdlib -I$(WIND_BASE)/target/h
-
 
285
  ld            = ld$(CPUTYPE)
-
 
286
  linkflags     = -X -r
-
 
287
}
-
 
288
 
-
 
289
vxworks_rtp {
-
 
290
  versupport    =
-
 
291
  dll_ext       =
-
 
292
  exe_ext       = .vxe
-
 
293
  extracppflags = -I$(WIND_BASE)/target/usr/h -I$(WIND_BASE)/target/usr/h/wrn/coreip -mrtp
-
 
294
  linkflags     = -L$(WIND_BASE)/target/usr/lib/$(CPUTYPE)/$(CPU)/common
243
}
295
}
244
 
296
 
245
cygwin {
297
cygwin {
-
 
298
  versupport =
246
  dll_ext = .dll
299
  dll_ext    = .dll
247
  exe_ext = .exe
300
  exe_ext    = .exe
248
  rc      = windres
301
  rc         = windres
-
 
302
  res_ext    = .o
249
}
303
}
250
 
304
 
251
mingw {
305
mingw {
-
 
306
  versupport =
252
  lib_prefix =
307
  lib_prefix =
253
  dll_ext    = .dll
308
  dll_ext    = .dll
-
 
309
  lib_ext    = .lib
254
  exe_ext    = .exe
310
  exe_ext    = .exe
255
  ldlibs     = -lwsock32 -lnetapi32
311
  ldlibs     = -lwsock32 -lnetapi32
256
  rc         = windres
312
  rc         = rc
-
 
313
  devnull    = nul
-
 
314
  delete     = del /f/s/q
-
 
315
  type       = type
-
 
316
  copy       = copy /y
-
 
317
  makedir    = mkdir
-
 
318
  move       = move /y
-
 
319
}
-
 
320
 
-
 
321
dmc_win {
-
 
322
  versupport =
-
 
323
  lib_prefix =
-
 
324
  dll_ext    = .dll
-
 
325
  lib_ext    = .lib
-
 
326
  exe_ext    = .exe
-
 
327
  ldlibs     = wsock32+kernel32
-
 
328
  rc         = rc
257
  devnull    = nul
329
  devnull    = nul
258
  delete     = del /f/s/q
330
  delete     = del /f/s/q
-
 
331
  type       = type
259
  copy       = copy /y
332
  copy       = copy /y
260
  makedir    = mkdir
333
  makedir    = mkdir
-
 
334
  move       = move /y
261
}
335
}
262
 
336
 
263
tandem {
337
tandem {
264
  shflags       = -shared -all
338
  shflags       = -shared -all
265
  ldlibs        = -lsocket -ldl -lnsl -lgen -lthread
339
  ldlibs        = -lsocket -ldl -lnsl -lgen -lthread
Line 274... Line 348...
274
// BSP         The BSP name (ex. sim800).
348
// BSP         The BSP name (ex. sim800).
275
// TARGET_BSP  The full path to your target BSP.
349
// TARGET_BSP  The full path to your target BSP.
276
// TARGET_LD   The full path to your target ld file.
350
// TARGET_LD   The full path to your target ld file.
277
//
351
//
278
integrity {
352
integrity {
-
 
353
  versupport    =
279
  dll_ext       =
354
  dll_ext       =
280
  ldlibs        = -lshm_client -lnet -livfssca -lposixsca
355
  ldlibs        = -lshm_client -lnet -livfssca -lposixsca
281
  extraarflags  = -bspname=$(RTOSROOT)/target/$(BSP).bld
356
  extraarflags  = -bspname=$(RTOSROOT)/target/$(BSP).bld
282
  extracppflags = -integrate -dynamic -bspname=$(RTOSROOT)/target/$(BSP).bld -os_dir $(GHSROOT) -non_shared -Uvector -bspfile=$(TARGET_BSP) $(TARGET_LD)
357
  extracppflags = -integrate -dynamic -bspname=$(RTOSROOT)/target/$(BSP).bld -os_dir $(GHSROOT) -non_shared -Uvector -bspfile=$(TARGET_BSP) $(TARGET_LD)
283
}
358
}