diff --git a/lua-toluapp.spec b/lua-toluapp.spec index d7ae4c8..dfa1b13 100644 --- a/lua-toluapp.spec +++ b/lua-toluapp.spec @@ -93,7 +93,9 @@ This package provides development headers for tolua++. %patch0 -p1 %patch1 -p1 %patch2 -p1 +%if "%{flavor}" == "lua52" || "%{flavor}" == "lua53" %patch3 -p1 +%endif sed -i "s/@SUFFIX@/%{lua_version}/" SConstruct %build @@ -112,7 +114,7 @@ scons %{?_smp_mflags} \ libdir="%{_libdir}" \ shared=1 \ lib bin \ - -Q CCFLAGS="%{optflags} -I%{lua_incdir} -fPIC" + -Q CCFLAGS="%{optflags} -I%{lua_incdir} -fPIC -DDATAPATH=\\\"%{_datadir}/%{name}\\\"" %install CCFLAGS="%{optflags} -fPIC -I%{lua_incdir}" \ @@ -122,7 +124,7 @@ scons %{?_smp_mflags} \ libdir="%{buildroot}%{_libdir}" \ shared=1 \ install \ - -Q CCFLAGS="%{optflags} -I%{lua_incdir} -fPIC" + -Q CCFLAGS="%{optflags} -I%{lua_incdir} -fPIC -DDATAPATH=\\\"%{_datadir}/%{name}\\\"" # pkgconfig file mkdir -p %{buildroot}%{_libdir}/pkgconfig @@ -141,6 +143,11 @@ Libs: -ltolua++-%{lua_version} Cflags: -I%{_includedir} EOF +%if "%{flavor}" == "lua52" || "%{flavor}" == "lua53" +mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name} +install -p -m 644 src/bin/lua/*.lua $RPM_BUILD_ROOT%{_datadir}/%{name} +%endif + # update-alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives/ touch %{buildroot}%{_sysconfdir}/alternatives/tolua++ @@ -163,6 +170,9 @@ fi %ghost %{_sysconfdir}/alternatives/tolua++ %{_bindir}/tolua++ %{_bindir}/toluapp-%{lua_version} +%if "%{flavor}" == "lua52" || "%{flavor}" == "lua53" +%{_datadir}/%{name} +%endif %files -n libtolua++-%{lua_suffix}-devel %{_includedir}/tolua++.h diff --git a/tolua++-1.0.93-lua52.patch b/tolua++-1.0.93-lua52.patch index 2d01d13..c0dc13e 100644 --- a/tolua++-1.0.93-lua52.patch +++ b/tolua++-1.0.93-lua52.patch @@ -432,8 +432,8 @@ Index: toluapp-1.0.93/src/bin/tolua.c - lua_pushstring(L,path); lua_setglobal(L,"path"); - strcat(path,"all.lua"); - lua_dofile(L,path); -+ lua_pushstring(L, "/usr/share/toluapp/luapp/"); lua_setglobal(L,"path"); -+ if (luaL_loadfile(L, "/usr/share/toluapp/luapp/all.lua") != 0) { ++ lua_pushstring(L, DATAPATH"/"); lua_setglobal(L,"path"); ++ if (luaL_loadfile(L, DATAPATH"/all.lua") != 0) { + fprintf(stderr, "luaL_loadfile failed\n"); + return 1; + }