# | # o---------------------------------------------------------------------o # | # | MAD makefile - post-makefile MacOSX customization # | # o---------------------------------------------------------------------o # | # | Methodical Accelerator Design # | # | Copyright (c) 2011+ CERN, mad@cern.ch # | # | For more information, see http://cern.ch/mad # | # o---------------------------------------------------------------------o # | # | $Id$ # | # use macport GCC suite ifeq ($(USER),ldeniau) %-gnu: GNUMAC := CC=gcc-mp-4.6 CXX=g++-mp-4.6 FC=gfortran-mp-4.6 LD=gfortran-mp-4.6 \ CCNAME=gcc CXXNAME=g++ FCNAME=gfortran LDNAME=gfortran numdiff%-gnu: GNUMAC := CC=gcc-mp-4.6 LD=gcc-mp-4.6 CCNAME=gcc LDNAME=gcc else %-gnu: GNUMAC := GNU=yes endif # # all # .PHONY: all-macosx all-macosx-gnu all-macosx: madx-macosx libmadx-macosx libptc-macosx numdiff-macosx all-macosx-gnu: madx-macosx-gnu libmadx-macosx-gnu libptc-macosx-gnu numdiff-macosx-gnu # # madx # .PHONY: madx-macosx madx-macosx-gnu .PHONY: madx-macosx32 madx-macosx64 .PHONY: madx-macosx32-gnu madx-macosx64-gnu madx-macosx: madx-macosx32 madx-macosx64 madx-macosx-gnu: madx-macosx32-gnu madx-macosx64-gnu madx-macosx%: MAKE_OPTS = -j5 madx-macosx%: MAKE_ARGS = PRJNAME=$@ DESTDIR=$(DESTDIR) ONLINE=no STATIC=no APPENDLD=yes madx-macosx%: MAKE_LINK = $(if $(DESTDIR),ln -sf $(DESTDIR)$@ &&,) ln -sf $@ madx-macosx32: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 Intel=yes && $(MAKE_LINK) madx32 madx-macosx64: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 Intel=yes && $(MAKE_LINK) madx64 madx-macosx32-gnu: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 $(GNUMAC) && $(MAKE_LINK) madx32 madx-macosx64-gnu: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 $(GNUMAC) && $(MAKE_LINK) madx64 # # libmadx # .PHONY: libmadx-macosx libmadx-macosx-gnu .PHONY: libmadx-macosx32 libmadx-macosx64 .PHONY: libmadx-macosx32-gnu libmadx-macosx64-gnu libmadx-macosx: libmadx-macosx32 libmadx-macosx64 libmadx-macosx-gnu: libmadx-macosx32-gnu libmadx-macosx64-gnu libmadx-macosx%: DESTDIR := $(DESTDIR)libs/madx libmadx-macosx%: MAKE_OPTS = -j5 --no-print-directory -C libs/madx libmadx-macosx%: MAKE_ARGS = PRJNAME=$@ DESTDIR=../../$(DESTDIR) ONLINE=no STATIC=no APPENDLD=yes libmadx-macosx%: MAKE_LINK1 = ln -sf $(DESTDIR)/$@.a && ln -sf $@.a libmadx-macosx%: MAKE_LINK2 = ln -sf $(DESTDIR)/$@.dylib && ln -sf $@.dylib libmadx-macosx32: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 Intel=yes && $(MAKE_LINK1) libmadx32.a && $(MAKE_LINK2) libmadx32.dylib libmadx-macosx64: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 Intel=yes && $(MAKE_LINK1) libmadx64.a && $(MAKE_LINK2) libmadx64.dylib libmadx-macosx32-gnu: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 $(GNUMAC) && $(MAKE_LINK1) libmadx32.a && $(MAKE_LINK2) libmadx32.dylib libmadx-macosx64-gnu: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 $(GNUMAC) && $(MAKE_LINK1) libmadx64.a && $(MAKE_LINK2) libmadx64.dylib # # libptc # .PHONY: libptc-macosx libptc-macosx-gnu .PHONY: libptc-macosx32 libptc-macosx64 .PHONY: libptc-macosx32-gnu libptc-macosx64-gnu libptc-macosx: libptc-macosx32 libptc-macosx64 libptc-macosx-gnu: libptc-macosx32-gnu libptc-macosx64-gnu libptc-macosx%: DESTDIR := $(DESTDIR)libs/ptc libptc-macosx%: MAKE_OPTS = -j5 --no-print-directory -C libs/ptc libptc-macosx%: MAKE_ARGS = PRJNAME=$@ DESTDIR=../../$(DESTDIR) APPENDLD=yes libptc-macosx%: MAKE_LINK1 = ln -sf $(DESTDIR)/$@.a && ln -sf $@.a libptc-macosx%: MAKE_LINK2 = ln -sf $(DESTDIR)/$@.dylib && ln -sf $@.dylib libptc-macosx32: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 Intel=yes && $(MAKE_LINK1) libptc32.a && $(MAKE_LINK2) libptc32.dylib libptc-macosx64: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 Intel=yes && $(MAKE_LINK1) libptc64.a && $(MAKE_LINK2) libptc64.dylib libptc-macosx32-gnu: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 $(GNUMAC) && $(MAKE_LINK1) libptc32.a && $(MAKE_LINK2) libptc32.dylib libptc-macosx64-gnu: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 $(GNUMAC) && $(MAKE_LINK1) libptc64.a && $(MAKE_LINK2) libptc64.dylib # # numdiff # .PHONY: numdiff-macosx numdiff-macosx-gnu .PHONY: numdiff-macosx32 numdiff-macosx64 .PHONY: numdiff-macosx32-gnu numdiff-macosx64-gnu numdiff-macosx: numdiff-macosx32 numdiff-macosx64 numdiff-macosx-gnu: numdiff-macosx32-gnu numdiff-macosx64-gnu numdiff-macosx%: DESTDIR := $(DESTDIR)tools/numdiff numdiff-macosx%: MAKE_OPTS = -j5 --no-print-directory -C tools/numdiff numdiff-macosx%: MAKE_ARGS = PRJNAME=$@ DESTDIR=../../$(DESTDIR) APPENDLD=yes numdiff-macosx%: MAKE_LINK = ln -sf $(DESTDIR)/$@ && ln -sf $@ numdiff-macosx32: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 Intel=yes && $(MAKE_LINK) numdiff32 numdiff-macosx64: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 Intel=yes && $(MAKE_LINK) numdiff64 numdiff-macosx32-gnu: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=32 $(GNUMAC) && $(MAKE_LINK) numdiff32 numdiff-macosx64-gnu: $E "*** Building $@" $_ $(MAKE) $(MAKE_OPTS) $(MAKE_ARGS) ARCH=64 $(GNUMAC) && $(MAKE_LINK) numdiff64 # end of makefile