import lua-posix-35.0-6.el9
This commit is contained in:
		
							parent
							
								
									81bc02d821
								
							
						
					
					
						commit
						3d31fdb885
					
				
							
								
								
									
										70
									
								
								SOURCES/propagate_ldflags.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								SOURCES/propagate_ldflags.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,70 @@ | ||||
| commit 4788eba65956aa9347bbb5856c9208888a20330b | ||||
| Author: Gary V. Vaughan <gary@gnu.org> | ||||
| Date:   Thu Sep 9 12:40:55 2021 -0700 | ||||
| 
 | ||||
|     maint: sync luke with upstream. | ||||
|      | ||||
|     * build-aux/luke: Propagates LDFLAGS to module compilation commands | ||||
|      | ||||
|     Signed-off-by: Gary V. Vaughan <gary@gnu.org> | ||||
| 
 | ||||
| diff --git a/build-aux/luke b/build-aux/luke
 | ||||
| index 9f476f7..9d74aa2 100755
 | ||||
| --- a/build-aux/luke
 | ||||
| +++ b/build-aux/luke
 | ||||
| @@ -17,10 +17,10 @@ end,fatal=fatal,}
 | ||||
|  end | ||||
|  package.preload['luke.cli']=function() | ||||
|  local _ENV=require'std.normalize'{'luke._base','luke.lukefile','luke.platforms','std.functional',}local function version()print[[ | ||||
| -luke (Luke) 0.2.0
 | ||||
| +luke (Luke) 0.2.2
 | ||||
|  Written by Gary V. Vaughan <gary@gnu.org>, 2014 | ||||
|   | ||||
| -Copyright (C) 2020, Gary V. Vaughan
 | ||||
| +Copyright (C) 2021, Gary V. Vaughan
 | ||||
|  Luke comes with ABSOLUTELY NO WARRANTY. | ||||
|  You may redistribute copies of Luke under the terms of the MIT license; | ||||
|  it may be used for any purpose at absolutely no cost, without permission. | ||||
| @@ -102,7 +102,7 @@ abspath=abspath..'.lua'return src,(gsub(abspath,'/[^/]+%.lua$',''))end
 | ||||
|  local function module_to_path(module,sources,objdir)return dropuntil(sources,function(source)return case(source,{['.*%.[ch]']=bind(c_source,{module,objdir}),['(.*%.[ch])%.in']=bind(c_source,{module,objdir}),['.*%.lua']=bind(lua_source,{module}),['(.*%.lua)%.in']=bind(lua_source,{module}),function(src)fatal("unsupported source type '%s'",src)end,})end)end | ||||
|  return{build_c_module=function(L,env,luke,name)local rules=luke.modules[name]local c_module=c_module_path(luke.variables.objdir,name)local command={'$MAKEDIRS',dirname(c_module)}local status,err,out=spawn(env,unpack(command))if status~=0 then | ||||
|  stdout:write(concat(command,' ')..'\n')stderr:write(err..'\n')exit(status)end | ||||
| -return run(L,env,flatten('$CC $CFLAGS $LIBFLAG $PKGFLAGS $CPPFLAGS',defines(env,except(list(rules.defines,luke.defines),nil)),incdirs(rules.incdirs,luke.incdirs),rules.sources,'-o',c_module,libdirs(rules.libdirs,luke.libdirs),'$LIBS',rules.libraries,luke.libraries))end,c_modules=function(modules)return filter(keys(modules),function(name)return dropuntil(modules[name].sources,bind(match,{[2]='%.[ch]$'}))end)end,incdirs=incdirs,install_modules=function(L,env,luke,modules)return reduce(keys(modules),0,function(status,name)if status==0 then
 | ||||
| +return run(L,env,flatten('$CC $CFLAGS $LIBFLAG $PKGFLAGS $CPPFLAGS',defines(env,except(list(rules.defines,luke.defines),nil)),incdirs(rules.incdirs,luke.incdirs),rules.sources,'-o',c_module,'$LDFLAGS',libdirs(rules.libdirs,luke.libdirs),'$LIBS',rules.libraries,luke.libraries))end,c_modules=function(modules)return filter(keys(modules),function(name)return dropuntil(modules[name].sources,bind(match,{[2]='%.[ch]$'}))end)end,incdirs=incdirs,install_modules=function(L,env,luke,modules)return reduce(keys(modules),0,function(status,name)if status==0 then
 | ||||
|  local src,dir=module_to_path(name,modules[name].sources,luke.variables.objdir)if not exists(interpolate(env,dir))then | ||||
|  status=run(L,env,{'$MAKEDIRS',dir})end | ||||
|  if status==0 then | ||||
| @@ -135,6 +135,15 @@ return with(File(progpath,'r'),function(h)return h and isfile(h.context)and prog
 | ||||
|  end)end)L.log(found and'found '..found or prog..' not found')return found~=nil | ||||
|  end | ||||
|  local function check_header_compile(L,env,config,header,extra_hdrs)return with(CTest(),function(conftest)conftest:write(format('%s\n#include "%s"\n',extra_hdrs,header))return logspawn(L,env,compile_command(L,env,config,conftest.filename))end)end | ||||
| +local function check_struct_member_compile(L,env,config,structname,member,extra_hdrs)return with(CTest(),function(conftest)conftest:write(format([[
 | ||||
| +%s
 | ||||
| +int main () {
 | ||||
| +static %s aggr;
 | ||||
| +if (sizeof aggr.%s)
 | ||||
| +    return 0;
 | ||||
| +return 0;
 | ||||
| +}
 | ||||
| +]],extra_hdrs,structname,member))return logspawn(L,env,compile_command(L,env,config,conftest.filename))end)end
 | ||||
|  local function try_link(L,env,config,lib,symbol)return with(CTest(),TmpFile(),function(conftest,a_out)conftest:write(format([[ | ||||
|  /* Override any GCC internal prototype to avoid an error. | ||||
|   Use char because int might match the return type of a GCC | ||||
| @@ -225,7 +234,7 @@ end
 | ||||
|  CONFIGENV.libs=lib..CONFIGENV.libs | ||||
|  end | ||||
|  return found_library(L,lib)end | ||||
| -end)or call(function()L.verbose'\n'fatal("required symbol '%s' not found in any of libc, lib%s",symbol,concat(libraries,', lib'))end)end},{checkfunc=function(L,env,config)checking(L,'for',config.checkfunc)return found_result(L,check_func_link(L,env,config,config.checkfunc))end}),{__call=function(self,L,env,config,prefix)return case(type(config),{['number']=function()return str(config)end,['string']=function()return config
 | ||||
| +end)or call(function()L.verbose'\n'fatal("required symbol '%s' not found in any of libc, lib%s",symbol,concat(libraries,', lib'))end)end},{checkfunc=function(L,env,config)checking(L,'for',config.checkfunc)return found_result(L,check_func_link(L,env,config,config.checkfunc))end},{checkmember=function(L,env,config)checking(L,'for',config.checkmember)local extra_hdrs=concat(format_includes(config.includes),'\n')local i=find(config.checkmember,'%.')local structname=sub(config.checkmember,1,i-1)local member=sub(config.checkmember,i+1)return found_result(L,check_struct_member_compile(L,env,config,structname,member,extra_hdrs))end}),{__call=function(self,L,env,config,prefix)return case(type(config),{['number']=function()return str(config)end,['string']=function()return config
 | ||||
|  end,['table']=function()return dropuntil(self,function(fname)if config[fname]~=nil then | ||||
|  add_external_deps(env,config,prefix)return apply(self[fname],list(L,env,config))end | ||||
|  end)or fatal("unable to configure with keys '%s'",concat(keys(config),"', '"))end,function(type)fatal("unsupported configure type '%s'",type)end,})end,})return{config_compiler=function(L,env)local CC=env.CC | ||||
| @@ -588,7 +597,7 @@ end
 | ||||
|  return setmetatable({append=function(seq,v)local n=(int(seq.n)or len(seq))+1 | ||||
|  seq.n,seq[n]=n,v | ||||
|  return seq | ||||
| -end,arg=arg,assert=assert,char=string.char,close=io.close,concat=concat,copy=copy,dirsep=dirsep,exit=os.exit,format=string.format,getenv=os.getenv,getmetatable=getmetatable,getmetamethod=getmetamethod,gmatch=string.gmatch,gsub=string.gsub,int=int,iscallable=iscallable,len=len,lines=io.lines,list=pack,loadstring=loadstring,match=string.match,maxn=function(iterable)local n=0
 | ||||
| +end,arg=arg,assert=assert,char=string.char,close=io.close,concat=concat,copy=copy,dirsep=dirsep,exit=os.exit,find=string.find,format=string.format,getenv=os.getenv,getmetatable=getmetatable,getmetamethod=getmetamethod,gmatch=string.gmatch,gsub=string.gsub,int=int,iscallable=iscallable,len=len,lines=io.lines,list=pack,loadstring=loadstring,match=string.match,maxn=function(iterable)local n=0
 | ||||
|  for k,v in next,iterable or{}do | ||||
|  local i=int(k)if i and i>n then | ||||
|  n=i | ||||
| @ -6,7 +6,7 @@ | ||||
| 
 | ||||
| Name:           lua-posix | ||||
| Version:        35.0 | ||||
| Release:        5%{?dist} | ||||
| Release:        6%{?dist} | ||||
| Summary:        A POSIX library for Lua | ||||
| License:        MIT | ||||
| URL:            http://luaforge.net/projects/luaposix/ | ||||
| @ -15,15 +15,20 @@ BuildRequires:  gcc | ||||
| BuildRequires:  lua-devel | ||||
| %{?lua_requires} | ||||
| 
 | ||||
| # Fixes passing LDFLAGS into the build, in upstream release 35.1 | ||||
| # https://github.com/luaposix/luaposix/commit/4788eba65956aa9347bbb5856c9208888a20330b | ||||
| Patch0: propagate_ldflags.patch | ||||
| 
 | ||||
| %description | ||||
| This is a POSIX library for Lua which provides access to many POSIX features | ||||
| to Lua programs. | ||||
| 
 | ||||
| %prep | ||||
| %setup -q -n luaposix-%{version} | ||||
| %patch0 -p1 | ||||
| 
 | ||||
| %build | ||||
| build-aux/luke CFLAGS="%build_cflags" | ||||
| build-aux/luke CFLAGS="%build_cflags" LDFLAGS="%build_ldflags" | ||||
| 
 | ||||
| 
 | ||||
| %install | ||||
| @ -42,6 +47,11 @@ build-aux/luke install PREFIX=%{buildroot}%{_prefix} INST_LIBDIR=%{buildroot}%{l | ||||
| 
 | ||||
| 
 | ||||
| %changelog | ||||
| * Mon Feb 14 2022 Andrew Hughes <gnu.andrew@redhat.com> - 35.0-6 | ||||
| - Pass LDFLAGS to the build so RPM linker flags are used and annocheck passes. | ||||
| - Add patch from upstream to fix propagation of LDFLAGS into build system. | ||||
| - Resolves: rhbz#2044879 | ||||
| 
 | ||||
| * Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 35.0-5 | ||||
| - Rebuilt for IMA sigs, glibc 2.34, aarch64 flags | ||||
|   Related: rhbz#1991688 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user