From 0bc7efaa7e1e79f5753116d881b4ea30b1cc0fd0 Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Mon, 5 May 2014 15:59:15 +0000 Subject: import patch from 5.2.1 diff --git a/Makefile b/Makefile index 1797df9..d93b0bc 100644 --- a/Makefile +++ b/Makefile @@ -36,12 +36,12 @@ RM= rm -f # == END OF USER SETTINGS -- NO NEED TO CHANGE ANYTHING BELOW THIS LINE ======= # Convenience platforms targets. -PLATS= guess aix bsd c89 freebsd generic linux linux-readline macosx mingw posix solaris +PLATS= guess aix bsd c89 freebsd generic haiku linux linux-readline 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. @@ -52,7 +52,7 @@ R= $V.1 all: $(PLAT) $(PLATS) help test clean: - @cd src && $(MAKE) $@ + @cd src && $(MAKE) V=$(V) $@ install: dummy cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD) diff --git a/src/Makefile b/src/Makefile index 514593d..5f25dd1 100644 --- a/src/Makefile +++ b/src/Makefile @@ -30,9 +30,10 @@ CMCFLAGS= -Os # == END OF USER SETTINGS -- NO NEED TO CHANGE ANYTHING BELOW THIS LINE ======= -PLATS= guess aix bsd c89 freebsd generic linux linux-readline macosx mingw posix solaris +PLATS= guess aix bsd c89 freebsd generic haiku linux linux-readline 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 LIB_O= lauxlib.o lbaselib.o lcorolib.o ldblib.o liolib.o lmathlib.o loadlib.o loslib.o lstrlib.o ltablib.o lutf8lib.o linit.o BASE_O= $(CORE_O) $(LIB_O) $(MYOBJS) @@ -44,7 +45,7 @@ LUAC_T= luac 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. @@ -66,6 +67,9 @@ $(LUA_T): $(LUA_O) $(LUA_A) $(LUAC_T): $(LUAC_O) $(LUA_A) $(CC) -o $@ $(LDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS) +$(LUA_SO): $(CORE_O) $(LIB_O) + $(CC) -o $@ -shared -fPIC -Wl,-soname=liblua.so.$(V) $(LDFLAGS) $? $(LIBS) + test: ./lua -v @@ -115,6 +119,9 @@ FreeBSD NetBSD OpenBSD freebsd: generic: $(ALL) +haiku: + $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_HAIKU -DLUA_USE_POSIX" LIBS= + Linux linux: linux-noreadline linux-noreadline: diff --git a/src/luaconf.h b/src/luaconf.h index bdf927e..f583e1d 100644 --- a/src/luaconf.h +++ b/src/luaconf.h @@ -84,6 +84,12 @@ #define LUA_USE_DLOPEN /* MacOS does not need -ldl */ #endif +#if defined(LUA_USE_HAIKU) +#define LUA_USE_MKSTEMP +#define LUA_USE_ISATTY +#define LUA_USE_POPEN +#define LUA_USE_DLOPEN +#endif /* @@ LUAI_IS32INT is true iff 'int' has (at least) 32 bits. @@ -227,8 +233,12 @@ #else /* }{ */ +#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 "/" #if !defined(LUA_PATH_DEFAULT) -- 2.28.0