forked from pool/lua-macros
		
	Fix %%lua_provides.
This commit is contained in:
		@@ -1,3 +1,8 @@
 | 
			
		||||
-------------------------------------------------------------------
 | 
			
		||||
Mon Oct 13 20:24:01 UTC 2025 - Matej Cepl <mcepl@cepl.eu>
 | 
			
		||||
 | 
			
		||||
- Fix %%lua_provides.
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------
 | 
			
		||||
Mon Oct 13 17:20:42 UTC 2025 - Matej Cepl <mcepl@cepl.eu>
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										58
									
								
								macros.lua
									
									
									
									
									
								
							
							
						
						
									
										58
									
								
								macros.lua
									
									
									
									
									
								
							@@ -15,10 +15,10 @@ print(ver)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# compiled modules should go here
 | 
			
		||||
%lua_archdir "%(pkgconf --variable=INSTALL_CMOD lua)"
 | 
			
		||||
%global lua_archdir %(pkgconf --variable=INSTALL_CMOD lua)
 | 
			
		||||
 | 
			
		||||
# pure Lua modules should go here
 | 
			
		||||
%lua_noarchdir %{lua:
 | 
			
		||||
%global lua_noarchdir %{lua:
 | 
			
		||||
local output = ""
 | 
			
		||||
local f = io.popen("pkgconf --variable=INSTALL_LMOD lua")
 | 
			
		||||
 | 
			
		||||
@@ -36,52 +36,58 @@ print(rpm.expand("%{_datadir}/lua/%{lua_version}"))
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# lua includes folder
 | 
			
		||||
%lua_incdir %(pkgconf --variable=includedir lua)
 | 
			
		||||
%global lua_incdir %(pkgconf --variable=includedir lua)
 | 
			
		||||
 | 
			
		||||
%lua_version_default %{lua:
 | 
			
		||||
%global lua_version_default %{lua:
 | 
			
		||||
local result = 5.4
 | 
			
		||||
local ver = rpm.expand("%{?suse_version}")
 | 
			
		||||
io.stderr:write("ver = " .. ver .. "\n")
 | 
			
		||||
if #ver > 0 then
 | 
			
		||||
    ver = tonumber(ver)
 | 
			
		||||
    if ver < 1500 then
 | 
			
		||||
        result = 5.1
 | 
			
		||||
    elseif ver == 1500 then
 | 
			
		||||
    elseif ver < 1600 then
 | 
			
		||||
        result = 5.3
 | 
			
		||||
    end
 | 
			
		||||
end
 | 
			
		||||
print(result)
 | 
			
		||||
}
 | 
			
		||||
%lua_version_default_nodots %(lua -e 'print((string.gsub("%{lua_version_default}", "%.", "")))')
 | 
			
		||||
 | 
			
		||||
%ifluadefault \
 | 
			
		||||
%if %{lua_version_nodots} == %{lua_version_default_nodots} \
 | 
			
		||||
%{nil}
 | 
			
		||||
# Define a conditional that evaluates true when building for the default Lua version
 | 
			
		||||
%global lua_version_default_nodots %(lua -e 'print((string.gsub("%{lua_version_default}", "%.", "")))')
 | 
			
		||||
 | 
			
		||||
# Lua default version
 | 
			
		||||
# This REQUIRES macro %{mod_name} to be defined.
 | 
			
		||||
# -e: Exclude lua prefix
 | 
			
		||||
# -n: Specify name
 | 
			
		||||
%lua_provides(en:) \
 | 
			
		||||
%ifluadefault \
 | 
			
		||||
%if 0%{?-n:1} \
 | 
			
		||||
Provides: %{-n*} = %{version}-%{release} \
 | 
			
		||||
Obsoletes: %{-n*} < %{version}-%{release} \
 | 
			
		||||
%else \
 | 
			
		||||
%if 0%{?-e:1} \
 | 
			
		||||
Provides: %{mod_name} = %{version}-%{release} \
 | 
			
		||||
Obsoletes: %{mod_name} < %{version}-%{release} \
 | 
			
		||||
%else \
 | 
			
		||||
Provides: lua-%{mod_name} = %{version}-%{release} \
 | 
			
		||||
Obsoletes: lua-%{mod_name} < %{version}-%{release} \
 | 
			
		||||
%endif \
 | 
			
		||||
%endif \
 | 
			
		||||
%endif \
 | 
			
		||||
%{nil}
 | 
			
		||||
%lua_provides(en:) %{lua:
 | 
			
		||||
local mod_name = rpm.expand("%{?mod_name}")
 | 
			
		||||
if mod_name == "" then
 | 
			
		||||
    print("-- Error: %{mod_name} is not defined!")
 | 
			
		||||
    return
 | 
			
		||||
end
 | 
			
		||||
print([[
 | 
			
		||||
%if "%{lua_version_nodots}" == "%{lua_version_default_nodots}"
 | 
			
		||||
%if 0%{?-n:1}
 | 
			
		||||
Provides: %{-n*} = %{version}-%{release}
 | 
			
		||||
Obsoletes: %{-n*} < %{version}-%{release}
 | 
			
		||||
%else
 | 
			
		||||
%if 0%{?-e:1}
 | 
			
		||||
Provides: %{mod_name} = %{version}-%{release}
 | 
			
		||||
Obsoletes: %{mod_name} < %{version}-%{release}
 | 
			
		||||
%else
 | 
			
		||||
Provides: lua-%{mod_name} = %{version}-%{release}
 | 
			
		||||
Obsoletes: lua-%{mod_name} < %{version}-%{release}
 | 
			
		||||
%endif
 | 
			
		||||
%endif
 | 
			
		||||
%endif
 | 
			
		||||
]])
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# LuaRocks
 | 
			
		||||
%luarocks_build \
 | 
			
		||||
luarocks --lua-version "%{lua_version}" \\\
 | 
			
		||||
make --pack-binary-rock --deps-mode none
 | 
			
		||||
make --deps-mode none
 | 
			
		||||
 | 
			
		||||
%luarocks_install \
 | 
			
		||||
luarocks --lua-version="%{lua_version}" --tree="%{buildroot}%{_prefix}" \\\
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user