fix.
It uses a InstallDev/Post hook to find all .la files which are going to be
installed in the staging dir and prefixes every path in those files which starts
with /usr/lib with $(STAGING_DIR).
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@12586
3c298f89-4303-0410-b956-
a3cf2f4a3e73
-#
-# Copyright (C) 2007 OpenWrt.org
+#
+# Copyright (C) 2007-2008 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
define replace
if [ -f "$(PKG_BUILD_DIR)/$(3)$(1)" -a -e "$(2)/$(1)" ]; then \
define replace
if [ -f "$(PKG_BUILD_DIR)/$(3)$(1)" -a -e "$(2)/$(1)" ]; then \
# prevent libtool from linking against host development libraries
define libtool_fixup_libdir
# prevent libtool from linking against host development libraries
define libtool_fixup_libdir
- find $(PKG_BUILD_DIR) -name '*.la' | $(XARGS) \
- $(SED) "s,^libdir='/usr/lib',libdir='$(if $(PKG_INSTALL_DIR),$(PKG_INSTALL_DIR),$(STAGING_DIR))/usr/lib',g"
+ find $(1) -name '*.la' | $(XARGS) \
+ $(SED) "s,\(^libdir='\| \|-L\|^dependency_libs='\)/usr/lib,\1$(STAGING_DIR)/usr/lib,g"
+ find $(2) -name '*.la' | $(XARGS) \
+ $(SED) "s,\(^libdir='\| \|-L\|^dependency_libs='\)/usr/lib,\1$(STAGING_DIR)/usr/lib,g"
endef
define remove_version_check
endef
define remove_version_check
PKG_BUILD_DEPENDS += libtool
Hooks/Configure/Pre += update_libtool remove_version_check
Hooks/Configure/Post += update_libtool
PKG_BUILD_DEPENDS += libtool
Hooks/Configure/Pre += update_libtool remove_version_check
Hooks/Configure/Post += update_libtool
- Hooks/Compile/Post += libtool_fixup_libdir
+ Hooks/InstallDev/Post += libtool_fixup_libdir