From 6eea71fd1085886c6b448992217ab7a5439ef5dc Mon Sep 17 00:00:00 2001 From: Chris Roberts Date: Tue, 22 Oct 2013 02:49:53 -0600 Subject: [PATCH] Fix issues with lua-5.2.1 Created a devel portion to the recipe Fixed lookup of directories for lua root/modules Fixed soname not being set in the lib --- dev-lang/lua/lua-5.2.1.recipe | 15 +++- dev-lang/lua/patches/lua-5.2.1.patch | 91 ------------------------- dev-lang/lua/patches/lua-5.2.1.patchset | 68 ++++++++++++------ 3 files changed, 62 insertions(+), 112 deletions(-) delete mode 100644 dev-lang/lua/patches/lua-5.2.1.patch diff --git a/dev-lang/lua/lua-5.2.1.recipe b/dev-lang/lua/lua-5.2.1.recipe index 3f089d918..523bafbc3 100644 --- a/dev-lang/lua/lua-5.2.1.recipe +++ b/dev-lang/lua/lua-5.2.1.recipe @@ -21,18 +21,29 @@ BUILD_PREREQUIRES=" cmd:gcc " +PROVIDES_devel=" + lua_devel = $portVersion + devel:liblua = $portVersion compat = 5.2 + " + +REQUIRES_devel=" + lua == $portVersion + " + PATCHES="lua-$portVersion.patchset" + BUILD() { - make haiku + make haiku MYCFLAGS="-DLUA_ROOT='\"$prefix/\"' -DLUA_LDIR='\"$dataDir/lua/5.2/\"'" } INSTALL() { make install INSTALL_TOP="$prefix" INSTALL_MAN="$manDir" \ - INSTALL_INC="$includeDir" INSTALL_LMOD="$dataDir/lua/$V" + INSTALL_INC="$includeDir" INSTALL_LMOD="$dataDir/lua/5.2" prepareInstalledDevelLib liblua + packageEntries devel $developDir } LICENSE="MIT" COPYRIGHT="1994-2012, Lua.org, PUC-Rio" diff --git a/dev-lang/lua/patches/lua-5.2.1.patch b/dev-lang/lua/patches/lua-5.2.1.patch deleted file mode 100644 index ea654fad3..000000000 --- a/dev-lang/lua/patches/lua-5.2.1.patch +++ /dev/null @@ -1,91 +0,0 @@ -diff -ru lua-5.2.1/Makefile lua-5.2.1.patched/Makefile ---- lua-5.2.1/Makefile 2012-05-17 16:05:54.032768000 +0200 -+++ lua-5.2.1.patched/Makefile 2012-08-12 16:50:24.994574336 +0200 -@@ -36,12 +36,12 @@ - # == END OF USER SETTINGS -- NO NEED TO CHANGE ANYTHING BELOW THIS LINE ======= - - # Convenience platforms targets. --PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris -+PLATS= aix ansi bsd freebsd generic haiku linux macosx mingw posix solaris - - # What to install. - TO_BIN= lua luac - TO_INC= lua.h luaconf.h lualib.h lauxlib.h lua.hpp --TO_LIB= liblua.a -+TO_LIB= liblua.a liblua.so - TO_MAN= lua.1 luac.1 - - # Lua version and release. -diff -ru lua-5.2.1/src/luaconf.h lua-5.2.1.patched/src/luaconf.h ---- lua-5.2.1/src/luaconf.h 2012-05-11 16:14:42.025690112 +0200 -+++ lua-5.2.1.patched/src/luaconf.h 2012-08-12 16:56:30.385875968 +0200 -@@ -40,6 +40,13 @@ - - - -+#if defined(LUA_USE_HAIKU) -+#define LUA_USE_MKSTEMP -+#define LUA_USE_ISATTY -+#define LUA_USE_POPEN -+#define LUA_USE_DLOPEN -+#endif -+ - #if defined(LUA_USE_LINUX) - #define LUA_USE_POSIX - #define LUA_USE_DLOPEN /* needs an extra library: -ldl */ -@@ -100,7 +107,11 @@ - #else /* }{ */ - - #define LUA_VDIR LUA_VERSION_MAJOR "." LUA_VERSION_MINOR "/" -+#if defined(LUA_USE_HAIKU) -+#define LUA_ROOT "/boot/common/" -+#else - #define LUA_ROOT "/usr/local/" -+#endif - #define LUA_LDIR LUA_ROOT "share/lua/" LUA_VDIR - #define LUA_CDIR LUA_ROOT "lib/lua/" LUA_VDIR - #define LUA_PATH_DEFAULT \ -diff -ru lua-5.2.1/src/Makefile lua-5.2.1.patched/src/Makefile ---- lua-5.2.1/src/Makefile 2012-03-09 17:32:16.029884416 +0100 -+++ lua-5.2.1.patched/src/Makefile 2012-08-12 16:52:43.662437888 +0200 -@@ -26,9 +26,10 @@ - - # == END OF USER SETTINGS -- NO NEED TO CHANGE ANYTHING BELOW THIS LINE ======= - --PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris -+PLATS= aix ansi bsd freebsd generic haiku linux macosx mingw posix solaris - - LUA_A= liblua.a -+LUA_SO= liblua.so - CORE_O= lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o \ - lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o \ - ltm.o lundump.o lvm.o lzio.o -@@ -43,7 +44,7 @@ - LUAC_O= luac.o - - ALL_O= $(BASE_O) $(LUA_O) $(LUAC_O) --ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) -+ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) $(LUA_SO) - ALL_A= $(LUA_A) - - # Targets start here. -@@ -65,6 +66,9 @@ - $(LUAC_T): $(LUAC_O) $(LUA_A) - $(CC) -o $@ $(LDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS) - -+$(LUA_SO): $(CORE_O) $(LIB_O) -+ $(CC) -o $@ -shared -fPIC $(LDFLAGS) $? $(LIBS) -+ - clean: - $(RM) $(ALL_T) $(ALL_O) - -@@ -102,6 +106,9 @@ - - generic: $(ALL) - -+haiku: -+ $(MAKE) all MUCFLAGS=-DLUA_USE_HAIKU LIBS= -+ - linux: - $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_LINUX" SYSLIBS="-Wl,-E -ldl -lreadline -lncurses" - diff --git a/dev-lang/lua/patches/lua-5.2.1.patchset b/dev-lang/lua/patches/lua-5.2.1.patchset index 80b575808..548426ab7 100644 --- a/dev-lang/lua/patches/lua-5.2.1.patchset +++ b/dev-lang/lua/patches/lua-5.2.1.patchset @@ -1,4 +1,4 @@ -From 4130bdecfcb78e60b64a8ade8689aa02158eda46 Mon Sep 17 00:00:00 2001 +From a2fa4f5ec85201d7aa2721594a66d9171c0e6dd1 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 6 Oct 2013 10:13:45 +0200 Subject: Import existing patch. @@ -24,7 +24,7 @@ index bd9515f..22d3a62 100644 # Lua version and release. diff --git a/src/Makefile b/src/Makefile -index 8c9ee67..2f7065c 100644 +index 8c9ee67..507632b 100644 --- a/src/Makefile +++ b/src/Makefile @@ -26,9 +26,10 @@ MYOBJS= @@ -63,13 +63,13 @@ index 8c9ee67..2f7065c 100644 generic: $(ALL) +haiku: -+ $(MAKE) all MUCFLAGS=-DLUA_USE_HAIKU LIBS= ++ $(MAKE) all SYSCFLAGS="-DLUA_USE_HAIKU" LIBS= + linux: $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_LINUX" SYSLIBS="-Wl,-E -ldl -lreadline -lncurses" diff --git a/src/luaconf.h b/src/luaconf.h -index e4335df..cef74a7 100644 +index e4335df..107b864 100644 --- a/src/luaconf.h +++ b/src/luaconf.h @@ -40,6 +40,13 @@ @@ -86,23 +86,11 @@ index e4335df..cef74a7 100644 #if defined(LUA_USE_LINUX) #define LUA_USE_POSIX #define LUA_USE_DLOPEN /* needs an extra library: -ldl */ -@@ -100,7 +107,11 @@ - #else /* }{ */ - - #define LUA_VDIR LUA_VERSION_MAJOR "." LUA_VERSION_MINOR "/" -+#if defined(LUA_USE_HAIKU) -+#define LUA_ROOT "/boot/common/" -+#else - #define LUA_ROOT "/usr/local/" -+#endif - #define LUA_LDIR LUA_ROOT "share/lua/" LUA_VDIR - #define LUA_CDIR LUA_ROOT "lib/lua/" LUA_VDIR - #define LUA_PATH_DEFAULT \ -- 1.8.3.4 -From 5fbc99c965898e393a34cff6bfb14b29dc77426b Mon Sep 17 00:00:00 2001 +From ccb35be40296d43903e01fdd01d2e53cd017b615 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 6 Oct 2013 10:25:23 +0200 Subject: Set the library soname @@ -110,7 +98,7 @@ Subject: Set the library soname * prepareInstalledDevelLib will fail if there is no soname. diff --git a/src/Makefile b/src/Makefile -index 2f7065c..b279d4b 100644 +index 507632b..dd3c36b 100644 --- a/src/Makefile +++ b/src/Makefile @@ -67,7 +67,7 @@ $(LUAC_T): $(LUAC_O) $(LUA_A) @@ -118,10 +106,52 @@ index 2f7065c..b279d4b 100644 $(LUA_SO): $(CORE_O) $(LIB_O) - $(CC) -o $@ -shared -fPIC $(LDFLAGS) $? $(LIBS) -+ $(CC) -o $@ -shared -fPIC -Wl,-soname=liblua.so.$V $(LDFLAGS) $? $(LIBS) ++ $(CC) -o $@ -shared -fPIC -Wl,-soname=liblua.so.$(V) $(LDFLAGS) $? $(LIBS) clean: $(RM) $(ALL_T) $(ALL_O) -- 1.8.3.4 + +From a367a186c5058f68c758f0ff6fc45f3033a5ae97 Mon Sep 17 00:00:00 2001 +From: Chris Roberts +Date: Tue, 22 Oct 2013 02:42:32 -0600 +Subject: =?UTF-8?q?Allow=20passing=20LUA=5FROOT=20and=20LUA=5FLDIR=20on=20?= + =?UTF-8?q?the=20command=20line=0APass=20V=20(version)=20onto=20src/Makefi?= + =?UTF-8?q?le?= + + +diff --git a/Makefile b/Makefile +index 22d3a62..729ede5 100644 +--- a/Makefile ++++ b/Makefile +@@ -52,7 +52,7 @@ R= $V.1 + all: $(PLAT) + + $(PLATS) clean: +- cd src && $(MAKE) $@ ++ cd src && $(MAKE) V=$(V) $@ + + test: dummy + src/lua -v +diff --git a/src/luaconf.h b/src/luaconf.h +index 107b864..2418ef6 100644 +--- a/src/luaconf.h ++++ b/src/luaconf.h +@@ -107,8 +107,12 @@ + #else /* }{ */ + + #define LUA_VDIR LUA_VERSION_MAJOR "." LUA_VERSION_MINOR "/" ++#ifndef LUA_ROOT + #define LUA_ROOT "/usr/local/" ++#endif ++#ifndef LUA_LDIR + #define LUA_LDIR LUA_ROOT "share/lua/" LUA_VDIR ++#endif + #define LUA_CDIR LUA_ROOT "lib/lua/" LUA_VDIR + #define LUA_PATH_DEFAULT \ + LUA_LDIR"?.lua;" LUA_LDIR"?/init.lua;" \ +-- +1.8.3.4 +