Import Geant4 9.2.0 source tree
This commit is contained in:
+33
-10
@@ -1,15 +1,16 @@
|
||||
# $Id: G4UI_USE.gmk,v 1.9 2007/10/03 12:15:05 lgarnier Exp $
|
||||
# $Id: G4UI_USE.gmk,v 1.14 2008/12/08 17:31:14 gbarrand Exp $
|
||||
# -------------------------------------------------------------
|
||||
# GNUmakefile for CPPFLAGS for interfaces USE phase.
|
||||
# John Allison, 6th July 1998.
|
||||
|
||||
########################### interfaces/basic #######################
|
||||
ifndef G4UI_USE_INCLUDED
|
||||
G4UI_USE_INCLUDED = 1
|
||||
|
||||
ifndef G4UI_NONE
|
||||
|
||||
UILIBS :=
|
||||
ifndef G4UI_USE_INCLUDED
|
||||
G4UI_USE_INCLUDED = 1
|
||||
|
||||
ifndef UILIBS
|
||||
UILIBS :=
|
||||
endif
|
||||
|
||||
# Sessions not needing external packages or libraries. These
|
||||
# libraries are always built (see G4UI_BUILD.gmk) and linked so the
|
||||
@@ -80,15 +81,37 @@ ifdef G4UI_USE_WIN32
|
||||
CPPFLAGS += -DG4UI_USE_WIN32
|
||||
endif
|
||||
|
||||
########################### interfaces/XVT - not currently implemented #####
|
||||
ifdef G4UI_USE_OSC
|
||||
CPPFLAGS += -DG4UI_USE_OSC
|
||||
ifneq (,$(findstring WIN32-VC,$(G4SYSTEM)))
|
||||
# need a syntax that both g++ and CL.exe understand :
|
||||
G4OSC_TMP_1 := $(shell echo "`osc-config --g4lab_incs`")
|
||||
CPPFLAGS += $(patsubst /I%,-I"%",$(G4OSC_TMP_1))
|
||||
else
|
||||
CPPFLAGS += $(shell osc-config --g4lab_incs)
|
||||
endif
|
||||
INTYLIBS += $(shell osc-config --g4lab_libs)
|
||||
INTYLIBS += $(shell osc-config --iv_libs)
|
||||
#
|
||||
ifndef G4ANALYSIS_AIDA_CONFIG_CFLAGS
|
||||
ifneq (,$(findstring WIN32-VC,$(G4SYSTEM)))
|
||||
# need a syntax that both g++ and CL.exe understand :
|
||||
G4OSC_TMP_2 := $(shell echo "`aida-config --include`")
|
||||
G4ANALYSIS_AIDA_CONFIG_CFLAGS := $(patsubst /I%,-I"%",$(G4OSC_TMP_2))
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
##################### Default to TERMINAL if no environment variables set ##
|
||||
##################### (No need actually to use it - see above.) ############
|
||||
|
||||
ifndef G4UI_USE
|
||||
G4UI_USE = 1
|
||||
CPPFLAGS += -DG4UI_USE_TERMINAL
|
||||
endif
|
||||
|
||||
endif #G4UI_NONE
|
||||
########################### and finally... #######################
|
||||
|
||||
G4UI_USE = 1
|
||||
CPPFLAGS += -DG4UI_USE
|
||||
|
||||
endif # G4UI_USE_INCLUDED
|
||||
endif # G4UI_NONE
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# $Id: G4VIS_USE.gmk,v 1.23 2007/10/03 12:15:05 lgarnier Exp $
|
||||
# $Id: G4VIS_USE.gmk,v 1.24 2008/04/30 10:40:12 lgarnier Exp $
|
||||
# -------------------------------------------------------------
|
||||
# GNUmakefile for CPPFLAGS for visualization USE phase.
|
||||
# John Allison, 24th January 1998.
|
||||
@@ -59,7 +59,10 @@ endif
|
||||
ifdef G4VIS_USE_OPENGLQT
|
||||
G4VIS_USE_OPENGL = 1
|
||||
CPPFLAGS += -DG4VIS_USE_OPENGLQT
|
||||
VISLIBS += -lG4OpenGL
|
||||
INC_GL = 1
|
||||
INC_QT = 1
|
||||
LOAD_GLQT = 1
|
||||
endif
|
||||
ifdef G4VIS_USE_OPENGLWIN32
|
||||
G4VIS_USE_OPENGL = 1
|
||||
|
||||
+105
-1
@@ -1,4 +1,4 @@
|
||||
$Id: History,v 1.310 2007/12/11 13:20:28 gcosmo Exp $
|
||||
cvs log $Id: History,v 1.344 2008/12/09 11:20:58 gcosmo Exp $
|
||||
-------------------------------------------------------------------
|
||||
|
||||
=========================================================
|
||||
@@ -16,6 +16,99 @@ committal in the CVS repository !
|
||||
* Reverse chronological order (last date on top), please *
|
||||
----------------------------------------------------------
|
||||
|
||||
9th December 2008 Guy Barrand (config-V09-01-17)
|
||||
- G4UI_USE.gmk: corrected G4UI_USE_OSC to use $(shell ...) instead
|
||||
of direct backquoting to solve a tricky env expansion problem,
|
||||
restricted to the Open-Scientist setup.
|
||||
|
||||
8th December 2008 John Allison (config-V09-01-16)
|
||||
- G4UI_USE.gmk: added -DG4UI_USE to CPPFLAGS. Re-ordered G4UI_NONE
|
||||
and G4UI_USE_INCLUDED blocks to be coherent with G4VIS_USE.gmk.
|
||||
|
||||
4th December 2008 Laurent Garnier (config-V09-01-15)
|
||||
- Darwin.gmk: fixed mistake in setting of OGLLIBS for Leopard.
|
||||
|
||||
4th December 2008 Gabriele Cosmo, Ben Morgan (config-V09-01-14)
|
||||
- Linux-g++.gmk: implemented temporary workaround to allow for automatic
|
||||
detection of location in non-POSIX paths for X11 and GL libraries depending
|
||||
on 32/64 bits architectures.
|
||||
|
||||
3rd December 2008 Gabriele Cosmo (config-V09-01-13)
|
||||
- Define $FIND, $SORT, $TOUCH variables to be customised with absolute
|
||||
path in WIN32-VC in order to pick up correct Cygwin toolset.
|
||||
|
||||
1st December 2008 Ben Morgan (config-V09-01-12)
|
||||
- Darwin-g++.gmk, Linux-g++.gmk: corrected definition of temporary QT3_MT
|
||||
by adding missing protection.
|
||||
|
||||
24th November 2008 Laurent Garnier (config-V09-01-11)
|
||||
- interactivity.gmk: changed flags for OpenGL and QT.
|
||||
- Darwin-g++.gmk, Linux-g++.gmk, WIN32-VC.gmk: major update to Qt setup.
|
||||
- Darwin.gmk: automatically detect GLLIBS for Leopard.
|
||||
- moc.gmk: suppressed echo when compiling.
|
||||
|
||||
14th November 2008 Gabriele Cosmo (config-V09-01-10)
|
||||
- Added "electromagnetic/adjoint" sub-module in binmake.gmk.
|
||||
|
||||
6th November 2008 Gabriele Cosmo (config-V09-01-09)
|
||||
- Added "particles/adjoint" sub-module in binmake.gmk.
|
||||
|
||||
23rd October 2008 Gabriele Cosmo (config-V09-01-08)
|
||||
- Added "persistency/ascii" sub-module in binmake.gmk.
|
||||
|
||||
11th July 2008 Gabriele Cosmo (config-V09-01-07)
|
||||
- architecture.gmk: removed obsoled DOM library from GDMLIBS.
|
||||
|
||||
12th June 2008 Gabriele Cosmo (config-V09-01-06)
|
||||
- Linux-g++.gmk: added G4OPTDEBUG flag for "-O2 -g" combined compilation.
|
||||
- AIX-xlC.gmk: added shared libs section as for Linux-g++ according to user
|
||||
suggestion on HN.
|
||||
|
||||
9th June 2008 Gabriele Cosmo (config-V09-01-05)
|
||||
- Integrated improvements to Qt setup and AIDA.
|
||||
Restored Qt libs setup to include GL as default.
|
||||
|
||||
20th May 2008 Gunter Folger (config-V09-01-04)
|
||||
- liblist.c: removed C++ style comments.
|
||||
- Not including changes made after "config-V09-01-03 ".
|
||||
|
||||
13th May 2008 Guy Barrand
|
||||
- G4UI_USE.gmk: added material (protected with G4UI_USE_OSC) to use osc_vis
|
||||
binary kits built with the Geant4 drivers. It allows to use the G4Lab::UIOnX
|
||||
G4 session in Geant4 (G4Lab::UIOnX allows for visualization and AIDA plotting
|
||||
within the same GUI).
|
||||
- analysis.gmk: added default setup aida-config for flags
|
||||
G4ANALYSIS_AIDA_CONFIG_CFLAGS and G4ANALYSIS_AIDA_CONFIG_LIBS.
|
||||
|
||||
30th April 2008 Laurent Garnier
|
||||
- common.gmk: simplified Qt moc files integration.
|
||||
- moc.gmk: new configuration file for Qt moc files setup.
|
||||
- G4UI_USE, G4VIS_USE, interactivity, sys/*: separation of Qt with or
|
||||
without OpenGL.
|
||||
|
||||
3rd April 2008 Gabriele Cosmo (config-V09-01-03)
|
||||
- Linux-icc.gmk: updated setup to make use of icc-10.1 and ifort-10.1;
|
||||
changed compilation option "-mp" to more performant "-fp_model precise".
|
||||
|
||||
2nd April 2008 Gunter Folger (config-V09-01-02)
|
||||
- Replaced gets() by safer fgets() in liblist.c.
|
||||
(this tag does not include latest changes in interactivity.gmk)
|
||||
|
||||
18th March 2008 Laurent Garnier
|
||||
- interactivity.gmk: moved Qt setup before X11.
|
||||
|
||||
21st February 2008 Gabriele Cosmo (config-V09-01-01)
|
||||
- Replaced g77 with gfortran for Linux-g++ and Linux-icc platforms.
|
||||
|
||||
15th February 2008 Laurent Garnier
|
||||
- common.gmk: added ability to autogenerate moc files for Qt driver.
|
||||
- WIN32-VC: added flags to build Qt driver on Windows.
|
||||
- Darwin-g++, Linux-g++: improvements for autogeneration of MOC files for Qt.
|
||||
|
||||
15th January 2008 Gabriele Cosmo (config-V09-01-00)
|
||||
- Added commented lines for OpenGL setup in Darwin-g++.gmk for MacOS
|
||||
10.5 Leopard, pending fix from Apple.
|
||||
|
||||
11th December 2007 Gabriele Cosmo (config-V09-00-12)
|
||||
- Corrected setup for GDML on WIN32-VC to allow for building DLLs.
|
||||
|
||||
@@ -51,6 +144,17 @@ committal in the CVS repository !
|
||||
10th October 2007 Gunter Folger (config-V09-00-05)
|
||||
- Added "incl" (Liege cascade) hadronic model module to binmake.gmk.
|
||||
|
||||
|
||||
3th October 2007 Laurent Garnier
|
||||
- Added setup for Qt in those files :
|
||||
- config/G4UI_BUILD.gmk
|
||||
- config/G4UI_USE.gmk
|
||||
- config/G4VIS_BUILD.gmk
|
||||
- config/G4VIS_USE.gmk
|
||||
- config/interactivity.gmk
|
||||
- config/sys/Darwin-g++.gmk
|
||||
- config/sys/Linux-g++.gmk
|
||||
|
||||
16th August 2007 Gabriele Cosmo (config-V09-00-04)
|
||||
- Corrected definition of OUT internal variable to allow for proper
|
||||
linking also of unit tests.
|
||||
|
||||
@@ -7,6 +7,22 @@ ANALYSISLIBS :=
|
||||
|
||||
ifdef G4ANALYSIS_USE
|
||||
CPPFLAGS += -DG4ANALYSIS_USE
|
||||
ifndef G4ANALYSIS_AIDA_CONFIG_CFLAGS
|
||||
ifneq (,$(findstring WIN32-VC,$(G4SYSTEM)))
|
||||
# The "aida-config --include" for VC may return information
|
||||
# by using the Windows /I syntax which is not understood
|
||||
# by "g++ -M" used by the Geant4 make system to get dependencies.
|
||||
# Then we transform to use the -I syntax which is understood by
|
||||
# both g++ and CL.exe compilers :
|
||||
G4ANALYSIS_TMP := $(shell echo "`aida-config --include`")
|
||||
G4ANALYSIS_AIDA_CONFIG_CFLAGS := $(patsubst /I%,-I"%",$(G4ANALYSIS_TMP))
|
||||
else
|
||||
G4ANALYSIS_AIDA_CONFIG_CFLAGS := `aida-config --include`
|
||||
endif
|
||||
endif
|
||||
ifndef G4ANALYSIS_AIDA_CONFIG_LIBS
|
||||
G4ANALYSIS_AIDA_CONFIG_LIBS := `aida-config --lib`
|
||||
endif
|
||||
CPPFLAGS += $(G4ANALYSIS_AIDA_CONFIG_CFLAGS)
|
||||
ANALYSISLIBS += $(G4ANALYSIS_AIDA_CONFIG_LIBS)
|
||||
endif
|
||||
|
||||
+17
-5
@@ -1,4 +1,4 @@
|
||||
# $Id: architecture.gmk,v 1.114 2007/12/11 13:20:29 gcosmo Exp $
|
||||
# $Id: architecture.gmk,v 1.118 2008/12/17 13:36:23 gcosmo Exp $
|
||||
# ------------------------------------------------------------------------
|
||||
# GEANT 4 - Architecture configuration script for GNU Make
|
||||
#
|
||||
@@ -15,9 +15,9 @@
|
||||
#
|
||||
# Linux-g++ Linux (Red Hat Enterprise/SCL4), gcc-3.4.6 (default)
|
||||
#
|
||||
# SUN-CC SunOS 5.8, CC 5.5
|
||||
# Darwin-g++ MacOSX 10.5, gcc-4.0.1
|
||||
#
|
||||
# WIN32-VC Windows/XP and Microsoft Visual C++ 8.0
|
||||
# WIN32-VC Windows/XP and Microsoft Visual C++ 9.0
|
||||
# Adding CYGWIN32 tools
|
||||
# -------------------------------------------------------------------------
|
||||
|
||||
@@ -269,9 +269,9 @@ ifneq ($(G4LIB_BUILD_GDML),)
|
||||
endif
|
||||
ifndef GDMLLIBS
|
||||
ifneq (,$(findstring WIN32-VC,$(G4SYSTEM)))
|
||||
GDMLLIBS := $(LIB_PATH)$(XERCESCROOT)/lib xerces-depdom_2.lib xerces-c_2.lib
|
||||
GDMLLIBS := $(LIB_PATH)$(XERCESCROOT)/lib xerces-c.lib
|
||||
else
|
||||
GDMLLIBS := -L$(XERCESCROOT)/lib -lxerces-depdom -lxerces-c
|
||||
GDMLLIBS := -L$(XERCESCROOT)/lib -lxerces-c
|
||||
endif
|
||||
endif
|
||||
CPPFLAGS += $(GDMLFLAGS)
|
||||
@@ -308,6 +308,18 @@ CAT := cat
|
||||
#
|
||||
SED := sed
|
||||
|
||||
# Default find used with source/GNUmakefile. Changed for WIN32.
|
||||
#
|
||||
FIND := find
|
||||
|
||||
# Default sort used with source/GNUmakefile. Changed for WIN32.
|
||||
#
|
||||
SORT := sort
|
||||
|
||||
# Default touch used with source/GNUmakefile. Changed for WIN32.
|
||||
#
|
||||
TOUCH := touch
|
||||
|
||||
# Include architecture dependent setups...
|
||||
#
|
||||
include $(G4INSTALL)/config/sys/$(G4SYSTEM).gmk
|
||||
|
||||
+5
-2
@@ -1,4 +1,4 @@
|
||||
# $Id: binmake.gmk,v 1.135 2007/11/22 14:08:10 gcosmo Exp $
|
||||
# $Id: binmake.gmk,v 1.139 2008/12/03 13:35:36 gcosmo Exp $
|
||||
# ----------------------------------------------------------
|
||||
# Script defining rules and paths for making binaries.
|
||||
# First implementation: Gabriele Cosmo, 25/06/1998.
|
||||
@@ -53,6 +53,7 @@ ifndef INCFLAGS
|
||||
-I$(G4BASE)/materials/include \
|
||||
-I$(G4BASE)/parameterisations/gflash/include \
|
||||
-I$(G4BASE)/particles/management/include \
|
||||
-I$(G4BASE)/particles/adjoint/include \
|
||||
-I$(G4BASE)/particles/bosons/include \
|
||||
-I$(G4BASE)/particles/leptons/include \
|
||||
-I$(G4BASE)/particles/hadrons/barions/include \
|
||||
@@ -69,6 +70,7 @@ ifndef INCFLAGS
|
||||
-I$(G4BASE)/processes/optical/include \
|
||||
-I$(G4BASE)/processes/transportation/include \
|
||||
-I$(G4BASE)/processes/parameterisation/include \
|
||||
-I$(G4BASE)/processes/electromagnetic/adjoint/include \
|
||||
-I$(G4BASE)/processes/electromagnetic/standard/include \
|
||||
-I$(G4BASE)/processes/electromagnetic/muons/include \
|
||||
-I$(G4BASE)/processes/electromagnetic/utils/include \
|
||||
@@ -143,6 +145,7 @@ ifndef INCFLAGS
|
||||
-I$(G4BASE)/digits_hits/digits/include \
|
||||
-I$(G4BASE)/digits_hits/scorer/include \
|
||||
-I$(G4BASE)/digits_hits/utils/include \
|
||||
-I$(G4BASE)/persistency/ascii/include \
|
||||
-I$(G4BASE)/persistency/gdml/include \
|
||||
-I$(G4BASE)/persistency/mctruth/include \
|
||||
-I$(G4BASE)/readout/include \
|
||||
@@ -367,7 +370,7 @@ $(G4TMPDIR)/exe/obj.last: lib $(objects)
|
||||
else
|
||||
$(G4TMPDIR)/exe/obj.last: $(objects)
|
||||
endif
|
||||
@touch $@
|
||||
@$(TOUCH) $@
|
||||
|
||||
# Make the $(G4TARGET).$(TARGOBJEXT) file.
|
||||
$(G4TMPDIR)/exe/$(G4TARGET).$(TARGOBJEXT) : $(G4TARGET).cc
|
||||
|
||||
+12
-4
@@ -1,18 +1,25 @@
|
||||
# $Id: common.gmk,v 1.43 2007/06/28 14:33:38 gcosmo Exp $
|
||||
# $Id: common.gmk,v 1.53 2008/12/03 13:35:36 gcosmo Exp $
|
||||
# ----------------------------------------------------------------
|
||||
# Common part of GNUmakefile for libraries. John Allison, 5/7/95.
|
||||
# ----------------------------------------------------------------
|
||||
# Libraries are created according to G4SYSTEM. G.Cosmo, 11/6/96.
|
||||
# Introduced G4LIBDIR and G4TMPDIR. G.Cosmo, 23/6/98.
|
||||
# Introduced Qt moc rule, L.Garnier 15/2/08.
|
||||
|
||||
ifndef G4LIBDIR
|
||||
G4LIBDIR := $(G4LIB)/$(G4SYSTEM)
|
||||
endif
|
||||
G4TMPDIR := $(G4TMP)/$(G4SYSTEM)/$(name)
|
||||
|
||||
sources := $(wildcard src/*.cc)
|
||||
objects := $(patsubst src/%.cc,$(G4TMPDIR)/%.o,$(sources))
|
||||
sources := $(wildcard src/*.cc)
|
||||
dependencies := $(patsubst src/%.cc,$(G4TMPDIR)/%.d,$(sources))
|
||||
objects := $(patsubst src/%.cc,$(G4TMPDIR)/%.o,$(sources))
|
||||
|
||||
ifneq ($(G4INTY_BUILD_QT),)
|
||||
sources += $(moc_sources)
|
||||
dependencies += $(moc_dependencies)
|
||||
objects += $(moc_objects)
|
||||
endif
|
||||
|
||||
g4libraries_to_build :=
|
||||
ifeq ($(G4LIB_NO_SHARED),)
|
||||
@@ -59,6 +66,7 @@ $(G4LIBDIR)/lib$(name).a: $(G4TMPDIR)/obj.last
|
||||
ranlib $(G4LIBDIR)/lib$(name).a ; fi ; fi
|
||||
endif
|
||||
|
||||
|
||||
###############################################################################
|
||||
#
|
||||
# Actual targets for .o, .d files
|
||||
@@ -80,7 +88,7 @@ obj: $(G4TMPDIR)/obj.last
|
||||
|
||||
# Touch the versioning file
|
||||
$(G4TMPDIR)/obj.last: $(objects)
|
||||
@touch $@
|
||||
@$(TOUCH) $@
|
||||
|
||||
# Make the .d file(s) and include it(them).
|
||||
|
||||
|
||||
@@ -23,6 +23,18 @@ ifdef LOAD_IV
|
||||
INTYLIBS += $(OIVLIBS)
|
||||
endif
|
||||
|
||||
########################### Qt ###############################
|
||||
# Should be before X11.
|
||||
ifdef INC_QT
|
||||
CPPFLAGS += $(QTFLAGS)
|
||||
endif
|
||||
ifdef LOAD_QT
|
||||
INTYLIBS += $(QTLIBS)
|
||||
endif
|
||||
ifdef LOAD_GLQT
|
||||
INTYLIBS += $(GLQTLIBS)
|
||||
endif
|
||||
|
||||
########################### OpenGL ###############################
|
||||
|
||||
ifdef INC_GL
|
||||
@@ -55,6 +67,7 @@ ifdef LOAD_XAW
|
||||
INTYLIBS += $(XAWLIBS)
|
||||
endif
|
||||
|
||||
|
||||
ifdef INC_X11
|
||||
CPPFLAGS += $(X11FLAGS)
|
||||
endif
|
||||
@@ -62,14 +75,6 @@ ifdef LOAD_X11
|
||||
INTYLIBS += $(X11LIBS)
|
||||
endif
|
||||
|
||||
########################### Qt ###################
|
||||
|
||||
ifdef INC_QT
|
||||
CPPFLAGS += $(QTFLAGS)
|
||||
endif
|
||||
ifdef LOAD_QT
|
||||
INTYLIBS += $(QTLIBS)
|
||||
endif
|
||||
|
||||
########################### and finally... #######################
|
||||
|
||||
|
||||
+23
-3
@@ -1,4 +1,4 @@
|
||||
/* $Id: liblist.c,v 1.19 2007/07/18 14:21:15 gcosmo Exp $ */
|
||||
/* $Id: liblist.c,v 1.21 2008/05/20 13:33:34 gunter Exp $ */
|
||||
|
||||
/*
|
||||
Given a "libname.map" file on standard input and a list or directory
|
||||
@@ -199,8 +199,18 @@ int main (int argc, char** argv) {
|
||||
while (!feof(stdin))
|
||||
{
|
||||
/* Get library name... */
|
||||
gets(buffer);
|
||||
fgets(buffer,BUFSIZE,stdin);
|
||||
if(feof(stdin)) break;
|
||||
if (strlen(buffer) >= BUFSIZE-1)
|
||||
{
|
||||
fprintf(stderr,
|
||||
" Internal ERROR: BUFSIZE too small to read library name map file\n");
|
||||
exit(1);
|
||||
}
|
||||
/* discarded trailing \n, as gets() was doing */
|
||||
if ( buffer[strlen(buffer)-1] == '\n')
|
||||
{ buffer[strlen(buffer)-1]='\0'; }
|
||||
|
||||
ptr=strtok(buffer,":\n");
|
||||
|
||||
/* Check for duplicate names... */
|
||||
@@ -251,7 +261,17 @@ int main (int argc, char** argv) {
|
||||
if(!optm)
|
||||
{
|
||||
/* Get directory name... */
|
||||
gets(buffer);
|
||||
fgets(buffer,BUFSIZE,stdin);
|
||||
if (strlen(buffer) >= BUFSIZE-1)
|
||||
{
|
||||
fprintf(stderr,
|
||||
" Internal ERROR: BUFSIZE too small to read directory name\n");
|
||||
exit(1);
|
||||
}
|
||||
/* discarded trailing \n, as gets() was doing */
|
||||
if ( buffer[strlen(buffer)-1] == '\n')
|
||||
{ buffer[strlen(buffer)-1]='\0'; }
|
||||
|
||||
ptr=strtok(buffer,"/");
|
||||
if(!ptr)
|
||||
{
|
||||
|
||||
@@ -0,0 +1,62 @@
|
||||
# $Id: moc.gmk,v 1.3 2008/12/03 13:35:36 gcosmo Exp $
|
||||
# ----------------------------------------------------------------
|
||||
# Common part of GNUmakefile for libraries. John Allison, 5/7/95.
|
||||
# ----------------------------------------------------------------
|
||||
# Libraries are created according to G4SYSTEM. G.Cosmo, 11/6/96.
|
||||
# Introduced G4LIBDIR and G4TMPDIR. G.Cosmo, 23/6/98.
|
||||
# Introduced Qt moc rule, L.Garnier 16/2/08.
|
||||
|
||||
ifndef G4LIBDIR
|
||||
G4LIBDIR := $(G4LIB)/$(G4SYSTEM)
|
||||
endif
|
||||
G4TMPDIR := $(G4TMP)/$(G4SYSTEM)/$(name)
|
||||
|
||||
ifneq ($(G4INTY_BUILD_QT),)
|
||||
moc_inc := $(shell ($(GREP) -l "Q_OBJECT" include/*.hh))
|
||||
moc_sources := $(patsubst include/%.hh, moc/%_moc.cc, $(moc_inc))
|
||||
moc_objects := $(patsubst moc/%_moc.cc,$(G4TMPDIR)/%_moc.o,$(moc_sources))
|
||||
moc_dependencies := $(patsubst moc/%_moc.cc,$(G4TMPDIR)/%_moc.d,$(moc_sources))
|
||||
endif
|
||||
|
||||
|
||||
###############################################################################
|
||||
#
|
||||
# Actual moc files for Qt files
|
||||
#
|
||||
# moc sources and headers: used for Qt signal/slot
|
||||
# - all headers which use signals/slots have the macro "Q_OBJECT" present
|
||||
# in the class definitions; these all need to be processed by the
|
||||
# "meta object compiler (moc)" which generates extra source code to
|
||||
# implement the signal/slots, i.e., if "foo.h" contains the token "Q_OBJECT"
|
||||
# it will be used by moc to generate the file "foo_moc.cpp" (the _moc. is
|
||||
# just an arbitrary extension to make it easier to identify sources
|
||||
# generated by moc).
|
||||
|
||||
|
||||
ifneq ($(G4INTY_BUILD_QT),)
|
||||
$(G4TMPDIR)/%_moc.d: moc/%_moc.cc
|
||||
@echo Making dependency for moc file $< ...
|
||||
@if [ ! -d $(G4TMPDIR) ] ; then mkdir -p $(G4TMPDIR) ;fi
|
||||
@set -e;\
|
||||
g++ $(GPPFLAGS) $(CPPFLAGS) -w -xc++ $< |\
|
||||
sed 's!$*\.o!$(G4TMPDIR)/& $@!' >$@;\
|
||||
[ -s $@ ] || rm -f $@
|
||||
|
||||
moc/%_moc.cc: include/%.hh
|
||||
@echo Making moc file for $< ...
|
||||
@if [ ! -d moc ] ; then mkdir -p moc ;fi
|
||||
@if [ `$(QTMOC) -v 2>&1 | $(GREP) "Qt 3" | wc -l ` -gt 0 ]; then \
|
||||
$(QTMOC) -o $@ $<;\
|
||||
else $(QTMOC) $(MOC_MACRO) -o $@ $<; \
|
||||
fi;
|
||||
|
||||
# could be better if we not duplicate this rule from common.gmk...
|
||||
$(G4TMPDIR)/%_moc.o: moc/%_moc.cc
|
||||
@echo Compiling $*.cc ...
|
||||
ifdef CPPVERBOSE
|
||||
@echo Compiling moc file $*.cc ...
|
||||
$(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(OUT_OBJ)$(G4TMPDIR)/$(*F)_moc.o moc/$*_moc.cc
|
||||
else
|
||||
@$(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(OUT_OBJ)$(G4TMPDIR)/$(*F)_moc.o moc/$*_moc.cc
|
||||
endif
|
||||
endif
|
||||
+34
-11
@@ -383,13 +383,6 @@ setenv OIVHOME "$g4vis_oivhome"
|
||||
echo "On this machine the OIVHOME=\$OIVHOME"
|
||||
endif
|
||||
|
||||
#+
|
||||
if ( X$g4_qthome != X ) then
|
||||
setenv QTHOME "$g4_qthome"
|
||||
echo "On this machine the QTHOME=\$QTHOME"
|
||||
endif
|
||||
|
||||
|
||||
|
||||
#+
|
||||
if ( X$g4vis_build_openglxm_driver != X ) then
|
||||
@@ -428,6 +421,36 @@ echo "On this machine the XAWLIBS=\$XAWLIBS"
|
||||
endif
|
||||
|
||||
|
||||
#
|
||||
# Qt Flags and Libs, messy, but needed for backward compatibility
|
||||
#+
|
||||
if ( "X$g4ui_build_qt_session" == "Xy" || "X$g4ui_use_qt" == "Xy" ) then
|
||||
setenv QTFLAGS "$g4_qt_cxxflags"
|
||||
setenv QTLIBS "$g4_qt_libs"
|
||||
setenv QTMOC "$g4_qt_moc"
|
||||
echo "On this machine the QTFLAGS=\$QTFLAGS"
|
||||
echo "On this machine the QTLIBS=\$QTLIBS"
|
||||
echo "On this machine the QTMOC=\$QTMOC"
|
||||
endif
|
||||
|
||||
if ( "X$g4vis_build_openglqt_driver" == "Xy" || "X$g4vis_build_openglqt_driver" == "Xy" ) then
|
||||
if ( "X\$QTFLAGS" == "X" ) then
|
||||
setenv QTFLAGS "$g4_qt_cxxflags $g4_qt_gl_cxxflags"
|
||||
else
|
||||
setenv QTFLAGS "\$QTFLAGS $g4_qt_gl_cxxflags"
|
||||
endif
|
||||
if ( "X\$QTMOC" == "X" ) then
|
||||
setenv QTMOC "$g4_qt_moc"
|
||||
endif
|
||||
setenv GLQTLIBS "$g4_qt_libs $g4_qt_gl_libs"
|
||||
echo "On this machine the QTFLAGS=\$QTFLAGS"
|
||||
echo "On this machine the GLQTLIBS=\$GLQTLIBS"
|
||||
echo "On this machine the QTMOC=\$QTMOC"
|
||||
endif
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#
|
||||
# Use GDML module
|
||||
@@ -553,7 +576,7 @@ echo ''
|
||||
|
||||
if ( ${?LD_LIBRARY_PATH} ) then
|
||||
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${G4LIB}/${G4SYSTEM}
|
||||
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${CLHEP_BASE_DIR}/lib
|
||||
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${CLHEP_LIB_DIR}
|
||||
|
||||
if ( ${?G4LIB_BUILD_GDML} ) then
|
||||
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${XERCESCROOT}/lib
|
||||
@@ -561,7 +584,7 @@ endif
|
||||
|
||||
else
|
||||
setenv LD_LIBRARY_PATH ${G4LIB}/${G4SYSTEM}
|
||||
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${CLHEP_BASE_DIR}/lib
|
||||
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${CLHEP_LIB_DIR}
|
||||
|
||||
if ( ${?G4LIB_BUILD_GDML} ) then
|
||||
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${XERCESCROOT}/lib
|
||||
@@ -578,7 +601,7 @@ if ( "X$G4SYSTEM" == "XDarwin-g++" ) then
|
||||
if ( ${?G4LIB_BUILD_SHARED} ) then
|
||||
if ( ${?DYLD_LIBRARY_PATH} ) then
|
||||
setenv DYLD_LIBRARY_PATH ${DYLD_LIBRARY_PATH}:${G4LIB}/${G4SYSTEM}
|
||||
setenv DYLD_LIBRARY_PATH ${DYLD_LIBRARY_PATH}:${CLHEP_BASE_DIR}/lib
|
||||
setenv DYLD_LIBRARY_PATH ${DYLD_LIBRARY_PATH}:${CLHEP_LIB_DIR}
|
||||
|
||||
if ( ${?G4LIB_BUILD_GDML} ) then
|
||||
setenv DYLD_LIBRARY_PATH ${DYLD_LIBRARY_PATH}:${XERCESCROOT}/lib
|
||||
@@ -586,7 +609,7 @@ endif
|
||||
|
||||
else
|
||||
setenv DYLD_LIBRARY_PATH ${G4LIB}/${G4SYSTEM}
|
||||
setenv DYLD_LIBRARY_PATH ${DYLD_LIBRARY_PATH}:${CLHEP_BASE_DIR}/lib
|
||||
setenv DYLD_LIBRARY_PATH ${DYLD_LIBRARY_PATH}:${CLHEP_LIB_DIR}
|
||||
|
||||
if ( ${?G4LIB_BUILD_GDML} ) then
|
||||
setenv DYLD_LIBRARY_PATH ${DYLD_LIBRARY_PATH}:${XERCESCROOT}/lib
|
||||
|
||||
+59
-22
@@ -523,14 +523,6 @@ echo "On this machine the OIVHOME=\$OIVHOME"
|
||||
fi
|
||||
fi
|
||||
|
||||
#+
|
||||
if [ X$g4_qthome != X ] ; then
|
||||
QTHOME=$g4_qthome
|
||||
export QTHOME
|
||||
if [ X\$g4non_display = X ] ; then
|
||||
echo "On this machine the QTHOME=\$QTHOME"
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
#+
|
||||
@@ -588,6 +580,45 @@ fi
|
||||
fi
|
||||
|
||||
|
||||
#
|
||||
# Qt Flags and Libs, messy, but needed for backward compatibility
|
||||
#+
|
||||
if [ "X$g4ui_build_qt_session" = "Xy" -o "X$g4ui_use_qt" = "Xy" ] ; then
|
||||
QTFLAGS="$g4_qt_cxxflags"
|
||||
QTLIBS="$g4_qt_libs"
|
||||
QTMOC="$g4_qt_moc"
|
||||
export QTFLAGS
|
||||
export QTLIBS
|
||||
export QTMOC
|
||||
if test "x\$g4non_display" = "x" ; then
|
||||
echo "On this machine the QTFLAGS=\$QTFLAGS"
|
||||
echo "On this machine the QTLIBS=\$QTLIBS"
|
||||
echo "On this machine the QTMOC=\$QTMOC"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "X$g4vis_build_openglqt_driver" = "Xy" -o "X$g4vis_build_openglqt_driver" = "Xy" ] ; then
|
||||
if [ "X\$QTFLAGS" = "X" ] ; then
|
||||
QTFLAGS="$g4_qt_cxxflags $g4_qt_gl_cxxflags"
|
||||
else
|
||||
QTFLAGS="\$QTFLAGS $g4_qt_gl_cxxflags"
|
||||
fi
|
||||
if [ "X\$QTMOC" = "X" ] ; then
|
||||
QTMOC="$g4_qt_moc"
|
||||
fi
|
||||
GLQTLIBS="$g4_qt_libs $g4_qt_gl_libs"
|
||||
export QTFLAGS
|
||||
export QTMOC
|
||||
export GLQTLIBS
|
||||
if test "x\$g4non_display" = "x" ; then
|
||||
echo "On this machine the QTFLAGS=\$QTFLAGS"
|
||||
echo "On this machine the GLQTLIBS=\$GLQTLIBS"
|
||||
echo "On this machine the QTMOC=\$QTMOC"
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
||||
#
|
||||
# Use GDML module
|
||||
#
|
||||
@@ -595,13 +626,17 @@ fi
|
||||
if [ X$g4lib_build_gdml = Xy ] ; then
|
||||
G4LIB_BUILD_GDML=1
|
||||
export G4LIB_BUILD_GDML
|
||||
if test "x\$g4non_display" = "x" ; then
|
||||
echo "On this machine the G4LIB_BUILD_GDML=\$G4LIB_BUILD_GDML"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ X$g4lib_build_gdml = Xy ] ; then
|
||||
XERCESCROOT=$g4gdml_xercesc_root
|
||||
export XERCESCROOT
|
||||
if test "x\$g4non_display" = "x" ; then
|
||||
echo "On this machine the XERCESCROOT=\$XERCESCROOT"
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
@@ -743,21 +778,23 @@ fi
|
||||
#
|
||||
if [ $G4LIB_BUILD_SHARED ] ; then
|
||||
#
|
||||
# Warning about LD_LIBRARY_PATH
|
||||
# Warning about LD_LIBRARY_PATH unless g4non_display is set!
|
||||
#
|
||||
echo ''
|
||||
echo 'LD_LIBRARY_PATH is set to include CLHEP and Geant4 libraries. '
|
||||
echo ''
|
||||
echo 'NOTE : verify that the correct path for the CLHEP library'
|
||||
echo '- $CLHEP_BASE_DIR/lib - is included in the $LD_LIBRARY_PATH'
|
||||
echo 'variable in your environment, and no other outdated installations'
|
||||
echo 'of CLHEP are by chance referenced through $LD_LIBRARY_PATH and'
|
||||
echo 'present in your system !'
|
||||
echo ''
|
||||
if test "x\$g4non_display" = "x" ; then
|
||||
echo ''
|
||||
echo 'LD_LIBRARY_PATH is set to include CLHEP and Geant4 libraries. '
|
||||
echo ''
|
||||
echo 'NOTE : verify that the correct path for the CLHEP library'
|
||||
echo '- $CLHEP_BASE_DIR/lib - is included in the $LD_LIBRARY_PATH'
|
||||
echo 'variable in your environment, and no other outdated installations'
|
||||
echo 'of CLHEP are by chance referenced through $LD_LIBRARY_PATH and'
|
||||
echo 'present in your system !'
|
||||
echo ''
|
||||
fi
|
||||
|
||||
if [ $LD_LIBRARY_PATH ] ; then
|
||||
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${G4LIB}/${G4SYSTEM}
|
||||
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${CLHEP_BASE_DIR}/lib
|
||||
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${CLHEP_LIB_DIR}
|
||||
|
||||
if [ $G4LIB_BUILD_GDML ] ; then
|
||||
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${XERCESCROOT}/lib
|
||||
@@ -766,7 +803,7 @@ export LD_LIBRARY_PATH
|
||||
|
||||
else
|
||||
LD_LIBRARY_PATH=${G4LIB}/${G4SYSTEM}
|
||||
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${CLHEP_BASE_DIR}/lib
|
||||
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${CLHEP_LIB_DIR}
|
||||
|
||||
if [ $G4LIB_BUILD_GDML ] ; then
|
||||
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${XERCESCROOT}/lib
|
||||
@@ -784,7 +821,7 @@ if test "X$G4SYSTEM" = "XDarwin-g++" ; then
|
||||
if [ $G4LIB_BUILD_SHARED ] ; then
|
||||
if [ $DYLD_LIBRARY_PATH ] ; then
|
||||
DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH}:${G4LIB}/${G4SYSTEM}
|
||||
DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH}:${CLHEP_BASE_DIR}/lib
|
||||
DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH}:${CLHEP_LIB_DIR}
|
||||
|
||||
if [ $G4LIB_BUILD_GDML ] ; then
|
||||
DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH}:${XERCESCROOT}/lib
|
||||
@@ -793,7 +830,7 @@ fi
|
||||
export DYLD_LIBRARY_PATH
|
||||
else
|
||||
DYLD_LIBRARY_PATH=${G4LIB}/${G4SYSTEM}
|
||||
DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH}:${CLHEP_BASE_DIR}/lib
|
||||
DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH}:${CLHEP_LIB_DIR}
|
||||
|
||||
if [ $G4LIB_BUILD_GDML ] ; then
|
||||
DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH}:${XERCESCROOT}/lib
|
||||
|
||||
@@ -279,7 +279,7 @@ if [ X$g4ui_build_qt_session = Xy ] ; then
|
||||
G4UI_BUILD_QT_SESSION=1
|
||||
export G4UI_BUILD_QT_SESSION
|
||||
echo "On this machine the G4UI_BUILD_QT_SESSION=\$G4UI_BUILD_QT_SESSION"
|
||||
fi
|
||||
fi
|
||||
|
||||
#+
|
||||
if [ X$g4ui_use_qt = Xy ] ; then
|
||||
@@ -353,7 +353,7 @@ if [ X$g4vis_build_openglqt_driver = Xy ] ; then
|
||||
G4VIS_BUILD_OPENGLQT_DRIVER=1
|
||||
export G4VIS_BUILD_OPENGLQT_DRIVER
|
||||
echo "On this machine the G4VIS_BUILD_OPENGLQT_DRIVER=\$G4VIS_BUILD_OPENGLQT_DRIVER"
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
#+
|
||||
@@ -441,13 +441,6 @@ echo "On this machine the OIVHOME=\$OIVHOME"
|
||||
fi
|
||||
fi
|
||||
|
||||
#+
|
||||
if [ X$g4_qthome != X ] ; then
|
||||
QTHOME=$g4_qthome
|
||||
export QTHOME
|
||||
echo "On this machine the QTHOME=\$QTHOME"
|
||||
fi
|
||||
|
||||
|
||||
#+
|
||||
if [ X$g4vis_build_openglxm_driver != X ] ; then
|
||||
@@ -504,6 +497,44 @@ fi
|
||||
fi
|
||||
|
||||
|
||||
|
||||
# Qt Flags and Libs, messy, but needed for backward compatibility
|
||||
#+
|
||||
if [ "X$g4ui_build_qt_session" = "Xy" -o "X$g4ui_use_qt" = "Xy" ] ; then
|
||||
QTFLAGS="$g4_qt_cxxflags"
|
||||
QTLIBS="$g4_qt_libs"
|
||||
QTMOC="$g4_qt_moc"
|
||||
export QTFLAGS
|
||||
export QTLIBS
|
||||
export QTMOC
|
||||
if [ X\$g4non_display = X ] ; then
|
||||
echo "On this machine the QTFLAGS=\$QTFLAGS"
|
||||
echo "On this machine the QTLIBS=\$QTLIBS"
|
||||
echo "On this machine the QTMOC=\$QTMOC"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "X$g4vis_build_openglqt_driver" = "Xy" -o "X$g4vis_build_openglqt_driver" = "Xy" ] ; then
|
||||
if [ "X\$QTFLAGS" = "X" ] ; then
|
||||
QTFLAGS="$g4_qt_cxxflags $g4_qt_gl_cxxflags"
|
||||
else
|
||||
QTFLAGS="\$QTFLAGS $g4_qt_gl_cxxflags"
|
||||
fi
|
||||
if [ "X\$QTMOC" = "X" ] ; then
|
||||
QTMOC="$g4_qt_moc"
|
||||
fi
|
||||
GLQTLIBS="$g4_qt_libs $g4_qt_gl_libs"
|
||||
export QTFLAGS
|
||||
export QTMOC
|
||||
export GLQTLIBS
|
||||
if [ X\$g4non_display = X ] ; then
|
||||
echo "On this machine the QTFLAGS=\$QTFLAGS"
|
||||
echo "On this machine the GLQTLIBS=\$GLQTLIBS"
|
||||
echo "On this machine the QTMOC=\$QTMOC"
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
#
|
||||
# Use GDML module
|
||||
#
|
||||
|
||||
@@ -16,6 +16,7 @@ ifeq ($(G4SYSTEM),AIX-xlC)
|
||||
FC := xlf
|
||||
FCFLAGS += -qextname
|
||||
FCLIBS := -lxlf90 -lxlf
|
||||
SHEXT := so
|
||||
ifndef X11FLAGS
|
||||
X11FLAGS := -I/usr/include/X11/extensions -I/usr/include/X11
|
||||
endif
|
||||
@@ -42,10 +43,15 @@ ifeq ($(G4SYSTEM),AIX-xlC)
|
||||
endif
|
||||
|
||||
define build-granular-shared-lib
|
||||
@echo "Shared Libraries not supported on $(G4SYSTEM)
|
||||
@libdir=`(cd $(@D);/bin/pwd)`; \
|
||||
cd $(G4TMPDIR); \
|
||||
$(CXX) -G -o $$libdir/$(@F) $(INTYLIBS) *.o
|
||||
endef
|
||||
define build-global-shared-lib
|
||||
@echo "Shared Libraries not supported on $(G4SYSTEM)
|
||||
@libdir=`(cd $(@D);/bin/pwd)`; \
|
||||
cd $(G4TMP)/$(G4SYSTEM); \
|
||||
$(CXX) -r -G -o $$libdir/$(@F) $(INTYLIBS) \
|
||||
$(foreach dir, $(SUBLIBS), $(dir)/*.o);
|
||||
endef
|
||||
|
||||
endif
|
||||
|
||||
+65
-16
@@ -2,10 +2,12 @@
|
||||
# ------ MacOS-X ------
|
||||
# MacOS 10.3 gcc-3.3
|
||||
# MacOS 10.4 gcc-4.0
|
||||
# MacOS 10.5 gcc-4.0
|
||||
#
|
||||
# Original author: Helmut Burkhardt - CERN
|
||||
# Revisions: Guy Barrand - LAL
|
||||
# Gabriele Cosmo - CERN
|
||||
# Laurent Garnier - LAL
|
||||
#
|
||||
ifeq ($(G4SYSTEM),Darwin-g++)
|
||||
CXX := g++
|
||||
@@ -46,19 +48,6 @@ ifeq ($(G4SYSTEM),Darwin-g++)
|
||||
XMLIBS := -L/sw/lib -lXm -lXpm
|
||||
# XMLIBS := -L/usr/X11R6/lib -lXm -lXpm ##### some installations.
|
||||
endif
|
||||
ifndef QTHOME
|
||||
QTHOME := /sw
|
||||
endif
|
||||
ifndef QTFLAGS
|
||||
QTFLAGS := -I$(QTHOME)/include/Qt -I$(QTHOME)/include
|
||||
MOC := $(QTHOME)/bin/moc
|
||||
endif
|
||||
ifndef QTLIBS
|
||||
QT3LIBS := -L$(QTHOME)/lib -lqt-mt -lqui
|
||||
QT4LIBS := -F$(QTHOME)/lib -framework QtCore -framework QtGui
|
||||
QT4LIBS += -framework QtOpenGL -framework QtSql -framework QtXml
|
||||
QTLIBS := $(shell test -f $(QTHOME)/lib/Qt3Support.framework/Qt3Support && echo $(QT4LIBS) || echo $(QT3LIBS))
|
||||
endif
|
||||
ifndef XAWFLAGS
|
||||
XAWFLAGS := -I/sw/include
|
||||
# XAWFLAGS := -I/usr/X11R6/include ##### some installations.
|
||||
@@ -74,19 +63,79 @@ ifeq ($(G4SYSTEM),Darwin-g++)
|
||||
OGLFLAGS := -I$(OGLHOME)/include
|
||||
endif
|
||||
ifndef OGLLIBS
|
||||
OGLLIBS := -L$(OGLHOME)/lib -lGLU -lGL
|
||||
ifeq ($(shell uname -r | sed 's/\([0-9]*\).[0-9]*.[0-9]*/\1/'),9)
|
||||
# the following lines are for building on MacOSX 10.5 "Leopard"
|
||||
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")
|
||||
else
|
||||
OGLLIBS := -L$(OGLHOME)/lib -lGLU -lGL
|
||||
endif
|
||||
endif
|
||||
|
||||
# ---- QT Setup block -------------------------------------------------------
|
||||
ifndef QTHOME
|
||||
QTHOME := $(shell test -f /Library/Frameworks/Qt3Support.framework/Qt3Support && echo "/Library/Frameworks" || echo "/sw")
|
||||
endif
|
||||
ifndef QTMOC
|
||||
ifeq ($(QTHOME),/Library/Frameworks)
|
||||
QTMOC := /usr/bin/moc
|
||||
else
|
||||
QTMOC := $(QTHOME)/bin/moc
|
||||
endif
|
||||
endif
|
||||
|
||||
QT_VERSION := $(shell $(QTMOC) 2>&1 -v | sed 's/.* .Qt \([0-9]\)\..*/\1/' )
|
||||
|
||||
ifndef QTFLAGS
|
||||
ifeq ($(QT_VERSION),4)
|
||||
QTFLAGS := -I $(QTHOME)/QtCore.framework/Headers
|
||||
QTFLAGS += -I $(QTHOME)/QtGui.framework/Headers
|
||||
QTFLAGS += -I $(QTHOME)/QtOpenGL.framework/Headers
|
||||
else
|
||||
QTFLAGS := -I $(QTHOME)/include/Qt -I$(QTHOME)/include
|
||||
endif
|
||||
endif
|
||||
ifndef QTLIBPATH
|
||||
ifeq ($(QT_VERSION),3)
|
||||
QTLIBPATH := $(shell test -d $(QTHOME)/lib/qt3/lib && echo "/lib/qt3/lib" || echo "/lib" )
|
||||
else
|
||||
QTLIBPATH := -F$(QTHOME)
|
||||
endif
|
||||
endif
|
||||
ifndef QTLIBS
|
||||
ifeq ($(QT_VERSION),3)
|
||||
QTLIBS := -L$(QTHOME)$(QTLIBPATH)
|
||||
QT3_MT := $(shell ls $(QTHOME)$(QTLIBPATH)/libqt-mt.* 2>/dev/null | wc -l )
|
||||
ifneq ($(QT3_MT),0)
|
||||
QTLIBS += -lqt-mt
|
||||
else
|
||||
QTLIBS += -lqt
|
||||
endif
|
||||
QTLIBS += -lqui
|
||||
else
|
||||
QTLIBS := -framework QtCore -framework QtGui
|
||||
endif
|
||||
endif
|
||||
ifndef GLQTLIBS
|
||||
ifeq ($(QT_VERSION),3)
|
||||
# already done in QTLIBS
|
||||
# GLQTLIBS := $(QTLIBS)
|
||||
else
|
||||
GLQTLIBS := -F$(QTHOME) -framework QtCore -framework QtGui
|
||||
GLQTLIBS += -framework QtOpenGL
|
||||
endif
|
||||
endif
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
define build-granular-shared-lib
|
||||
@libdir=`(cd $(@D);/bin/pwd)`; \
|
||||
cd $(G4TMPDIR); \
|
||||
g++ -dynamiclib -single_module -undefined dynamic_lookup \
|
||||
$(CXX) -dynamiclib -single_module -lgcov -undefined dynamic_lookup \
|
||||
-o $$libdir/$(@F) $(INTYLIBS) *.o
|
||||
endef
|
||||
define build-global-shared-lib
|
||||
@libdir=`(cd $(@D);/bin/pwd)`; \
|
||||
cd $(G4TMP)/$(G4SYSTEM); \
|
||||
g++ -dynamiclib -single_module -undefined dynamic_lookup \
|
||||
$(CXX) -dynamiclib -single_module -lgcov -undefined dynamic_lookup \
|
||||
-o $$libdir/$(@F) $(INTYLIBS) $(foreach dir,$(SUBLIBS),$(dir)/*.o);
|
||||
endef
|
||||
|
||||
|
||||
+68
-18
@@ -30,6 +30,11 @@ ifeq ($(G4SYSTEM),Linux-g++)
|
||||
FCFLAGS += -pg
|
||||
CCFLAGS += -pg
|
||||
endif
|
||||
ifdef G4OPTDEBUG
|
||||
CXXFLAGS += -O2 -g
|
||||
FCFLAGS += -O2 -g
|
||||
CCFLAGS += -O2 -g
|
||||
endif
|
||||
ifdef G4LIB_BUILD_SHARED
|
||||
CXXFLAGS += -fPIC
|
||||
FCFLAGS += -fPIC
|
||||
@@ -37,16 +42,18 @@ ifeq ($(G4SYSTEM),Linux-g++)
|
||||
endif
|
||||
G4RUNPATHOPTION := -Wl,-rpath
|
||||
CC := gcc
|
||||
FC := g77
|
||||
FC := gfortran
|
||||
FCFLAGS += -fno-automatic -fno-backslash -fno-second-underscore
|
||||
FCLIBS := -lg2c -lnsl
|
||||
ECHO := /bin/echo -e
|
||||
SHEXT := so
|
||||
ECHO := /bin/echo -e
|
||||
SHEXT := so
|
||||
ARCH := $(shell uname -m | cut -s -d "_" -f 2)
|
||||
|
||||
ifndef X11FLAGS
|
||||
X11FLAGS := -I/usr/include/X11/extensions -I/usr/include/X11
|
||||
endif
|
||||
ifndef X11LIBS
|
||||
X11LIBS := -L/usr/X11R6/lib -lXmu -lXt -lXext -lX11 -lSM -lICE
|
||||
X11LIBS := -L/usr/X11R6/lib$(ARCH) -lXmu -lXt -lXext -lX11 -lSM -lICE
|
||||
endif
|
||||
ifndef XMFLAGS
|
||||
XMFLAGS := -I/usr/X11R6/include
|
||||
@@ -54,19 +61,6 @@ ifeq ($(G4SYSTEM),Linux-g++)
|
||||
ifndef XMLIBS
|
||||
XMLIBS := -lXm -lXpm
|
||||
endif
|
||||
ifndef QTHOME
|
||||
QTHOME := /usr/local/Qt
|
||||
endif
|
||||
ifndef QTFLAGS
|
||||
QTFLAGS := -I$(QTHOME)/include/Qt
|
||||
QTFLAGS += -I$(QTHOME)/include
|
||||
MOC := $(QTHOME)/bin/moc
|
||||
endif
|
||||
ifndef QTLIBS
|
||||
QT3LIBS := -L$(QTHOME)/lib -lqt-mt
|
||||
QT4LIBS := -L$(QTHOME)/lib -lQtCore -lQtGui -lQtOpenGL -lQtSql -lQtXml
|
||||
QTLIBS := $(shell test -f $(QTHOME)/lib/libQt3Support.so && echo $(QT4LIBS) || echo $(QT3LIBS))
|
||||
endif
|
||||
ifndef XAWFLAGS
|
||||
XAWFLAGS := -I/usr/X11R6/include
|
||||
endif
|
||||
@@ -78,8 +72,64 @@ ifeq ($(G4SYSTEM),Linux-g++)
|
||||
OGLFLAGS := -I$(OGLHOME)/include
|
||||
endif
|
||||
ifndef OGLLIBS
|
||||
OGLLIBS := -L$(OGLHOME)/lib -lGLU -lGL
|
||||
OGLLIBS := -L$(OGLHOME)/lib$(ARCH) -lGLU -lGL
|
||||
endif
|
||||
|
||||
# ---- QT Setup block -------------------------------------------------------
|
||||
ifndef QTHOME
|
||||
QTHOME := /usr
|
||||
endif
|
||||
ifndef QTMOC
|
||||
QTMOC := $(QTHOME)/bin/moc
|
||||
endif
|
||||
|
||||
QT_VERSION := $(shell $(QTMOC) 2>&1 -v | sed 's/.* .Qt \([0-9]\)\..*/\1/' )
|
||||
|
||||
ifndef QTFLAGS
|
||||
ifeq ($(QT_VERSION),4)
|
||||
QTFLAGS += -I$(QTHOME)/include/qt$(QT_VERSION)
|
||||
QTFLAGS += -I $(QTHOME)/include/qt$(QT_VERSION)/QtCore
|
||||
QTFLAGS += -I $(QTHOME)/include/qt$(QT_VERSION)/QtGui
|
||||
QTFLAGS += -I $(QTHOME)/include/qt$(QT_VERSION)/QtOpenGL
|
||||
else
|
||||
QTFLAGS := -I$(QTHOME)/include/qt$(QT_VERSION)/Qt
|
||||
QTFLAGS += -I$(QTHOME)/include/qt$(QT_VERSION)
|
||||
endif
|
||||
endif
|
||||
ifndef QTLIBPATH
|
||||
QT_SEARCH_LIB1 := $(shell ls $(QTHOME)/lib/qt$(QT_VERSION)/libq* 2>/dev/null | wc -l )
|
||||
QT_SEARCH_LIB2 := $(shell ls $(QTHOME)/lib/libq* 2>/dev/null | wc -l )
|
||||
ifneq ($(QT_SEARCH_LIB1),0)
|
||||
QTLIBPATH := /lib/qt$(QT_VERSION)
|
||||
endif
|
||||
ifneq ($(QT_SEARCH_LIB2),0)
|
||||
QTLIBPATH := /lib
|
||||
endif
|
||||
endif
|
||||
ifndef QTLIBS
|
||||
QTLIBS := -L$(QTHOME)$(QTLIBPATH)
|
||||
ifeq ($(QT_VERSION),3)
|
||||
QT3_MT := $(shell ls $(QTHOME)$(QTLIBPATH)/libqt-mt.* 2>/dev/null | wc -l )
|
||||
ifneq ($(QT3_MT),0)
|
||||
QTLIBS += -lqt-mt
|
||||
else
|
||||
QTLIBS += -lqt
|
||||
endif
|
||||
QTLIBS += -lqui
|
||||
else
|
||||
QTLIBS += -lQtCore -lQtGui
|
||||
endif
|
||||
endif
|
||||
ifndef GLQTLIBS
|
||||
ifeq ($(QT_VERSION),3)
|
||||
# already done in QTLIBS
|
||||
# GLQTLIBS := $(QTLIBS)
|
||||
else
|
||||
GLQTLIBS := -L$(QTHOME)$(QTLIBPATH) -lQtCore -lQtGui -lQtOpenGL
|
||||
endif
|
||||
endif
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
define build-granular-shared-lib
|
||||
@libdir=`(cd $(@D);/bin/pwd)`; \
|
||||
cd $(G4TMPDIR); \
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
#
|
||||
# ------ GNU/LINUX ------ Intel icc 9.1
|
||||
# ------ GNU/LINUX ------ Intel icc 10.1
|
||||
#
|
||||
ifeq ($(G4SYSTEM),Linux-icc)
|
||||
CXX := icc
|
||||
CXXFLAGS := -ansi -mp -no-gcc -w1
|
||||
CXXFLAGS := -ansi -fp-model precise -no-gcc -w1
|
||||
ifdef G4OPTIMISE
|
||||
CXXFLAGS += -O2
|
||||
FCFLAGS := -O2
|
||||
@@ -26,9 +26,9 @@ ifeq ($(G4SYSTEM),Linux-icc)
|
||||
CCFLAGS += -fPIC
|
||||
endif
|
||||
G4RUNPATHOPTION := -Wl,-rpath -Wl,
|
||||
CC := gcc
|
||||
FC := g77
|
||||
FCFLAGS += -fno-automatic -fno-backslash -fno-second-underscore
|
||||
CC := icc
|
||||
FC := ifort
|
||||
FCFLAGS += -noautomatic -assume nobscc -assume no2underscores
|
||||
FCLIBS := -lg2c -lnsl
|
||||
AR := ar r
|
||||
ECHO := /bin/echo -e
|
||||
|
||||
@@ -18,10 +18,13 @@ ifeq ($(G4SYSTEM),WIN32-VC)
|
||||
SHEXT := dll
|
||||
AR := LIB
|
||||
ECHO := /usr/bin/echo -e
|
||||
FIND := /usr/bin/find
|
||||
SORT := /usr/bin/sort
|
||||
GREP := /usr/bin/grep
|
||||
SED := /usr/bin/sed
|
||||
CAT := /usr/bin/cat
|
||||
CUT := /usr/bin/cut
|
||||
TOUCH := /usr/bin/touch
|
||||
|
||||
FC := g77
|
||||
# FCLIBS := -lf2c
|
||||
@@ -34,6 +37,32 @@ ifeq ($(G4SYSTEM),WIN32-VC)
|
||||
ifndef UI32LIBS
|
||||
UI32LIBS := gdi32.lib user32.lib
|
||||
endif
|
||||
ifndef QTHOME
|
||||
QTHOME := /usr
|
||||
endif
|
||||
ifndef QTFLAGS
|
||||
QTFLAGS := -I$(QTHOME)/include/Qt -I$(QTHOME)/include
|
||||
endif
|
||||
ifndef QTMOC
|
||||
QTMOC := $(QTHOME)/bin/moc
|
||||
endif
|
||||
|
||||
QT_VERSION := $(shell test -f $(QTHOME)/lib/Qt3Support4.lib && echo QT4 || echo QT3)
|
||||
|
||||
ifndef QTLIBS
|
||||
ifeq ($(QT_VERSION),QT3)
|
||||
QTLIBS := -L$(QTHOME)/lib -lqt-mt
|
||||
else
|
||||
QTLIBS := -L$(QTHOME)/lib QtCore4.lib QtGui4.lib
|
||||
endif
|
||||
endif
|
||||
ifndef GLQTLIBS
|
||||
ifeq ($(QT_VERSION),QT3)
|
||||
QTLIBS := -L$(QTHOME)/lib -lqt-mt
|
||||
else
|
||||
QTLIBS := -L$(QTHOME)/lib QtCore4.lib QtGui4.lib QtOpenGL4.lib
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# Building DLLs (G.Barrand)
|
||||
|
||||
Reference in New Issue
Block a user