Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/config/sys/Darwin-g++.gmk

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /config/sys/Darwin-g++.gmk (Version 11.3.0) and /config/sys/Darwin-g++.gmk (Version 10.3)


  1 #                                                   1 #
  2 # ------ macOS ------                          <<   2 # ------ MacOS-X ------
  3 #                                 macOS, gcc-9 <<   3 #                                 MacOS 10.8/9/10/11, gcc-4.8 and higher
  4 #                                                   4 #
  5 # Original author: Helmut Burkhardt - CERN          5 # Original author: Helmut Burkhardt - CERN
  6 #       Revisions: Guy Barrand - LAL                6 #       Revisions: Guy Barrand - LAL
  7 #                  Gabriele Cosmo - CERN            7 #                  Gabriele Cosmo - CERN
  8 #                  Laurent Garnier - LAL            8 #                  Laurent Garnier - LAL
  9 #                                                   9 #
 10 ifeq ($(G4SYSTEM),Darwin-g++)                      10 ifeq ($(G4SYSTEM),Darwin-g++)
 11   CXX       := g++                                 11   CXX       := g++
 12   CXXFLAGS  := -Wall -Wno-non-virtual-dtor -Wn     12   CXXFLAGS  := -Wall -Wno-non-virtual-dtor -Wno-long-long
 13   CXXFLAGS  += -Wwrite-strings -Wpointer-arith     13   CXXFLAGS  += -Wwrite-strings -Wpointer-arith -Woverloaded-virtual
 14   CXXFLAGS  += -Wno-variadic-macros -Wshadow -     14   CXXFLAGS  += -Wno-variadic-macros -Wshadow -pipe
 15   CXXFLAGS  += -fno-trapping-math -ftree-vecto     15   CXXFLAGS  += -fno-trapping-math -ftree-vectorize -fno-math-errno
 16   CPPFLAGS  += -DGL_SILENCE_DEPRECATION        <<  16   G4USE_STD11 := 1
 17   CPPFLAGS  += -std=c++17                      <<  17   ifdef G4USE_STD14
 18   CXXFLAGS  += -std=c++17                      <<  18     CPPFLAGS  += -std=c++14
 19 # CXXFLAGS  += -stdlib=libstdc++               <<  19     CXXFLAGS  += -std=c++14
 20   G4USE_STD17 := 1                             <<  20   else
 21   ifdef G4MULTITHREADED                        <<  21     ifdef G4USE_STD17
 22     CXXFLAGS += -ftls-model=initial-exec -pthr <<  22       CPPFLAGS  += -std=c++17
                                                   >>  23       CXXFLAGS  += -std=c++17
                                                   >>  24     else
                                                   >>  25       CXXFLAGS  += -std=c++11
                                                   >>  26       CPPFLAGS  += -std=c++11
                                                   >>  27     endif
 23   endif                                            28   endif
                                                   >>  29 # CXXFLAGS  += -stdlib=libstdc++
 24   ifdef G4OPTIMISE                                 30   ifdef G4OPTIMISE
 25     CXXFLAGS  += -O3                               31     CXXFLAGS  += -O3
 26     FCFLAGS   := -O3                               32     FCFLAGS   := -O3
 27     CCFLAGS   := -O3                               33     CCFLAGS   := -O3
 28   else                                             34   else
 29     ifdef G4DEBUG                                  35     ifdef G4DEBUG
 30       CXXFLAGS  += -g                              36       CXXFLAGS  += -g
 31       FCFLAGS   := -g                              37       FCFLAGS   := -g
 32       CCFLAGS   := -g                              38       CCFLAGS   := -g
 33     endif                                          39     endif
 34   endif                                            40   endif
 35   ifdef G4PROFILE                                  41   ifdef G4PROFILE
 36     CXXFLAGS  += -pg                               42     CXXFLAGS  += -pg
 37     FCFLAGS   += -pg                               43     FCFLAGS   += -pg
 38     CCFLAGS   += -pg                               44     CCFLAGS   += -pg
 39   endif                                            45   endif
 40   ifdef G4OPTDEBUG                                 46   ifdef G4OPTDEBUG
 41     CXXFLAGS  += -O2 -g                            47     CXXFLAGS  += -O2 -g
 42     FCFLAGS   += -O2 -g                            48     FCFLAGS   += -O2 -g
 43     CCFLAGS   += -O2 -g                            49     CCFLAGS   += -O2 -g
 44   endif                                            50   endif
 45   ifdef G4LIB_BUILD_SHARED                         51   ifdef G4LIB_BUILD_SHARED
 46     CXXFLAGS  += -fPIC                             52     CXXFLAGS  += -fPIC
 47     FCFLAGS   += -fPIC                             53     FCFLAGS   += -fPIC
 48     CCFLAGS   += -fPIC                             54     CCFLAGS   += -fPIC
 49   endif                                            55   endif
 50   G4RUNPATHOPTION := -Wl,-rpath,               <<  56   G4RUNPATHOPTION := -Wl,-rpath 
 51 #  G4STATIC_MODE += -Wl,-force_load            <<  57   G4STATIC_MODE += -Wl,-force_load
 52   FC := gfortran                                   58   FC := gfortran
 53   FCFLAGS += -fno-automatic -fno-backslash -fn     59   FCFLAGS += -fno-automatic -fno-backslash -fno-second-underscore
 54   LDFLAGS += -bind_at_load                         60   LDFLAGS += -bind_at_load
 55   FCLIBS := -lg2c -lnsl                            61   FCLIBS := -lg2c -lnsl
 56   SHEXT   := dylib                                 62   SHEXT   := dylib
 57   LOADLIBS += -lm                                  63   LOADLIBS += -lm
 58   ifndef X11FLAGS                                  64   ifndef X11FLAGS
 59     X11FLAGS  := -I/usr/X11/include                65     X11FLAGS  := -I/usr/X11/include
 60   endif                                            66   endif
 61   ifndef X11LIBS                                   67   ifndef X11LIBS
 62     X11LIBS   := -L/usr/X11/lib  -lXmu -lXt -l <<  68     X11LIBS   := -L/usr/X11/lib  -lXmu -lXt -lXext -lX11 -lXi -lSM -lICE
 63   endif                                            69   endif
 64   ifndef XMFLAGS                                   70   ifndef XMFLAGS
 65     XMFLAGS   := -I/usr/local/include          <<  71     XMFLAGS   := -I/sw/include
 66 #   XMFLAGS   := -I/usr/X11/include          #     72 #   XMFLAGS   := -I/usr/X11/include          ##### some installations.
 67   endif                                            73   endif
 68   ifndef XMLIBS                                    74   ifndef XMLIBS
 69     XMLIBS    := -L/usr/local/lib -lXm -lXpm   <<  75     XMLIBS    := -L/sw/lib -lXm -lXpm
 70 #   XMLIBS    := -L/usr/X11/lib -lXm -lXpm   #     76 #   XMLIBS    := -L/usr/X11/lib -lXm -lXpm   ##### some installations.
 71   endif                                            77   endif
 72   ifndef XAWFLAGS                                  78   ifndef XAWFLAGS
 73     XAWFLAGS   := -I/usr/local/include         <<  79     XAWFLAGS   := -I/sw/include
 74 #   XAWFLAGS   := -I/usr/X11/include         #     80 #   XAWFLAGS   := -I/usr/X11/include         ##### some installations.
 75   endif                                            81   endif
 76   ifndef XAWLIBS                                   82   ifndef XAWLIBS
 77     XAWLIBS    := -lXaw                            83     XAWLIBS    := -lXaw
 78   endif                                            84   endif
 79   DLDLIBS   := -ldl                                85   DLDLIBS   := -ldl
 80   ifndef OGLHOME                                   86   ifndef OGLHOME
 81     OGLHOME  := /usr/X11                           87     OGLHOME  := /usr/X11
 82 #   OGLHOME  := /System/Library/Frameworks/Ope     88 #   OGLHOME  := /System/Library/Frameworks/OpenGL.framework
 83   endif                                            89   endif
 84   ifndef OGLFLAGS                                  90   ifndef OGLFLAGS
 85     OGLFLAGS  := -I$(OGLHOME)/include              91     OGLFLAGS  := -I$(OGLHOME)/include 
 86 #   OGLFLAGS := -I$(OGLHOME)/Headers               92 #   OGLFLAGS := -I$(OGLHOME)/Headers 
 87   endif                                            93   endif
 88   ifndef OGLLIBS                                   94   ifndef OGLLIBS
 89     OGLPATH  := $(shell test -f /Library/Frame <<  95     QTGLPATH  := $(shell test -f /System/Library/Frameworks/OpenGL.framework/OpenGL && echo "/System/Library/Frameworks/OpenGL.framework")
 90     ifneq ($(OGLPATH),/Library/Frameworks/Open <<  96     ifeq ($(QTGLPATH),/System/Library/Frameworks/OpenGL.framework)
 91       OGLPATH  := $(shell test -f /System/Libr << 
 92     endif                                      << 
 93     ifneq ($(OGLPATH),)                        << 
 94       OGLLIBS := -F$(OGLPATH)/.. -framework Op << 
 95     else                                       << 
 96       OGLLIBS := -L$(OGLHOME)/lib -lGL         << 
 97     endif                                      << 
 98   endif                                        << 
 99   ifndef OGLLIBS                               << 
100     OGLPATH  := $(shell test -f /Library/Frame << 
101     ifneq ($(OGLPATH),/Library/Frameworks/Open << 
102       OGLPATH  := $(shell test -f /System/Libr << 
103     endif                                      << 
104     ifneq ($(OGLPATH),)                        << 
105       DARWIN_VERSION = $(shell uname -r | sed      97       DARWIN_VERSION = $(shell uname -r | sed 's/\([0-9]*\).[0-9]*.[0-9]*/\1/')
106       ifeq ($(DARWIN_VERSION),9)                   98       ifeq ($(DARWIN_VERSION),9)
107         # the following lines are for building     99         # the following lines are for building on MacOSX 10.5 "Leopard"
108         OGLLIBS := -Wl,$(OGLPATH)/Libraries/li << 100         OGLLIBS := -Wl,$(QTGLPATH)/Versions/A/Libraries/libGL.dylib -L$(OGLHOME)/lib -lGLU -lGL
109       else                                        101       else
110         # the following lines are for building    102         # the following lines are for building on MacOSX > 10.5
111         OGLLIBS := -F$(OGLPATH)/.. -framework  << 103         OGLLIBS := -F/System/Library/Frameworks -framework OpenGL -framework AGL 
                                                   >> 104         ifeq ($(G4VIS_USE_OPENGLX),1)
                                                   >> 105           OGLLIBS += -L$(OGLHOME)/lib -lGLU -lGL
                                                   >> 106         endif
112       endif                                       107       endif
113     else                                          108     else
114       OGLLIBS := -L$(OGLHOME)/lib -lGL         << 109       OGLLIBS := -L$(OGLHOME)/lib -lGLU -lGL
115     endif                                         110     endif
116   endif                                           111   endif
117                                                   112 
118 # ---- Qt Setup block ------------------------    113 # ---- Qt Setup block -------------------------------------------------------
119                                                   114 
120   ifndef QTHOME                                   115   ifndef QTHOME
121     QTHOME := /Library/Frameworks                 116     QTHOME := /Library/Frameworks
122   endif                                           117   endif
123   ifndef QT_VERSION                            << 
124     QT_VERSION := 5                            << 
125   endif                                        << 
126   ifeq ($(QTHOME),/Library/Frameworks)            118   ifeq ($(QTHOME),/Library/Frameworks)
127     ifndef QTMOC                                  119     ifndef QTMOC
128       QTMOC      := /usr/bin/moc                  120       QTMOC      := /usr/bin/moc
129     endif                                         121     endif
130     ifndef QTFLAGS                                122     ifndef QTFLAGS
131       QTFLAGS   := -I $(QTHOME)/QtCore.framewo << 123       QTFLAGS   := -I $(QTHOME)/QtCore.framework/Headers 
132       QTFLAGS   += -I $(QTHOME)/QtGui.framewor << 124       QTFLAGS   += -I $(QTHOME)/QtGui.framework/Headers 
133       QTFLAGS   += -I $(QTHOME)/QtWidgets.fram << 
134       QTFLAGS   += -I $(QTHOME)/QtOpenGL.frame    125       QTFLAGS   += -I $(QTHOME)/QtOpenGL.framework/Headers
135       QTFLAGS   += -I $(QTHOME)/Qt3DCore.frame << 
136       QTFLAGS   += -I $(QTHOME)/Qt3DExtras.fra << 
137       QTFLAGS   += -I $(QTHOME)/Qt3DRender.fra << 
138       ifeq ($(QT_VERSION),6)                   << 
139         QTFLAGS   += -I $(QTHOME)/QtOpenGLWidg << 
140       endif                                    << 
141       QTFLAGS   += -I $(QTHOME)/include/Qt -I$    126       QTFLAGS   += -I $(QTHOME)/include/Qt -I$(QTHOME)/include
142     endif                                         127     endif
143     ifndef QTLIBPATH                              128     ifndef QTLIBPATH
144       QTLPATH  := $(QTHOME)                       129       QTLPATH  := $(QTHOME)
145     endif                                         130     endif
146     QTLIBPATH  := -F$(QTLPATH)                    131     QTLIBPATH  := -F$(QTLPATH)
147     QT_AS_FRAMEWORK := $(shell test -d $(QTLPA    132     QT_AS_FRAMEWORK := $(shell test -d $(QTLPATH)/QtCore.framework && echo yes)
148     ifndef QTLIBS                                 133     ifndef QTLIBS
149       ifdef QT_AS_FRAMEWORK                       134       ifdef QT_AS_FRAMEWORK
150         QTLIBS    := $(QTLIBPATH) -framework Q    135         QTLIBS    := $(QTLIBPATH) -framework QtCore -framework QtGui
151       else                                        136       else
152         QTLIBS    := -L$(QTLPATH) -lQtCore -lQ    137         QTLIBS    := -L$(QTLPATH) -lQtCore -lQtGui
153       endif                                       138       endif   
154     endif                                         139     endif
155     ifndef QT3DLIBS                            << 
156       ifdef QT_AS_FRAMEWORK                    << 
157         QT3DLIBS  := $(QTLIBPATH) -framework Q << 
158         QT3DLIBS  += -framework QtWidgets -fra << 
159       else                                     << 
160         QT3DLIBS  := -L$(QTLPATH) -lQtCore -lQ << 
161         QT3DLIBS  += -lQtWidgets -lQt3DCore -l << 
162       endif                                    << 
163     endif                                      << 
164     ifndef GLQTLIBS                               140     ifndef GLQTLIBS  
165       ifdef QT_AS_FRAMEWORK                       141       ifdef QT_AS_FRAMEWORK
166         GLQTLIBS  := $(QTLIBPATH) -framework Q << 142         GLQTLIBS    := $(QTLIBPATH) -framework QtCore -framework QtGui
167         ifeq ($(QT_VERSION),6)                 << 143         GLQTLIBS    += -framework QtOpenGL
168           GLQTLIBS += -framework QtOpenGLWidge << 
169         endif                                  << 
170       else                                        144       else
171         GLQTLIBS  := -L$(QTLPATH) -lQtCore -lQ << 145         GLQTLIBS    := -L$(QTLPATH) -lQtCore -lQtGui -lQtOpenGL
172         ifeq ($(QT_VERSION),6)                 << 
173           GLQTLIBS += -lQtOpenGLWidgets        << 
174         endif                                  << 
175       endif                                       146       endif   
176     endif                                         147     endif
177   else                                            148   else
178     ifndef QTMOC                                  149     ifndef QTMOC
179       QTMOC      := $(QTHOME)/bin/moc             150       QTMOC      := $(QTHOME)/bin/moc
180     endif                                         151     endif
181     QTLPATH  := $(QTHOME)/lib                     152     QTLPATH  := $(QTHOME)/lib
182     ifndef QTFLAGS                             << 153     ifndef QTFLAGS                          # Qt5
183       QTFLAGS   := -I $(QTLPATH)/QtCore.framew    154       QTFLAGS   := -I $(QTLPATH)/QtCore.framework/Headers 
184       QTFLAGS   += -I $(QTLPATH)/QtGui.framewo    155       QTFLAGS   += -I $(QTLPATH)/QtGui.framework/Headers 
185       QTFLAGS   += -I $(QTLPATH)/QtWidgets.fra    156       QTFLAGS   += -I $(QTLPATH)/QtWidgets.framework/Headers
186       QTFLAGS   += -I $(QTLPATH)/QtOpenGL.fram    157       QTFLAGS   += -I $(QTLPATH)/QtOpenGL.framework/Headers
187       QTFLAGS   += -I $(QTLPATH)/Qt3DCore.fram << 158       QTFLAGS   += -I $(QTLPATH)/QtPrintSupport.framework/Headers
188       QTFLAGS   += -I $(QTLPATH)/Qt3DExtras.fr << 
189       QTFLAGS   += -I $(QTLPATH)/Qt3DRender.fr << 
190       ifeq ($(QT_VERSION),6)                   << 
191         QTFLAGS   += -I $(QTHOME)/QtOpenGLWidg << 
192       endif                                    << 
193       QTFLAGS   += -I $(QTHOME)/include/Qt -I$    159       QTFLAGS   += -I $(QTHOME)/include/Qt -I$(QTHOME)/include
194     endif                                         160     endif
195     ifndef QTLIBS                                 161     ifndef QTLIBS
196        QTLIBS    := -F$(QTLPATH) -framework Qt    162        QTLIBS    := -F$(QTLPATH) -framework QtCore -framework QtGui
197        QTLIBS    += -framework QtWidgets       << 163        QTLIBS    += -framework QtWidgets -framework QtPrintSupport
198     endif                                      << 
199     ifndef QT3DLIBS                            << 
200        QT3DLIBS    := -F$(QTLPATH) -framework  << 
201        QT3DLIBS    += -framework QtWidgets     << 
202        QT3DLIBS    += -framework Qt3DCore -fra << 
203     endif                                         164     endif   
204     ifndef GLQTLIBS                               165     ifndef GLQTLIBS  
205       GLQTLIBS    := -F$(QTLPATH) -framework Q    166       GLQTLIBS    := -F$(QTLPATH) -framework QtCore -framework QtGui
206       GLQTLIBS    += -framework QtWidgets         167       GLQTLIBS    += -framework QtWidgets
207       GLQTLIBS    += -framework QtOpenGL       << 168       GLQTLIBS    += -framework QtOpenGL -framework QtPrintSupport
208       ifeq ($(QT_VERSION),6)                   << 
209         GLQTLIBS  += -framework QtOpenGLWidget << 
210       endif                                    << 
211     endif                                         169     endif   
212   endif                                           170   endif
213                                                   171 
214 #------ Wt Setup block -----------------------    172 #------ Wt Setup block ------------------------------------------------------
215                                                   173 
216   ifndef WTHOME                                   174   ifndef WTHOME
217     WTHOME := /usr                                175     WTHOME := /usr
218   endif                                           176   endif
219   WTFLAGS := -I$(WTHOME)/include/boost -I$(WTH    177   WTFLAGS := -I$(WTHOME)/include/boost -I$(WTHOME)/include -DQT_NO_KEYWORDS 
220   WTLIBS  := -L$(WTHOME)/lib -lwt -lwtext -lwt    178   WTLIBS  := -L$(WTHOME)/lib -lwt -lwtext -lwthttp  -lboost_signals  -L/usr/lib -lz -lssl -lcrypto
221                                                   179 
222 #---------------------------------------------    180 #----------------------------------------------------------------------------
223                                                   181 
224   define build-granular-shared-lib                182   define build-granular-shared-lib
225     @libdir=`(cd $(@D);/bin/pwd)`; \              183     @libdir=`(cd $(@D);/bin/pwd)`; \
226      cd $(G4TMPDIR); \                            184      cd $(G4TMPDIR); \
227      $(CXX) -Wl,-w -dynamiclib -single_module  << 185      $(CXX) -dynamiclib -single_module -undefined dynamic_lookup \
228          -o $$libdir/$(@F) $(INTYLIBS) *.o        186          -o $$libdir/$(@F) $(INTYLIBS) *.o
229   endef                                           187   endef
230   define build-global-shared-lib                  188   define build-global-shared-lib
231     @libdir=`(cd $(@D);/bin/pwd)`; \              189     @libdir=`(cd $(@D);/bin/pwd)`; \
232      cd $(G4TMP)/$(G4SYSTEM); \                   190      cd $(G4TMP)/$(G4SYSTEM); \
233      $(CXX) -Wl,-w -dynamiclib -single_module  << 191      $(CXX) -dynamiclib -single_module -undefined dynamic_lookup \
234          -o $$libdir/$(@F) $(INTYLIBS) $(forea    192          -o $$libdir/$(@F) $(INTYLIBS) $(foreach dir,$(SUBLIBS),$(dir)/*.o);
235   endef                                           193   endef
236                                                   194 
237 endif                                             195 endif