Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Alexander_Naumov:SLE-12:Update
lua
lua.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File lua.spec of Package lua
# # spec file for package lua # # Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define major_version 5.2 %define libsuf 5_2 Name: lua Version: 5.2.4 Release: 0 Summary: Small Embeddable Language with Simple Procedural Syntax License: MIT Group: System/Libraries Url: http://www.lua.org Source: http://www.lua.org/ftp/lua-%{version}.tar.gz Source1: macros.lua Source2: baselibs.conf # prefix and build shared libraries (upstream don't want this in Makefile) # visibility: I don't see the point why divert from upstream except that # luaU_dump, luaP_opmodes and luaP_opnames need to be visible # to luac; if you will divert, don't forgot that LUAI_DDEC # prefixes declaration of _variables_ Patch0: %{name}-suse.diff Patch1: lua-restore-5.2.2-abi.patch BuildRequires: pkg-config BuildRequires: readline-devel Requires(post): update-alternatives Requires(preun): update-alternatives # As other packages install files into /usr/share/lua/lua_version, # they ought to require lua = lua_version (which is only major_version) # in order to facilitate this, we provide the corresponding symbol here. Provides: Lua(API) = %{major_version} BuildRoot: %{_tmppath}/%{name}-%{version}-build %description Lua is a programming language originally designed for extending applications, but also frequently used as a general-purpose, stand-alone language. Lua combines simple procedural syntax (similar to Pascal) with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, interpreted from byte codes, and has automatic memory management, making it ideal for configuration, scripting, and rapid prototyping. Lua is implemented as a small library of C functions, written in ANSI C, and the implementation goals are simplicity, efficiency, portability, and low embedding cost. %package devel Summary: Development files for lua Group: Development/Libraries/C and C++ Requires: %{name} = %{version} Requires: liblua%{libsuf} = %{version} Provides: Lua(devel) = %{major_version} Conflicts: otherproviders(Lua(devel)) Conflicts: lua50-devel Conflicts: lua51-devel Conflicts: lua52-devel %description devel Lua is a programming language originally designed for extending applications, but also frequently used as a general-purpose, stand-alone language. This package contains files needed for embedding lua into your application. %package -n liblua%{libsuf} Summary: Small Embeddable Language with Simple Procedural Syntax Group: System/Libraries Provides: %{name}-libs = %{version} Obsoletes: %{name}-libs < %{version} %description -n liblua%{libsuf} Lua is a programming language originally designed for extending applications, but also frequently used as a general-purpose, stand-alone language. Lua combines simple procedural syntax (similar to Pascal) with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, interpreted from byte codes, and has automatic memory management, making it ideal for configuration, scripting, and rapid prototyping. Lua is implemented as a small library of C functions, written in ANSI C, and the implementation goals are simplicity, efficiency, portability, and low embedding cost. %package doc Summary: Small Embeddable Language with Simple Procedural Syntax Group: System/Libraries %if 0%{?suse_version} >= 1120 BuildArch: noarch %endif %description doc Lua is a programming language originally designed for extending applications, but also frequently used as a general-purpose, stand-alone language. Lua combines simple procedural syntax (similar to Pascal) with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, interpreted from byte codes, and has automatic memory management, making it ideal for configuration, scripting, and rapid prototyping. Lua is implemented as a small library of C functions, written in ANSI C, and the implementation goals are simplicity, efficiency, portability, and low embedding cost. %prep %setup -q %patch0 -p1 %patch1 -p1 %build sed -i -e "s@lib/lua/@%{_lib}/lua/@g" src/luaconf.h make %{?_smp_mflags} -C src CC="gcc" MYCFLAGS="%{optflags} -std=gnu99 -D_GNU_SOURCE -fPIC -DLUA_USE_LINUX" MYLIBS="-Wl,-E -ldl -lreadline -lhistory -lncurses" V=%{major_version} all %install make install INSTALL_TOP="%{buildroot}%{_prefix}" INSTALL_LIB="%{buildroot}%{_libdir}" INSTALL_CMOD=%{buildroot}%{_libdir}/lua/%{major_version} INSTALL_MAN="%{buildroot}%{_mandir}/man1" # update-alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives for file in lua luac ; do mv "%{buildroot}%{_bindir}/${file}" "%{buildroot}%{_bindir}/${file}%{major_version}" touch "%{buildroot}%{_sysconfdir}/alternatives/${file}" ln -sf "%{_sysconfdir}/alternatives/${file}" "%{buildroot}%{_bindir}/${file}" mv "%{buildroot}%{_mandir}/man1/${file}.1" "%{buildroot}%{_mandir}/man1/${file}%{major_version}.1" touch "%{buildroot}%{_sysconfdir}/alternatives/${file}.1.gz" ln -sf "%{_sysconfdir}/alternatives/${file}.1.gz" "%{buildroot}%{_mandir}/man1/${file}.1.gz" done install -D -m 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/rpm/macros.lua # create pkg-config file cat > lua.pc <<-EOF prefix=%{_prefix} exec_prefix=%{_prefix} libdir=%{_libdir} includedir=%{_prefix}}/include Name: Lua Description: An Extensible Extension Language Version: %{version} Libs: -llua -lm Cflags: EOF install -D -m 644 lua.pc %{buildroot}/%{_libdir}/pkgconfig/lua.pc %check cd src LD_LIBRARY_PATH=`pwd` ./lua -e 'print(0)' > /dev/null %post %{_sbindir}/update-alternatives --install \ %{_bindir}/lua lua %{_bindir}/lua%{major_version} 15 \ --slave %{_bindir}/luac luac %{_bindir}/luac%{major_version} \ --slave %{_mandir}/man1/lua.1.gz lua.1.gz %{_mandir}/man1/lua%{major_version}.1.gz \ --slave %{_mandir}/man1/luac.1.gz luac.1.gz %{_mandir}/man1/luac%{major_version}.1.gz %preun if [ "$1" = 0 ] ; then %{_sbindir}/update-alternatives --remove lua %{_bindir}/lua%{major_version} fi %post -n liblua%{libsuf} -p /sbin/ldconfig %postun -n liblua%{libsuf} -p /sbin/ldconfig %files %defattr(-,root,root) %doc README %dir %{_libdir}/lua %dir %{_libdir}/lua/%{major_version} %dir %{_datadir}/lua %dir %{_datadir}/lua/%{major_version} %{_sysconfdir}/rpm/macros.lua %{_bindir}/lua%{major_version} %{_bindir}/luac%{major_version} %{_mandir}/man1/lua%{major_version}.1.gz %{_mandir}/man1/luac%{major_version}.1.gz %{_bindir}/lua %{_bindir}/luac %{_mandir}/man1/lua.1.gz %{_mandir}/man1/luac.1.gz %ghost %{_sysconfdir}/alternatives/lua %ghost %{_sysconfdir}/alternatives/luac %ghost %{_sysconfdir}/alternatives/lua.1.gz %ghost %{_sysconfdir}/alternatives/luac.1.gz %files -n liblua%{libsuf} %defattr(-,root,root) %{_libdir}/liblua.so.%{major_version} %files devel %defattr(-,root,root) %{_includedir}/lauxlib.h %{_includedir}/lua.h %{_includedir}/lua.hpp %{_includedir}/luaconf.h %{_includedir}/lualib.h %{_libdir}/liblua.a %{_libdir}/liblua.so %{_libdir}/pkgconfig/lua.pc %files doc %defattr(-,root,root) %doc doc/* %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor