summaryrefslogtreecommitdiffstats
path: root/libs
diff options
context:
space:
mode:
authorFlorian Franzmann2019-09-27 19:53:35 +0200
committerFlorian Franzmann2019-09-27 19:53:57 +0200
commitb64264debcf39ecbf2d234a63f85d3fd2150bf57 (patch)
tree4f85e4200f7bad7b42e815ae3d760ce74a1d32ed /libs
parent6855fd3bfd8e9700971428146a9347266477c48d (diff)
libs/lockdev: fix build system
Diffstat (limited to 'libs')
-rwxr-xr-xlibs/lockdev/BUILD1
-rw-r--r--libs/lockdev/HISTORY6
-rwxr-xr-xlibs/lockdev/PRE_BUILD19
-rw-r--r--libs/lockdev/lockdev-1.0.3-add-autotools.patch55
-rw-r--r--libs/lockdev/lockdev-1.0.3-fix-perl.patch11
5 files changed, 85 insertions, 7 deletions
diff --git a/libs/lockdev/BUILD b/libs/lockdev/BUILD
deleted file mode 100755
index 6dccbc07d4..0000000000
--- a/libs/lockdev/BUILD
+++ /dev/null
@@ -1 +0,0 @@
-make basedir=$INSTALL_ROOT/usr
diff --git a/libs/lockdev/HISTORY b/libs/lockdev/HISTORY
index a6f991943e..35def4a19a 100644
--- a/libs/lockdev/HISTORY
+++ b/libs/lockdev/HISTORY
@@ -1,3 +1,9 @@
+2019-09-27 Florian Franzmann <siflfran@hawo.stw.uni-erlangen.de>
+ * PRE_BUILD, lockdev-1.0.3-add-autotools.patch,
+ lockdev-1.0.3-fix-perl.patch: apply patches from gentoo
+ to fix lockdev's broken build system
+ * BUILD: removed
+
2012-11-27 Treeve Jelbert <treeve@sourcemage.org>
* DETAILS: PATCHLEVEL=1
* INSTALL: create a symlink
diff --git a/libs/lockdev/PRE_BUILD b/libs/lockdev/PRE_BUILD
index 6f11ceeaf7..4f1960de7a 100755
--- a/libs/lockdev/PRE_BUILD
+++ b/libs/lockdev/PRE_BUILD
@@ -1,6 +1,13 @@
-default_pre_build &&
-#
-# Fix for liblockdev.a pissing -fPIC *and*
-# use our optimizations for coolness factor 10!
-#
-sedit "s:CFLAGS.*=.*:CFLAGS = $CFLAGS:g" $SOURCE_DIRECTORY/Makefile
+default_pre_build &&
+cd "$SOURCE_DIRECTORY" &&
+
+patch -p0 < "$SPELL_DIRECTORY/lockdev-1.0.3-add-autotools.patch" &&
+patch -p1 < "$SPELL_DIRECTORY/lockdev-1.0.3-fix-perl.patch" &&
+
+touch NEWS &&
+touch README &&
+touch AUTHORS &&
+touch ChangeLog &&
+rm -f Makefile &&
+
+autoreconf -fi
diff --git a/libs/lockdev/lockdev-1.0.3-add-autotools.patch b/libs/lockdev/lockdev-1.0.3-add-autotools.patch
new file mode 100644
index 0000000000..f54bcb8fd7
--- /dev/null
+++ b/libs/lockdev/lockdev-1.0.3-add-autotools.patch
@@ -0,0 +1,55 @@
+Adds an autotools build system to fix the many issues with the custom build
+system (ignoring CC, CFLAGS, DESTDIR, not installing the .so file properly).
+
+Contributed by Nick Fortino (nfortino@gmail.com) 2/1/2009
+
+Updated by Jonathan Callen <abcd@gentoo.org> 2009-09-11
+
+--- Makefile.am
++++ Makefile.am
+@@ -0,0 +1,20 @@
++include_HEADERS = src/lockdev.h src/ttylock.h
++
++lib_LTLIBRARIES = liblockdev.la
++liblockdev_la_SOURCES = src/lockdev.c
++liblockdev_version = -version-info $(LOCKDEV_CURRENT_INTERFACE):$(LOCKDEV_INTERFACE_AGE):$(LOCKDEV_BINARY_AGE)
++liblockdev_la_LDFLAGS = $(liblockdev_version)
++
++man_MANS = docs/lockdev.3
++
++manpage_links = \
++ dev_lock.3 \
++ dev_unlock.3 \
++ dev_relock.3 \
++ dev_testlock.3 \
++ liblockdev.3
++
++install-data-hook:
++ for page in $(manpage_links); do \
++ $(LN_S) -f lockdev.3 $(DESTDIR)$(man3dir)/$${page} ; \
++ done
+--- configure.ac
++++ configure.ac
+@@ -0,0 +1,22 @@
++AC_INIT([lockdev], [1.0.3], [BUG-REPORT-ADDRESS])
++AC_CONFIG_AUX_DIR([scripts])
++AM_INIT_AUTOMAKE
++
++LOCKDEV_CURRENT_INTERFACE=1
++LOCKDEV_INTERFACE_AGE=0
++LOCKDEV_BINARY_AGE=0
++
++AC_SUBST([LOCKDEV_CURRENT_INTERFACE])
++AC_SUBST([LOCKDEV_INTERFACE_AGE])
++AC_SUBST([LOCKDEV_BINARY_AGE])
++
++LT_INIT([disable-static])
++
++AC_CANONICAL_BUILD
++AC_CANONICAL_HOST
++
++# Checks for programs.
++AC_PROG_LN_S
++
++AC_CONFIG_FILES([Makefile])
++AC_OUTPUT
diff --git a/libs/lockdev/lockdev-1.0.3-fix-perl.patch b/libs/lockdev/lockdev-1.0.3-fix-perl.patch
new file mode 100644
index 0000000000..7b25f82e7e
--- /dev/null
+++ b/libs/lockdev/lockdev-1.0.3-fix-perl.patch
@@ -0,0 +1,11 @@
+--- lockdev-1.0.3.orig/LockDev/Makefile.PL
++++ lockdev-1.0.3/LockDev/Makefile.PL
+@@ -7,7 +7,7 @@ WriteMakefile(
+ 'LIBS' => [''],
+ 'DEFINE' => '',
+ 'INC' => '-I../src',
+- 'MYEXTLIB' => '../src/lockdev.z',
++ 'MYEXTLIB' => '../.libs/liblockdev.so',
+ );
+
+ sub MY::postamble {