[packages/lua51] - added missing debian_make patch found on carme - package liblua-c++ libs/devel/static in standard

qboosh qboosh at pld-linux.org
Tue Oct 21 21:40:56 CEST 2014


commit 9c21aac6a3300fe63821b681983c962461e6c4b0
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Tue Oct 21 21:41:26 2014 +0200

    - added missing debian_make patch found on carme
    - package liblua-c++ libs/devel/static in standard way
    - *.pc fixes

 debian_make.patch |  81 ++++++++++++++++++++++++++++++++++++++++
 lua-c++.pc.in     |  11 +-----
 lua.pc.in         |  11 +-----
 lua51.spec        | 108 ++++++++++++++++++++++++++++++++++++------------------
 4 files changed, 158 insertions(+), 53 deletions(-)
---
diff --git a/lua51.spec b/lua51.spec
index b674105..c1a72b3 100644
--- a/lua51.spec
+++ b/lua51.spec
@@ -17,6 +17,7 @@ Patch0:		%{name}-link.patch
 Patch1:		debian_make.patch
 URL:		http://www.lua.org/
 %{?with_luastatic:BuildRequires:       dietlibc-static}
+BuildRequires:	libstdc++-devel
 BuildRequires:	readline-devel
 BuildRequires:	sed >= 4.0
 Requires:	%{name}-libs = %{version}-%{release}
@@ -49,8 +50,8 @@ 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
+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}
@@ -60,28 +61,16 @@ 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.
-
-%package libs-c++
-Summary:	lua 5.1.x libraries
-Summary(pl.UTF-8):	Biblioteki lua 5.1.x
-Group:		Libraries
-
-%description libs-c++
-lua 5.1.x C++ libraries.
-
-%description libs-c++ -l pl.UTF-8
-Biblioteki lua 5.1.x C++.
+Biblioteka współdzielona Lua 5.1.x.
 
 %package devel
 Summary:	Header files for Lua
 Summary(pl.UTF-8):	Pliki nagłówkowe dla Lua
 Group:		Development/Languages
 Requires:	%{name}-libs = %{version}-%{release}
-Requires:	%{name}-libs-c++ = %{version}-%{release}
 Provides:	lua-devel = %{version}
 
 %description devel
@@ -105,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
@@ -173,28 +201,28 @@ ln -s liblua5.1.so.0 $RPM_BUILD_ROOT%{_libdir}/liblua.so.5.1
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/liblua5.1-c++.la
 
 # create pkgconfig files
-cat > $RPM_BUILD_ROOT%{_pkgconfigdir}/lua5.1.pc <<'EOF'
+cat > $RPM_BUILD_ROOT%{_pkgconfigdir}/lua5.1.pc <<EOF
 major_version=5.1
 version=%{version}
-lib_name_include=lua5.1
 
 prefix=%{_prefix}
 exec_prefix=%{_exec_prefix}
 libdir=%{_libdir}
+includedir=%{_includedir}/lua51
 interpreter=%{_bindir}/lua5.1
 compiler=%{_bindir}/luac5.1
 
 $(cat lua.pc.in)
 EOF
 
-cat > $RPM_BUILD_ROOT%{_pkgconfigdir}/lua5.1-c++.pc <<'EOF'
+cat > $RPM_BUILD_ROOT%{_pkgconfigdir}/lua5.1-c++.pc <<EOF
 major_version=5.1
 version=%{version}
-lib_name_include=lua5.1
 
 prefix=%{_prefix}
 exec_prefix=%{_exec_prefix}
 libdir=%{_libdir}
+includedir=%{_includedir}/lua51
 interpreter=%{_bindir}/lua5.1
 compiler=%{_bindir}/luac5.1
 
@@ -207,8 +235,8 @@ rm -rf $RPM_BUILD_ROOT
 %post   libs -p /sbin/ldconfig
 %postun libs -p /sbin/ldconfig
 
-%post   libs-c++ -p /sbin/ldconfig
-%postun libs-c++ -p /sbin/ldconfig
+%post   c++-libs -p /sbin/ldconfig
+%postun c++-libs -p /sbin/ldconfig
 
 %triggerpostun libs -- %{name}-libs < 5.1.5-1.2
 # restore symlink which ldconfig removed (it was ghost of old package)
@@ -224,39 +252,49 @@ ln -s liblua5.1.so.0 %{_libdir}/liblua.so.5.1 || :
 %files libs
 %defattr(644,root,root,755)
 %doc COPYRIGHT HISTORY README
-%attr(755,root,root) %{_libdir}/liblua.so.5.1
 %attr(755,root,root) %{_libdir}/liblua5.1.so.*.*.*
-%ghost %{_libdir}/liblua5.1.so.0
+%attr(755,root,root) %ghost %{_libdir}/liblua5.1.so.0
+# PLD/upstream compatibility symlink
+%attr(755,root,root) %{_libdir}/liblua.so.5.1
 %dir %{_libdir}/lua
 %{_libdir}/lua/5.1
 %dir %{_datadir}/lua
 %{_datadir}/lua/5.1
 
-%files libs-c++
-%defattr(644,root,root,755)
-%doc COPYRIGHT HISTORY README
-%attr(755,root,root) %{_libdir}/liblua5.1-c++.so.*.*.*
-%ghost %{_libdir}/liblua5.1-c++.so.0
-
 %files devel
 %defattr(644,root,root,755)
 %doc doc/*.{html,css,gif} test
-%{_libdir}/liblua5.1.so
-%{_libdir}/liblua5.1-c++.so
-%{_libdir}/liblua51.so
+%attr(755,root,root) %{_libdir}/liblua5.1.so
+# PLD backward compatibility symlink
+%attr(755,root,root) %{_libdir}/liblua51.so
 %{_includedir}/lua51
-%{_pkgconfigdir}/lua5.1-c++.pc
 %{_pkgconfigdir}/lua5.1.pc
+# PLD backward compatibility symlink
 %{_pkgconfigdir}/lua51.pc
 
 %files static
 %defattr(644,root,root,755)
 %{_libdir}/liblua5.1.a
+# PLD backward compatibility symlink
 %{_libdir}/liblua51.a
+
+%files c++-libs
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/liblua5.1-c++.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/liblua5.1-c++.so.0
+
+%files c++-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/liblua5.1-c++.so
+%{_pkgconfigdir}/lua5.1-c++.pc
+
+%files c++-static
+%defattr(644,root,root,755)
 %{_libdir}/liblua5.1-c++.a
 
 %if %{with luastatic}
 %files luastatic
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/*.static
+%attr(755,root,root) %{_bindir}/lua.static
+%attr(755,root,root) %{_bindir}/luac.static
 %endif
diff --git a/debian_make.patch b/debian_make.patch
new file mode 100644
index 0000000..0eec07c
--- /dev/null
+++ b/debian_make.patch
@@ -0,0 +1,81 @@
+Author: John V. Belmonte <jbelmonte at debian.org>
+Description: Add support for Debian package to makefiles.
+
+Modified for PLD Linux
+Elan Ruusamäe <glen at pld-linux.org>
+Index: lua5.1-5.1.5/Makefile
+===================================================================
+--- lua5.1-5.1.5.orig/Makefile	2012-02-10 10:50:23.000000000 +0100
++++ lua5.1-5.1.5/Makefile	2012-07-16 12:25:26.000000000 +0200
+@@ -126,3 +126,30 @@
+ .PHONY: all $(PLATS) clean test install local none dummy echo pecho lecho
+ 
+ # (end of Makefile)
++
++# Use libtool for binary installs, etc.
++
++export V
++export LIBTOOL = libtool --quiet --tag=CC
++export LIBTOOLPP = libtool --quiet --tag=CXX
++# See libtool manual about how to set this
++export LIB_VERSION = 0:0:0
++
++debian_clean:
++	cd src; $(MAKE) $@
++
++debian_test: debian_linux
++	src/lua$(V) test/hello.lua
++
++debian_install: debian_linux
++	cd src; mkdir -p $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN)
++	cd src; $(LIBTOOL) --mode=install $(INSTALL_EXEC) lua$(V) luac$(V) $(INSTALL_BIN)
++	cd src; $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC)
++	cd src; $(LIBTOOL) --mode=install $(INSTALL_DATA) liblua$(V).la $(INSTALL_LIB)
++	cd src; $(LIBTOOLPP) --mode=install $(INSTALL_DATA) liblua$(V)-c++.la $(INSTALL_LIB)
++	$(foreach NAME,$(TO_MAN),$(INSTALL_DATA) doc/$(NAME) $(INSTALL_MAN)/$(basename $(NAME))$(V)$(suffix $(NAME));)
++
++# ISSUE: MYCFLAGS not honored in the case of a CFLAGS override
++debian_linux:
++	cd src; $(MAKE) debian_all CFLAGS+=-DLUA_USE_LINUX \
++		LIB_LIBS="-lm -ldl" LUA_LIBS="-lreadline" LDFLAGS="$(LDFLAGS)"
+Index: lua5.1-5.1.5/src/Makefile
+===================================================================
+--- lua5.1-5.1.5.orig/src/Makefile	2012-02-13 21:41:22.000000000 +0100
++++ lua5.1-5.1.5/src/Makefile	2012-07-16 12:24:40.000000000 +0200
+@@ -180,3 +180,36 @@
+   ltm.h lzio.h lmem.h lopcodes.h lundump.h
+ 
+ # (end of Makefile)
++
++# The following rules use libtool for compiling and linking in order to
++# provide shared library support.  While we are at it, our desired version
++# suffixes are added to the targets, preventing conflicts with rules in
++# the upstream makefile.
++
++LIB_NAME = liblua$(V).la
++LIBPP_NAME = liblua$(V)-c++.la
++LIB_OBJS = $(CORE_O:.o=.lo) $(LIB_O:.o=.lo)
++LIBPP_OBJS = $(CORE_O:%.o=%-c++.lo) $(LIB_O:%.o=%-c++.lo)
++
++%-c++.lo %-c++.o: %.c
++	$(LIBTOOLPP) --mode=compile $(CXX) -o $*-c++.lo -c $(CPPFLAGS) $(CFLAGS) $<
++%.lo %.o: %.c
++	$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $<
++
++$(LIB_NAME) $(LIB_NAME:.la=.a): $(LIB_OBJS)
++	$(LIBTOOL) --mode=link $(CC) -version-info $(LIB_VERSION) \
++            -rpath $(RPATH) -o $(LIB_NAME) $(LIB_OBJS) $(LIB_LIBS)
++$(LIBPP_NAME) $(LIBPP_NAME:.la=.a): $(LIBPP_OBJS)
++	$(LIBTOOLPP) --mode=link $(CXX) -version-info $(LIB_VERSION) \
++            -rpath $(RPATH) -o $(LIBPP_NAME) $(LIBPP_OBJS) $(LIB_LIBS)
++
++lua$(V): $(LUA_O) $(LIB_NAME)
++	$(LIBTOOL) --mode=link $(CC) -static -Wl,-E -o $@ $(LUA_O) $(LIB_NAME) $(LUA_LIBS) $(LDFLAGS)
++
++luac$(V): $(LUAC_O) $(LIB_NAME)
++	$(LIBTOOL) --mode=link $(CC) -static -o $@ $(LUAC_O) $(LIB_NAME)
++
++debian_clean:
++	$(LIBTOOL) --mode=clean $(RM) $(ALL_O:.o=.lo) $(LIB_NAME) lua$(V) luac$(V)
++
++debian_all: $(LIB_NAME) $(LIBPP_NAME) lua$(V) luac$(V)
diff --git a/lua-c++.pc.in b/lua-c++.pc.in
index f68b4f8..6cc600f 100644
--- a/lua-c++.pc.in
+++ b/lua-c++.pc.in
@@ -1,11 +1,4 @@
-#prefix=/usr
-#major_version=5.1
-#version=5.1.0
-#deb_host_multiarch=x86_64-linux-gnu
-
 lib_name=lua${major_version}-c++
-libdir=${prefix}/lib
-includedir=${prefix}/include
 
 #
 # The following are intended to be used via "pkg-config --variable".
@@ -14,7 +7,7 @@ includedir=${prefix}/include
 # Lua source modules to the /usr/local tree, call pkg-config with
 # "--define-variable=prefix=/usr/local" and "--variable=INSTALL_LMOD".
 INSTALL_LMOD=${prefix}/share/lua/${major_version}
-INSTALL_CMOD=${prefix}/lib/${deb_host_multiarch}/lua/${major_version}
+INSTALL_CMOD=${libdir}/lua/${major_version}
 
 Name: Lua
 Description: Lua language engine
@@ -22,4 +15,4 @@ Version: ${version}
 Requires:
 Libs: -L${libdir} -l${lib_name}
 Libs.private: -lm -ldl
-Cflags: -I${includedir}/${lib_name_include}
+Cflags: -I${includedir}
diff --git a/lua.pc.in b/lua.pc.in
index d594c1f..aba77c9 100644
--- a/lua.pc.in
+++ b/lua.pc.in
@@ -1,11 +1,4 @@
-#prefix=/usr
-#major_version=5.1
-#version=5.1.0
-#deb_host_multiarch=x86_64-linux-gnu
-
 lib_name=lua${major_version}
-#libdir=${prefix}/lib
-includedir=${prefix}/include
 
 #
 # The following are intended to be used via "pkg-config --variable".
@@ -14,7 +7,7 @@ includedir=${prefix}/include
 # Lua source modules to the /usr/local tree, call pkg-config with
 # "--define-variable=prefix=/usr/local" and "--variable=INSTALL_LMOD".
 INSTALL_LMOD=${prefix}/share/lua/${major_version}
-INSTALL_CMOD=${prefix}/lib/${deb_host_multiarch}/lua/${major_version}
+INSTALL_CMOD=${libdir}/lua/${major_version}
 
 Name: Lua
 Description: Lua language engine
@@ -22,4 +15,4 @@ Version: ${version}
 Requires:
 Libs: -L${libdir} -l${lib_name}
 Libs.private: -lm -ldl
-Cflags: -I${includedir}/${lib_name_include}
+Cflags: -I${includedir}
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/lua51.git/commitdiff/9c21aac6a3300fe63821b681983c962461e6c4b0



More information about the pld-cvs-commit mailing list