~ubuntu-branches/ubuntu/trusty/pvm/trusty-proposed

« back to all changes in this revision

Viewing changes to src/Makefile.aimk

  • Committer: Bazaar Package Importer
  • Author(s): Steinar H. Gunderson
  • Date: 2006-08-09 00:00:40 UTC
  • mfrom: (2.1.5 dapper)
  • Revision ID: james.westby@ubuntu.com-20060809000040-16kh33tmxx2em716
Tags: 3.4.5-7
Build with SHELL=/bin/bash in debian/rules; fixes FTBFS when /bin/sh
isn't bash. (Closes: #379543)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
#
2
 
# $Id: Makefile.aimk,v 1.34 1998/10/01 21:10:25 pvmsrc Exp $
 
2
# $Id: Makefile.aimk,v 1.40 2001/05/11 18:58:10 pvmsrc Exp $
3
3
#
4
4
# Generic Makefile body to be concatenated to config header.
5
5
#
14
14
#
15
15
# Compatibility defines (usually in conf/*.def):
16
16
#  FDSETPATCH      if system includes don't have fd_set stuff
 
17
#  USESTRERROR     if sys_errlist, sys_nerr not public, use strerror()
17
18
#  HASERRORVARS    if errno, sys_nerr, sys_errlist already declared
18
19
#  HASSTDLIB       if system has stdlib.h
19
20
#  NEEDENDIAN      to include <endian.h>
27
28
#  NOWAIT3         if system doesn't have wait3()
28
29
#  NOWAITPID       if system doesn't have waitpid() either
29
30
#  RSHCOMMAND=     for rsh command other than "/usr/ucb/rsh"
 
31
#                      (can override using PVM_RSH environment variable)
30
32
#  SHAREDTMP       if /tmp is shared between machines (yecch)
31
33
#  SOCKADHASLEN    if struct sockaddr has an sa_len field
32
34
#  SYSVBFUNC       if system uses memcpy() instead of bcopy(), etc.
49
51
#  STATISTICS      to enable collection of statistics in pvmd
50
52
#  TIMESTAMPLOG    to enable timestamps in pvmd log file
51
53
#  USE_PVM_ALLOC   to enable instrumented malloc functs (for pvm debug)
 
54
#  USE_GNU_REGEX   to enable use of GNU Regex for Mbox Lookup
 
55
#                     -> requires installation of GNU regex, as well as
 
56
#                        modifying the following defines (see below):
 
57
#                            REGEXCONF, REGEXCONFOS2, REGEXOBJS
52
58
#
53
59
 
54
60
SHELL           =       /bin/sh
55
61
PVMDIR          =       ../..
56
62
SDIR            =       $(PVMDIR)/src
57
63
LIBDIR          =       $(PVMDIR)/lib/$(PVM_ARCH)
58
 
#CFLOPTS        =       -O
59
 
CFLOPTS         =       -g
 
64
CFLOPTS         =       -O
 
65
#CFLOPTS        =       -g
60
66
#OPTIONS        =       -DCLUMP_ALLOC
61
67
#OPTIONS        =       -DSTATISTICS
62
68
#OPTIONS        =       -p
63
69
OPTIONS         =       -DCLUMP_ALLOC -DSTATISTICS \
64
70
                                -DTIMESTAMPLOG -DSANITY
65
 
CFLAGS          =       $(ARCHCFLAGS) $(CFLOPTS) $(OPTIONS) \
66
 
                        -I$(PVMDIR)/include \
67
 
                        -DARCHCLASS=\"$(PVM_ARCH)\" -DIMA_$(PVM_ARCH)
 
71
CFLAGS          =       $(ARCHCFLAGS) $(CFLOPTS) $(OPTIONS) -I$(PVMDIR)/include \
 
72
                                -DARCHCLASS=\"$(PVM_ARCH)\" -DIMA_$(PVM_ARCH)
 
73
 
68
74
LIBPREFIX       =       lib
69
75
LIBPVM          =       $(LIBPREFIX)pvm3
70
76
 
 
77
#
 
78
# GNU Regular Expression Defines - set if needed
 
79
#
 
80
 
 
81
REGEXCONF               =
 
82
#REGEXCONF              =       regexconfig
 
83
 
 
84
REGEXCONFOS2    =
 
85
#REGEXCONFOS2   =       regexconfig-os2
 
86
 
 
87
REGEXOBJS               =
 
88
#REGEXOBJS              =       pvmregex.o regex.o
 
89
 
 
90
#
 
91
# PVM Daemon & Library Objects
 
92
#
 
93
 
71
94
DOBJ            = \
72
95
        ddpro.o \
73
96
        host.o \
75
98
        msgbox.o \
76
99
        pkt.o \
77
100
        pvmd.o \
 
101
        pvmcruft.o \
78
102
        pvmdpack.o \
79
103
        pvmdtev.o \
80
104
        pvmlog.o \
81
105
        sdpro.o \
82
106
        task.o \
 
107
        global.o \
83
108
        tdpro.o
84
109
 
85
 
 
86
110
SOCKDOBJ        = \
87
111
        pvmdunix.o
88
112
 
100
124
        pvmdmimd.o \
101
125
        pvmdunix.o
102
126
 
 
127
BEODOBJ         = \
 
128
        pvmdmimd.o
 
129
 
103
130
OS2DOBJ         = \
104
131
        deathapi.o \
105
132
        sthoster.o \
121
148
        pvmerr.o \
122
149
        pvmfrag.o \
123
150
        waitc.o \
124
 
        pvmregex.o \
125
151
        global.o
126
152
 
127
153
LPVMSOCK        =       lpvm.o
173
199
MPPTARGETS              =       $(LIBDIR)/pvmd3-mpp \
174
200
                                        $(LIBDIR)/$(LIBPVM).a $(LIBDIR)/$(LIBPVM)pe.a
175
201
 
 
202
BEOTARGETS              =       $(LIBDIR)/pvmd3-beo $(LIBDIR)/$(LIBPVM).a
 
203
 
176
204
OS2TARGETS              =       $(LIBDIR)/pvmd3-os2 $(LIBDIR)/lib-os2
177
205
 
178
206
all:    pvmd3$(EXESFX) $(LIBPVM).a $(LIBPVM).so
181
209
 
182
210
all-mpp:        pvmd3-mpp $(LIBPVM).a $(LIBPVM)pe.a
183
211
 
 
212
all-beo:        pvmd3-beo $(LIBPVM).a
 
213
 
184
214
all-os2:        pvmd3-os2 lib-os2
185
215
 
186
216
install:        $(LIBDIR) $(LIBDIR)/pvmd3$(EXESFX) $(LIBDIR)/$(LIBPVM).a $(LIBDIR)/$(LIBPVM).so
189
219
 
190
220
install-mpp:    $(LIBDIR) $(MPPTARGETS)
191
221
 
 
222
install-beo:    $(LIBDIR) $(BEOTARGETS)
 
223
 
192
224
install-os2:    $(LIBDIR) $(OS2TARGETS)
193
225
 
194
226
$(LIBDIR):
202
234
$(LIBDIR)/$(LIBPVM).a:  $(LIBPVM).a
203
235
        cp $(LIBPVM).a $(LIBDIR)
204
236
 
205
 
$(LIBDIR)/$(LIBPVM).so: $(LIBPVM).so
 
237
$(LIBDIR)/$(LIBPVM).so: $(LIBPVM).so
206
238
        cp $(LIBPVM).so $(LIBDIR)
207
239
 
208
 
 
209
240
# libdir shm pvmd3 & libpvm3*.a
210
241
 
211
242
$(LIBDIR)/pvmd3-shm:    pvmd3-shm
228
259
$(LIBDIR)/$(LIBPVM)pe.a:        $(LIBPVM)pe.a
229
260
        cp $(LIBPVM)pe.a $(LIBDIR)
230
261
 
 
262
# libdir Beowulf pvmd3
 
263
 
 
264
$(LIBDIR)/pvmd3-beo:    pvmd3-beo
 
265
        cp pvmd3$(EXESFX) $(LIBDIR)
 
266
        touch $(LIBDIR)/pvmd3-beo
 
267
 
231
268
# libdir os2 pvmd3 & libpvm3*.a
232
269
 
233
270
$(LIBDIR)/pvmd3-os2:    pvmd3-os2
240
277
 
241
278
# sock pvmd3 & libpvm3.a
242
279
 
243
 
pvmd3$(EXESFX): regexconfig $(LIBPVM).so $(DOBJ) $(SOCKDOBJ)
 
280
pvmd3$(EXESFX): $(REGEXCONF) $(LIBPVM).so $(DOBJ) $(SOCKDOBJ)
244
281
        $(CC) $(CFLAGS) -o pvmd3$(EXESFX) $(DOBJ) $(SOCKDOBJ) $(LIBPVM).so \
245
282
                $(LOPT) $(ARCHDLIB)
246
283
 
247
 
$(LIBPVM).a:    regexconfig
 
284
$(LIBPVM).a:   regexconfig
248
285
        echo -------------------------------
249
286
        echo --- Building static Library ---
250
287
        echo -------------------------------
251
288
        rm -f $(LIBPVM).a $(LOBJ) $(LPVMSOCK) $(SOCKLOBJ) \
252
 
                $(REGEXDIR)/pvmregex.o $(REGEXDIR)/regex.o
 
289
                $(REGEXDIR)/pvmregex.o $(REGEXDIR)/regex.o
253
290
        pwd
254
291
        cd .. && ../lib/aimk CFLOPTS='$(CFLOPTS)' $(LOBJ) $(LPVMSOCK) $(SOCKLOBJ)
255
292
        $(AR) cr $(LIBPVM).a $(LOBJ) $(LPVMSOCK) $(SOCKLOBJ)
260
297
        echo --- Building shared Library ---
261
298
        echo -------------------------------
262
299
        rm -f $(LIBPVM).so $(LOBJ) $(LPVMSOCK) $(SOCKLOBJ) \
263
 
                $(REGEXDIR)/pvmregex.o $(REGEXDIR)/regex.o
 
300
                $(REGEXDIR)/pvmregex.o $(REGEXDIR)/regex.o
264
301
        cd .. && ../lib/aimk CFLOPTS='-fPIC $(CFLOPTS)' $(LOBJ) $(LPVMSOCK) $(SOCKLOBJ)
265
302
        $(CC) -shared -Wl,-soname,libpvm3.so.3 -o $(LIBPVM).so $(LOBJ) $(LPVMSOCK) $(SOCKLOBJ) -lc
266
303
 
267
304
 
268
305
# shm pvmd3 & libpvm3*.a
269
306
 
270
 
pvmd3-shm:      regexconfig $(DOBJ) $(SHMEMDOBJ)
 
307
pvmd3-shm:      $(REGEXCONF) $(DOBJ) $(SHMEMDOBJ)
271
308
        $(CC) $(CFLAGS) -o pvmd3$(EXESFX) $(DOBJ) $(SHMEMDOBJ) $(ARCHDLIB)
272
309
        touch pvmd3-shm
273
310
 
274
 
lib-shm:        regexconfig $(LOBJ) $(LPVMSHMEM) $(SHMEMLOBJ)
 
311
lib-shm:        $(REGEXCONF) $(LOBJ) $(LPVMSHMEM) $(SHMEMLOBJ)
275
312
        rm -f $(LIBPVM).a
276
313
        $(AR) cr $(LIBPVM).a $(LOBJ) $(LPVMSHMEM) $(SHMEMLOBJ)
277
314
        case x$(HASRANLIB) in xt ) echo ranlib; ranlib $(LIBPVM).a ;; esac
278
315
        touch lib-shm
279
316
 
280
 
$(LIBPVM)s.a:   regexconfig $(LOBJ) $(LPVMSOCK) $(SOCKLOBJ)
 
317
$(LIBPVM)s.a:   $(REGEXCONF) $(LOBJ) $(LPVMSOCK) $(SOCKLOBJ)
281
318
        rm -f $(LIBPVM)s.a
282
319
        $(AR) cr $(LIBPVM)s.a $(LOBJ) $(LPVMSOCK) $(SOCKLOBJ)
283
320
        case x$(HASRANLIB) in xt ) echo ranlib; ranlib $(LIBPVM)s.a ;; esac
284
321
 
285
322
# mpp pvmd3 & libpvm3*.a
286
323
 
287
 
pvmd3-mpp:      regexconfig $(DOBJ) $(MPPDOBJ)
 
324
pvmd3-mpp:      $(REGEXCONF) $(DOBJ) $(MPPDOBJ)
288
325
        $(CC) $(CFLAGS) -o pvmd3$(EXESFX) $(DOBJ) $(MPPDOBJ) \
289
326
                $(LOPT) $(ARCHDLIB)
290
327
        touch pvmd3-mpp
291
328
 
292
 
$(LIBPVM)pe.a:  regexconfig $(LOBJ) $(LPVMMIMD) $(MPPLOBJ)
 
329
$(LIBPVM)pe.a:  $(REGEXCONF) $(LOBJ) $(LPVMMIMD) $(MPPLOBJ)
293
330
        rm -f $(LIBPVM)pe.a
294
331
        $(AR) cr $(LIBPVM)pe.a $(LOBJ) $(LPVMMIMD) $(MPPLOBJ)
295
332
 
 
333
# Beowulf(LINUX) pvmd3 & libpvm3.a
 
334
 
 
335
pvmd3-beo:      $(REGEXCONF) $(DOBJ) $(BEODOBJ) $(SOCKDOBJ)
 
336
        $(CC) $(CFLAGS) -o pvmd3$(EXESFX) $(DOBJ) $(BEODOBJ) $(SOCKDOBJ) \
 
337
                $(LOPT) $(ARCHDLIB)
 
338
 
296
339
# os2 pvmd3 & libpvm3.a
297
340
 
298
 
pvmd3-os2:      regexconfig-os2 $(OS2DOBJ) $(DOBJ) $(SOCKDOBJ)
 
341
pvmd3-os2:      $(REGEXCONFOS2) $(OS2DOBJ) $(DOBJ) $(SOCKDOBJ)
299
342
        $(CC) $(CFLAGS) -o pvmd3$(EXESFX) $(OS2DOBJ) $(DOBJ) $(SOCKDOBJ) \
300
343
                $(LOPT) $(ARCHDLIB)
301
344
        touch pvmd3-os2
302
345
 
303
 
lib-os2:        regexconfig-os2 $(LOBJ) $(OS2LOBJ) $(LPVMSOCK) $(SOCKLOBJ)
 
346
lib-os2:        $(REGEXCONFOS2) $(LOBJ) $(OS2LOBJ) $(LPVMSOCK) $(SOCKLOBJ)
304
347
        rm -f $(LIBPVM).a
305
348
        $(AR) cr $(LIBPVM).a $(LOBJ) $(OS2LOBJ) $(LPVMSOCK) $(SOCKLOBJ)
306
349
        case x$(HASRANLIB) in xt ) echo ranlib; ranlib $(LIBPVM).a ;; esac
366
409
mppchunkhost.o: $(SDIR)/mppchunk.c
367
410
        $(CC) $(CFLAGS) -c -o mppchunkhost.o $(SDIR)/mppchunk.c
368
411
mppchunknode.o: $(SDIR)/mppchunk.c
369
 
        $(NODECC) $(CFLAGS) -DIMA_NODE -c -o mppchunknode.o $(SDIR)/mppchunk.c
 
412
        $(NODECC) $(CFLAGS) -DIMA_NODE -c -o mppchunknode.o \
 
413
                $(SDIR)/mppchunk.c
370
414
mppmsghost.o:   $(SDIR)/mppmsg.c
371
415
        $(CC) $(CFLAGS) -c -o mppmsghost.o $(SDIR)/mppmsg.c
372
416
mppmsgnode.o:   $(SDIR)/mppmsg.c