Browse Source

Makefile.autotools.in: fix libtool patching

Fixes two issues with libtool patching:

- It seems like the default value for <package>_LIBTOOL_PATCH only gets
  set AFTER the ifdef check, so the conditional was never taken. Fix it
  by instead checking that it isn't explicitly set to not do the patching
  instead.
- The $i in the libtool patching for loop needed an extra level of escaping
  to work.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Peter Korsgaard 15 years ago
parent
commit
073af428ef
1 changed files with 3 additions and 2 deletions
  1. 3 2
      package/Makefile.autotools.in

+ 3 - 2
package/Makefile.autotools.in

@@ -140,12 +140,13 @@ define LIBTOOL_PATCH_HOOK
 	$(Q)if test "$$($$(PKG)_LIBTOOL_PATCH)" = "YES" -a \
 	"$$($$(PKG)_AUTORECONF)" != "YES"; then \
 	for i in `find $$($$(PKG)_SRCDIR) -name ltmain.sh`; do \
-		toolchain/patch-kernel.sh $${i%/*} package buildroot-libtool.patch; \
+		toolchain/patch-kernel.sh $$$${i%/*} package buildroot-libtool.patch; \
 		done \
 	fi
 endef
 
-ifeq ($($(2)_LIBTOOL_PATCH),YES)
+# default values are not evaluated yet, so don't rely on this defaulting to YES
+ifneq ($($(2)_LIBTOOL_PATCH),NO)
 $(2)_POST_PATCH_HOOKS += LIBTOOL_PATCH_HOOK
 endif