5.4.0
This commit is contained in:
parent
79c4e48904
commit
627e03f462
2
.gitignore
vendored
2
.gitignore
vendored
@ -14,3 +14,5 @@ lua-5.1.4/
|
||||
/lua-5.3.4.tar.gz
|
||||
/lua-5.3.4-tests.tar.gz
|
||||
/lua-5.3.5.tar.gz
|
||||
/lua-5.4.0.tar.gz
|
||||
/lua-5.4.0-tests.tar.gz
|
||||
|
54
lua-5.3.5-luac-shared-link-fix.patch
Normal file
54
lua-5.3.5-luac-shared-link-fix.patch
Normal file
@ -0,0 +1,54 @@
|
||||
diff -up lua-5.3.5/src/lopcodes.c.luac-shared lua-5.3.5/src/lopcodes.c
|
||||
--- lua-5.3.5/src/lopcodes.c.luac-shared 2019-10-23 15:36:44.487204487 -0400
|
||||
+++ lua-5.3.5/src/lopcodes.c 2019-10-23 15:37:44.029960930 -0400
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
/* ORDER OP */
|
||||
|
||||
-LUAI_DDEF const char *const luaP_opnames[NUM_OPCODES+1] = {
|
||||
+LUA_API const char *const luaP_opnames[NUM_OPCODES+1] = {
|
||||
"MOVE",
|
||||
"LOADK",
|
||||
"LOADKX",
|
||||
@@ -71,7 +71,7 @@ LUAI_DDEF const char *const luaP_opnames
|
||||
|
||||
#define opmode(t,a,b,c,m) (((t)<<7) | ((a)<<6) | ((b)<<4) | ((c)<<2) | (m))
|
||||
|
||||
-LUAI_DDEF const lu_byte luaP_opmodes[NUM_OPCODES] = {
|
||||
+LUA_API const lu_byte luaP_opmodes[NUM_OPCODES] = {
|
||||
/* T A B C mode opcode */
|
||||
opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_MOVE */
|
||||
,opmode(0, 1, OpArgK, OpArgN, iABx) /* OP_LOADK */
|
||||
diff -up lua-5.3.5/src/lopcodes.h.luac-shared lua-5.3.5/src/lopcodes.h
|
||||
--- lua-5.3.5/src/lopcodes.h.luac-shared 2019-10-23 15:37:52.982773948 -0400
|
||||
+++ lua-5.3.5/src/lopcodes.h 2019-10-23 15:38:17.861254367 -0400
|
||||
@@ -278,7 +278,7 @@ enum OpArgMask {
|
||||
OpArgK /* argument is a constant or register/constant */
|
||||
};
|
||||
|
||||
-LUAI_DDEC const lu_byte luaP_opmodes[NUM_OPCODES];
|
||||
+LUA_API const lu_byte luaP_opmodes[NUM_OPCODES];
|
||||
|
||||
#define getOpMode(m) (cast(enum OpMode, luaP_opmodes[m] & 3))
|
||||
#define getBMode(m) (cast(enum OpArgMask, (luaP_opmodes[m] >> 4) & 3))
|
||||
@@ -287,7 +287,7 @@ LUAI_DDEC const lu_byte luaP_opmodes[NUM
|
||||
#define testTMode(m) (luaP_opmodes[m] & (1 << 7))
|
||||
|
||||
|
||||
-LUAI_DDEC const char *const luaP_opnames[NUM_OPCODES+1]; /* opcode names */
|
||||
+LUA_API const char *const luaP_opnames[NUM_OPCODES+1]; /* opcode names */
|
||||
|
||||
|
||||
/* number of list items to accumulate before a SETLIST instruction */
|
||||
diff -up lua-5.3.5/src/lundump.h.luac-shared lua-5.3.5/src/lundump.h
|
||||
--- lua-5.3.5/src/lundump.h.luac-shared 2019-10-23 15:38:46.707651903 -0400
|
||||
+++ lua-5.3.5/src/lundump.h 2019-10-23 15:39:07.044227180 -0400
|
||||
@@ -26,7 +26,7 @@
|
||||
LUAI_FUNC LClosure* luaU_undump (lua_State* L, ZIO* Z, const char* name);
|
||||
|
||||
/* dump one chunk; from ldump.c */
|
||||
-LUAI_FUNC int luaU_dump (lua_State* L, const Proto* f, lua_Writer w,
|
||||
+LUA_API int luaU_dump (lua_State* L, const Proto* f, lua_Writer w,
|
||||
void* data, int strip);
|
||||
|
||||
#endif
|
192
lua-5.4.0-beta-autotoolize.patch
Normal file
192
lua-5.4.0-beta-autotoolize.patch
Normal file
@ -0,0 +1,192 @@
|
||||
diff -up lua-5.4.0-beta/configure.ac.autoxxx lua-5.4.0-beta/configure.ac
|
||||
--- lua-5.4.0-beta/configure.ac.autoxxx 2019-10-23 15:03:13.296916443 -0400
|
||||
+++ lua-5.4.0-beta/configure.ac 2019-10-23 15:03:13.296916443 -0400
|
||||
@@ -0,0 +1,69 @@
|
||||
+AC_PREREQ(2.59)
|
||||
+AC_INIT([lua], [5.4.0], [https://bugzilla.redhat.com/], [lua-at], [http://www.lua.org])
|
||||
+AC_SUBST([MAJOR_VERSION], [5.4])
|
||||
+
|
||||
+AC_CONFIG_HEADERS([config.h])
|
||||
+AC_CONFIG_SRCDIR([src/lapi.c])
|
||||
+
|
||||
+AM_INIT_AUTOMAKE([1.9 foreign])
|
||||
+
|
||||
+AC_PROG_CC
|
||||
+AC_PROG_LIBTOOL
|
||||
+
|
||||
+AC_ARG_WITH(
|
||||
+ [readline],
|
||||
+ [AC_HELP_STRING([--with-readline], [Use readline for interpreter input [default=yes]])],
|
||||
+ [use_readline=$withval],
|
||||
+ [use_readline=yes]
|
||||
+)
|
||||
+
|
||||
+LUA_LIBS="-lm"
|
||||
+
|
||||
+# Check for readline
|
||||
+READLINE_DEFS="#undef LUA_USE_READLINE"
|
||||
+if test "x$use_readline" == "xyes"; then
|
||||
+ AC_CHECK_LIB([readline], [readline], [:], [use_readline=no], [-lncurses])
|
||||
+ AC_CHECK_HEADERS([readline/readline.h readline/history.h], [], [use_readline=no])
|
||||
+ if test "x$use_readline" == "xno"; then
|
||||
+ AC_MSG_WARN([readline headers could not be found, disabling readline support])
|
||||
+ else
|
||||
+ READLINE_DEFS="#define LUA_USE_READLINE"
|
||||
+ READLINE_LIBS="-lreadline -lncurses"
|
||||
+ fi
|
||||
+fi
|
||||
+AC_SUBST(READLINE_DEFS)
|
||||
+AC_SUBST(READLINE_LIBS)
|
||||
+
|
||||
+case "$host" in
|
||||
+ *-mingw*) use_os=win32 ;;
|
||||
+ *-darwin*) use_os=macosx ;;
|
||||
+ *) use_os=posix ;;
|
||||
+esac
|
||||
+
|
||||
+POSIX_DEFS="#undef LUA_USE_POSIX"
|
||||
+LUA_DL_DEFS="#undef LUA_USE_DLOPEN"
|
||||
+LUA_BUILD_AS_DLL_DEFS="#undef LUA_BUILD_AS_DLL"
|
||||
+
|
||||
+if test "x$use_os" == "xwin32"; then
|
||||
+ LUA_BUILD_AS_DLL_DEFS="#define LUA_BUILD_AS_DLL"
|
||||
+elif test "x$use_os" == "xmacosx"; then
|
||||
+ POSIX_DEFS="#define LUA_USE_POSIX"
|
||||
+ LUA_DL_DEFS="#define LUA_DL_DYLD"
|
||||
+elif test "x$use_os" == "xposix"; then
|
||||
+ POSIX_DEFS="#define LUA_USE_POSIX"
|
||||
+ LUA_DL_DEFS="#define LUA_DL_DLOPEN"
|
||||
+ LUA_LIBS="$LUA_LIBS -ldl"
|
||||
+fi
|
||||
+AC_SUBST(POSIX_DEFS)
|
||||
+AC_SUBST(LUA_DL_DEFS)
|
||||
+AC_SUBST(LUA_BUILD_AS_DLL_DEFS)
|
||||
+
|
||||
+AC_SUBST(LUA_LIBS)
|
||||
+
|
||||
+AC_CONFIG_FILES([Makefile
|
||||
+ src/Makefile
|
||||
+ src/lua.pc
|
||||
+ src/luaconf.h.template
|
||||
+ doc/Makefile
|
||||
+])
|
||||
+AC_OUTPUT
|
||||
diff -up lua-5.4.0-beta/doc/Makefile.am.autoxxx lua-5.4.0-beta/doc/Makefile.am
|
||||
--- lua-5.4.0-beta/doc/Makefile.am.autoxxx 2019-10-23 15:03:13.296916443 -0400
|
||||
+++ lua-5.4.0-beta/doc/Makefile.am 2019-10-23 15:03:13.296916443 -0400
|
||||
@@ -0,0 +1,4 @@
|
||||
+man1_MANS = lua.1 luac.1
|
||||
+
|
||||
+EXTRA_DIST = \
|
||||
+ contents.html logo.gif lua.1 luac.1 lua.css manual.css manual.html osi-certified-72x60.png readme.html
|
||||
diff -up lua-5.4.0-beta/Makefile.am.autoxxx lua-5.4.0-beta/Makefile.am
|
||||
--- lua-5.4.0-beta/Makefile.am.autoxxx 2019-10-23 15:03:13.296916443 -0400
|
||||
+++ lua-5.4.0-beta/Makefile.am 2019-10-23 15:03:13.296916443 -0400
|
||||
@@ -0,0 +1,3 @@
|
||||
+SUBDIRS = src doc
|
||||
+
|
||||
+EXTRA_DIST = README
|
||||
diff -up lua-5.4.0-beta/src/.gitignore.autoxxx lua-5.4.0-beta/src/.gitignore
|
||||
--- lua-5.4.0-beta/src/.gitignore.autoxxx 2019-10-23 15:03:13.297916423 -0400
|
||||
+++ lua-5.4.0-beta/src/.gitignore 2019-10-23 15:03:13.296916443 -0400
|
||||
@@ -0,0 +1,5 @@
|
||||
+lua
|
||||
+lua.pc
|
||||
+luac
|
||||
+luaconf.h
|
||||
+luaconf.h.template
|
||||
diff -up lua-5.4.0-beta/src/luaconf.h.template.in.autoxxx lua-5.4.0-beta/src/luaconf.h.template.in
|
||||
--- lua-5.4.0-beta/src/luaconf.h.template.in.autoxxx 2019-09-30 19:52:16.000000000 -0400
|
||||
+++ lua-5.4.0-beta/src/luaconf.h.template.in 2019-10-23 15:05:45.139817627 -0400
|
||||
@@ -11,6 +11,11 @@
|
||||
#include <limits.h>
|
||||
#include <stddef.h>
|
||||
|
||||
+@POSIX_DEFS@
|
||||
+@LUA_DL_DEFS@
|
||||
+@LUA_BUILD_AS_DLL_DEFS@
|
||||
+@READLINE_DEFS@
|
||||
+
|
||||
|
||||
/*
|
||||
** ===================================================================
|
||||
@@ -227,9 +232,9 @@
|
||||
|
||||
#else /* }{ */
|
||||
|
||||
-#define LUA_ROOT "/usr/local/"
|
||||
-#define LUA_LDIR LUA_ROOT "share/lua/" LUA_VDIR "/"
|
||||
-#define LUA_CDIR LUA_ROOT "lib/lua/" LUA_VDIR "/"
|
||||
+#define LUA_ROOT "@prefix@/"
|
||||
+#define LUA_LDIR "@pkgdatadir@/lua/" LUA_VDIR "/"
|
||||
+#define LUA_CDIR "@libdir@/lua/" LUA_VDIR "/"
|
||||
|
||||
#if !defined(LUA_PATH_DEFAULT)
|
||||
#define LUA_PATH_DEFAULT \
|
||||
diff -up lua-5.4.0-beta/src/lua.pc.in.autoxxx lua-5.4.0-beta/src/lua.pc.in
|
||||
--- lua-5.4.0-beta/src/lua.pc.in.autoxxx 2019-10-23 15:03:13.297916423 -0400
|
||||
+++ lua-5.4.0-beta/src/lua.pc.in 2019-10-23 15:03:13.297916423 -0400
|
||||
@@ -0,0 +1,13 @@
|
||||
+V= @MAJOR_VERSION@
|
||||
+R= @VERSION@
|
||||
+prefix= @prefix@
|
||||
+exec_prefix=${prefix}
|
||||
+libdir= @libdir@
|
||||
+includedir=${prefix}/include
|
||||
+
|
||||
+Name: Lua
|
||||
+Description: An Extensible Extension Language
|
||||
+Version: ${R}
|
||||
+Requires:
|
||||
+Libs: -llua @LUA_LIBS@
|
||||
+Cflags: -I${includedir}
|
||||
diff -up lua-5.4.0-beta/src/Makefile.am.autoxxx lua-5.4.0-beta/src/Makefile.am
|
||||
--- lua-5.4.0-beta/src/Makefile.am.autoxxx 2019-10-23 15:03:13.297916423 -0400
|
||||
+++ lua-5.4.0-beta/src/Makefile.am 2019-10-23 15:03:13.297916423 -0400
|
||||
@@ -0,0 +1,46 @@
|
||||
+AM_CFLAGS = -Wall
|
||||
+
|
||||
+include_HEADERS = lua.h lualib.h lauxlib.h lua.hpp
|
||||
+
|
||||
+nodist_include_HEADERS = luaconf.h
|
||||
+
|
||||
+lib_LTLIBRARIES = liblua.la
|
||||
+liblua_la_LDFLAGS = -release @MAJOR_VERSION@
|
||||
+liblua_la_SOURCES = \
|
||||
+ lapi.c lauxlib.c lbaselib.c lcode.c lcorolib.c lctype.c ldblib.c \
|
||||
+ ldebug.c ldo.c ldump.c lfunc.c lgc.c linit.c liolib.c llex.c lmathlib.c lmem.c \
|
||||
+ loadlib.c lobject.c lopcodes.c loslib.c lparser.c lstate.c lstring.c lstrlib.c \
|
||||
+ ltable.c ltablib.c ltm.c lundump.c lutf8lib.c lvm.c lzio.c \
|
||||
+ lapi.h lcode.h lctype.h ldebug.h ldo.h lfunc.h lgc.h llex.h llimits.h \
|
||||
+ lmem.h lobject.h lopcodes.h lparser.h lstate.h lstring.h ltable.h ltm.h \
|
||||
+ lundump.h lvm.h lzio.h
|
||||
+
|
||||
+pkgconfigdir = $(libdir)/pkgconfig
|
||||
+pkgconfig_DATA = lua.pc
|
||||
+
|
||||
+bin_PROGRAMS = lua luac
|
||||
+
|
||||
+lua_SOURCES = lua.c
|
||||
+lua_LDADD = liblua.la @LUA_LIBS@ @READLINE_LIBS@
|
||||
+lua_DEPENDENCIES = liblua.la
|
||||
+
|
||||
+luac_SOURCES = luac.c
|
||||
+# Statically link liblua against luac since luac uses symbols not exported in liblua
|
||||
+luac_LDADD = .libs/liblua.a @LUA_LIBS@
|
||||
+luac_DEPENDENCIES = liblua.la
|
||||
+
|
||||
+EXTRA_DIST = luaconf.h.template
|
||||
+BUILT_SOURCES = luaconf.h
|
||||
+CLEANFILES = luaconf.h luaconf.h.template
|
||||
+
|
||||
+readline_defs = @READLINE_DEFS@
|
||||
+
|
||||
+edit = sed \
|
||||
+ -e 's,%prefix%,$(prefix),g' \
|
||||
+ -e 's,%lua_datadir%,$(datadir),g' \
|
||||
+ -e 's,%lua_libdir%,$(libdir),g'
|
||||
+
|
||||
+luaconf.h : luaconf.h.template
|
||||
+ rm -f $@ $@.tmp
|
||||
+ $(edit) $< >$@.tmp
|
||||
+ mv $@.tmp $@
|
38
lua.spec
38
lua.spec
@ -1,21 +1,21 @@
|
||||
%global major_version 5.3
|
||||
%global major_version 5.4
|
||||
# Normally, this is the same as version, but... not always.
|
||||
# No tests yet for 5.3.5
|
||||
%global test_version 5.3.4
|
||||
%global test_version 5.4.0
|
||||
# If you are incrementing major_version, enable bootstrapping and adjust accordingly.
|
||||
# Version should be the latest prior build. If you don't do this, RPM will break and
|
||||
# everything will grind to a halt.
|
||||
%global bootstrap 0
|
||||
%global bootstrap_major_version 5.2
|
||||
%global bootstrap_version %{bootstrap_major_version}.3
|
||||
%global bootstrap 1
|
||||
%global bootstrap_major_version 5.3
|
||||
%global bootstrap_version %{bootstrap_major_version}.5
|
||||
|
||||
# Place rpm-macros into proper location.
|
||||
%global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d)
|
||||
|
||||
|
||||
Name: lua
|
||||
Version: %{major_version}.5
|
||||
Release: 6%{?dist}
|
||||
Version: %{major_version}.0
|
||||
Release: 1%{?dist}
|
||||
Summary: Powerful light-weight programming language
|
||||
License: MIT
|
||||
URL: http://www.lua.org/
|
||||
@ -30,18 +30,15 @@ Source3: http://www.lua.org/tests/lua-%{test_version}-tests.tar.gz
|
||||
Source4: luaconf.h
|
||||
# rpm-macro
|
||||
Source1000: macros.lua
|
||||
Patch0: %{name}-5.3.0-autotoolize.patch
|
||||
Patch0: %{name}-5.4.0-beta-autotoolize.patch
|
||||
Patch1: %{name}-5.3.0-idsize.patch
|
||||
#Patch2: %%{name}-5.3.0-luac-shared-link-fix.patch
|
||||
Patch3: %{name}-5.2.2-configure-linux.patch
|
||||
Patch4: %{name}-5.3.0-configure-compat-module.patch
|
||||
%if 0%{?bootstrap}
|
||||
Patch5: %{name}-5.2.3-autotoolize.patch
|
||||
Patch6: %{name}-5.2.2-idsize.patch
|
||||
Patch7: %{name}-5.2.2-luac-shared-link-fix.patch
|
||||
Patch8: %{name}-5.2.2-configure-compat-module.patch
|
||||
Patch5: %{name}-5.3.0-autotoolize.patch
|
||||
Patch6: %{name}-5.3.5-luac-shared-link-fix.patch
|
||||
%endif
|
||||
Patch9: CVE-2019-6706-use-after-free-lua_upvaluejoin.patch
|
||||
|
||||
BuildRequires: automake autoconf libtool readline-devel ncurses-devel
|
||||
Requires: lua-libs = %{version}-%{release}
|
||||
@ -81,7 +78,7 @@ This package contains the static version of liblua for %{name}.
|
||||
|
||||
%prep
|
||||
%if 0%{?bootstrap}
|
||||
%setup -q -a 2 -a 3
|
||||
%setup -q -a 2 -a 3 -n %{name}-%{version}
|
||||
%else
|
||||
%setup -q -a 3
|
||||
%endif
|
||||
@ -92,7 +89,6 @@ mv src/luaconf.h src/luaconf.h.template.in
|
||||
#%% patch2 -p1 -z .luac-shared
|
||||
%patch3 -p1 -z .configure-linux
|
||||
%patch4 -p1 -z .configure-compat-all
|
||||
%patch9 -p1 -b .CVE-2019-6706
|
||||
# Put proper version in configure.ac, patch0 hardcodes 5.3.0
|
||||
sed -i 's|5.3.0|%{version}|g' configure.ac
|
||||
autoreconf -ifv
|
||||
@ -101,10 +97,10 @@ autoreconf -ifv
|
||||
cd lua-%{bootstrap_version}/
|
||||
mv src/luaconf.h src/luaconf.h.template.in
|
||||
%patch5 -p1 -b .autoxxx
|
||||
%patch6 -p1 -b .idsize
|
||||
%patch7 -p1 -b .luac-shared
|
||||
%patch1 -p1 -b .idsize
|
||||
%patch3 -p1 -z .configure-linux
|
||||
%patch8 -p1 -z .configure-compat-all
|
||||
%patch4 -p1 -z .configure-compat-all
|
||||
%patch6 -p1 -b .luac-shared-link-fix
|
||||
autoreconf -i
|
||||
cd ..
|
||||
%endif
|
||||
@ -214,6 +210,12 @@ install -Dpm 0644 %{SOURCE1000} $RPM_BUILD_ROOT/%{macrosdir}/macros.lua
|
||||
|
||||
|
||||
%changelog
|
||||
* Mon Jun 29 2020 Tom Callaway <spot@fedoraproject.org> - 5.4.0-1
|
||||
- update to 5.4.0
|
||||
|
||||
* Wed Oct 23 2019 Tom Callaway <spot@fedoraproject.org> - 5.4.0-0.1.beta
|
||||
- 5.4.0-beta
|
||||
|
||||
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.3.5-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
|
4
sources
4
sources
@ -1,3 +1,3 @@
|
||||
SHA512 (lua-5.2.3.tar.gz) = 264bb7c8db2f190ef0ca38584ec81999ab588f54e03119c5214c40bb8925b0eb407fac483a03e40cc8a220f6748ddff7d3a7392da3803418276b0d263b866449
|
||||
SHA512 (lua-5.3.4-tests.tar.gz) = 79575d100a2efabc8243f55b55d912443e09ef7e8b0219cb93541d85c2ba802fb9538015e1228703f09ca57bdb28a640a8f1fa0735716ba1e4bca2179c712dfb
|
||||
SHA512 (lua-5.3.5.tar.gz) = 4f9516acc4659dfd0a9e911bfa00c0788f0ad9348e5724fe8fb17aac59e9c0060a64378f82be86f8534e49c6c013e7488ad17321bafcc787831d3d67406bd0f4
|
||||
SHA512 (lua-5.4.0.tar.gz) = 22aa0f9fcf953fc49c97bf50a4cee708b458e8a95447f881037b2c6ddd60e40368a807f2575671c6cd7497cedc2cf5716a8959c196445bf9a359fe7ebcd65465
|
||||
SHA512 (lua-5.4.0-tests.tar.gz) = a4529138b581057890b06bf27804648fe720ebceee071b506ffcf0daa6f14bed6ce297adca7e5b2c37321e97e93019706ff1cd68ef1347ae4b367e0ee2b70c96
|
||||
|
Loading…
Reference in New Issue
Block a user