source: trunk/config/sys/Linux-g++.gmk@ 1230

Last change on this file since 1230 was 1213, checked in by garnier, 16 years ago

Suppression de Xaw. Sauf dans Configure et les fichier G4UIXaw.hh et cc

File size: 4.3 KB
RevLine 
[472]1#
2# ------ GNU/LINUX ------ gcc 3.2 and higher
3#
4ifeq ($(G4SYSTEM),Linux-g++)
5 CXX := g++
6 CXXFLAGS := -W -Wall -ansi -pedantic -Wno-non-virtual-dtor -Wno-long-long
7 CXXFLAGS += -Wwrite-strings -Wpointer-arith -Woverloaded-virtual -pipe
8#
9# Uncomment the following options to activate Pentium4 chip specific
10# floating-point operations on the SSE unit. It will allow for more stable
11# results (no output differences between debug/optimised runs) and little
12# performance improvement (in the order of 2%).
13# NOTE: binaries built using these options will NOT be portable cross
14# platforms. Will only run on Pentium4-based architectures !
15#
16# CXXFLAGS += -march=pentium4 -mfpmath=sse
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
[865]33 ifdef G4OPTDEBUG
34 CXXFLAGS += -O2 -g
35 FCFLAGS += -O2 -g
36 CCFLAGS += -O2 -g
37 endif
[472]38 ifdef G4LIB_BUILD_SHARED
39 CXXFLAGS += -fPIC
40 FCFLAGS += -fPIC
41 CCFLAGS += -fPIC
42 endif
43 G4RUNPATHOPTION := -Wl,-rpath
44 CC := gcc
[758]45 FC := gfortran
[472]46 FCFLAGS += -fno-automatic -fno-backslash -fno-second-underscore
47 FCLIBS := -lg2c -lnsl
[921]48 ECHO := /bin/echo -e
49 SHEXT := so
50 ARCH := $(shell uname -m | cut -s -d "_" -f 2)
51
[472]52 ifndef X11FLAGS
53 X11FLAGS := -I/usr/include/X11/extensions -I/usr/include/X11
54 endif
55 ifndef X11LIBS
[994]56 X11LIBS := -L/usr/X11R6/lib$(ARCH) -lXmu -lXt -lXext -lX11 -lXi -lSM -lICE
[472]57 endif
58 ifndef XMFLAGS
59 XMFLAGS := -I/usr/X11R6/include
60 endif
61 ifndef XMLIBS
62 XMLIBS := -lXm -lXpm
63 endif
[921]64 DLDLIBS := -ldl
65 ifndef OGLFLAGS
66 OGLFLAGS := -I$(OGLHOME)/include
67 endif
68 ifndef OGLLIBS
69 OGLLIBS := -L$(OGLHOME)/lib$(ARCH) -lGLU -lGL
70 endif
[893]71
72# ---- QT Setup block -------------------------------------------------------
[606]73 ifndef QTHOME
[865]74 QTHOME := /usr
[606]75 endif
[726]76 ifndef QTMOC
[758]77 QTMOC := $(QTHOME)/bin/moc
[726]78 endif
[865]79
[875]80 QT_VERSION := $(shell $(QTMOC) 2>&1 -v | sed 's/.* .Qt \([0-9]\)\..*/\1/' )
[865]81
[875]82 ifndef QTFLAGS
83 ifeq ($(QT_VERSION),4)
[1030]84 QTFLAGS += -I$(QTHOME)/include
85 QTFLAGS += -I $(QTHOME)/include/QtCore
86 QTFLAGS += -I $(QTHOME)/include/QtGui
87 QTFLAGS += -I $(QTHOME)/include/QtOpenGL
[865]88 else
[1030]89 QTFLAGS := -I$(QTHOME)/include/Qt -I$(QTHOME)/include
[994]90
91 # If Qt is not located in the STANDARD path, try to find it in some
92 # other places.(Ex: for ubuntu 8.10)
[1030]93 QT_ALT1 := $(shell ls $(QTHOME)/include/qt$(QT_VERSION)/*.h 2>/dev/null | wc -l )
94 QT_ALT2 := $(shell ls $(QTHOME)/include/qt$(QT_VERSION)/Qt/*.h 2>/dev/null | wc -l )
[994]95 ifneq ($(QT_ALT1),0)
[1030]96 QTFLAGS := -I$(QTHOME)/include/qt$(QT_VERSION)
[994]97 endif
[1030]98 ifneq ($(QT_ALT2),0)
99 QTFLAGS := -I$(QTHOME)/include/qt$(QT_VERSION)/Qt
100 endif
[865]101 endif
[606]102 endif
[875]103 ifndef QTLIBPATH
104 QT_SEARCH_LIB1 := $(shell ls $(QTHOME)/lib/qt$(QT_VERSION)/libq* 2>/dev/null | wc -l )
105 QT_SEARCH_LIB2 := $(shell ls $(QTHOME)/lib/libq* 2>/dev/null | wc -l )
106 ifneq ($(QT_SEARCH_LIB1),0)
[994]107 QTLIBPATH := $(QTHOME)/lib/qt$(QT_VERSION)
[875]108 endif
109 ifneq ($(QT_SEARCH_LIB2),0)
[994]110 QTLIBPATH := $(QTHOME)/lib
[875]111 endif
112 endif
[790]113 ifndef QTLIBS
[994]114 QTLIBS := -L$(QTLIBPATH)
[875]115 ifeq ($(QT_VERSION),3)
[994]116 QT3_MT := $(shell ls $(QTLIBPATH)/libqt-mt.* 2>/dev/null | wc -l )
[875]117 ifneq ($(QT3_MT),0)
118 QTLIBS += -lqt-mt
119 else
120 QTLIBS += -lqt
121 endif
122 QTLIBS += -lqui
[865]123 else
[875]124 QTLIBS += -lQtCore -lQtGui
[865]125 endif
[790]126 endif
[875]127 ifndef GLQTLIBS
128 ifeq ($(QT_VERSION),3)
129 # already done in QTLIBS
130 # GLQTLIBS := $(QTLIBS)
131 else
[994]132 GLQTLIBS := -L$(QTLIBPATH) -lQtCore -lQtGui -lQtOpenGL
[875]133 endif
134 endif
[893]135#----------------------------------------------------------------------------
[875]136
[472]137 define build-granular-shared-lib
138 @libdir=`(cd $(@D);/bin/pwd)`; \
139 cd $(G4TMPDIR); \
140 $(CXX) -Wl,-soname,$(@F) -shared -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) -Wl,-soname,$(@F) -shared -o $$libdir/$(@F) $(INTYLIBS) \
146 $(foreach dir,$(SUBLIBS),$(dir)/*.o);
147 endef
148
149endif
Note: See TracBrowser for help on using the repository browser.