lua/lua.spec

255 lines
9.1 KiB
RPMSpec

%define libmajver %(echo %version | cut -d. -f 1-2)
Name: lua
Version: 5.4.7
Release: 1mamba
Summary: A powerful light-weight and embeddable programming language
Group: Applications/Development
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: https://www.lua.org/
Source: http://www.lua.org/ftp/lua-%{version}.tar.gz
Patch3: lua-5.4.3-shared_library.patch
License: MIT
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libgcc
BuildRequires: libreadline-devel
BuildRequires: libstdc++6-devel
## AUTOBUILDREQ-END
Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release}
%description
Lua is a powerful light-weight programming language designed for extending applications.
Lua is also frequently used as a general-purpose, stand-alone language.
Lua combines simple procedural syntax with powerful data description constructs based on associative arrays and extensible semantics.
Lua is dynamically typed, interpreted from bytecodes, and has automatic memory management with garbage collection, making it ideal for configuration, scripting, and rapid prototyping.
A fundamental concept in the design of Lua is to provide meta-mechanisms for implementing features, instead of providing a host of features directly in the language.
For example, although Lua is not a pure object-oriented language, it does provide meta-mechanisms for implementing classes and inheritance.
Lua's meta-mechanisms bring an economy of concepts and keep the language small, while allowing the semantics to be extended in unconventional ways.
Extensible semantics is a distinguishing feature of Lua.
%package -n lib%{name}
Summary: Lua is a powerful, light-weight programming language
Group: System/Libraries
%description -n lib%{name}
Lua is a powerful light-weight programming language designed for extending applications.
This package contains the dynamic libraries provided by lua scripting language.
%package -n lib%{name}-devel
Summary: Static libraries and headers for lua
Group: Development/Libraries
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release}
Provides: lua-devel = %{?epoch:%epoch:}%{version}-%{release}
Obsoletes: lua-devel < 5.4.3
%description -n lib%{name}-devel
Lua is a powerful light-weight programming language designed for extending applications.
This package contains static libraries and header files needed for development.
%debug_package
%prep
%setup -q -c
cd lua-%{version}
%patch 3 -p1 -b .shared_library
cd ..
cp -r lua-%{version} lua++-%{version}
%build
cd lua-%{version}
%make MYCFLAGS="%{optflags} -fPIC" MYLDFLAGS="" linux-readline
cd ../lua++-%{version}
%make MYCFLAGS="%{optflags} -fPIC" MYLDFLAGS="" CC=g++ LUA_A=liblua++.a LUA_SO=liblua++.so linux-readline
%install
[ "%{buildroot}" != / ] && rm -rf %{buildroot}
cd lua-%{version}
%makeinstall \
TO_LIB="liblua.so liblua.so.%{libmajver} liblua.so.%{version}" \
INSTALL_DATA='cp -d' \
INSTALL_TOP=%{buildroot}%{_prefix} \
INSTALL_INC=%{buildroot}%{_includedir}/lua%{libmajver} \
INSTALL_LIB=%{buildroot}%{_libdir} \
INSTALL_MAN=%{buildroot}%{_mandir}/man1
ln -sf lua %{buildroot}%{_bindir}/lua-%{libmajver}
ln -sf luac %{buildroot}%{_bindir}/luac-%{libmajver}
ln -sf liblua.so.%{version} %{buildroot}%{_libdir}/liblua%{libmajver}.so
ln -sf liblua.so.%{libmajver} %{buildroot}%{_libdir}/liblua.so
install -d %{buildroot}%{_libdir}/pkgconfig/
echo "\
prefix=%{_prefix}
INSTALL_BIN=%{_bindir}
INSTALL_INC=%{_includedir}
INSTALL_LIB=%{_libdir}
INSTALL_MAN=%{_mandir}/man1
INSTALL_LMOD=%{_datadir}/lua/%{libmajver}
INSTALL_CMOD=%{_libdir}/lua/%{libmajver}
exec_prefix=%{_exec_prefix}
libdir=%{_libdir}
includedir=%{_includedir}/lua%{libmajver}
Name: Lua
Description: An Extensible Extension Language
Version: 5.4.7
Requires:
Libs: -L%{_libdir} -llua -lm
Cflags: -I%{_includedir}/lua%{libmajver}" > \
%{buildroot}%{_libdir}/pkgconfig/lua%{libmajver}.pc
ln -s lua%{libmajver}.pc %{buildroot}%{_libdir}/pkgconfig/lua.pc
ln -s lua%{libmajver}.pc %{buildroot}%{_libdir}/pkgconfig/lua-%{libmajver}.pc
cd ../lua++-%{version}
%makeinstall \
TO_LIB="liblua++.so liblua++.so.%{libmajver} liblua++.so.%{version}" \
INSTALL_DATA='cp -d' \
INSTALL_BIN=null \
INSTALL_INC=null \
INSTALL_MAN=../null \
INSTALL_TOP=%{buildroot}%{_prefix} \
INSTALL_LIB=%{buildroot}%{_libdir} \
ln -sf liblua++.so.%{version} %{buildroot}%{_libdir}/liblua++%{libmajver}.so
cp %{buildroot}%{_libdir}/pkgconfig/lua%{libmajver}.pc %{buildroot}%{_libdir}/pkgconfig/lua++%{libmajver}.pc
sed -i "s|-llua|-llua++|g" %{buildroot}%{_libdir}/pkgconfig/lua++%{libmajver}.pc
ln -s lua++%{libmajver}.pc %{buildroot}%{_libdir}/pkgconfig/lua++.pc
ln -s lua++%{libmajver}.pc %{buildroot}%{_libdir}/pkgconfig/lua++-%{libmajver}.pc
%clean
[ "%{buildroot}" != / ] && rm -rf %{buildroot}
%post -n lib%{name} -p /sbin/ldconfig
%postun -n lib%{name} -p /sbin/ldconfig
%files
%defattr(-,root,root)
%{_bindir}/lua
%{_bindir}/luac
%{_bindir}/lua-%{libmajver}
%{_bindir}/luac-%{libmajver}
%{_mandir}/man1/lua.*
%{_mandir}/man1/luac.*
%files -n lib%{name}
%defattr(-,root,root)
%{_libdir}/liblua.so.*
%{_libdir}/liblua++.so.*
%files -n lib%{name}-devel
%defattr(-,root,root)
%dir %{_includedir}/lua%{libmajver}
%{_includedir}/lua%{libmajver}/*.h
%{_includedir}/lua%{libmajver}/*.hpp
#%{_libdir}/liblua.a
%{_libdir}/liblua.so
%{_libdir}/liblua%{libmajver}.so
%{_libdir}/liblua++.so
%{_libdir}/liblua++%{libmajver}.so
%{_libdir}/pkgconfig/lua.pc
%{_libdir}/pkgconfig/lua-%{libmajver}.pc
%{_libdir}/pkgconfig/lua%{libmajver}.pc
%{_libdir}/pkgconfig/lua++.pc
%{_libdir}/pkgconfig/lua++-%{libmajver}.pc
%{_libdir}/pkgconfig/lua++%{libmajver}.pc
#%doc README doc/*.html doc/*.css doc/*.gif doc/*.png
%changelog
* Tue Jun 25 2024 Automatic Build System <autodist@openmamba.org> 5.4.7-1mamba
- automatic version update by autodist
* Fri Feb 09 2024 Silvan Calarco <silvan.calarco@mambasoft.it> 5.4.6-2mamba
- added c++ library; pkgconfig files and other improvements
* Mon May 15 2023 Automatic Build System <autodist@mambasoft.it> 5.4.6-1mamba
- automatic version update by autodist
* Sun Apr 30 2023 Automatic Build System <autodist@mambasoft.it> 5.4.5-1mamba
- automatic version update by autodist
* Thu Jan 27 2022 Automatic Build System <autodist@mambasoft.it> 5.4.4-1mamba
- automatic version update by autodist
* Sat Nov 27 2021 Automatic Build System <autodist@mambasoft.it> 5.4.3-1mamba
- automatic version update by autodist
* Sat Aug 25 2018 Silvan Calarco <silvan.calarco@mambasoft.it> 5.3.5-2mamba
- rebuild with LUA_COMPAT_5_1 and LUA_COMPAT_5_2 support
* Tue Jul 10 2018 Automatic Build System <autodist@mambasoft.it> 5.3.5-1mamba
- automatic version update by autodist
* Mon Feb 06 2017 Automatic Build System <autodist@mambasoft.it> 5.3.4-1mamba
- automatic version update by autodist
* Thu Jun 09 2016 Automatic Build System <autodist@mambasoft.it> 5.3.3-1mamba
- automatic version update by autodist
* Mon Jan 25 2016 Automatic Build System <autodist@mambasoft.it> 5.3.2-2mamba
- automatic version update by autodist
* Mon Jan 25 2016 Automatic Build System <autodist@mambasoft.it> 5.3.2-1mamba
- automatic version update by autodist
* Wed Sep 16 2015 Automatic Build System <autodist@mambasoft.it> 5.3.1-1mamba
- automatic version update by autodist
* Sat Mar 21 2015 Automatic Build System <autodist@mambasoft.it> 5.2.4-1mamba
- automatic version update by autodist
* Sat Dec 07 2013 Automatic Build System <autodist@mambasoft.it> 5.2.3-1mamba
- automatic version update by autodist
* Thu Jul 18 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 5.2.2-3mamba
- lua.pc: fix cflags
* Tue Jun 04 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 5.2.2-2mamba
- install headers unser %{_includedir}/lua5.2 to avoid conflicts with packages wanting lua51
* Thu Mar 28 2013 Automatic Build System <autodist@mambasoft.it> 5.2.2-1mamba
- automatic version update by autodist
* Tue Aug 14 2012 Automatic Build System <autodist@mambasoft.it> 5.2.1-1mamba
- automatic version update by autodist
* Fri Dec 31 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 5.1.4-2mamba
- rebuilt with debug package
* Thu Dec 04 2008 gil <puntogil@libero.it> 5.1.4-1mamba
- update to 5.1.4
* Mon Jul 07 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 5.1.3-1mamba
- update to 5.1.3
- fix liblua.so: make it a symlink to liblua.so.*
* Fri Oct 26 2007 Aleph0 <aleph0@openmamba.org> 5.1.2-3mamba
- do not provide liblualib.so
* Thu Oct 25 2007 Aleph0 <aleph0@openmamba.org> 5.1.2-2mamba
- add lua.pc
* Wed Oct 24 2007 Aleph0 <aleph0@openmamba.org> 5.1.2-1mamba
- update to 5.1.2
- patched to build dynamic libraries
- package coding examples contained in the source code
- use standard CFLAGS options when building
* Thu Dec 14 2006 Aleph0 <aleph0@openmamba.org> 5.0.3-2qilnx
- created devel package
- build shared libraries
- added more documentation files
* Wed Oct 18 2006 Davide Madrisan <davide.madrisan@qilinux.it> 5.0.3-1qilnx
- update to version 5.0.3 by autospec
* Tue Apr 04 2006 Davide Madrisan <davide.madrisan@qilinux.it> 5.0.2-1qilnx
- package created by autospec