summaryrefslogtreecommitdiffstats
path: root/main/lua/lua-5.1-make.patch
blob: d051a21cb63237ae362cd5b849f9f336e51f4737 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
--- lua-5.1.1.orig/Makefile	2006-06-02 12:53:38.000000000 +0200
+++ lua-5.1.1/Makefile	2006-11-16 02:16:53.000000000 +0100
@@ -127,3 +127,22 @@
 .PHONY: all $(PLATS) clean test install local none dummy echo pecho lecho newer
 
 # (end of Makefile)
+
+# Use libtool for binary installs, etc.
+
+export V
+export LIBTOOL = libtool --quiet --tag=CC
+# See libtool manual about how to set this
+
+gentoo_clean:
+	cd src; $(MAKE) $@
+
+gentoo_test: gentoo_linux
+	test/lua.static test/hello.lua
+
+gentoo_install:
+	mkdir -p $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB)
+	cd src; $(LIBTOOL) --mode=install $(INSTALL_EXEC) lua luac $(INSTALL_BIN)
+	cd src; $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC)
+	cd src; $(LIBTOOL) --mode=install $(INSTALL_DATA) liblua.la $(INSTALL_LIB)
+	cd src; $(LIBTOOL) --mode=install $(INSTALL_DATA) liblua.a $(INSTALL_LIB)
--- lua-5.1.1.orig/src/Makefile	2006-03-22 01:41:49.000000000 +0100
+++ lua-5.1.1/src/Makefile	2006-11-16 02:10:27.000000000 +0100
@@ -176,3 +176,36 @@
   ltm.h lzio.h lmem.h lopcodes.h lundump.h
 
 # (end of Makefile)
+
+export LIBTOOL = libtool --quiet --tag=CC
+export LIB_VERSION = 6:1:1
+
+# The following rules use libtool for compiling and linking in order to
+# provide shared library support.
+
+LIB_NAME = liblua.la
+LIB_OBJS = $(CORE_O:.o=.lo) $(LIB_O:.o=.lo)
+
+%.lo %.o: %.c
+	$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
+
+$(LIB_NAME): $(LIB_OBJS)
+	$(LIBTOOL) --mode=link $(CC) -version-info $(LIB_VERSION) \
+            -rpath $(RPATH) -o $(LIB_NAME) $(LIB_OBJS) $(LIB_LIBS)
+
+$(LIB_NAME:.la=.a): $(LIB_OBJS)
+	$(LIBTOOL) --mode=link $(CC) -static -o $(LIB_NAME:.la=.a) $(LIB_OBJS)
+
+$(LUA_T): $(LUA_O) $(LIB_NAME)
+	$(LIBTOOL) --mode=link $(CC) -Wl,-E -o $@ $(LUA_O) $(LUA_LIBS) -llua
+
+lua_test: $(LUA_O) $(LIB_NAME)
+	$(LIBTOOL) --mode=link $(CC) -static -Wl,-E -o $@ $(LUA_O) $(LIB_NAME) $(LUA_LIBS)
+
+$(LUAC_T): $(LUAC_O) $(LIB_NAME)
+	$(LIBTOOL) --mode=link $(CC) -static -o $@ $(LUAC_O) $(LIB_NAME)
+
+gentoo_clean:
+	$(LIBTOOL) --mode=clean $(RM) $(ALL_O:.o=.lo) $(LIB_NAME) lua luac
+
+gentoo_all: $(LIB_NAME) $(LIB_NAME:.la=.a) $(LUA_T) lua_test $(LUAC_T)