use lua_mem(L, +-size) to track your additional userdata sizes. keep it balanced...
[blua.git] / Makefile
blob6e78f66fa5b1763b119236e1bd7de95f42093e52
1 # makefile for installing Lua
2 # see INSTALL for installation instructions
3 # see src/Makefile and src/luaconf.h for further customization
5 # == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT =======================
7 # Your platform. See PLATS for possible values.
8 PLAT= none
10 # Where to install. The installation starts in the src and doc directories,
11 # so take care if INSTALL_TOP is not an absolute path.
12 INSTALL_TOP= /usr/local
13 INSTALL_BIN= $(INSTALL_TOP)/bin
14 INSTALL_INC= $(INSTALL_TOP)/include
15 INSTALL_LIB= $(INSTALL_TOP)/lib
16 INSTALL_MAN= $(INSTALL_TOP)/man/man1
18 # You probably want to make INSTALL_LMOD and INSTALL_CMOD consistent with
19 # LUA_ROOT, LUA_LDIR, and LUA_CDIR in luaconf.h (and also with etc/lua.pc).
20 INSTALL_LMOD= $(INSTALL_TOP)/share/lua/$V
21 INSTALL_CMOD= $(INSTALL_TOP)/lib/lua/$V
23 # How to install. If your install program does not support "-p", then you
24 # may have to run ranlib on the installed liblua.a (do "make ranlib").
25 INSTALL= install -p
26 INSTALL_EXEC= $(INSTALL) -m 0755
27 INSTALL_DATA= $(INSTALL) -m 0644
29 # If you don't have install you can use cp instead.
30 # INSTALL= cp -p
31 # INSTALL_EXEC= $(INSTALL)
32 # INSTALL_DATA= $(INSTALL)
34 # Utilities.
35 MKDIR= mkdir -p
36 RANLIB= ranlib
38 # == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE =========
40 # Convenience platforms targets.
41 PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris
43 # What to install.
44 TO_BIN= lua luac
45 TO_INC= lua.h luaconf.h lualib.h lauxlib.h ../etc/lua.hpp
46 TO_LIB= liblua.a
47 TO_MAN= lua.1 luac.1
49 # Lua version and release.
50 V= 5.1
51 R= 5.1.4
53 all: $(PLAT)
55 $(PLATS) clean:
56 cd src && $(MAKE) $@
58 test: dummy
59 src/lua test/hello.lua
61 install: dummy
62 cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD)
63 cd src && $(INSTALL_EXEC) $(TO_BIN) $(INSTALL_BIN)
64 cd src && $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC)
65 cd src && $(INSTALL_DATA) $(TO_LIB) $(INSTALL_LIB)
66 cd doc && $(INSTALL_DATA) $(TO_MAN) $(INSTALL_MAN)
68 ranlib:
69 cd src && cd $(INSTALL_LIB) && $(RANLIB) $(TO_LIB)
71 local:
72 $(MAKE) install INSTALL_TOP=..
74 none:
75 @echo "Please do"
76 @echo " make PLATFORM"
77 @echo "where PLATFORM is one of these:"
78 @echo " $(PLATS)"
79 @echo "See INSTALL for complete instructions."
81 # make may get confused with test/ and INSTALL in a case-insensitive OS
82 dummy:
84 # echo config parameters
85 echo:
86 @echo ""
87 @echo "These are the parameters currently set in src/Makefile to build Lua $R:"
88 @echo ""
89 @cd src && $(MAKE) -s echo
90 @echo ""
91 @echo "These are the parameters currently set in Makefile to install Lua $R:"
92 @echo ""
93 @echo "PLAT = $(PLAT)"
94 @echo "INSTALL_TOP = $(INSTALL_TOP)"
95 @echo "INSTALL_BIN = $(INSTALL_BIN)"
96 @echo "INSTALL_INC = $(INSTALL_INC)"
97 @echo "INSTALL_LIB = $(INSTALL_LIB)"
98 @echo "INSTALL_MAN = $(INSTALL_MAN)"
99 @echo "INSTALL_LMOD = $(INSTALL_LMOD)"
100 @echo "INSTALL_CMOD = $(INSTALL_CMOD)"
101 @echo "INSTALL_EXEC = $(INSTALL_EXEC)"
102 @echo "INSTALL_DATA = $(INSTALL_DATA)"
103 @echo ""
104 @echo "See also src/luaconf.h ."
105 @echo ""
107 # echo private config parameters
108 pecho:
109 @echo "V = $(V)"
110 @echo "R = $(R)"
111 @echo "TO_BIN = $(TO_BIN)"
112 @echo "TO_INC = $(TO_INC)"
113 @echo "TO_LIB = $(TO_LIB)"
114 @echo "TO_MAN = $(TO_MAN)"
116 # echo config parameters as Lua code
117 # uncomment the last sed expression if you want nil instead of empty strings
118 lecho:
119 @echo "-- installation parameters for Lua $R"
120 @echo "VERSION = '$V'"
121 @echo "RELEASE = '$R'"
122 @$(MAKE) echo | grep = | sed -e 's/= /= "/' -e 's/$$/"/' #-e 's/""/nil/'
123 @echo "-- EOF"
125 # list targets that do not create files (but not all makes understand .PHONY)
126 .PHONY: all $(PLATS) clean test install local none dummy echo pecho lecho
128 # (end of Makefile)