package/luajit: ensure dynamic library symlinks are created
authorRomain Naour <romain.naour@gmail.com>
Wed, 23 Mar 2016 22:04:59 +0000 (23:04 +0100)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sat, 26 Mar 2016 17:22:52 +0000 (18:22 +0100)
The luajit Makefile has the following logic:

          $(LDCONFIG) $(INSTALL_LIB) && \
          $(SYMLINK) $(INSTALL_SONAME) $(INSTALL_SHORT1) && \
          $(SYMLINK) $(INSTALL_SONAME) $(INSTALL_SHORT2) || :

So if ldconfig fails for some reason, the symbolic links to refer to
the luajit library are not created. Since ldconfig for the target
didn't make sense, LDCONFIG=true has been added a long time ago when
building the target variant of luajit.

However, since commit 9ba8d1cce4ab00307827083bae234d87b37fb967, the
host variant of luajit is also linked dynamically. While ldconfig for
the host should work, on certain machines ldconfig is not available in
the PATH, and needs to be explicitly called as
/sbin/ldconfig. However, since output/host/usr/lib is in the RPATH of
the binaries we create, there is really no need to bother running
ldconfig, so we simply pass LDCONFIG=true, like we do for the target
variant. This ensures that the symlinks are always created.

Fixes:
http://autobuild.buildroot.net/results/4dc/4dcbcde0046e265317e170a977e699e5c3a06b87/

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Francois Perrad <francois.perrad@gadz.org>
[Thomas: rewrite commit log with a proper explanation.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/luajit/luajit.mk

index 322d2032f97e1803656473f0193c48912864fce4..623bfcc5f7b1e6d24eff708644c696c50337f0eb 100644 (file)
@@ -72,7 +72,7 @@ define HOST_LUAJIT_BUILD_CMDS
 endef
 
 define HOST_LUAJIT_INSTALL_CMDS
-       $(MAKE) PREFIX="/usr" DESTDIR="$(HOST_DIR)" -C $(@D) install
+       $(MAKE) PREFIX="/usr" DESTDIR="$(HOST_DIR)" LDCONFIG=true -C $(@D) install
 endef
 
 $(eval $(generic-package))