source: PSPA/madxPSPA/Makefile_mac

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

import madx-5.01.00

File size: 5.6 KB
Line 
1# |
2# o---------------------------------------------------------------------o
3# |
4# | MAD makefile - post-makefile MacOSX customization
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# use macport GCC suite
20ifeq ($(USER),ldeniau)
21%-gnu:        GNUMAC := CC=gcc-mp-4.6 CXX=g++-mp-4.6 FC=gfortran-mp-4.6 LD=gfortran-mp-4.6 \
22                        CCNAME=gcc CXXNAME=g++ FCNAME=gfortran LDNAME=gfortran
23numdiff%-gnu: GNUMAC := CC=gcc-mp-4.6 LD=gcc-mp-4.6 CCNAME=gcc LDNAME=gcc
24else
25%-gnu: GNUMAC := GNU=yes
26endif
27
28#
29# all
30#
31.PHONY: all-macosx all-macosx-gnu
32
33all-macosx:     madx-macosx     libmadx-macosx     libptc-macosx     numdiff-macosx
34all-macosx-gnu: madx-macosx-gnu libmadx-macosx-gnu libptc-macosx-gnu numdiff-macosx-gnu
35
36#
37# madx
38#
39.PHONY:             madx-macosx           madx-macosx-gnu
40.PHONY:             madx-macosx32         madx-macosx64
41.PHONY:             madx-macosx32-gnu     madx-macosx64-gnu
42madx-macosx:        madx-macosx32         madx-macosx64
43madx-macosx-gnu:    madx-macosx32-gnu     madx-macosx64-gnu
44
45madx-macosx%: MAKE_OPTS = -j5
46madx-macosx%: MAKE_ARGS = PRJNAME=$@ DESTDIR=$(DESTDIR) ONLINE=no STATIC=no APPENDLD=yes
47madx-macosx%: MAKE_LINK = $(if $(DESTDIR),ln -sf $(DESTDIR)$@ &&,) ln -sf $@
48
49madx-macosx32:
50        $E "*** Building $@"
51        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 Intel=yes && $(MAKE_LINK) madx32
52
53madx-macosx64:
54        $E "*** Building $@"
55        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 Intel=yes && $(MAKE_LINK) madx64
56
57madx-macosx32-gnu:
58        $E "*** Building $@"
59        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 $(GNUMAC) && $(MAKE_LINK) madx32
60
61madx-macosx64-gnu:
62        $E "*** Building $@"
63        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 $(GNUMAC) && $(MAKE_LINK) madx64
64
65#
66# libmadx
67#
68.PHONY:             libmadx-macosx        libmadx-macosx-gnu
69.PHONY:             libmadx-macosx32      libmadx-macosx64
70.PHONY:             libmadx-macosx32-gnu  libmadx-macosx64-gnu
71libmadx-macosx:     libmadx-macosx32      libmadx-macosx64
72libmadx-macosx-gnu: libmadx-macosx32-gnu  libmadx-macosx64-gnu
73
74libmadx-macosx%: DESTDIR   := $(DESTDIR)libs/madx
75libmadx-macosx%: MAKE_OPTS  = -j5 --no-print-directory -C libs/madx
76libmadx-macosx%: MAKE_ARGS  = PRJNAME=$@ DESTDIR=../../$(DESTDIR) ONLINE=no STATIC=no APPENDLD=yes
77libmadx-macosx%: MAKE_LINK1 = ln -sf $(DESTDIR)/$@.a     && ln -sf $@.a
78libmadx-macosx%: MAKE_LINK2 = ln -sf $(DESTDIR)/$@.dylib && ln -sf $@.dylib
79
80libmadx-macosx32:
81        $E "*** Building $@"
82        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 Intel=yes && $(MAKE_LINK1) libmadx32.a && $(MAKE_LINK2) libmadx32.dylib
83
84libmadx-macosx64:
85        $E "*** Building $@"
86        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 Intel=yes && $(MAKE_LINK1) libmadx64.a && $(MAKE_LINK2) libmadx64.dylib
87
88libmadx-macosx32-gnu:
89        $E "*** Building $@"
90        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 $(GNUMAC) && $(MAKE_LINK1) libmadx32.a && $(MAKE_LINK2) libmadx32.dylib
91
92libmadx-macosx64-gnu:
93        $E "*** Building $@"
94        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 $(GNUMAC) && $(MAKE_LINK1) libmadx64.a && $(MAKE_LINK2) libmadx64.dylib
95
96#
97# libptc
98#
99.PHONY:             libptc-macosx        libptc-macosx-gnu
100.PHONY:             libptc-macosx32      libptc-macosx64
101.PHONY:             libptc-macosx32-gnu  libptc-macosx64-gnu
102libptc-macosx:      libptc-macosx32      libptc-macosx64
103libptc-macosx-gnu:  libptc-macosx32-gnu  libptc-macosx64-gnu
104
105libptc-macosx%: DESTDIR   := $(DESTDIR)libs/ptc
106libptc-macosx%: MAKE_OPTS  = -j5 --no-print-directory -C libs/ptc
107libptc-macosx%: MAKE_ARGS  = PRJNAME=$@ DESTDIR=../../$(DESTDIR) APPENDLD=yes
108libptc-macosx%: MAKE_LINK1 = ln -sf $(DESTDIR)/$@.a     && ln -sf $@.a
109libptc-macosx%: MAKE_LINK2 = ln -sf $(DESTDIR)/$@.dylib && ln -sf $@.dylib
110
111libptc-macosx32:
112        $E "*** Building $@"
113        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 Intel=yes && $(MAKE_LINK1) libptc32.a && $(MAKE_LINK2) libptc32.dylib
114
115libptc-macosx64:
116        $E "*** Building $@"
117        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 Intel=yes && $(MAKE_LINK1) libptc64.a && $(MAKE_LINK2) libptc64.dylib
118
119libptc-macosx32-gnu:
120        $E "*** Building $@"
121        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 $(GNUMAC) && $(MAKE_LINK1) libptc32.a && $(MAKE_LINK2) libptc32.dylib
122
123libptc-macosx64-gnu:
124        $E "*** Building $@"
125        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 $(GNUMAC) && $(MAKE_LINK1) libptc64.a && $(MAKE_LINK2) libptc64.dylib
126
127#
128# numdiff
129#
130.PHONY:             numdiff-macosx        numdiff-macosx-gnu
131.PHONY:             numdiff-macosx32      numdiff-macosx64
132.PHONY:             numdiff-macosx32-gnu  numdiff-macosx64-gnu
133numdiff-macosx:     numdiff-macosx32      numdiff-macosx64
134numdiff-macosx-gnu: numdiff-macosx32-gnu  numdiff-macosx64-gnu
135
136numdiff-macosx%: DESTDIR  := $(DESTDIR)tools/numdiff
137numdiff-macosx%: MAKE_OPTS = -j5 --no-print-directory -C tools/numdiff
138numdiff-macosx%: MAKE_ARGS = PRJNAME=$@ DESTDIR=../../$(DESTDIR) APPENDLD=yes
139numdiff-macosx%: MAKE_LINK = ln -sf $(DESTDIR)/$@ && ln -sf $@
140
141numdiff-macosx32:
142        $E "*** Building $@"
143        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 Intel=yes && $(MAKE_LINK) numdiff32
144
145numdiff-macosx64:
146        $E "*** Building $@"
147        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 Intel=yes && $(MAKE_LINK) numdiff64
148
149numdiff-macosx32-gnu:
150        $E "*** Building $@"
151        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 $(GNUMAC) && $(MAKE_LINK) numdiff32
152
153numdiff-macosx64-gnu:
154        $E "*** Building $@"
155        $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 $(GNUMAC) && $(MAKE_LINK) numdiff64
156
157# end of makefile
Note: See TracBrowser for help on using the repository browser.