source: trunk/config/sys/Darwin-g++.gmk@ 1187

Last change on this file since 1187 was 1185, checked in by garnier, 16 years ago

update par rapport a CVS

File size: 4.6 KB
Line 
1#
2# ------ MacOS-X ------
3# MacOS 10.3 gcc-3.3
4# MacOS 10.4 gcc-4.0
5# MacOS 10.5 gcc-4.0
6#
7# Original author: Helmut Burkhardt - CERN
8# Revisions: Guy Barrand - LAL
9# Gabriele Cosmo - CERN
10# Laurent Garnier - LAL
11#
12ifeq ($(G4SYSTEM),Darwin-g++)
13 CXX := g++
14 CXXFLAGS := -Wall -ansi -pedantic -Wno-non-virtual-dtor -Wno-long-long
15# CXXFLAGS += -Wunused-parameter -Winline -Wunreachable-code
16 CXXFLAGS += -Wwrite-strings -Wpointer-arith -Woverloaded-virtual -pipe
17 ifdef G4OPTIMISE
18 CXXFLAGS += -O2
19 FCFLAGS := -O2
20 CCFLAGS := -O2
21 else
22 ifdef G4DEBUG
23 CXXFLAGS += -g
24 FCFLAGS := -g
25 CCFLAGS := -g
26 endif
27 endif
28 ifdef G4PROFILE
29 CXXFLAGS += -pg
30 FCFLAGS += -pg
31 CCFLAGS += -pg
32 endif
33 ifdef G4OPTDEBUG
34 CXXFLAGS += -O2 -g
35 FCFLAGS += -O2 -g
36 CCFLAGS += -O2 -g
37 endif
38 FC := gfortran
39 FCFLAGS += -fno-automatic -fno-backslash -fno-second-underscore
40 LDFLAGS += -bind_at_load -arch_multiple
41 FCLIBS := -lg2c -lnsl
42 SHEXT := dylib
43 ifndef X11FLAGS
44 X11FLAGS := -I/usr/include/X11/extensions -I/usr/include/X11
45 endif
46 ifndef X11LIBS
47 X11LIBS := -L/usr/X11R6/lib -lXmu -lXt -lXext -lX11 -lXi -lSM -lICE
48 endif
49 ifndef XMFLAGS
50 XMFLAGS := -I/sw/include
51# XMFLAGS := -I/usr/X11R6/include ##### some installations.
52 endif
53 ifndef XMLIBS
54 XMLIBS := -L/sw/lib -lXm -lXpm
55# XMLIBS := -L/usr/X11R6/lib -lXm -lXpm ##### some installations.
56 endif
57 ifndef XAWFLAGS
58 XAWFLAGS := -I/sw/include
59# XAWFLAGS := -I/usr/X11R6/include ##### some installations.
60 endif
61 ifndef XAWLIBS
62 XAWLIBS := -lXaw
63 endif
64 DLDLIBS := -ldl
65 ifndef OGLHOME
66 OGLHOME := /usr/X11R6
67 endif
68 ifndef OGLFLAGS
69 OGLFLAGS := -I$(OGLHOME)/include
70 endif
71 ifndef OGLLIBS
72 ifeq ($(shell uname -r | sed 's/\([0-9]*\).[0-9]*.[0-9]*/\1/'),9)
73 # the following lines are for building on MacOSX 10.5 "Leopard"
74 OGLLIBS := $(shell test -f /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib && echo "-L/usr/X11R6/lib -lGLU -lGL -Wl,-dylib_file,/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib")
75 else
76 OGLLIBS := -L$(OGLHOME)/lib -lGLU -lGL
77 endif
78 endif
79
80# ---- QT Setup block -------------------------------------------------------
81 ifndef QTHOME
82 QTHOME := $(shell test -f /Library/Frameworks/Qt3Support.framework/Qt3Support && echo "/Library/Frameworks" || echo "/sw")
83 endif
84 ifndef QTMOC
85 ifeq ($(QTHOME),/Library/Frameworks)
86 QTMOC := /usr/bin/moc
87 else
88 QTMOC := $(QTHOME)/bin/moc
89 endif
90 endif
91
92 QT_VERSION := $(shell $(QTMOC) 2>&1 -v | sed 's/.* .Qt \([0-9]\)\..*/\1/' )
93
94 ifndef QTFLAGS
95 ifeq ($(QT_VERSION),4)
96 QTFLAGS := -I $(QTHOME)/QtCore.framework/Headers
97 QTFLAGS += -I $(QTHOME)/QtGui.framework/Headers
98 QTFLAGS += -I $(QTHOME)/QtOpenGL.framework/Headers
99 QTFLAGS += -I $(QTHOME)/include/Qt -I$(QTHOME)/include
100 else
101 QTFLAGS := -I $(QTHOME)/include/Qt -I$(QTHOME)/include
102 endif
103 endif
104 ifndef QTLIBPATH
105 ifeq ($(QT_VERSION),3)
106 QTLIBPATH := $(shell test -d $(QTHOME)/lib/qt3/lib && echo "$(QTHOME)/lib/qt3/lib" || echo "$(QTHOME)/lib" )
107 else
108 QTLIBPATH := -F$(QTHOME)/lib -F$(QTHOME)
109 endif
110 endif
111 ifndef QTLIBS
112 ifeq ($(QT_VERSION),3)
113 QTLIBS := -L$(QTLIBPATH)
114 QT3_MT := $(shell ls $(QTLIBPATH)/libqt-mt.* 2>/dev/null | wc -l )
115 ifneq ($(QT3_MT),0)
116 QTLIBS += -lqt-mt
117 else
118 QTLIBS += -lqt
119 endif
120 QTLIBS += -lqui
121 else
122 QTLIBS := $(QTLIBPATH) -framework QtCore -framework QtGui
123 endif
124 endif
125 ifndef GLQTLIBS
126 ifeq ($(QT_VERSION),3)
127 # already done in QTLIBS
128 # GLQTLIBS := $(QTLIBS)
129 else
130 GLQTLIBS := $(QTLIBPATH) -framework QtCore -framework QtGui
131 GLQTLIBS += -framework QtOpenGL
132 endif
133 endif
134#----------------------------------------------------------------------------
135
136 define build-granular-shared-lib
137 @libdir=`(cd $(@D);/bin/pwd)`; \
138 cd $(G4TMPDIR); \
139 $(CXX) -dynamiclib -single_module -lgcov -undefined dynamic_lookup \
140 -o $$libdir/$(@F) $(INTYLIBS) *.o
141 endef
142 define build-global-shared-lib
143 @libdir=`(cd $(@D);/bin/pwd)`; \
144 cd $(G4TMP)/$(G4SYSTEM); \
145 $(CXX) -dynamiclib -single_module -lgcov -undefined dynamic_lookup \
146 -o $$libdir/$(@F) $(INTYLIBS) $(foreach dir,$(SUBLIBS),$(dir)/*.o);
147 endef
148
149endif
Note: See TracBrowser for help on using the repository browser.