Salome HOME
Introducing check procedure for Fortran; correct compilation/linkage rules for Fortra...
[modules/smesh.git] / adm_local / unix / make_commence.in
1 # common directories to put headerfiles
2 inc_builddir=$(top_builddir)/include/salome
3
4 MODULE_NAME=@MODULE_NAME@
5
6 @SET_MAKE@
7 SHELL=/bin/sh
8
9 # header missing
10
11 HAVE_SSTREAM=@HAVE_SSTREAM@
12
13
14 LIBS=@LIBS@ 
15 LIBSFORBIN=@LIBS@
16 LDFLAGS=@LDFLAGS@ -L$(top_builddir)/lib@LIB_LOCATION_SUFFIX@/salome -Xlinker -rpath-link -Xlinker
17 LDFLAGSFORBIN=@LDFLAGS@ -L$(top_builddir)/lib@LIB_LOCATION_SUFFIX@/salome -Xlinker -rpath-link -Xlinker
18 # add libstdc++ to link c++ library with libtool !
19 LDFLAGS+= -lstdc++
20 LDFLAGSFORBIN+= -lstdc++
21
22 CP=@CP@
23
24 # CPP
25
26 CPP=@CPP@
27 CXXCPP=@CXXCPP@
28 CPPFLAGS=@CPPFLAGS@ -I$(inc_builddir) -I$(srcdir) -I.
29
30 # C
31
32 CC = @CC@
33 CFLAGS = @CFLAGS@
34 C_DEPEND_FLAG = @C_DEPEND_FLAG@
35
36 # C++
37
38 CXX = @CXX@
39 CXXFLAGS = @CXXFLAGS@
40 CXX_DEPEND_FLAG = @CXX_DEPEND_FLAG@
41
42 # FORTRAN
43
44 F77 = @F77@
45 FC = @FC@
46 FFLAGS = @FFLAGS@
47 FCFLAGS = @FCFLAGS@
48 FLIBS = @FLIBS@
49 FCLIBS = @FCLIBS@
50
51 # BOOST Library
52
53 BOOST_CPPFLAGS = @BOOST_CPPFLAGS@
54
55 # JAVA
56
57 JAVA_INCLUDES = @JAVA_INCLUDES@
58 JAVA_LIBS = @JAVA_LIBS@
59 JAVA_LDPATH = @JAVA_LDPATH@
60
61 # PYTHON
62
63 PYTHON = @PYTHON@
64 PYTHONHOME = @PYTHONHOME@
65 PYTHON_INCLUDES = @PYTHON_INCLUDES@
66 PYTHON_LIBS = @PYTHON_LIBS@
67 PYTHON_VERSION = @PYTHON_VERSION@
68 PYTHON_SITE = $(prefix)/lib@LIB_LOCATION_SUFFIX@/python$(PYTHON_VERSION)/site-packages
69 PYTHON_SITE_INSTALL = $(prefix)/lib@LIB_LOCATION_SUFFIX@/python$(PYTHON_VERSION)/site-packages/salome
70
71 # QT
72
73 QT_ROOT = @QT_ROOT@
74 QT_INCLUDES = @QT_INCLUDES@
75 QT_MT_INCLUDES = @QT_INCLUDES@ -DQT_THREAD_SUPPORT
76 QT_LIBS = @QT_LIBS@
77 QT_MT_LIBS = @QT_MT_LIBS@
78
79 MOC = @MOC@
80 UIC = @UIC@
81 MSG2QM = @MSG2QM@
82
83 #QWT
84
85 QWT_INCLUDES=@QWT_INCLUDES@
86 QWT_LIBS=@QWT_LIBS@
87
88 # SIP
89 SIP = @SIP@
90 SIP_INCLUDES = @SIP_INCLUDES@
91 SIP_LIBS = @SIP_LIBS@
92
93 # PYQT
94 PYQT_SIPS = @PYQT_SIPS@
95 PYQT_LIBS = @PYQT_LIBS@
96
97 # openGL
98 OGL_INCLUDES=@OGL_INCLUDES@
99 OGL_LIBS=@OGL_LIBS@
100
101 # VTK
102 VTK_INCLUDES=@VTK_INCLUDES@
103 VTK_LIBS=@VTK_LIBS@
104
105 # HDF5
106
107 HDF5_INCLUDES=@HDF5_INCLUDES@
108 HDF5_LIBS=@HDF5_LIBS@
109 HDF5_MT_LIBS=@HDF5_MT_LIBS@
110
111 # OpenCasCade
112
113 OCC_INCLUDES=@CAS_CPPFLAGS@
114 OCC_CXXFLAGS=@CAS_CXXFLAGS@
115
116 OCC_KERNEL_LIBS=@CAS_KERNEL@
117 OCC_OCAF_LIBS=@CAS_OCAF@
118 OCC_VIEWER_LIBS=@CAS_VIEWER@
119 OCC_MODELER_LIBS=@CAS_MODELER@
120 OCC_DATAEXCHANGE_LIBS=@CAS_DATAEXCHANGE@
121 OCC_LIBS=@CAS_LDFLAGS@
122 OCC_LDPATH=@CAS_LDPATH@
123
124 # MPICH
125
126 MPICH_INCLUDES=@MPICH_INCLUDES@
127 MPICH_LIBS=@MPICH_LIBS@
128
129 # Swig C++ Python
130
131 SWIG       = @SWIG@
132 SWIG_FLAGS = @SWIG_FLAGS@ -I$(inc_builddir) -I$(srcdir) -I.
133
134 # OMNIORB
135
136 OMNIORB_ROOT        = @OMNIORB_ROOT@
137 OMNIORB_INCLUDES    = @OMNIORB_INCLUDES@
138 OMNIORB_LIBS        = @OMNIORB_LIBS@
139 OMNIORB_CXXFLAGS    = @OMNIORB_CXXFLAGS@
140
141 OMNIORB_IDL         = @OMNIORB_IDL@
142 OMNIORB_IDLCXXFLAGS = @OMNIORB_IDLCXXFLAGS@
143 OMNIORB_IDLPYFLAGS  = @OMNIORB_IDLPYFLAGS@ -I$(top_srcdir)/idl -I$(top_builddir)/idl/salome \
144         -I$(KERNEL_ROOT_DIR)/idl/salome -I$(GEOM_ROOT_DIR)/idl/salome -I$(MED_ROOT_DIR)/idl/salome
145
146 OMNIORB_IDL_CLN_H   = @OMNIORB_IDL_CLN_H@
147 OMNIORB_IDL_CLN_CXX = @OMNIORB_IDL_CLN_CXX@
148 OMNIORB_IDL_CLN_OBJ = @OMNIORB_IDL_CLN_OBJ@
149
150 OMNIORB_IDL_SRV_H   = @OMNIORB_IDL_SRV_H@
151 OMNIORB_IDL_SRV_CXX = @OMNIORB_IDL_SRV_CXX@
152 OMNIORB_IDL_SRV_OBJ = @OMNIORB_IDL_SRV_OBJ@
153
154 # Default ORB
155
156 CORBA_ROOT        = @CORBA_ROOT@
157 CORBA_INCLUDES    = @CORBA_INCLUDES@
158 CORBA_LIBS        = @CORBA_LIBS@
159 CORBA_CXXFLAGS    = @CORBA_CXXFLAGS@
160
161 IDLCXXFLAGS = -bcxx @IDLCXXFLAGS@ -I$(top_srcdir)/idl -I$(top_builddir)/idl/salome \
162         -I$(KERNEL_ROOT_DIR)/idl/salome -I$(GEOM_ROOT_DIR)/idl/salome -I$(MED_ROOT_DIR)/idl/salome
163 IDLPYFLAGS  = @IDLPYFLAGS@
164
165 IDL = @IDL@
166
167 IDL_CLN_H   = @IDL_CLN_H@
168 IDL_CLN_CXX = @IDL_CLN_CXX@
169 IDL_CLN_OBJ = @IDL_CLN_OBJ@
170
171 IDL_SRV_H   = @IDL_SRV_H@
172 IDL_SRV_CXX = @IDL_SRV_CXX@
173 IDL_SRV_OBJ = @IDL_SRV_OBJ@
174
175 CPPFLAGS+= $(CORBA_INCLUDES) 
176 CXXFLAGS+= $(CORBA_CXXFLAGS)
177
178 # add corba libs when link salome application ! 
179 #LDFLAGS+= $(CORBA_LIBS)
180 LIBS+=$(CORBA_LIBS)
181
182 DOXYGEN = @DOXYGEN@
183 DOXYGEN_WITH_PYTHON = @DOXYGEN_WITH_PYTHON@
184 DOXYGEN_WITH_STL = @DOXYGEN_WITH_STL@
185
186 ## Shared libraries
187 LT_STATIC_EXEC=@LT_STATIC_EXEC@
188 DYNAMIC_DIRS=@DYNAMIC_DIRS@
189 LT_LIB=libtool
190 LT=$(top_builddir)/libtool
191 LT_COMPILE=$(LT) --mode=compile $(CC)
192 LT_LINK_LIB=$(LT_LIB) --mode=link $(CC) -rpath $(libdir)
193 LT_LINK_EXE=$(LT) --mode=link $(CC) $(LT_STATIC_EXEC) -dlopen self -rpath $(bindir) $(DYNAMIC_DIRS)
194 LT_RUN=$(LT) --mode=execute
195 LT_INSTALL_PROG=$(LT) --mode=install $(INSTALL_PROGRAM)
196 LT_INSTALL_LIB=$(LT) --mode=install $(INSTALL_DATA)
197 LT_UNINSTALL=$(LT) --mode=uninstall $(RM)
198
199 INSTALL=@INSTALL@
200 INSTALL_PROGRAM=@INSTALL_PROGRAM@
201 INSTALL_DATA=@INSTALL_DATA@
202
203 # create a symbolic link (or a copie ?)
204 LN_S=@LN_S@
205
206 KERNEL_ROOT_DIR=@KERNEL_ROOT_DIR@
207 KERNEL_SITE_DIR=@KERNEL_SITE_DIR@
208 KERNEL_LDFLAGS=@KERNEL_LDFLAGS@
209 KERNEL_CXXFLAGS=@KERNEL_CXXFLAGS@
210
211 GUI_ROOT_DIR=@GUI_ROOT_DIR@
212 GUI_LDFLAGS=@GUI_LDFLAGS@
213 GUI_CXXFLAGS=@GUI_CXXFLAGS@
214
215 MED_ROOT_DIR=@MED_ROOT_DIR@
216 MED_LDFLAGS=@MED_LDFLAGS@
217 MED_CXXFLAGS=@MED_CXXFLAGS@
218
219 GEOM_ROOT_DIR=@GEOM_ROOT_DIR@
220 GEOM_LDFLAGS=@GEOM_LDFLAGS@
221 GEOM_CXXFLAGS=@GEOM_CXXFLAGS@
222
223 ## Installation points
224 prefix=@prefix@
225 exec_prefix=@exec_prefix@
226 bindir=@exec_prefix@/bin/salome
227 libdir=@exec_prefix@/lib@LIB_LOCATION_SUFFIX@/salome
228 # warning : if user give this path in configure we could have salome/salome :-(
229 includedir=@includedir@/salome
230 datadir=@datadir@/salome
231 idldir=$(prefix)/idl/salome
232 sharedpydir=@exec_prefix@/lib@LIB_LOCATION_SUFFIX@/python$(PYTHON_VERSION)/site-packages/salome/shared_modules
233
234 docdir=${prefix}/doc/salome
235
236 #
237 # begin of package rules
238 #
239
240 .PHONY: all lib bin inc resources docs tests install uninstall dep depend depend_idl cleandep mostlyclean clean distclean
241
242 .SUFFIXES: .cxx .cc .c .f .o .lo .idl .py .i .ui .po .qm
243
244 all:
245         $(MAKE) inc
246         $(MAKE) depend_idl
247         $(MAKE) depend
248         $(MAKE) lib
249         $(MAKE) bin
250         $(MAKE) resources
251
252 #
253 # add target to build administrative files
254 #
255
256 Makefile: $(top_builddir)/config.status $(srcdir)/Makefile.in
257         cd $(top_builddir) ; ./config.status
258
259 LOCAL_MAKE = make_commence make_conclude make_omniorb
260
261 KERNEL_MAKE = make_module depend SALOMEconfig.h F77config.h sstream envScript
262
263 $(top_builddir)/config.status: $(top_srcdir)/configure \
264                                $(LOCAL_MAKE:%=$(top_srcdir)/adm_local/unix/%.in) \
265                                $(KERNEL_MAKE:%=$(KERNEL_ROOT_DIR)/salome_adm/unix/%.in)
266         cd $(top_builddir) ; ./config.status --recheck
267
268 # VPATH contain $(srcdir), so make configure is good in top_srcdir and we must add target configure otherwise :-)
269 ifneq ($(top_srcdir),$(srcdir))
270 configure: $(top_srcdir)/configure
271 endif
272
273 $(top_srcdir)/configure: $(top_srcdir)/configure.in $(top_srcdir)/aclocal.m4
274         cd $(top_srcdir) ; autoconf
275
276 $(top_srcdir)/configure.in: $(top_srcdir)/configure.in.base
277         cd $(top_srcdir) && ./build_configure
278
279
280 ACLOCAL_KERNEL = \
281     ac_cxx_bool.m4 \
282     check_corba.m4 \
283     ac_cxx_depend_flag.m4 \
284     check_hdf5.m4 \
285     enable_pthreads.m4 \
286     ac_cxx_mutable.m4 \
287     check_mico.m4 \
288     ac_cxx_namespaces.m4 \
289     check_omniorb.m4 \
290     pyembed.m4 \
291     ac_cxx_partial_specialization.m4 \
292     python.m4 \
293     ac_cxx_typename.m4 \
294     check_pthreads.m4 \
295     check_cas.m4 \
296     ac_cc_warnings.m4 \
297     check_boost.m4 \
298     check_swig.m4                      
299
300 ACLOCAL_GUI = \
301     check_vtk.m4 \
302     check_opengl.m4 \
303     check_qt.m4 \
304     check_GUI.m4 \
305     check_corba_in_GUI.m4  
306
307 ACLOCAL_MED =                 check_Med.m4
308 ACLOCAL_GEOM =                check_GEOM.m4                      
309
310 $(top_srcdir)/aclocal.m4: $(ACLOCAL_KERNEL:%=@KERNEL_ROOT_DIR@/salome_adm/unix/config_files/%) \
311                           $(ACLOCAL_GUI:%=@GUI_ROOT_DIR@/adm_local/unix/config_files/%) \
312                           $(ACLOCAL_MED:%=@MED_ROOT_DIR@/adm_local/unix/config_files/%) \
313                           $(ACLOCAL_GEOM:%=@GEOM_ROOT_DIR@/adm_local/unix/config_files/%)
314         cd $(top_srcdir) ; aclocal -I adm_local/unix/config_files -I @KERNEL_ROOT_DIR@/salome_adm/unix/config_files \
315                                                                        -I @GUI_ROOT_DIR@/adm_local/unix/config_files \
316                                                                        -I @MED_ROOT_DIR@/adm_local/unix/config_files \
317                                                                        -I @GEOM_ROOT_DIR@/adm_local/unix/config_files
318