Salome HOME
Copyright update 2020
[tools/configuration.git] / autotools / m4 / hack_libtool.m4
1 dnl Copyright (C) 2010-2020  CEA/DEN, EDF R&D, OPEN CASCADE
2 dnl
3 dnl This library is free software; you can redistribute it and/or
4 dnl modify it under the terms of the GNU Lesser General Public
5 dnl License as published by the Free Software Foundation; either
6 dnl version 2.1 of the License, or (at your option) any later version.
7 dnl
8 dnl This library is distributed in the hope that it will be useful,
9 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
10 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 dnl Lesser General Public License for more details.
12 dnl
13 dnl You should have received a copy of the GNU Lesser General Public
14 dnl License along with this library; if not, write to the Free Software
15 dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 dnl
17 dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 dnl
19
20 dnl ---
21 dnl File   : hack_libtool.m4
22 dnl Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com)
23 dnl ---
24 dnl
25 dnl The purpose of below autoconf macro is to workaround very annoying problem
26 dnl of the GNU libtool program. The problem leads to the incorrect linking
27 dnl to the native libraries (installed in /usr/lib[64]) instead of those supplied 
28 dnl with specific -Ldir options.
29
30 AC_DEFUN([AC_HACK_LIBTOOL],[
31 cat > hack_libtool <<EOF
32 #! /bin/sh
33
34 cmd=""
35 cmd_end=""
36
37 for param in "\$[@]"
38 do
39     case \${param} in
40         -L* ) where=\$(echo \${param} | cut -b3-) ; if test "\${where}" != "" && test -d \${where} ; then where=\$(cd \${where}; pwd) ; if test "\${where}" = "/usr/lib" || test "\${where}" = "/usr/lib64" ; then cmd_end="\${cmd_end} \${param}" ; else cmd="\${cmd} \${param}" ; fi ; fi ;;
41         *   ) cmd="\${cmd} \${param}" ;;
42     esac
43 done
44 cmd="\${cmd} \${cmd_end}"
45 \$cmd
46 EOF
47 chmod a+x hack_libtool
48 ])