mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-09 05:10:05 +02:00
x86_64 is used as a baseline: the "x86_64" entry, whatever status it has, is transformed into "all", and then the other entries in ARCHITECTURES either dropped or rearranged appropriately.
114 lines
3.2 KiB
Bash
114 lines
3.2 KiB
Bash
SUMMARY="A powerful, fast, light-weight, embeddable scripting language"
|
|
DESCRIPTION="Lua combines simple procedural syntax with powerful data \
|
|
description constructs based on associative arrays and extensible semantics. \
|
|
Lua is dynamically typed, runs by interpreting bytecode for a register-based \
|
|
virtual machine, and has automatic memory management with incremental garbage \
|
|
collection, making it ideal for configuration, scripting, and rapid \
|
|
prototyping."
|
|
HOMEPAGE="https://www.lua.org/"
|
|
COPYRIGHT="1994-2020 Lua.org, PUC-Rio"
|
|
LICENSE="MIT"
|
|
REVISION="1"
|
|
SOURCE_URI="http://www.lua.org/ftp/lua-$portVersion.tar.gz"
|
|
CHECKSUM_SHA256="4ba786c3705eb9db6567af29c91a01b81f1c0ac3124fdbf6cd94bdd9e53cca7d"
|
|
SOURCE_DIR="lua-$portVersion"
|
|
PATCHES="lua54-$portVersion.patchset"
|
|
if [ $effectiveTargetArchitecture = x86_gcc2 ]; then
|
|
PATCHES+="
|
|
lua54-$portVersion.gcc2.patchset
|
|
"
|
|
fi
|
|
|
|
ARCHITECTURES="?all"
|
|
SECONDARY_ARCHITECTURES="?x86_gcc2 ?x86"
|
|
|
|
libVersion="${portVersion%.*}"
|
|
libVersionCompat="$libVersion compat >= $libVersion"
|
|
luaInc="`echo ${libVersion} | tr -d '.'`"
|
|
luaVer="`echo $portVersion | cut -d~ -f1`"
|
|
|
|
PROVIDES="
|
|
lua54$secondaryArchSuffix = $portVersion compat >= 5.4
|
|
cmd:lua$secondaryArchSuffix = $portVersion compat >= 5.4
|
|
cmd:lua$libVersion$secondaryArchSuffix = $portVersion compat >= 5.4
|
|
cmd:luac$secondaryArchSuffix = $portVersion compat >= 5.4
|
|
cmd:luac$libVersion$secondaryArchSuffix = $portVersion compat >= 5.4
|
|
lib:liblua$secondaryArchSuffix = $libVersionCompat
|
|
"
|
|
REQUIRES="
|
|
haiku$secondaryArchSuffix
|
|
"
|
|
|
|
PROVIDES_devel="
|
|
lua54${secondaryArchSuffix}_devel = $portVersion compat >= 5.4
|
|
devel:liblua$secondaryArchSuffix = $libVersionCompat
|
|
"
|
|
REQUIRES_devel="
|
|
lua54$secondaryArchSuffix == $portVersion base
|
|
"
|
|
CONFLICTS_devel="
|
|
lua${secondaryArchSuffix}_devel
|
|
"
|
|
|
|
BUILD_REQUIRES="
|
|
haiku${secondaryArchSuffix}_devel
|
|
"
|
|
BUILD_PREREQUIRES="
|
|
cmd:gcc$secondaryArchSuffix
|
|
cmd:make
|
|
"
|
|
|
|
BUILD()
|
|
{
|
|
make haiku MYCFLAGS="-DLUA_ROOT='\"$prefix/\"' -DLUA_LDIR='\"$dataDir/lua/$libVersion/\"'" \
|
|
LUA_T="lua$libVersion" LUAC_T="luac$libVersion" LUA_SO="liblua.so.$libVersion"
|
|
}
|
|
|
|
INSTALL()
|
|
{
|
|
make install INSTALL_TOP="$prefix" INSTALL_MAN="$manDir/man1" \
|
|
INSTALL_INC="$includeDir/lua$luaInc" INSTALL_LMOD="$dataDir/lua/$libVersion" \
|
|
INSTALL_LIB="$libDir" INSTALL_BIN="$binDir" TO_BIN="lua$libVersion luac$libVersion" \
|
|
TO_LIB="liblua.a liblua.so.$libVersion"
|
|
|
|
ln -s lua$libVersion $binDir/lua
|
|
ln -s luac$libVersion $binDir/luac
|
|
ln -s liblua.so.$libVersion $libDir/liblua.so
|
|
|
|
rm -r $dataDir #empty directory
|
|
rm -r $prefix/lib/lua #empty directory
|
|
|
|
mkdir -p $developLibDir/pkgconfig
|
|
cat > $developLibDir/pkgconfig/lua.pc << EOF
|
|
V=$libVersion
|
|
R=$luaVer
|
|
|
|
INSTALL_BIN=$binDir
|
|
INSTALL_INC=$includeDir
|
|
INSTALL_LIB=$libDir
|
|
INSTALL_MAN=$manDir
|
|
INSTALL_LMOD=${dataDir}/lua/\${V}
|
|
INSTALL_CMOD=${libDir}/lua/\${V}
|
|
exec_prefix=$prefix
|
|
libdir=$libDir
|
|
includedir=$includeDir
|
|
|
|
Name: Lua
|
|
Description: An Extensible Extension Language
|
|
Version: \${R}
|
|
Requires:
|
|
Libs: -L\${libdir} -llua
|
|
Cflags: -I\${includedir}/lua$luaInc
|
|
EOF
|
|
|
|
ln -s $developLibDir/pkgconfig/lua.pc $developLibDir/pkgconfig/lua$libVersion.pc
|
|
|
|
prepareInstalledDevelLib liblua
|
|
packageEntries devel $developDir
|
|
}
|
|
|
|
TEST()
|
|
{
|
|
src/lua$libVersion -v
|
|
}
|