From e32b17d8dd6e320fd33726a8758904d4a6c06802 Mon Sep 17 00:00:00 2001 From: vsr Date: Wed, 22 Sep 2010 13:26:00 +0000 Subject: [PATCH] Hack libtool (!) to workaround problem with wrong linkage of native libraries --- configure.ac | 1 + salome_adm/unix/config_files/Makefile.am | 3 +- salome_adm/unix/config_files/hack_libtool.m4 | 41 ++++++++++++++++++++ 3 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 salome_adm/unix/config_files/hack_libtool.m4 diff --git a/configure.ac b/configure.ac index 1439a7db4..f188485b3 100644 --- a/configure.ac +++ b/configure.ac @@ -583,3 +583,4 @@ AC_OUTPUT([ \ src/Utils/Test/Makefile \ ]) +AC_HACK_LIBTOOL diff --git a/salome_adm/unix/config_files/Makefile.am b/salome_adm/unix/config_files/Makefile.am index 6cffbfca4..0e52b1521 100644 --- a/salome_adm/unix/config_files/Makefile.am +++ b/salome_adm/unix/config_files/Makefile.am @@ -80,7 +80,8 @@ pyembed.m4 \ python.m4 \ check_libxml.m4 \ check_paco++.m4 \ -local_install.m4 +local_install.m4 \ +hack_libtool.m4 dist_salome4depr_DATA=\ $(DEPRECATED_FILES) diff --git a/salome_adm/unix/config_files/hack_libtool.m4 b/salome_adm/unix/config_files/hack_libtool.m4 new file mode 100644 index 000000000..4ad515aab --- /dev/null +++ b/salome_adm/unix/config_files/hack_libtool.m4 @@ -0,0 +1,41 @@ +dnl Copyright (C) 2010 CEA/DEN, EDF R&D, OPEN CASCADE +dnl +dnl This library is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Lesser General Public +dnl License as published by the Free Software Foundation; either +dnl version 2.1 of the License. +dnl +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Lesser General Public License for more details. +dnl +dnl You should have received a copy of the GNU Lesser General Public +dnl License along with this library; if not, write to the Free Software +dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +dnl +dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +dnl + +dnl --- +dnl File : hack_libtool.m4 +dnl Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com) +dnl --- +dnl +dnl The purpose of below autoconf macro is to workaround very annoying problem +dnl of the GNU libtool program. The problem leads to the incorrect linking +dnl to the native libraries (installed in /usr/lib[64]) instead of those supplied +dnl with specific -Ldir options. + +AC_DEFUN([AC_HACK_LIBTOOL],[ +sed -i "s%^CC=\"\(.*\)\"%function hack_libtool { \n\ + if test \"\$(echo \$[@] | grep -E '\\\-L/usr/lib(/../lib)?(64)? ')\" == \"\" \n\ + then\n\ + cmd=\"\1 \$[@]\"\n\ + else\n\ + cmd=\"\1 \"\`echo \$[@] | sed -r -e 's|(.*)-L/usr/lib(/../lib)?(64)? (.*)|\\\1\\\4 -L/usr/lib\\\3|g'\`\n\ + fi\n\ + \$cmd\n\ +}\n\ +CC=\"hack_libtool\"%g" libtool +]) -- 2.39.2