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="3" SOURCE_URI="http://www.lua.org/ftp/lua-$portVersion.tar.gz" CHECKSUM_SHA256="164c7849653b80ae67bec4b7473b884bf5cc8d2dca05653475ec2ed27b9ebf61" 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=" lua5.4$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=" lua5.4${secondaryArchSuffix}_devel = $portVersion compat >= 5.4 devel:liblua$secondaryArchSuffix = $libVersionCompat " REQUIRES_devel=" lua5.4$secondaryArchSuffix == $portVersion base " CONFLICTS_devel=" lua${secondaryArchSuffix}_devel lua5.1${secondaryArchSuffix}_devel lua5.2${secondaryArchSuffix}_devel " BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel " BUILD_PREREQUIRES=" cmd:gcc$secondaryArchSuffix cmd:make " BUILD() { if [ $effectiveTargetArchitecture = x86_gcc2 ]; then GCC2_CFLAG="-DLUA_NOBUILTIN=1" fi make haiku MYCFLAGS="-DLUA_ROOT='\"$prefix/\"' -DLUA_LDIR='\"$dataDir/lua/$libVersion/\"' \ $GCC2_CFLAG" 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 mv $manDir/man1/lua.1 $manDir/man1/lua$luaInc.1 mv $manDir/man1/luac.1 $manDir/man1/luac$luaInc.1 mkdir -p $docDir cp doc/{*.html,logo.gif,lua.css,manual.css,osi-certified-72x60.png} $docDir rm -r $dataDir #empty directory rm -r $prefix/lib/lua #empty directory rm $libDir/liblua.a #static library 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 }