X-Git-Url: http://git.pld-linux.org/gitweb.cgi?a=blobdiff_plain;f=lua51.spec;h=fdbd1403bcbdec389956f6b78ea557476a516eea;hb=7b01e365e80213408d6de5ef298bc92add5c69be;hp=dc09c7ae25ce878a94692998a60f83242026fd78;hpb=99d6186b933329b05b1479d9e96ee136162eb7ae;p=packages%2Flua51.git diff --git a/lua51.spec b/lua51.spec index dc09c7a..fdbd140 100644 --- a/lua51.spec +++ b/lua51.spec @@ -1,19 +1,23 @@ # # Conditional build: %bcond_with luastatic # build dietlibc-based static lua version (broken) -# + Summary: A simple lightweight powerful embeddable programming language Summary(pl.UTF-8): Prosty, lekki ale potężny, osadzalny język programowania Name: lua51 -Version: 5.1.4 -Release: 2 +Version: 5.1.5 +Release: 4 License: MIT Group: Development/Languages Source0: http://www.lua.org/ftp/lua-%{version}.tar.gz -# Source0-md5: d0870f2de55d59c1c8419f36e8fac150 +# Source0-md5: 2e115fe26e435e33b0d5c022e4490567 +Source1: lua.pc.in +Source2: lua-c++.pc.in Patch0: %{name}-link.patch +Patch1: debian_make.patch URL: http://www.lua.org/ -%{?with_luastatic:BuildRequires: dietlibc-devel} +%{?with_luastatic:BuildRequires: dietlibc-static} +BuildRequires: libstdc++-devel BuildRequires: readline-devel BuildRequires: sed >= 4.0 Requires: %{name}-libs = %{version}-%{release} @@ -46,15 +50,21 @@ konfiguracji, skryptów i szybkich prototypów. Ta wersja ma wkompilowaną obsługę ładowania dynamicznych bibliotek. %package libs -Summary: lua 5.1.x libraries -Summary(pl.UTF-8): Biblioteki lua 5.1.x -Group: Development/Languages +Summary: Lua 5.1.x shared library +Summary(pl.UTF-8): Biblioteka współdzielona Lua 5.1.x +Group: Libraries +# Provide old SONAME to avoid rebuilds +%ifarch %{x8664} +Provides: liblua.so.5.1()(64bit) +%else +Provides: liblua.so.5.1 +%endif %description libs -lua 5.1.x libraries. +Lua 5.1.x shared library. %description libs -l pl.UTF-8 -Biblioteki lua 5.1.x. +Biblioteka współdzielona Lua 5.1.x. %package devel Summary: Header files for Lua @@ -84,6 +94,45 @@ Static Lua libraries. %description static -l pl.UTF-8 Biblioteki statyczne Lua. +%package c++-libs +Summary: Lua 5.1.x shared library with C++ exceptions support +Summary(pl.UTF-8): Biblioteka współdzielona Lua 5.1.x z obsługą wyjątków C++ +Group: Libraries +Requires: %{name}-libs = %{version}-%{release} +Obsoletes: lua-libs-c++ + +%description c++-libs +Lua 5.1.x shared library with C++ exceptions support. + +%description c++-libs -l pl.UTF-8 +Biblioteka współdzielona Lua 5.1.x z obsługą wyjątków C++. + +%package c++-devel +Summary: Development files for Lua 5.1.x C++ library +Summary(pl.UTF-8): Pliki programistyczne biblioteki C++ Lua 5.1.x +Group: Development/Libraries +Requires: %{name}-c++-libs = %{version}-%{release} +Requires: %{name}-devel = %{version}-%{release} +Requires: libstdc++-devel + +%description c++-devel +Development files for Lua 5.1.x C++ library. + +%description c++-devel -l pl.UTF-8 +Pliki programistyczne biblioteki C++ Lua 5.1.x. + +%package c++-static +Summary: Static Lua 5.1.x C++ library +Summary(pl.UTF-8): Statyczna biblioteka C++ Lua 5.1.x +Group: Development/Libraries +Requires: %{name}-c++-devel = %{version}-%{release} + +%description c++-static +Static Lua 5.1.x C++ library. + +%description c++-static -l pl.UTF-8 +Statyczna biblioteka C++ Lua 5.1.x. + %package luastatic Summary: Static Lua interpreter Summary(pl.UTF-8): Statycznie skonsolidowany interpreter lua @@ -98,67 +147,86 @@ Statycznie skonsolidowany interpreter lua. %prep %setup -q -n lua-%{version} %patch0 -p1 +%patch1 -p1 sed -r -i 's|(#define LUA_ROOT.*)%{_prefix}/local/|\1%{_prefix}/|g' src/luaconf.h sed -r -i 's|(#define LUA_CDIR.*)lib/|\1%{_lib}/|g' src/luaconf.h +cp -p %{SOURCE1} %{SOURCE2} . + %build %if %{with luastatic} %{__make} all \ PLAT=posix \ - CC="%{_target_cpu}-dietlibc-gcc" \ - CFLAGS="%{rpmcflags} -Wall -fPIC -DPIC -D_GNU_SOURCE -DLUA_USE_POSIX" + CC="diet %{__cc}" \ + CFLAGS="%{rpmcflags} -Wall -fPIC -Os -DPIC -D_GNU_SOURCE -DLUA_USE_POSIX" mv src/lua lua.static mv src/luac luac.static %{__make} clean %endif -%{__make} -j1 all \ - PLAT=linux \ +%{__make} debian_linux \ + RPATH=%{_libdir} \ CC="%{__cc}" \ - CFLAGS="%{rpmcflags} -Wall -fPIC -DPIC -D_GNU_SOURCE -DLUA_USE_LINUX" - -#rm -f test/{lua,luac} + CXX="%{__cxx}" \ + CFLAGS="%{rpmcflags} -Wall -fPIC -DPIC -D_GNU_SOURCE -DLUA_USE_LINUX" \ + CXXFLAGS="%{rpmcxxflags} -Wall -fPIC -DPIC -D_GNU_SOURCE -DLUA_USE_LINUX" %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT%{_libdir}/lua} +install -d $RPM_BUILD_ROOT{%{_libdir}/lua/5.1,%{_datadir}/lua/5.1,%{_pkgconfigdir}} -%{__make} install \ +%{__make} debian_install \ INSTALL_TOP=$RPM_BUILD_ROOT%{_prefix} \ INSTALL_INC=$RPM_BUILD_ROOT%{_includedir}/lua51 \ INSTALL_LIB=$RPM_BUILD_ROOT%{_libdir} \ INSTALL_MAN=$RPM_BUILD_ROOT%{_mandir}/man1 \ INSTALL_CMOD=$RPM_BUILD_ROOT%{_libdir}/lua/5.1 -# change name from lua to lua51 -for i in $RPM_BUILD_ROOT%{_bindir}/* ; do mv ${i}{,51} ; done -mv $RPM_BUILD_ROOT%{_mandir}/man1/lua{,51}.1 -mv $RPM_BUILD_ROOT%{_mandir}/man1/luac{,51}.1 -mv $RPM_BUILD_ROOT%{_libdir}/liblua{,51}.a - -install src/liblua.so.5.1 $RPM_BUILD_ROOT%{_libdir} -ln -s liblua.so.5.1 $RPM_BUILD_ROOT%{_libdir}/liblua51.so +# generate autodeps +chmod +x $RPM_BUILD_ROOT%{_libdir}/lib*.so* %if %{with luastatic} -install lua.static $RPM_BUILD_ROOT%{_bindir}/lua51.static -install luac.static $RPM_BUILD_ROOT%{_bindir}/luac51.static +install -p lua.static $RPM_BUILD_ROOT%{_bindir}/lua51.static +install -p luac.static $RPM_BUILD_ROOT%{_bindir}/luac51.static %endif -# create pkgconfig file -install -d $RPM_BUILD_ROOT%{_pkgconfigdir} -cat > $RPM_BUILD_ROOT%{_pkgconfigdir}/lua51.pc <<'EOF' +# alias to old pld names +ln -s liblua5.1.so $RPM_BUILD_ROOT%{_libdir}/liblua51.so +ln -s liblua5.1.a $RPM_BUILD_ROOT%{_libdir}/liblua51.a +ln -s lua5.1.pc $RPM_BUILD_ROOT%{_pkgconfigdir}/lua51.pc +ln -s liblua5.1.so.0 $RPM_BUILD_ROOT%{_libdir}/liblua.so.5.1 + +# we have pkgconfig files, rm .la +%{__rm} $RPM_BUILD_ROOT%{_libdir}/liblua5.1.la +%{__rm} $RPM_BUILD_ROOT%{_libdir}/liblua5.1-c++.la + +# create pkgconfig files +cat > $RPM_BUILD_ROOT%{_pkgconfigdir}/lua5.1.pc < $RPM_BUILD_ROOT%{_pkgconfigdir}/lua5.1-c++.pc <