mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-23 04:00:05 +02:00
Add patch to lua for proper Haiku support and shared lib building(ticket #283).
Adjusted build/install commands in the bep file.
This commit is contained in:
92
dev-lang/lua/patches/lua-5.1.4.patch
Normal file
92
dev-lang/lua/patches/lua-5.1.4.patch
Normal file
@@ -0,0 +1,92 @@
|
||||
diff -up lua-5.1.4/Makefile.orig lua-5.1.4/Makefile
|
||||
--- lua-5.1.4/Makefile.orig 2010-04-27 22:29:15.068419584 -0600
|
||||
+++ lua-5.1.4/Makefile 2010-04-27 22:29:20.697303040 -0600
|
||||
@@ -38,12 +38,12 @@ RANLIB= ranlib
|
||||
# == 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 ../etc/lua.hpp
|
||||
-TO_LIB= liblua.a
|
||||
+TO_LIB= liblua.a liblua.so
|
||||
TO_MAN= lua.1 luac.1
|
||||
|
||||
# Lua version and release.
|
||||
diff -up lua-5.1.4/src/Makefile.orig lua-5.1.4/src/Makefile
|
||||
--- lua-5.1.4/src/Makefile.orig 2010-04-27 22:29:26.027787264 -0600
|
||||
+++ lua-5.1.4/src/Makefile 2010-04-27 22:29:38.680525824 -0600
|
||||
@@ -20,9 +20,10 @@ MYLIBS=
|
||||
|
||||
# == 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 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
|
||||
@@ -36,7 +37,7 @@ LUAC_T= luac
|
||||
LUAC_O= luac.o print.o
|
||||
|
||||
ALL_O= $(CORE_O) $(LIB_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)
|
||||
|
||||
default: $(PLAT)
|
||||
@@ -57,6 +58,9 @@ $(LUA_T): $(LUA_O) $(LUA_A)
|
||||
$(LUAC_T): $(LUAC_O) $(LUA_A)
|
||||
$(CC) -o $@ $(MYLDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS)
|
||||
|
||||
+$(LUA_SO): $(CORE_O) $(LIB_O)
|
||||
+ $(CC) -o $@ -shared $(MYLDFLAGS) $? $(LIBS)
|
||||
+
|
||||
clean:
|
||||
$(RM) $(ALL_T) $(ALL_O)
|
||||
|
||||
@@ -95,6 +99,9 @@ freebsd:
|
||||
generic:
|
||||
$(MAKE) all MYCFLAGS=
|
||||
|
||||
+haiku:
|
||||
+ $(MAKE) all MYCFLAGS=-DLUA_USE_HAIKU LIBS=
|
||||
+
|
||||
linux:
|
||||
$(MAKE) all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-Wl,-E -ldl -lreadline -lhistory -lncurses"
|
||||
|
||||
diff -up lua-5.1.4/src/luaconf.h.orig lua-5.1.4/src/luaconf.h
|
||||
--- lua-5.1.4/src/luaconf.h.orig 2010-04-27 22:29:48.387448832 -0600
|
||||
+++ lua-5.1.4/src/luaconf.h 2010-04-27 22:29:58.184025088 -0600
|
||||
@@ -33,6 +33,13 @@
|
||||
#define LUA_WIN
|
||||
#endif
|
||||
|
||||
+#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 */
|
||||
@@ -94,7 +101,11 @@
|
||||
".\\?.dll;" LUA_CDIR"?.dll;" LUA_CDIR"loadall.dll"
|
||||
|
||||
#else
|
||||
-#define LUA_ROOT "/usr/local/"
|
||||
+# if defined(LUA_USE_HAIKU)
|
||||
+# define LUA_ROOT "/boot/common/"
|
||||
+# else
|
||||
+# define LUA_ROOT "/usr/local/"
|
||||
+# endif
|
||||
#define LUA_LDIR LUA_ROOT "share/lua/5.1/"
|
||||
#define LUA_CDIR LUA_ROOT "lib/lua/5.1/"
|
||||
#define LUA_PATH_DEFAULT \
|
||||
Reference in New Issue
Block a user