source: PSPA/madxPSPA/Makefile_lnx @ 476

Last change on this file since 476 was 430, checked in by touze, 11 years ago

import madx-5.01.00

File size: 6.0 KB
Line 
1# |
2# o---------------------------------------------------------------------o
3# |
4# | MAD makefile - post-makefile linux cutomization
5# |
6# o---------------------------------------------------------------------o
7# |
8# | Methodical Accelerator Design
9# |
10# | Copyright (c) 2011+ CERN, mad@cern.ch
11# |
12# | For more information, see http://cern.ch/mad
13# |
14# o---------------------------------------------------------------------o
15# |
16# | $Id$
17# |
18
19#
20# all
21#
22.PHONY: all-linux all-linux-gnu all-linux32 all-linux64
23
24all-linux:     madx-linux     libmadx-linux     libptc-linux     numdiff-linux
25all-linux-gnu: madx-linux-gnu libmadx-linux-gnu libptc-linux-gnu numdiff-linux-gnu
26
27all-linux32: madx-linux32 libmadx-linux32 libptc-linux32 numdiff-linux32
28all-linux64: madx-linux64 libmadx-linux64 libptc-linux64 numdiff-linux64
29
30#
31# madx
32#
33.PHONY:             madx-linux          madx-linux-gnu
34.PHONY:             madx-linux-lahey    madx-linux-nagfor
35.PHONY:             madx-linux32        madx-linux64
36.PHONY:             madx-linux32-gnu    madx-linux64-gnu
37.PHONY:             madx-linux32-lahey  madx-linux64-lahey
38.PHONY:             madx-linux32-nagfor madx-linux64-nagfor
39madx-linux:         madx-linux32        madx-linux64
40madx-linux-gnu:     madx-linux32-gnu    madx-linux64-gnu
41madx-linux-lahey:   madx-linux32-lahey  madx-linux64-lahey
42madx-linux-nagfor:  madx-linux32-nagfor madx-linux64-nagfor
43
44madx-linux%: MAKE_OPTS = -j5
45madx-linux%: MAKE_ARGS = PRJNAME=$@ DESTDIR=$(DESTDIR) ONLINE=yes STATIC=yes APPENDLD=yes
46madx-linux%: MAKE_LINK = $(if $(DESTDIR),ln -sf $(DESTDIR)$@ &&,) ln -sf $@
47
48madx-linux32:
49        $E "*** Building $@"
50        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 Intel=yes && $(MAKE_LINK) madx32
51
52madx-linux64:
53        $E "*** Building $@"
54        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 Intel=yes && $(MAKE_LINK) madx64
55
56madx-linux32-gnu:
57        $E "*** Building $@"
58        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 GNU=yes && $(MAKE_LINK) madx32
59
60madx-linux64-gnu:
61        $E "*** Building $@"
62        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 GNU=yes && $(MAKE_LINK) madx64
63
64madx-linux32-nagfor:
65        $E "*** Building $@"
66        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 FC=nagfor && $(MAKE_LINK) madx32
67
68madx-linux64-nagfor:
69        $E "*** Building $@"
70        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 FC=nagfor && $(MAKE_LINK) madx64
71
72madx-linux32-lahey:
73        $E "*** Building $@"
74        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 FC=lf95 && $(MAKE_LINK) madx32
75
76madx-linux64-lahey:
77        $E "*** Building $@"
78        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 FC=lf95 && $(MAKE_LINK) madx64
79
80#
81# libmadx
82#
83.PHONY:             libmadx-linux        libmadx-linux-gnu
84.PHONY:             libmadx-linux32      libmadx-linux64
85.PHONY:             libmadx-linux32-gnu  libmadx-linux64-gnu
86libmadx-linux:      libmadx-linux32      libmadx-linux64
87libmadx-linux-gnu:  libmadx-linux32-gnu  libmadx-linux64-gnu
88
89libmadx-linux%: DESTDIR   := $(DESTDIR)libs/madx
90libmadx-linux%: MAKE_OPTS  = -j5 --no-print-directory -C libs/madx
91libmadx-linux%: MAKE_ARGS  = PRJNAME=$@ DESTDIR=../../$(DESTDIR) ONLINE=no STATIC=no APPENDLD=yes
92libmadx-linux%: MAKE_LINK1 = ln -sf $(DESTDIR)/$@.a  && ln -sf $@.a
93libmadx-linux%: MAKE_LINK2 = ln -sf $(DESTDIR)/$@.so && ln -sf $@.so
94
95libmadx-linux32:
96        $E "*** Building $@"
97        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 Intel=yes ONLINE=yes STATIC=yes && $(MAKE_LINK1) libmadx32.a && $(MAKE_LINK2) libmadx32.so
98
99libmadx-linux32-gnu:
100        $E "*** Building $@"
101        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 GNU=yes   && $(MAKE_LINK1) libmadx32.a && $(MAKE_LINK2) libmadx32.so
102
103libmadx-linux64:
104        $E "*** Building $@"
105        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 Intel=yes && $(MAKE_LINK1) libmadx64.a && $(MAKE_LINK2) libmadx64.so
106
107libmadx-linux64-gnu:
108        $E "*** Building $@"
109        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 GNU=yes   && $(MAKE_LINK1) libmadx64.a && $(MAKE_LINK2) libmadx64.so
110
111#
112# libptc
113#
114.PHONY:             libptc-linux        libptc-linux-gnu
115.PHONY:             libptc-linux32      libptc-linux64
116.PHONY:             libptc-linux32-gnu  libptc-linux64-gnu
117libptc-linux:       libptc-linux32      libptc-linux64
118libptc-linux-gnu:   libptc-linux32-gnu  libptc-linux64-gnu
119
120libptc-linux%: DESTDIR   := $(DESTDIR)libs/ptc
121libptc-linux%: MAKE_OPTS  = -j5 --no-print-directory -C libs/ptc
122libptc-linux%: MAKE_ARGS  = PRJNAME=$@ DESTDIR=../../$(DESTDIR) APPENDLD=yes
123libptc-linux%: MAKE_LINK1 = ln -sf $(DESTDIR)/$@.a  && ln -sf $@.a
124libptc-linux%: MAKE_LINK2 = ln -sf $(DESTDIR)/$@.so && ln -sf $@.so
125
126libptc-linux32:
127        $E "*** Building $@"
128        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 Intel=yes && $(MAKE_LINK1) libptc32.a && $(MAKE_LINK2) libptc32.so
129
130libptc-linux64:
131        $E "*** Building $@"
132        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 Intel=yes && $(MAKE_LINK1) libptc64.a && $(MAKE_LINK2) libptc64.so
133
134libptc-linux32-gnu:
135        $E "*** Building $@"
136        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 GNU=yes && $(MAKE_LINK1) libptc32.a && $(MAKE_LINK2) libptc32.so
137
138libptc-linux64-gnu:
139        $E "*** Building $@"
140        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 GNU=yes && $(MAKE_LINK1) libptc64.a && $(MAKE_LINK2) libptc64.so
141
142#
143# numdiff
144#
145.PHONY:             numdiff-linux         numdiff-linux-gnu
146.PHONY:             numdiff-linux32       numdiff-linux64
147.PHONY:             numdiff-linux32-gnu   numdiff-linux64-gnu
148numdiff-linux:      numdiff-linux32       numdiff-linux64
149numdiff-linux-gnu:  numdiff-linux32-gnu   numdiff-linux64-gnu
150
151numdiff-linux%: DESTDIR  := $(DESTDIR)tools/numdiff
152numdiff-linux%: MAKE_OPTS = -j5 --no-print-directory -C tools/numdiff
153numdiff-linux%: MAKE_ARGS = PRJNAME=$@ DESTDIR=../../$(DESTDIR) APPENDLD=yes
154numdiff-linux%: MAKE_LINK = ln -sf $(DESTDIR)/$@ && ln -sf $@
155
156numdiff-linux32:
157        $E "*** Building $@"
158        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 Intel=yes && $(MAKE_LINK) numdiff32
159
160numdiff-linux64:
161        $E "*** Building $@"
162        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 Intel=yes && $(MAKE_LINK) numdiff64
163
164numdiff-linux32-gnu:
165        $E "*** Building $@"
166        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 GNU=yes && $(MAKE_LINK) numdiff64
167
168numdiff-linux64-gnu:
169        $E "*** Building $@"
170        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 GNU=yes && $(MAKE_LINK) numdiff64
171
172# end of makefile
Note: See TracBrowser for help on using the repository browser.