From e034b3b92a49fe23f9b8e19b9d41448c8e32a991 Mon Sep 17 00:00:00 2001 From: "B. Stack" Date: Mon, 4 Apr 2022 17:07:01 -0400 Subject: scite 5.2.2 with emitunicode patch, for fedora --- scite-fedora/README.md | 20 ++- scite-fedora/add-emitUnicode.patch | 16 +++ scite-fedora/emitUnicode.lua | 247 ++++++++++++++++++++++++++++++++++ scite-fedora/scite.spec | 107 ++++++++++----- scite-fedora/use-lua5.4.4.patch | 266 +++++++++++++++++++++++++++++++++++++ 5 files changed, 616 insertions(+), 40 deletions(-) create mode 100644 scite-fedora/add-emitUnicode.patch create mode 100644 scite-fedora/emitUnicode.lua create mode 100644 scite-fedora/use-lua5.4.4.patch diff --git a/scite-fedora/README.md b/scite-fedora/README.md index 853489a..766ff41 100644 --- a/scite-fedora/README.md +++ b/scite-fedora/README.md @@ -4,21 +4,27 @@ https://src.fedoraproject.org/rpms/scite/tree/f29 # Reason for being in stackrpms Fedora and CentOS do not package scite and I have use of them. CentOS 7 relies on version 3 of the application, but CentOS 8 and Fedora relies on version 5. +Devuan Ceres already packages [scite](https://salsa.debian.org/debian/scite) but I want to add some customizations for myself. + # Reverse dependency matrix -Distro | scite version ----------- | --------------- -CentOS 6 | 3.7.6 -CentOS 7 | 3.7.6 -CentOS 8 | 5.1.3 -Fedora 33 | 5.1.3 +Distro | scite version +------------ | --------------- +CentOS 6 | 3.7.6 +CentOS 7 | 3.7.6 +CentOS 8 | 5.2.2 +Fedora 34 | 5.2.2 +Devuan Ceres | 5.2.2 # References void linux [scite](https://github.com/void-linux/void-packages/blob/master/srcpkgs/scite/template) package guided me at version 5.0.1. # Differences -## From upstream +## From upstream for Fedora See file [stackrpms-scite.spec.diff](stackrpms-scite.spec.diff) ## Between scite-fedora and scite-el Run file [fc-el-scite-diff.sh](fc-el-scite-diff.sh). scite-fedora/fc-el-scite-diff.sh | vi - + +## From upstream for Devuan + diff --git a/scite-fedora/add-emitUnicode.patch b/scite-fedora/add-emitUnicode.patch new file mode 100644 index 0000000..faff06d --- /dev/null +++ b/scite-fedora/add-emitUnicode.patch @@ -0,0 +1,16 @@ +--- a/scite/src/SciTEGlobal.properties 2022-03-30 20:48:24.000000000 -0400 ++++ b/scite/src/SciTEGlobal.properties 2022-04-04 10:14:32.803893680 -0400 +@@ -550,6 +550,13 @@ + # The set of imports allowed can be set with + #imports.include=ave + ++ext.lua.startup.script=$(SciteDefaultHome)/emitUnicode.lua ++command.name.8.*=Emit UTF8 Unicode ++command.subsystem.8.*=3 ++command.8.*=emitUtf8UnicodeIntoTheSciteEditor ++command.mode.8.*=savebefore:no ++command.shortcut.8.*=Ctrl+U ++ + # Import all the language specific properties files in this directory + import * + diff --git a/scite-fedora/emitUnicode.lua b/scite-fedora/emitUnicode.lua new file mode 100644 index 0000000..70d32b1 --- /dev/null +++ b/scite-fedora/emitUnicode.lua @@ -0,0 +1,247 @@ +-- DESCRIPTION: +-- Unicode hexadecimal table: https://example.com/copied/unicode.html +-- Source: http://lua-users.org/wiki/SciteUnicodeInput http://sourceforge.net/projects/emitunicodeinscite/ +-- Future reference: http://lua-users.org/wiki/SciteScripts +-- +-- This lua script adds utf8 unicode input, to the scite text editor. +-- +-- The scite text editor should be set to use the UTF-8 encoding +-- , because this script adds utf8, into the text buffer of the +-- scite editor. Select File->Encoding->UTF-8, from the +-- menu bar of scite. +-- +-- For example, it will be possible that you type 2200 CTRL+U +-- , and 2200 is replaced to ∀; (U+2200), in the scite editor. +-- +-- ______________________________________________________________________________ +-- +-- INSTALL: +-- +-- To have scite running this script each time you press Ctrl+U, add next lines +-- into your ~/SciTEUser.properties file, where ~ is your home directory. +-- FILE ~/SciTEUser.properties: +--[[ +ext.lua.startup.script=$(SciteUserHome)/emitUtf8UnicodeIntoTheSciteEditor.lua +command.name.8.*=Emit UTF8 Unicode +command.subsystem.8.*=3 +command.8.*=emitUtf8UnicodeIntoTheSciteEditor +command.mode.8.*=savebefore:no +command.shortcut.8.*=Ctrl+U +--]] +-- ______________________________________________________________________________ +-- THE LUA CODE: +-- +-- Next is the definition of the lua function that is called by scite +-- when CTRL+U is pressed, to replace unicode endpoint encoding, with +-- utf8 encoding of the unicode endpoint. +-- ______________________________________________________________________________ + + +-- Computes the utf8 encoding for a unicode codepoint u +-- , when 0 <= u <= 0x7f +-- +-- @param unicodeValue the unicode codepoint u +-- +-- @return the utf8 encoding of the unicode codepoint u +function case1UnicodeToUtf8(unicodeValue) + --print('case 1') + local u = unicodeValue + local byte0 = (u % 0x80) + local utf8 = string.char(byte0) + return utf8 +end + +-- ______________________________________________________________________________ +-- Computes the utf8 encoding for a unicode codepoint u +-- , when 0x80 <= u <= 0x7ff +-- +-- @param unicodeValue the unicode codepoint u +-- +-- @return the utf8 encoding of the unicode codepoint u +function case2UnicodeToUtf8(unicodeValue) + --print('case 2') + local u = unicodeValue + local byte1 = (0x80 + (u % 0x40) ) + u = math.floor(u / 0x40) + local byte0 = (0xc0 + (u % 0x20) ) + local utf8 = string.char(byte0, byte1) + return utf8 +end + +-- ______________________________________________________________________________ +-- Computes the utf8 encoding for a unicode codepoint u +-- , when 0x800 <= u <= 0xffff. +-- +-- @param unicodeValue the unicode codepoint u +-- +-- @return the utf8 encoding of the unicode codepoint u +function case3UnicodeToUtf8(unicodeValue) + local u = unicodeValue + local byte2 = (0x80 + (u % 0x40)) + -- print('byte2: '..byte2) + u = math.floor(u / 0x40) + local byte1 = (0x80 + (u % 0x40)) + -- print('byte1: '..byte1) + u = math.floor(u / 0x40) + local byte0 = (0xe0 + (u % 0x10)) + -- print('byte0: '..byte0) + local utf8 = string.char(byte0, byte1, byte2) + return utf8 +end + +-- ______________________________________________________________________________ +-- Computes the utf8 encoding for a unicode codepoint u +-- , when 0x10000 <= u <= 0x10ffff. +-- +-- @param unicodeValue the unicode codepoint u +-- +-- @return the utf8 encoding of the unicode codepoint u +function case4UnicodeToUtf8(unicodeValue) + local u = unicodeValue + local byte3 = (0x80 + (u % 0x40)) + u = math.floor(u / 0x40) + local byte2 = (0x80 + (u % 0x40)) + u = math.floor(u / 0x40) + local byte1 = (0x80 + (u % 0x40)) + u = math.floor(u / 0x40) + local byte0 = (0xf0 + (u % 0x8)) + local utf8 = string.char(byte0, byte1, byte2, byte3) + return utf8 +end + +-- ______________________________________________________________________________ +-- Converts a unicode integer value, into a utf8 string value. +-- +-- The unicode integer value is an integer that +-- is greater than or equal to zero. +-- +-- The utf8 string value is a string that is a sequence of +-- 8 bits characters that give the utf8 encoding of the +-- unicode codepoint given by the unicode integer value. +-- +-- @param unicodeValue the unicode integer value; +-- a unicode codepoint +-- +-- @return the utf8 encoding of the unicode codepoint +-- provided by the unicodeValue input argument +function unicodeToUtf8(unicodeValue) + local u = unicodeValue + if ((0x800 <= u) and (0xffff >= u)) + then + return case3UnicodeToUtf8(u) + end + if ((0x80 <= u) and (0x7fff >= u)) + then + return case2UnicodeToUtf8(u) + end + if ((0x0 <= u) and (0x7f >= u)) + then + return case1UnicodeToUtf8(u) + end + if( (0x10000 <= u) and (0x10ffff >= u) ) + then + return case4UnicodeToUtf8(u) + end + return nil +end + +-- ______________________________________________________________________________ +-- Peeks (reads) the character at position i, in the Scite Editor. +-- If the character is the ascii name of a hex digit, it returns +-- the corresponding hex digit, otherwise it returns nil. +-- +-- @param i position in the Scite Editor +-- @return hex digit at position i, or nil +function peekHexdigit(i) + local e = editor + local asciiCode = e.CharAt[i] + if((0>asciiCode) or (0xff < asciiCode)) + then + return nil + end + local charValue = string.char(asciiCode) + local hexDigit = tonumber(charValue,0x10) + return hexDigit -- may be nil +end + +-- ______________________________________________________________________________ +-- Reads the sequence of maximum length at most 5, at the left of the cursor +-- in the Scite Editor. +-- Encodes the longest suffix of this sequence, that is a hex number, into +-- the utf encoding of this hex number. +-- Replaces this longest suffix, with the utf8 sequence. +-- +-- @return true a suffix of length greater than zero, at most 5 existed +-- and was replaced with the utf8 encoding of the number it +-- represented +-- +-- false , when no such suffix existed +function emitUtf8Unicode() + local e = editor + local n = e.TextLength + local i = e.CurrentPos + local maxlen = 5 + if ((0 == n) or (1 > i)) + then + return nil -- Success. No request + end + local len = 1 + local len2 = 0 + local u = 0 + local thePower = 1 + while ( (len <= maxlen) + and (0 <= (i - len) ) + ) + do + local hexDigit = peekHexdigit(i-len,u) + if (nil == hexDigit) + then + break -- out of the while loop + end + u = ( u + (thePower * hexDigit) ) + thePower = (0x10 * thePower ) + len2 = len + --print("u: "..u) + len = len + 1 + end + if (0 == len2) + then + return nil -- Failure. No unicode + end + utf8 = unicodeToUtf8(u) + if(nil == utf8) + then + return nil -- Failure. Unicode to utf8 conversion failed. + end + e:SetSel(i-len2,i) + e:ReplaceSel(utf8) + --print("utf8: "..utf8) + return true -- Success. +end + +-- ______________________________________________________________________________ +-- Emits utf8 encoding in the place of the unicode codepoint +-- in the editor, at the left of the cursor. +-- +-- Writes a message to the Output pane, if no codepoint existed +-- at the left of the cursor. +-- +function emitUtf8UnicodeIntoTheSciteEditor() + local ok = emitUtf8Unicode() + if not ok + then + --print("Failed to encode unicode into text editor.") + end +end + +-- ______________________________________________________________________________ +-- +-- Following web pages were useful in writing the lua scite script. +-- +-- http://lua-users.org/wiki/UsingLuaWithScite +-- http://www.scintilla.org/PaneAPI.html +-- http://www.lua.org/manual/5.1/manual.html#pdf-tonumber +-- https://en.wikipedia.org/wiki/UTF-8 +-- +-- http://lua-users.org/lists/lua-l/2007-08/msg00276.html +-- http://keplerproject.github.io/luadoc/ diff --git a/scite-fedora/scite.spec b/scite-fedora/scite.spec index 1b6a692..fe90350 100644 --- a/scite-fedora/scite.spec +++ b/scite-fedora/scite.spec @@ -1,14 +1,41 @@ -# el is on 3.x, fc is on 5.x -%global pkgversion 5.2.1 +# Tunables +# el7 is on 3.x, el8/fc is on 5.x +%global pkgversion 5.2.2 +# Use lua +%define with_lua 1 +# Use bundled lua. If 0, then use distro lua +%define with_bundled_lua 0 +# Add my emitUnicode lua script +%define with_emitunicode 1 +# Choose GTK=2 or GTK=3. El6 is hardcoded to 2. +%define gtk_ 3 + +# Calculated or derived flags. Do not mess with these. %define tarballversion %( echo %pkgversion | tr -d '.' ) +%define luaflag NO_LUA=1 +%if 0%{with_lua} +%define luaflag %nil +%endif +%define gtkflag GTK3=1 +%if 0%{gtk_} == 2 +%define gtkflag %nil +%endif +# Turn off lto for local builds but leave them on for copr +%if !0%{?copr_username:1} +%global _lto_cflags %nil +%endif %global __brp_check_rpaths %{nil} - %define scl_env %{nil} %define scl_buildreq coreutils %if 0%{?el6} %define scl_env devtoolset-7 %define scl_buildreq devtoolset-7-toolchain + %define gtk_ 2 %endif +%global all_build_flags '%{?_smp_mflags} LDFLAGS="%{?__global_ldflags} -shared -dynamiclib" \ + CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" %{gtkflag} DEBUG=1 %{luaflag} libdir=%{_libdir}' +# Just for vim: +#' Name: scite Version: %{pkgversion} @@ -20,15 +47,26 @@ Url: http://www.scintilla.org/SciTE.html Packager: B. Stack Source0: https://www.scintilla.org/scite%{tarballversion}.tgz +%if 0%{with_emitunicode} +Source1: emitUnicode.lua +%endif Patch0: scite-utf8.patch +Patch1: add-emitUnicode.patch +%if 0%{with_lua} && !0%{with_bundled_lua} +Patch2: use-lua5.4.4.patch +%endif BuildRequires: desktop-file-utils BuildRequires: gcc-c++ BuildRequires: %{scl_buildreq} -%if !0%{?el6} +%if 0%{gtk_} == 3 BuildRequires: gtk3-devel -%endif +%else BuildRequires: gtk2-devel +%endif +%if 0%{with_lua} && !0%{with_bundled_lua} +BuildRequires: lua-devel +%endif Provides: bundled(scintilla) = %{version} @@ -38,41 +76,37 @@ Scintilla, it has grown to be a generally useful editor with facilities for building and running programs. %prep +echo "USING gtkflag=\"%{gtkflag}\"" %setup -q -c %patch0 +%if !0%{with_lua} #remove bundled lua rm -rf scite/lua +%else +%if !0%{with_bundled_lua} +# Use distro lua +rm -rf scite/lua +%patch2 -p1 +%endif +%endif +%patch1 -p1 %build - -%if 0%{?el6} - %if "%{?scl_env}" != "" - scl enable %{scl_env} /bin/bash <<'EOFSCL' - %endif - make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags} -shared -dynamiclib" \ - CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" DEBUG=1 -C lexilla/src \ - libdir=%{_libdir} - make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags} -shared -dynamiclib" \ - CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" DEBUG=1 -C scintilla/gtk \ - libdir=%{_libdir} - #Build without lua support - make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags}" \ - CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" DEBUG=1 NO_LUA=1 -C scite/gtk \ - libdir=%{_libdir} - %if "%{?scl_env}" != "" +%if "%{?scl_env}" != "" + scl enable %{scl_env} /bin/bash <<'EOFSCL' +%endif +make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags} -shared -dynamiclib" \ + CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" %{gtkflag} DEBUG=1 %{luaflag} -C lexilla/src \ + libdir=%{_libdir} +make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags} -shared -dynamiclib" \ + CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" %{gtkflag} DEBUG=1 %{luaflag} -C scintilla/gtk \ + libdir=%{_libdir} +#Build without lua support +make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags}" \ + CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" %{gtkflag} DEBUG=1 %{luaflag} -C scite/gtk \ + libdir=%{_libdir} +%if "%{?scl_env}" != "" EOFSCL - %endif -%else - make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags} -shared -dynamiclib" \ - CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" GTK3=1 DEBUG=1 -C lexilla/src \ - libdir=%{_libdir} - make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags} -shared -dynamiclib" \ - CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" GTK3=1 DEBUG=1 -C scintilla/gtk \ - libdir=%{_libdir} - #Build without lua support - make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags}" \ - CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" GTK3=1 DEBUG=1 NO_LUA=1 -C scite/gtk \ - libdir=%{_libdir} %endif %install @@ -88,6 +122,9 @@ desktop-file-install --delete-original \ --remove-key Encoding \ %{buildroot}%{_datadir}/applications/SciTE.desktop +%if 0%{with_emitunicode} +install -D -p -m 644 %{SOURCE1} %{buildroot}%{_datadir}/scite/emitUnicode.lua +%endif %if 0%{?fedora} %posttrans /usr/bin/update-desktop-database &> /dev/null || : @@ -110,6 +147,10 @@ desktop-file-install --delete-original \ %{_libdir}/* %changelog +* Mon Apr 04 2022 B. Stack - 5.2.2-1/3.7.6-1 +- Update version +- Add tunables: gtk, lua, bundled lua, add emitunicode + * Thu Mar 24 2022 B. Stack - 5.2.1-1/3.7.6-1 - Update version diff --git a/scite-fedora/use-lua5.4.4.patch b/scite-fedora/use-lua5.4.4.patch new file mode 100644 index 0000000..d4c2903 --- /dev/null +++ b/scite-fedora/use-lua5.4.4.patch @@ -0,0 +1,266 @@ +Name: Patch scite to use distro package of lua +Version: 5.2.2 +Lua Version: 5.4.4 +Author: bgstack15@gmail.com +Date: 2022-04-04 +Includes almost exactly the debian 0007-Build-with-Debian-packaged-Lua.patch +diff -aur scite/gtk/deps.mak scite/gtk/deps.mak +--- a/scite/gtk/deps.mak 2022-03-30 20:48:24.000000000 -0400 ++++ b/scite/gtk/deps.mak 2022-04-04 14:47:39.110529717 -0400 +@@ -469,13 +469,6 @@ + ../lua/src/luaconf.h \ + ../lua/src/lauxlib.h \ + ../lua/src/lualib.h +-lbitlib.o: \ +- ../lua/src/lbitlib.c \ +- ../lua/src/lprefix.h \ +- ../lua/src/lua.h \ +- ../lua/src/luaconf.h \ +- ../lua/src/lauxlib.h \ +- ../lua/src/lualib.h + lcode.o: \ + ../lua/src/lcode.c \ + ../lua/src/lprefix.h \ +diff -aur scite/src/LuaExtension.cxx scite/src/LuaExtension.cxx +--- a/scite/src/LuaExtension.cxx 2022-03-30 20:48:24.000000000 -0400 ++++ b/scite/src/LuaExtension.cxx 2022-04-04 14:46:35.097978533 -0400 +@@ -237,7 +237,7 @@ + + const int paneIndex = lua_upvalueindex(1); + check_pane_object(L, paneIndex); +- const int message = luaL_checkint(L, 1); ++ const int message = luaL_checkinteger(L, 1); + + lua_pushvalue(L, paneIndex); + lua_replace(L, 1); +@@ -276,7 +276,7 @@ + } + + static int cf_scite_constname(lua_State *L) { +- const int message = luaL_checkint(L, 1); ++ const int message = luaL_checkinteger(L, 1); + const char *prefix = luaL_optstring(L, 2, nullptr); + const std::string constName = IFaceTable::GetConstantName(message, prefix); + if (constName.length() > 0) { +@@ -307,7 +307,7 @@ + } + + static int cf_scite_menu_command(lua_State *L) { +- const int cmdID = luaL_checkint(L, 1); ++ const int cmdID = luaL_checkinteger(L, 1); + if (cmdID) { + host->DoMenuCommand(cmdID); + } +@@ -329,7 +329,7 @@ + } + + static int cf_scite_strip_set(lua_State *L) { +- const int control = luaL_checkint(L, 1); ++ const int control = luaL_checkinteger(L, 1); + const char *value = luaL_checkstring(L, 2); + if (value) { + host->UserStripSet(control, value); +@@ -338,7 +338,7 @@ + } + + static int cf_scite_strip_set_list(lua_State *L) { +- const int control = luaL_checkint(L, 1); ++ const int control = luaL_checkinteger(L, 1); + const char *value = luaL_checkstring(L, 2); + if (value) { + host->UserStripSetList(control, value); +@@ -347,7 +347,7 @@ + } + + static int cf_scite_strip_value(lua_State *L) { +- const int control = luaL_checkint(L, 1); ++ const int control = luaL_checkinteger(L, 1); + std::string value = host->UserStripValue(control); + push_string(L, value); + return 1; +@@ -437,7 +437,7 @@ + SA::Position rangeStart = 0; + SA::Position rangeEnd = 0; + +- const int flags = (nArgs > 2) ? luaL_checkint(L, 3) : 0; ++ const int flags = (nArgs > 2) ? luaL_checkinteger(L, 3) : 0; + hasError = (flags == 0 && lua_gettop(L) > nArgs); + + if (!hasError) { +@@ -514,7 +514,7 @@ + + SA::ScintillaCall &sc = host->PaneCaller(pmo->pane); + sc.SetTarget(pmo->range); +- sc.ReplaceTarget(lua_strlen(L, 2), replacement); ++ sc.ReplaceTarget(lua_rawlen(L, 2), replacement); + pmo->range.end = sc.TargetEnd(); + return 0; + } +@@ -600,7 +600,7 @@ + pmo->endPosOrig = 0; + pmo->flags = 0; + if (nargs >= 3) { +- pmo->flags = luaL_checkint(L, 3); ++ pmo->flags = luaL_checkinteger(L, 3); + if (nargs >= 4) { + pmo->range.end = pmo->endPosOrig = luaL_checkinteger(L, 4); + if (pmo->range.end < 0) { +@@ -765,7 +765,7 @@ + const int nargs = lua_gettop(L); + const char *code = luaL_checkstring(L, 1); + const char *name = luaL_optstring(L, 2, code); +- if (0 == luaL_loadbuffer(L, code, lua_strlen(L, 1), name)) { ++ if (0 == luaL_loadbuffer(L, code, lua_rawlen(L, 1), name)) { + lua_call(L, 0, LUA_MULTRET); + return lua_gettop(L) - nargs; + } else { +@@ -896,7 +896,7 @@ + int loopParamCount = 2; + + if (func.paramType[0] == iface_length && func.paramType[1] == iface_string) { +- params[0] = lua_strlen(L, arg); ++ params[0] = lua_rawlen(L, arg); + params[1] = SptrFromString(params[0] ? lua_tostring(L, arg) : ""); + loopParamCount = 0; + } else if ((func.paramType[1] == iface_stringresult) || (func.returnType == iface_stringresult)) { +@@ -915,8 +915,8 @@ + const char *s = lua_tostring(L, arg++); + params[i] = SptrFromString(s ? s : ""); + } else if (func.paramType[i] == iface_keymod) { +- const int keycode = luaL_checkint(L, arg++) & 0xFFFF; +- const int modifiers = luaL_checkint(L, arg++) & ++ const int keycode = luaL_checkinteger(L, arg++) & 0xFFFF; ++ const int modifiers = luaL_checkinteger(L, arg++) & + static_cast(SA::KeyMod::Shift|SA::KeyMod::Ctrl|SA::KeyMod::Alt); + params[i] = keycode | (modifiers<<16); + } else if (func.paramType[i] == iface_bool) { +@@ -1805,7 +1805,7 @@ + static int SetLevelAt(lua_State *L) { + StylingContext *context = Context(L); + const SA::Line line = luaL_checkinteger(L, 2); +- const int level = luaL_checkint(L, 3); ++ const int level = luaL_checkinteger(L, 3); + context->styler->SetLevel(line, static_cast(level)); + return 0; + } +@@ -1820,7 +1820,7 @@ + static int SetLineState(lua_State *L) { + StylingContext *context = Context(L); + const SA::Line line = luaL_checkinteger(L, 2); +- const int stateOfLine = luaL_checkint(L, 3); ++ const int stateOfLine = luaL_checkinteger(L, 3); + context->styler->SetLineState(line, stateOfLine); + return 0; + } +@@ -1898,7 +1898,7 @@ + StylingContext *context = Context(L); + const SA::Position startPosStyle = luaL_checkinteger(L, 2); + const SA::Position lengthStyle = luaL_checkinteger(L, 3); +- const int initialStyle = luaL_checkint(L, 4); ++ const int initialStyle = luaL_checkinteger(L, 4); + context->StartStyling(startPosStyle, lengthStyle, initialStyle); + return 0; + } +@@ -1957,7 +1957,7 @@ + static int SetState(lua_State *L) { + StylingContext *context = Context(L); + context->Colourize(); +- context->state = luaL_checkint(L, 2); ++ context->state = luaL_checkinteger(L, 2); + return 0; + } + +@@ -1965,13 +1965,13 @@ + StylingContext *context = Context(L); + context->Forward(); + context->Colourize(); +- context->state = luaL_checkint(L, 2); ++ context->state = luaL_checkinteger(L, 2); + return 0; + } + + static int ChangeState(lua_State *L) { + StylingContext *context = Context(L); +- context->state = luaL_checkint(L, 2); ++ context->state = luaL_checkinteger(L, 2); + return 0; + } + +From: =?utf-8?q?Andreas_R=C3=B6nnquist?= +Date: Tue, 19 Jun 2018 15:34:57 +0200 +Subject: Build with Debian packaged Lua +Forwarded: not-needed + +--- + scite/gtk/deps.mak | 6 +----- + scite/gtk/makefile | 30 ++++-------------------------- + 2 files changed, 5 insertions(+), 31 deletions(-) + +--- a/scite/gtk/deps.mak ++++ b/scite/gtk/deps.mak +@@ -265,11 +265,7 @@ + ../src/Extender.h \ + ../src/IFaceTable.h \ + ../src/SciTEKeys.h \ +- ../src/LuaExtension.h \ +- ../lua/src/lua.h \ +- ../lua/src/luaconf.h \ +- ../lua/src/lualib.h \ +- ../lua/src/lauxlib.h ++ ../src/LuaExtension.h + MatchMarker.o: \ + ../src/MatchMarker.cxx \ + ../../scintilla/include/ScintillaTypes.h \ +--- a/scite/gtk/makefile ++++ b/scite/gtk/makefile +@@ -33,9 +33,9 @@ + + PYTHON = $(if $(windir),pyw,python3) + +-# For the Gnome desktop stuff to work, prefix must point to where Gnome thinks it is. +-CONFIGFLAGS:=$(shell $(PKG_CONFIG) --cflags $(GTK_VERSION)) +-CONFIGLIB:=$(shell $(PKG_CONFIG) --libs $(GTK_VERSION) gthread-2.0 gmodule-no-export-2.0) ++# For the Lua and Gnome desktop stuff to work, prefix must point to where Lua and Gnome thinks it is. ++CONFIGFLAGS:=$(shell $(PKG_CONFIG) --cflags $(GTK_VERSION)) $(shell $(PKG_CONFIG) --cflags lua) ++CONFIGLIB:=$(shell $(PKG_CONFIG) --libs $(GTK_VERSION) gthread-2.0 gmodule-no-export-2.0) $(shell $(PKG_CONFIG) --libs lua) + gnomeprefix:=$(shell $(PKG_CONFIG) --variable=prefix $(GTK_VERSION) 2>/dev/null) + ifndef prefix + ifdef gnomeprefix +@@ -72,28 +72,6 @@ + DEFINES += -D$(if $(DEBUG),DEBUG,NDEBUG) + BASE_FLAGS += $(if $(DEBUG),-g,-Os) + +-ifndef NO_LUA +-LUA_CORE_OBJS = lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o \ +- lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o \ +- ltable.o ltm.o lundump.o lvm.o lzio.o +- +-LUA_LIB_OBJS = lauxlib.o lbaselib.o lbitlib.o lcorolib.o ldblib.o liolib.o lmathlib.o ltablib.o \ +- lstrlib.o loadlib.o loslib.o linit.o lutf8lib.o +- +-LUA_OBJS = LuaExtension.o $(LUA_CORE_OBJS) $(LUA_LIB_OBJS) +- +-vpath %.c $(srcdir)/../lua/src +- +-INCLUDES += -I$(srcdir)/../lua/src +-LUA_DEFINES = -DLUA_USE_POSIX -DLUA_USE_DLOPEN +- +-%.o: %.c +- $(CC) $(CPPFLAGS) $(DEFINES) $(INCLUDES) $(WARNINGS) $(LUA_DEFINES) $(BASE_FLAGS) $(CFLAGS) -c $< -o $@ +- +-else +-DEFINES += -DNO_LUA +-endif +- + LIBS += -lm -lstdc++ + + UNAME:=$(shell uname -s) +@@ -154,7 +132,7 @@ + StyleWriter.o \ + Utf8_16.o + +-$(PROG): SciTEGTK.o Strips.o GUIGTK.o Widget.o DirectorExtension.o $(SRC_OBJS) $(LUA_OBJS) ++$(PROG): SciTEGTK.o Strips.o GUIGTK.o Widget.o DirectorExtension.o $(SRC_OBJS) LuaExtension.o + $(CXX) $(BASE_FLAGS) $(LDFLAGS) -rdynamic -Wl,--as-needed -Wl,-rpath,'$${ORIGIN}' -Wl,--version-script $(srcdir)/lua.vers -Wl,-rpath,$(libdir) $^ -o $@ $(CONFIGLIB) $(LIBS) -L ../../scintilla/bin -lscintilla $(LDLIBS) + + # Automatically generate header dependencies with "make depend" -- cgit