From e79bf83b0648a44585dc5960f7022a9a8f4ab40c Mon Sep 17 00:00:00 2001 From: Kay Sievers Date: Thu, 22 Dec 2011 15:40:24 +0100 Subject: [PATCH] introduce --with-rootlibdir=DIR Support the installation of the shared library in the rootfs --rootlibdir=, while the development symlink stays in --libdir=. --- Makefile.am | 12 ++++++++++++ configure.ac | 6 ++++++ 2 files changed, 18 insertions(+) diff --git a/Makefile.am b/Makefile.am index 9d2ac56..05cbb7e 100644 --- a/Makefile.am +++ b/Makefile.am @@ -68,6 +68,18 @@ pkgconfig_DATA = libkmod/libkmod.pc EXTRA_DIST += libkmod/libkmod.pc.in CLEANFILES += libkmod/libkmod.pc +install-exec-hook: + if test "$(libdir)" != "$(rootlibdir)"; then \ + mkdir -p $(DESTDIR)$(rootlibdir) && \ + so_img_name=$$(readlink $(DESTDIR)$(libdir)/libkmod.so) && \ + so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \ + ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libkmod.so && \ + mv $(DESTDIR)$(libdir)/libkmod.so.* $(DESTDIR)$(rootlibdir); \ + fi + +uninstall-hook: + rm -f $(DESTDIR)$(rootlibdir)/libkmod.so* + if BUILD_TOOLS bin_PROGRAMS = tools/kmod-insmod tools/kmod-rmmod tools/kmod-lsmod \ tools/kmod-modprobe tools/kmod-modinfo diff --git a/configure.ac b/configure.ac index a0ed6c2..6a6ce75 100644 --- a/configure.ac +++ b/configure.ac @@ -35,6 +35,11 @@ AC_ARG_WITH([rootprefix], [], [with_rootprefix=""]) AC_SUBST([rootprefix], [$with_rootprefix]) +AC_ARG_WITH([rootlibdir], + AS_HELP_STRING([--with-rootlibdir=DIR], [rootfs directory to install shared libraries]), + [], [with_rootlibdir=$libdir]) +AC_SUBST([rootlibdir], [$with_rootlibdir]) + AC_ARG_ENABLE([tools], AS_HELP_STRING([--disable-tools], [disable building tools that provide same functionality as module-init-tools @<:@default=enabled@:>@]), [], enable_tools=yes) @@ -135,6 +140,7 @@ AC_MSG_RESULT([ rootprefix: ${rootprefix} sysconfdir: ${sysconfdir} libdir: ${libdir} + rootlibdir: ${rootlibdir} includedir: ${includedir} bindir: ${bindir} -- 2.7.4