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

Last change on this file since 980 was 921, checked in by garnier, 17 years ago

en test de gl2ps. Problemes de libraries

File size: 4.0 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
[921]56 X11LIBS := -L/usr/X11R6/lib$(ARCH) -lXmu -lXt -lXext -lX11 -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 ifndef XAWFLAGS
65 XAWFLAGS := -I/usr/X11R6/include
66 endif
67 ifndef XAWLIBS
68 XAWLIBS := -lXaw
69 endif
70 DLDLIBS := -ldl
71 ifndef OGLFLAGS
72 OGLFLAGS := -I$(OGLHOME)/include
73 endif
74 ifndef OGLLIBS
75 OGLLIBS := -L$(OGLHOME)/lib$(ARCH) -lGLU -lGL
76 endif
[893]77
78# ---- QT Setup block -------------------------------------------------------
[606]79 ifndef QTHOME
[865]80 QTHOME := /usr
[606]81 endif
[726]82 ifndef QTMOC
[758]83 QTMOC := $(QTHOME)/bin/moc
[726]84 endif
[865]85
[875]86 QT_VERSION := $(shell $(QTMOC) 2>&1 -v | sed 's/.* .Qt \([0-9]\)\..*/\1/' )
[865]87
[875]88 ifndef QTFLAGS
89 ifeq ($(QT_VERSION),4)
[886]90 QTFLAGS += -I$(QTHOME)/include/qt$(QT_VERSION)
91 QTFLAGS += -I $(QTHOME)/include/qt$(QT_VERSION)/QtCore
[875]92 QTFLAGS += -I $(QTHOME)/include/qt$(QT_VERSION)/QtGui
93 QTFLAGS += -I $(QTHOME)/include/qt$(QT_VERSION)/QtOpenGL
[865]94 else
[875]95 QTFLAGS := -I$(QTHOME)/include/qt$(QT_VERSION)/Qt
96 QTFLAGS += -I$(QTHOME)/include/qt$(QT_VERSION)
[865]97 endif
[606]98 endif
[875]99 ifndef QTLIBPATH
100 QT_SEARCH_LIB1 := $(shell ls $(QTHOME)/lib/qt$(QT_VERSION)/libq* 2>/dev/null | wc -l )
101 QT_SEARCH_LIB2 := $(shell ls $(QTHOME)/lib/libq* 2>/dev/null | wc -l )
102 ifneq ($(QT_SEARCH_LIB1),0)
103 QTLIBPATH := /lib/qt$(QT_VERSION)
104 endif
105 ifneq ($(QT_SEARCH_LIB2),0)
106 QTLIBPATH := /lib
107 endif
108 endif
[790]109 ifndef QTLIBS
[875]110 QTLIBS := -L$(QTHOME)$(QTLIBPATH)
111 ifeq ($(QT_VERSION),3)
[921]112 QT3_MT := $(shell ls $(QTHOME)$(QTLIBPATH)/libqt-mt.* 2>/dev/null | wc -l )
[875]113 ifneq ($(QT3_MT),0)
114 QTLIBS += -lqt-mt
115 else
116 QTLIBS += -lqt
117 endif
118 QTLIBS += -lqui
[865]119 else
[875]120 QTLIBS += -lQtCore -lQtGui
[865]121 endif
[790]122 endif
[875]123 ifndef GLQTLIBS
124 ifeq ($(QT_VERSION),3)
125 # already done in QTLIBS
126 # GLQTLIBS := $(QTLIBS)
127 else
128 GLQTLIBS := -L$(QTHOME)$(QTLIBPATH) -lQtCore -lQtGui -lQtOpenGL
129 endif
130 endif
[893]131#----------------------------------------------------------------------------
[875]132
[472]133 define build-granular-shared-lib
134 @libdir=`(cd $(@D);/bin/pwd)`; \
135 cd $(G4TMPDIR); \
136 $(CXX) -Wl,-soname,$(@F) -shared -o $$libdir/$(@F) $(INTYLIBS) *.o
137 endef
138 define build-global-shared-lib
139 @libdir=`(cd $(@D);/bin/pwd)`; \
140 cd $(G4TMP)/$(G4SYSTEM); \
141 $(CXX) -Wl,-soname,$(@F) -shared -o $$libdir/$(@F) $(INTYLIBS) \
142 $(foreach dir,$(SUBLIBS),$(dir)/*.o);
143 endef
144
145endif
Note: See TracBrowser for help on using the repository browser.