summaryrefslogtreecommitdiffstats
path: root/lua/build
diff options
context:
space:
mode:
author Eric Hameleers <alien@slackware.com>2015-10-12 18:11:31 +0000
committer Eric Hameleers <alien@slackware.com>2015-10-12 18:11:31 +0000
commit5c5b7d6caae2dd9603d4f234a6695abe5d7c13de (patch)
treeb129aa35dc5f990248067ba85a4c2772e9ae6dd5 /lua/build
parent94c3f321d0388d582e2af44c4a786c1f8e7e596b (diff)
downloadasb-5c5b7d6caae2dd9603d4f234a6695abe5d7c13de.tar.gz
asb-5c5b7d6caae2dd9603d4f234a6695abe5d7c13de.tar.xz
lua: add the missing liblua.so symlink
Diffstat (limited to 'lua/build')
-rwxr-xr-xlua/build/lua.SlackBuild61
1 files changed, 42 insertions, 19 deletions
diff --git a/lua/build/lua.SlackBuild b/lua/build/lua.SlackBuild
index 999c200e..bd184c37 100755
--- a/lua/build/lua.SlackBuild
+++ b/lua/build/lua.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
# $Id$
-# Copyright 2009, 2011, 2013 Eric Hameleers, Eindhoven, NL
+# Copyright 2009, 2011, 2013, 2015 Eric Hameleers, Eindhoven, NL
# All rights reserved.
#
# Permission to use, copy, modify, and distribute this software for
@@ -38,6 +38,14 @@
# 5.1.5-1: 15/oct/2013 by Eric Hameleers, Eindhoven, NL
# * Update. Note that Lua 5.2 is incompatible with most programs
# that use it.
+# 5.1.5-2: 12/oct/2015 by Eric Hameleers <alien@slackware.com>
+# * Instead of a patch and several lines of sed, use the patch-less
+# logic from the slackbuilds.org script; adds missing liblua.so
+# Thanks to the SBo script authors:
+# - Written by Menno Duursma
+# - Modified by the SlackBuilds.org project
+# - Modified by Aaron W. Hsu
+# - Updated by Matteo Bernardini
#
# Run 'sh lua.SlackBuild' to build a Slackware package.
# The package (.tgz) and .txt file as well as build logs are created in /tmp .
@@ -45,11 +53,10 @@
#
# -----------------------------------------------------------------------------
-# Set initial variables:
PRGNAM=lua
VERSION=${VERSION:-5.1.5}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:" -j4 "}
TAG=${TAG:-alien}
@@ -159,32 +166,48 @@ cd $TMP/tmp-$PRGNAM
echo "Extracting the source archive(s) for $PRGNAM..."
tar -xvf ${SOURCE[0]}
cd ${PRGNAM}-${VERSION}
-
-# These fixes are needed to build a sane Slackware package:
-sed -i "s/-DLUA_USE_LINUX/\"-DLUA_USE_LINUX $SLKCFLAGS\"/g" src/Makefile
-sed -i "s#/lib#/lib${LIBDIRSUFFIX}#g" Makefile
-sed -i "/^INSTALL_TOP=/s#/usr/local#/usr#" Makefile
-sed -i "/^prefix=/s#/usr/local#/usr#" etc/lua.pc
-sed -i "/^#define LUA_ROOT/s#/usr/local/#/usr/#" src/luaconf.h
-cat $SRCDIR/lua-${VERSION}-shared.diff | patch -p1 --verbose \
- 2>&1 | tee $OUTPUT/patch-$PRGNAM.log
-
chown -R root:root .
chmod -R u+w,go+r-w,a+X-s .
echo Building ...
# Compile and install:
-MYLDFLAGS="$SLKLDFLAGS -ld" make linux 2>&1 |tee $OUTPUT/make-${PRGNAM}.log
-mkdir -p PKG/usr
-make install INSTALL_TOP=$PKG/usr 2>&1 |tee $OUTPUT/install-${PRGNAM}.log
+# Fix up a to-be-installed header and the pkgconfig file
+sed -i "s|/usr/local|/usr|" src/luaconf.h
+sed -i "s|lib/lua|lib$LIBDIRSUFFIX/lua|" src/luaconf.h
+sed -i "s|/usr/local|/usr|" etc/lua.pc
+sed -i "s|prefix}/lib|prefix}/lib${LIBDIRSUFFIX}|g" etc/lua.pc
+
+make linux \
+ CFLAGS="$SLKCFLAGS \$(MYCFLAGS)" \
+ INSTALL_TOP=/usr \
+ INSTALL_LIB=/usr/lib${LIBDIRSUFFIX} \
+ INSTALL_LMOD=/usr/share/lua/5.1 \
+ INSTALL_CMOD=/usr/lib${LIBDIRSUFFIX}/lua/5.1
+
+make linux install \
+ CFLAGS="$SLKCFLAGS \$(MYCFLAGS)" \
+ INSTALL_TOP=$PKG/usr \
+ INSTALL_LIB=$PKG/usr/lib${LIBDIRSUFFIX} \
+ INSTALL_LMOD=$PKG/usr/share/lua/5.1 \
+ INSTALL_CMOD=$PKG/usr/lib${LIBDIRSUFFIX}/lua/5.1
+
+# Now let's build the shared library
+mkdir -p shared
+cd shared
+ ar -x $PKG/usr/lib${LIBDIRSUFFIX}/liblua.a
+ gcc -ldl -lreadline -lhistory -lncurses -lm -shared *.o -o liblua.so.$VERSION
+ cp -a liblua.so.$VERSION $PKG/usr/lib${LIBDIRSUFFIX}
+ ( cd $PKG/usr/lib${LIBDIRSUFFIX}
+ ln -s liblua.so.$VERSION liblua.so.5.1
+ ln -s liblua.so.$VERSION liblua.so.5
+ ln -s liblua.so.$VERSION liblua.so
+ )
+cd ..
# Install a pkg-config file:
install -D -m 0644 etc/lua.pc $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/lua.pc
-# Create symlinks for our shared library:
-ldconfig -n $PKG/usr/lib${LIBDIRSUFFIX}
-
# Add documentation:
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION || true