Browse Source

libbsd: fix libpath to not use host path

libpath.so uses host path in ld script causing other packages fail to
cross compile, e.g. perl:
"ld: cannot find /usr/lib/libbsd.so.0.11.6: No such file or directory"

Fixes: openwrt/packages#19390

Signed-off-by: Xuefer H <[email protected]>
Xuefer H 2 years ago
parent
commit
ab31547df0
2 changed files with 14 additions and 0 deletions
  1. 1 0
      package/libs/libbsd/Makefile
  2. 13 0
      package/libs/libbsd/patches/001-fix-libpath.patch

+ 1 - 0
package/libs/libbsd/Makefile

@@ -14,6 +14,7 @@ PKG_LICENSE_FILES:=COPYING
 PKG_INSTALL:=1
 PKG_BUILD_PARALLEL:=1
 PKG_BUILD_DEPENDS := libmd
+PKG_FIXUP:=autoreconf
 
 include $(INCLUDE_DIR)/package.mk
 

+ 13 - 0
package/libs/libbsd/patches/001-fix-libpath.patch

@@ -0,0 +1,13 @@
+do not use host path to fix cross compiling
+
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -160,7 +160,7 @@
+ 	(echo '/* GNU ld script'; \
+ 	 echo ' * The MD5 functions are provided by the libmd library. */'; \
+ 	 cat format.ld; \
+-	 echo "GROUP($(runtimelibdir)/$$soname AS_NEEDED($(MD5_LIBS)))"; \
++	 echo "GROUP($$soname AS_NEEDED($(MD5_LIBS)))"; \
+ 	)>$(DESTDIR)$(libdir)/libbsd.so
+ else
+ 	if [ "$(libdir)" != "$(runtimelibdir)" ]; then \