### this file is sourced not run
PKGVER=5.4.4
PKGBUILD=1
PKGARCH=x86_64

LUA_VER=${PKGVER%.*}

# source: BLFS 11.3
TARBALL=lua-$PKGVER.tar.gz
MD5SUM=bd8ce7069ff99a400efd14cf339a727b
SRC_URL=http://www.lua.org/ftp/$TARBALL
BUNDLE=

SLACKREQ=
SLACKDESC="lua: lua $PKGVER (Lua scripting language)  
lua:  
lua: Lua is a powerful light-weight programming language designed for 
lua: extending applications. It is also frequently used as a general-purpose, 
lua: stand-alone language. Lua is implemented as a small library of C 
lua: functions, written in ANSI C, and compiles unmodified in all known 
lua: platforms. The implementation goals are simplicity, efficiency, 
lua: portability, and low embedding cost. The result is a fast language engine 
lua: with small footprint, making it ideal in embedded systems too.  
lua: 
lua:
"

### default pkg_download
### prepare
pkg_prepare() {
	pkg_prepare_default &&

	# BLFS 11.3 shared lib patch
	cd tmp/lua* &&
	patch -Np1 -i ../pkg/lua-5.4.4-shared_library-2.patch &&
	patch -Np1 -i ../pkg/luac-double-free.patch &&
	true
}

### default pkg_package
### build
pkg_build() {
	cd /tmp/lua* &&

	# BLFS 11.3 - create pkgconfig for Lua
	cat > lua.pc << EOF &&
V=$LUA_VER
R=$PKGVER

EOF
	cat >> lua.pc << "EOF" && # this has to be literal
prefix=/usr
INSTALL_BIN=${prefix}/bin
INSTALL_INC=${prefix}/include
INSTALL_LIB=${prefix}/lib64
INSTALL_MAN=${prefix}/share/man/man1
INSTALL_LMOD=${prefix}/share/lua/${V}
INSTALL_CMOD=${prefix}/lib64/lua/${V}
exec_prefix=${prefix}
libdir=${exec_prefix}/lib64
includedir=${prefix}/include

Name: Lua
Description: An Extensible Extension Language
Version: ${R}
Requires:
Libs: -L${libdir} -llua -lm -ldl
Cflags: -I${includedir}
EOF

	# patch for $LIBDIR
	sed -i -e "/#define LUA_CDIR/ s|lib/lua|$LIBDIR/lua|" src/luaconf.h &&

	# build with Lua 5.1 and 5.2 and 5.3 compatibility
	make $MAKEFLAGS MYCFLAGS="-DLUA_COMPAT_5_3 -DLUA_COMPAT_5_2 -DLUA_COMPAT_5_1" linux &&

	# install
	make INSTALL_TOP=/usr \
		 INSTALL_DATA="cp -d"     \
		 INSTALL_MAN=/usr/share/man/man1 \
		 TO_LIB="liblua.so liblua.so.$LUA_VER liblua.so.$PKGVER" \
		 INSTALL_LIB=/usr/$LIBDIR \
		 INSTALL_CMOD=/usr/$LIBDIR/lua/$LUA_VER \
		 install &&

	# docs
	mkdir -pv /usr/share/doc/lua-$PKGVER &&
	cp -v doc/*.{html,css,gif,png} /usr/share/doc/lua-$PKGVER &&
	install -m644 -v -D lua.pc /usr/$LIBDIR/pkgconfig/lua.pc &&

	# slackdesc
	pkg_build_slackdesc &&

	# multilib
	mv /usr/include/luaconf{.h,-64.h} &&
	install -m644 /tmp/pkg/luaconf.h /usr/include
}


