4.3. Lua
Compile and link into a library, or obtain a prebuilt Lua library for
-your platform. Place the Lua source into lib/lua-5.4.2 (or other folder
+your platform. Place the Lua source into lib/lua-5.4.3 (or other folder
representing an appropriate Lua version); place the compiled Lua library into
lib.
export LUASRC=../submodules/lua
export ADD_CURSES=Y
export PDCURSES_TOP=../submodules/pdcurses
- export LUA_VERSION=5.4.2
+ export LUA_VERSION=5.4.3
export TRAVIS_COMPILER=1
cp ../sys/winnt/Makefile.gcc ./Makefile
mingw32-make LUA_VERSION=$LUA_VERSION install
cd ../..
make fetch-lua
sh sys/msdos/fetch-cross-compiler.sh
- make LUA_VERSION=5.4.2 WANT_WIN_TTY=1 WANT_WIN_CURSES=1 CROSS_TO_MSDOS=1 all
- make LUA_VERSION=5.4.2 WANT_WIN_TTY=1 WANT_WIN_CURSES=1 CROSS_TO_MSDOS=1 package
+ make LUA_VERSION=5.4.3 WANT_WIN_TTY=1 WANT_WIN_CURSES=1 CROSS_TO_MSDOS=1 all
+ make LUA_VERSION=5.4.3 WANT_WIN_TTY=1 WANT_WIN_CURSES=1 CROSS_TO_MSDOS=1 package
condition: and(eq( variables['Agent.OS'], 'Linux' ), eq( variables.toolchain, 'cross'))
workingDirectory: $(Agent.BuildDirectory)/$(netHackPath)
displayName: 'Building MSDOS build'
include:
- name: linux-xenial-gcc-win-all
os: linux
- env: HINTS=linux.2020 LUA_VERSION=5.4.2
+ env: HINTS=linux.2020 LUA_VERSION=5.4.3
compiler: gcc
addons:
apt:
- make LUA_VERSION=$LUA_VERSION WANT_WIN_ALL=1 QT_SELECT=5 MOC=moc install
- name: linux-bionic-gcc-win-all
os: linux
- env: HINTS=linux.2020 LUA_VERSION=5.4.2
+ env: HINTS=linux.2020 LUA_VERSION=5.4.3
dist: bionic
compiler: gcc
addons:
- make LUA_VERSION=$LUA_VERSION WANT_WIN_ALL=1 QT_SELECT=5 MOC=moc install
- name: linux-focal-clang-win-all
os: linux
- env: HINTS=linux.2020 LUA_VERSION=5.4.2
+ env: HINTS=linux.2020 LUA_VERSION=5.4.3
dist: focal
compiler: clang
addons:
- make LUA_VERSION=$LUA_VERSION WANT_WIN_ALL=1 QT_SELECT=5 MOC=moc install
- name: linux-xenial-gcc-nocommon
os: linux
- env: HINTS=linux.2020 LUA_VERSION=5.4.2
+ env: HINTS=linux.2020 LUA_VERSION=5.4.3
dist: xenial
compiler: gcc
script:
- make install
- name: linux-focal-gcc9-win-all
os: linux
- env: HINTS=linux.2020 LUA_VERSION=5.4.2
+ env: HINTS=linux.2020 LUA_VERSION=5.4.3
dist: focal
compiler: gcc
addons:
- make LUA_VERSION=$LUA_VERSION WANT_WIN_ALL=1 QT_SELECT=5 MOC=moc install
- name: linux-xenial-gcc-minimal
os: linux
- env: HINTS=linux-minimal LUA_VERSION=5.4.2
+ env: HINTS=linux-minimal LUA_VERSION=5.4.3
compiler: gcc
script: |
cd sys/unix/ && sh setup.sh hints/$HINTS && cd ../../
script:
- export ADD_CURSES=Y
- export PDCURSES_TOP=../lib/pdcurses
- - export LUA_VERSION=5.4.2
+ - export LUA_VERSION=5.4.3
- sh sys/winnt/travis-gcc.sh
- test -d "lib/lua-$LUA_VERSION/src" || exit 0
- test -d "lib/pdcurses" || exit 0
- mingw32-make LUA_VERSION=$LUA_VERSION install
- name: msdos-linux-focal-djgpp-crosscompile
os: linux
- env: HINTS=linux.2020 LUA_VERSION=5.4.2
+ env: HINTS=linux.2020 LUA_VERSION=5.4.3
dist: focal
compiler: gcc
script:
-Subproject commit e2ea3b31c94bb3e1da27c233661cb2a16699c685
+Subproject commit eadd8c7178c79c814ecca9652973a9b9dd4cc71b
ifeq "$(LUA_VERSION)" "5.3.5"
LUAVER=5.3.5
else
-LUAVER=5.4.2
+LUAVER=5.4.3
endif
#---------------------------------------------------------------
# Location of LUA
#
# Original source needs to be obtained from:
-# http://www.lua.org/ftp/lua-5.4.2.tar.gz
+# http://www.lua.org/ftp/lua-5.4.3.tar.gz
#
# This build assumes that the LUA sources are located
# at the specified location. If they are actually elsewhere
#===============-=================================================
# LUA library
-# Source from http://www.lua.org/ftp/lua-5.4.2.tar.gz
+# Source from http://www.lua.org/ftp/lua-5.4.3.tar.gz
#=================================================================
LUASRC = $(LUATOP)/src
fi
if [ -z "$LUA_VERSION" ]; then
- export LUA_VERSION=5.4.2
+ export LUA_VERSION=5.4.3
fi
if [ ! -d "$(pwd)/lib" ]; then
#CHGRP = chgrp
# Lua version
-LUA_VERSION = 5.4.2
+LUA_VERSION = 5.4.3
#
# end of configuration
@echo '#include "../lib/lua-$(LUA_VERSION)/src/lualib.h"' >> $@
@echo '#include "../lib/lua-$(LUA_VERSION)/src/lauxlib.h"' >> $@
@echo '/*nhlua.h*/' >> $@
+lib/lua-$(LUA_VERSION)/src/lua.h:
+ echo "Please do 'make fetch-lua' to obtain lua-$(LUA_VERSION)"
+ false
# Note: many of the dependencies below are here to allow parallel make
# to generate valid output
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "# Type a script or drag a script file from your workspace to insert its path.\ncd \"${NH_INC_DIR}\"\necho '/* nhlua.h - generated by Xcode script */' > nhlua.h\necho '#include \"../lib/lua-5.4.2/src/lua.h\"' >> nhlua.h\nsed -e '/(lua_error)/!d' -e '/(lua_error)/s/;/ NORETURN;/1' < \"${NH_LIB_DIR}\"/lua-5.4.2/src/lua.h >> nhlua.h\necho '#include \"../lib/lua-5.4.2/src/lualib.h\"' >> nhlua.h\necho '#include \"../lib/lua-5.4.2/src/lauxlib.h\"' >> nhlua.h\necho '/*nhlua.h*/' >> nhlua.h\n";
+ shellScript = "# Type a script or drag a script file from your workspace to insert its path.\ncd \"${NH_INC_DIR}\"\necho '/* nhlua.h - generated by Xcode script */' > nhlua.h\necho '#include \"../lib/lua-5.4.3/src/lua.h\"' >> nhlua.h\nsed -e '/(lua_error)/!d' -e '/(lua_error)/s/;/ NORETURN;/1' < \"${NH_LIB_DIR}\"/lua-5.4.3/src/lua.h >> nhlua.h\necho '#include \"../lib/lua-5.4.3/src/lualib.h\"' >> nhlua.h\necho '#include \"../lib/lua-5.4.3/src/lauxlib.h\"' >> nhlua.h\necho '/*nhlua.h*/' >> nhlua.h\n";
};
544768B8239954B9004B9739 /* Build Lua library */ = {
isa = PBXShellScriptBuildPhase;
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "# Type a script or drag a script file from your workspace to insert its path.\ncd \"${NH_LIB_DIR}\"\nmkdir -p lua\ncd \"${NH_LIB_DIR}\"/lua-5.4.2/src\nmake a\ncp liblua.a ../../lua\ncd ../../..\n\n";
+ shellScript = "# Type a script or drag a script file from your workspace to insert its path.\ncd \"${NH_LIB_DIR}\"\nmkdir -p lua\ncd \"${NH_LIB_DIR}\"/lua-5.4.3/src\nmake a\ncp liblua.a ../../lua\ncd ../../..\n\n";
};
/* End PBXShellScriptBuildPhase section */
ifdef BUILD_TARGET_LUA
#===============-=================================================
# LUA library
-# Source from http://www.lua.org/ftp/lua-5.4.2.tar.gz
+# Source from http://www.lua.org/ftp/lua-5.4.3.tar.gz
#=================================================================
-LUA_VERSION ?=5.4.2
+LUA_VERSION ?=5.4.3
LUATOP ?= ../lib/lua-$(LUA_VERSION)
LUASRCDIR ?= $(LUATOP)/src
LUAOBJFILES1 = $(TARGETPFX)lapi.o $(TARGETPFX)lauxlib.o \
# 2. Then
# make CROSS_TO_MSDOS=1 WANT_WIN_TTY=1 WANT_WIN_CURSES=1 all
#
-# Source from http://www.lua.org/ftp/lua-5.4.2.tar.gz
+# Source from http://www.lua.org/ftp/lua-5.4.3.tar.gz
#=================================================================
CFLAGS += -DCROSSCOMPILE
| | |
+----+ +------+ +-----------+
| | | | | |
- share winnt tty win32 Lua-5.4.2 pdcurses
+ share winnt tty win32 Lua-5.4.3 pdcurses
|
vs
| Building And Running Using Visual Studio 2017 or 2019 |
\--------------------------------------------------------/
-Before proceeding, please obtain the lua-5.4.2 sources and copy them to
-the new directory lib\lua-5.4.2\src. This source can be obtain either from
-http://www.lua.org/ftp/lua-5.4.2.tar.gz or from the git hub mirror
-https://github.com/lua/lua.git using the tag 'v5.4.2'. The build expects
-to find lua files such as 'lua.h' at 'lib\lua-5.4.2\src\lua.h'.
+Before proceeding, please obtain the lua-5.4.3 sources and copy them to
+the new directory lib\lua-5.4.3\src. This source can be obtained either from
+http://www.lua.org/ftp/lua-5.4.3.tar.gz or from the git hub mirror
+https://github.com/lua/lua.git using the tag 'v5.4.3'. The build expects
+to find lua files such as 'lua.h' at 'lib\lua-5.4.3\src\lua.h'.
If you are NOT using Visual Studio 2017 or 2019 IDE, or you prefer to build
using a Make utility and a Makefile proceed to "Building Using Make".
#
#---------------------------------------------------------------
ifndef LUA_VERSION
-LUAVER=5.4.2
+LUAVER=5.4.3
else
LUAVER=$(LUA_VERSION)
endif
# Location of LUA
#
# Original source needs to be obtained from:
-# http://www.lua.org/ftp/lua-5.4.2.tar.gz
+# http://www.lua.org/ftp/lua-5.4.3.tar.gz
#
# This build assumes that the LUA sources are located
# at the specified location. If they are actually elsewhere
#===============-=================================================
# LUA library
-# Source from http://www.lua.org/ftp/lua-5.4.2.tar.gz
+# Source from http://www.lua.org/ftp/lua-5.4.3.tar.gz
#=================================================================
ifndef LUAVER
-LUAVER = 5.4.2
+LUAVER = 5.4.3
endif
ifndef LUASRC
LUASRC = $(LUATOP)/src
# This marks the end of the BUILD DECISIONS section.
#==============================================================================
!IFNDEF LUA_VERSION
-LUAVER=5.4.2
+LUAVER=5.4.3
!ELSE
LUAVER=$(LUA_VERSION)
!ENDIF
# Location of LUA
#
# Original source needs to be obtained from:
-# http://www.lua.org/ftp/lua-5.4.2.tar.gz
+# http://www.lua.org/ftp/lua-5.4.3.tar.gz
#
# This build assumes that the LUA sources are located
# at the specified location. If they are actually elsewhere
#===============-=================================================
# LUA library
-# Source from http://www.lua.org/ftp/lua-5.4.2.tar.gz
+# Source from http://www.lua.org/ftp/lua-5.4.3.tar.gz
#=================================================================
!IFNDEF LUAVER
!IF "$(LUATMP)" == "5.4.2"
LUAVER = 5.4.2
!ENDIF
+!IF "$(LUATMP)" == "5.4.3"
+LUAVER = 5.4.3
+!ENDIF
!ELSE
!ERROR NetHack 3.7 requires LUA so LUATOP must be defined
!ENDIF
!IF "$(LUATMP)" == "5.3.5"
LUAVER = 5.3.5
!ELSE
-LUAVER = 5.4.2
+LUAVER = 5.4.3
!ENDIF
!ENDIF
!ENDIF
cd lib
git clone --depth 1 https://github.com/wmcbrine/PDCurses.git pdcurses
#git clone --depth 1 https://github.com/universal-ctags/ctags.git ctags
-curl -R -O http://www.lua.org/ftp/lua-5.4.2.tar.gz
-tar zxf lua-5.4.2.tar.gz
+curl -R -O http://www.lua.org/ftp/lua-5.4.3.tar.gz
+tar zxf lua-5.4.3.tar.gz
cd ../
<PATCHLEVEL>0</PATCHLEVEL>
<LUA_MAJOR_VERSION>5</LUA_MAJOR_VERSION>
<LUA_MINOR_VERSION>4</LUA_MINOR_VERSION>
- <LUA_PATCH_LEVEL>2></LUA_PATCH_LEVEL>
+ <LUA_PATCH_LEVEL>3></LUA_PATCH_LEVEL>
<LUA_VERSION>$(LUA_MAJOR_VERSION).$(LUA_MINOR_VERSION).$(LUA_PATCH_LEVEL)</LUA_VERSION>
<ADD_PACKAGE>true</ADD_PACKAGE>
</PropertyGroup>
export LIB=/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/$VSVER/$TOOLSVER/VC/Tools/MSVC/$MSVER/lib/x86:$LIB
export LIB=/c/Program\ Files\ \(x86\)/Windows\ Kits/10/lib/$WKITVER/ucrt/x86:$LIB
export LIB=/c/Program\ Files\ \(x86\)/Windows\ Kits/10/lib/$WKITVER/um/x86:$LIB
-export LUA_VERSION=5.4.2
+export LUA_VERSION=5.4.3
mkdir -p lib
cd lib
git clone --depth 1 https://github.com/wmcbrine/PDCurses.git pdcurses