Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/config/sys/WIN32-VC.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/WIN32-VC.gmk (Version 11.3.0) and /config/sys/WIN32-VC.gmk (Version 3.2)


  1 #                                                 
  2 # ------ WIN32/VC ------    Visual Studio 2019    
  3 #                                                 
  4 ifeq ($(G4SYSTEM),WIN32-VC)                       
  5   CXX       := CL                                 
  6   ifdef G4OPTIMISE                                
  7     CXXFLAGS  += -Ox -MD                          
  8   else                                            
  9     ifdef G4DEBUG                                 
 10       CXXFLAGS  += -Od -MDd -Zi -Fd$(G4LIBDIR)    
 11     endif                                         
 12   endif                                           
 13   CXXFLAGS += -GR -EHsc -Zm200 -nologo -std:c+    
 14   CXXFLAGS += -D_CONSOLE -D_WIN32 -DOS            
 15   CPPFLAGS += -DWIN32 -DXPNET -D_CRT_SECURE_NO    
 16   LDFLAGS  += -FORCE /NODEFAULTLIB:MSVCRT.dll     
 17   LOADLIBS += legacy_stdio_definitions.lib        
 18                                                   
 19   SHEXT := dll                                    
 20   AR := LIB                                       
 21   ECHO := /usr/bin/echo -e                        
 22   FIND := /usr/bin/find                           
 23   SORT := /usr/bin/sort                           
 24   GREP := /usr/bin/grep                           
 25   SED  := /usr/bin/sed                            
 26   CAT  := /usr/bin/cat                            
 27   CUT  := /usr/bin/cut                            
 28   TOUCH := /usr/bin/touch                         
 29                                                   
 30   FC := g77                                       
 31 #  FCLIBS := -lf2c                                
 32   ifndef OGLFLAGS                                 
 33     OGLFLAGS  :=                                  
 34   endif                                           
 35   ifndef OGLLIBS                                  
 36     OGLLIBS   := opengl32.lib gdi32.lib user32    
 37   endif                                           
 38   ifndef UI32LIBS                                 
 39     UI32LIBS  := gdi32.lib user32.lib comctl32    
 40   endif                                           
 41   ifndef QTHOME                                   
 42     QTHOME   := /Qt                               
 43   endif                                           
 44   ifndef QT_VERSION                               
 45     QT_VERSION := 5                               
 46   endif                                           
 47   ifndef QTFLAGS                                  
 48     QTFLAGS  := -I$(QTHOME)/include               
 49     QTFLAGS  += -I$(QTHOME)/include/QtCore        
 50     QTFLAGS  += -I$(QTHOME)/include/QtGui         
 51     QTFLAGS  += -I$(QTHOME)/include/QtWidgets     
 52     QTFLAGS  += -I$(QTHOME)/include/QtOpenGL      
 53     ifeq ($(QT_VERSION),6)                        
 54       QTFLAGS   += -I $(QTHOME)/include/QtOpen    
 55     endif                                         
 56   endif                                           
 57   ifndef QTMOC                                    
 58     QTMOC    := $(QTHOME)/bin/moc                 
 59   endif                                           
 60   ifeq ($(QT_VERSION),5)       # Qt5              
 61     ifndef QTLIBS                                 
 62       QTLIBS   := $(LIB_PATH)$(QTHOME)/lib Qt5    
 63     ifndef GLQTLIBS                               
 64       GLQTLIBS := $(LIB_PATH)$(QTHOME)/lib Qt5    
 65     endif                                         
 66   else                         # Qt6              
 67     ifndef QTLIBS                                 
 68       QTLIBS   := $(LIB_PATH)$(QTHOME)/lib Qt6    
 69     ifndef GLQTLIBS                               
 70       GLQTLIBS := $(LIB_PATH)$(QTHOME)/lib Qt6    
 71     endif                                         
 72   endif                                           
 73 #                                                 
 74 # Building DLLs                                   
 75 # -------------                                   
 76 #  The commands below allow to build DLLs from    
 77 #  From a libG4xxx.a, will extract the symbols    
 78 #  which will produce a G4xxx.def file.           
 79 #  The G4xxx.def file will contain the list of    
 80 #  or made public for using the DLLs.             
 81 #  The source genwindef.cc is in the geant4/co    
 82 #  built during the library installation proce    
 83 #  $G4LIB/G4SYSTEM.                               
 84 #  If can also be built as follows :              
 85 #    DOS> cl.exe /Fegenwindef.exe genwindef.cc    
 86 #  Then, to use it :                              
 87 #    DOS> genwindef -o G4xxx.def -l G4xxx libG    
 88 #  Libraries libG4xxx.lib can also be built wi    
 89 #    DOS> lib /def:G4xxx.def /out:libG4xxx.lib    
 90 #  It also produces a libG4xxx.exp used to bui    
 91 #  The DLL can be built with :                    
 92 #    DOS> link /dll /out:G4xxx.dll libG4xxx.ex    
 93 #  Note that a DLL must be fully linked. You s    
 94 #  symbols as output of the link command.         
 95 #                                                 
 96   ifdef G4LIB_USE_CLHEP                           
 97     GLOBLIBS += libG4clhep.lib                    
 98   endif                                           
 99   ifdef G4LIB_USE_PTL                             
100     GLOBLIBS += libG4ptl.lib                      
101   endif                                           
102   define build-granular-shared-lib                
103     @libdir=`(cd $(@D);/bin/pwd)`;\               
104     cd $(G4TMP)/$(G4SYSTEM);\                     
105     $(ECHO) "Building $(name).def file ...";\     
106     $(RM) $(name).def;\                           
107     $(G4LIB)/$(G4SYSTEM)/genwindef.exe -o $(na    
108     $(ECHO) "Building lib$(name).exp and lib$(    
109     $(RM) $(G4LIBDIR)/lib$(name).exp;\            
110     $(RM) $(G4LIBDIR)/lib$(name).lib;\            
111     lib.exe /nologo /machine:x64 /def:$(name).    
112             /out:$(G4LIBDIR)/lib$(name).lib;\     
113     $(RM) $(G4LIBDIR)/$(name).dll;\               
114     $(ECHO) "Building $(name).dll file ...";\     
115     link.exe /nologo /machine:x64 /dll /out:$(    
116              $(G4LIBDIR)/lib$(name).exp $(G4LI    
117              $(LIB_PATH)$(G4LIBDIR) $(GLOBLIBS    
118              $(LIB_PATH)$(CLHEP_LIB_DIR) $(CLH    
119              $(LIB_PATH)$(PTL_LIB_DIR) $(PTL_L    
120              $(INTYLIBS) $(GDMLLIBS) $(ANALYSI    
121   endef                                           
122   define build-global-shared-lib                  
123     @libdir=`(cd $(@D);/bin/pwd)`;\               
124     cd $(G4TMP)/$(G4SYSTEM);\                     
125     $(ECHO) "Building $(name).def file ...";\     
126     $(RM) $(name).def;\                           
127     $(G4LIB)/$(G4SYSTEM)/genwindef.exe -o $(na    
128     $(ECHO) "Building lib$(name).exp and lib$(    
129     $(RM) $(G4LIBDIR)/lib$(name).exp;\            
130     $(RM) $(G4LIBDIR)/lib$(name).lib;\            
131     lib.exe /nologo /machine:x64 /def:$(name).    
132             /out:$(G4LIBDIR)/lib$(name).lib;\     
133     $(RM) $(G4LIBDIR)/$(name).dll;\               
134     $(ECHO) "Building $(name).dll ...";\          
135     link.exe /nologo /machine:x64 /dll /out:$(    
136              $(G4LIBDIR)/lib$(name).exp $(G4LI    
137              $(LIB_PATH)$(G4LIBDIR) $(GLOBLIBS    
138              $(LIB_PATH)$(CLHEP_LIB_DIR) $(CLH    
139              $(LIB_PATH)$(PTL_LIB_DIR) $(PTL_L    
140              $(INTYLIBS) $(GDMLLIBS) $(ANALYSI    
141   endef                                           
142 endif