]> SALOME platform Git repositories - modules/med.git/blob - build_configure
Salome HOME
90567e876083ed3e4564e544e4988a1e39204e08
[modules/med.git] / build_configure
1 #!/bin/sh
2 #  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
3 #
4 #  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
5 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 #
7 #  This library is free software; you can redistribute it and/or
8 #  modify it under the terms of the GNU Lesser General Public
9 #  License as published by the Free Software Foundation; either
10 #  version 2.1 of the License.
11 #
12 #  This library is distributed in the hope that it will be useful,
13 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
14 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15 #  Lesser General Public License for more details.
16 #
17 #  You should have received a copy of the GNU Lesser General Public
18 #  License along with this library; if not, write to the Free Software
19 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
20 #
21 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22 #
23 # Tool for updating list of .in file for the SALOME project 
24 # and regenerating configure script
25 # It may be called with --with-kernel[=yes,no] or --without-kernel
26 # option, default is --with-kernel=yes
27 # Author : Marc Tajchman - CEA
28 # Date : 10/10/2002
29 # $Header$
30 # 14/03/2007: Mikhail PONIKAROV - OCN
31 # Reorganization for uage of autotools
32 #
33 ORIG_DIR=`pwd`
34 CONF_DIR=`echo $0 | sed -e "s,[^/]*$,,;s,/$,,;s,^$,.,"`
35
36 ########################################################################
37 # Check --with-kernel option
38
39 MED_WITH_KERNEL="yes"
40 MED_WITH_GUI="yes"
41
42 for option
43 do
44   case $option in
45       -with-kernel | --with-kernel)
46           MED_WITH_KERNEL="yes"
47           MED_WITH_GUI="yes"
48           break;;
49       -without-kernel | --without-kernel | -with-kernel=no | --with-kernel=no)
50           MED_WITH_KERNEL="no"
51           MED_WITH_GUI="no"
52           break;;
53   esac
54 done
55
56 for option
57 do
58   case $option in
59       -with-gui | --with-gui)
60           MED_WITH_GUI="yes"
61           break;;
62       -without-gui | --without-gui | -with-gui=no | --with-gui=no)
63           MED_WITH_GUI="no"
64           break;;
65   esac
66 done
67
68 ########################################################################
69 # Test if the KERNEL_ROOT_DIR is set correctly if KERNEL required
70
71 if test ${MED_WITH_KERNEL} = yes; then
72     if test ! -d "${KERNEL_ROOT_DIR}"; then
73         echo "failed : KERNEL_ROOT_DIR variable is not correct !"
74         exit
75     fi
76 fi
77 ########################################################################
78 # Test if the GUI_ROOT_DIR is set correctly if GUI required
79
80 if test ${MED_WITH_GUI} = yes; then
81     if test ! -d "${GUI_ROOT_DIR}"; then
82         echo "failed : GUI_ROOT_DIR variable is not correct !"
83         exit
84     fi
85 fi
86
87 cd ${CONF_DIR}
88 ABS_CONF_DIR=`pwd`
89
90 #######################################################################
91 # Update configure.ac script: to set MED_WITH_KERNEL and MED_WITH_GUI variables
92 chmod +w configure.ac
93 sed -e s/MED_WITH_KERNEL=[a-z]*/MED_WITH_KERNEL=${MED_WITH_KERNEL}/g configure.ac > configure.tmp
94 sed -e s/MED_WITH_GUI=[a-z]*/MED_WITH_GUI=${MED_WITH_GUI}/g configure.tmp > configure.ac
95 rm configure.tmp
96
97 # copy configure files
98 CONFIGURE_SOURCE_DIR=${KERNEL_ROOT_DIR}/salome_adm
99 if test ${MED_WITH_KERNEL} = no; then
100   CONFIGURE_SOURCE_DIR=${ABS_CONF_DIR}/adm_local_without_kernel
101 fi
102
103 rm -rf salome_adm
104 mkdir -p salome_adm/unix/config_files
105 #cp -f ${CONFIGURE_SOURCE_DIR}/unix/config_files/* salome_adm/unix/config_files
106 cp -f ${CONFIGURE_SOURCE_DIR}/unix/SALOMEconfig.h.in salome_adm/unix
107 #if test ${MED_WITH_KERNEL} = yes; then
108 #  cp -f ${CONFIGURE_SOURCE_DIR}/unix/pythonbe.py salome_adm/unix
109 #fi
110
111 # if with GUI, cofy configure files from it
112 #if test ${MED_WITH_GUI} = yes; then
113 #  cp -f ${GUI_ROOT_DIR}/adm_local/unix/config_files/* salome_adm/unix/config_files
114 #fi
115
116 # remove KERNEL deprecated configure files
117 #for deprecated in ac_cc_warnings.m4 ac_cxx_partial_specialization.m4 \
118 #  check_mico.m4 config.guess ltmain.sh ac_cxx_bool.m4 ltconfig ac_cxx_typename.m4 \
119 #  check_pthreads.m4 config.sub libtool.m4 ac_cxx_mutable.m4 missing
120 #do
121 #  rm -f salome_adm/unix/config_files/${deprecated}
122 #done
123
124 # ____________________________________________________________________
125 # aclocal creates the aclocal.m4 file from the standard macro and the
126 # custom macro embedded in the directory salome_adm/unix/config_files
127 # and KERNEL config_files directory.
128 # output:
129 #   aclocal.m4
130 #   autom4te.cache (directory)
131 echo "====================================================== aclocal"
132
133 if test ${MED_WITH_GUI} = yes; then
134   aclocal -I adm_local/unix/config_files \
135           -I ${CONFIGURE_SOURCE_DIR}/unix/config_files \
136           -I ${GUI_ROOT_DIR}/adm_local/unix/config_files || exit 1
137 else
138   aclocal -I adm_local/unix/config_files \
139           -I ${CONFIGURE_SOURCE_DIR}/unix/config_files || exit 1
140 fi
141
142 # ____________________________________________________________________
143 # libtoolize creates some configuration files (ltmain.sh,
144 # config.guess and config.sub). It only depends on the libtool
145 # version. The files are created in the directory specified with the
146 # AC_CONFIG_AUX_DIR(<mydir>) tag (see configure.ac).
147 # output:
148 #   salome_adm/unix/config_files/config.guess
149 #   salome_adm/unix/config_files/config.sub
150 #   salome_adm/unix/config_files/ltmain.sh
151 #echo "====================================================== libtoolize"
152
153 libtoolize --force --copy --automake || exit 1
154
155 # ____________________________________________________________________
156 # make link to KERNEL configuration files to
157 #ln -sf ${KERNEL_ROOT_DIR}/salome_adm .
158
159 # ____________________________________________________________________
160 # autoconf creates the configure script from the file configure.ac (or
161 # configure.in if configure.ac doesn't exist)
162 # output:
163 #   configure
164 echo "====================================================== autoconf"
165
166 autoconf
167
168 # ____________________________________________________________________
169 # automake creates some scripts used in building process
170 # (install-sh, missing, ...). It only depends on the automake
171 # version. The files are created in the directory specified with the
172 # AC_CONFIG_AUX_DIR(<mydir>) tag (see configure.ac). This step also
173 # creates the Makefile.in files from the Makefile.am files.
174 # output:
175 #   salome_adm/unix/config_files/compile
176 #   salome_adm/unix/config_files/depcomp
177 #   salome_adm/unix/config_files/install-sh
178 #   salome_adm/unix/config_files/missing
179 #   salome_adm/unix/config_files/py-compile
180 #   Makefile.in (from Makefile.am)
181 echo "====================================================== automake"
182
183 automake --copy --gnu --add-missing --warnings=no-portability