]>
Commit | Line | Data |
---|---|---|
1 | # makefile for installing Lua | |
2 | # see INSTALL for installation instructions | |
3 | # see src/Makefile and src/luaconf.h for further customization | |
4 | ||
5 | # == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT ======================= | |
6 | ||
7 | # Your platform. See PLATS for possible values. | |
8 | PLAT= none | |
9 | ||
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 | |
17 | # | |
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 | |
22 | ||
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 | |
28 | # | |
29 | # If you don't have install you can use cp instead. | |
30 | # INSTALL= cp -p | |
31 | # INSTALL_EXEC= $(INSTALL) | |
32 | # INSTALL_DATA= $(INSTALL) | |
33 | ||
34 | # Utilities. | |
35 | MKDIR= mkdir -p | |
36 | RANLIB= ranlib | |
37 | ||
38 | # == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE ========= | |
39 | ||
40 | # Convenience platforms targets. | |
41 | PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris | |
42 | ||
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 | |
48 | ||
49 | # Lua version and release. | |
50 | V= 5.1 | |
51 | R= 5.1.4 | |
52 | ||
53 | all: $(PLAT) | |
54 | ||
55 | $(PLATS) clean: | |
56 | cd src && $(MAKE) $@ | |
57 | ||
58 | test: dummy | |
59 | src/lua test/hello.lua | |
60 | ||
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) | |
67 | ||
68 | ranlib: | |
69 | cd src && cd $(INSTALL_LIB) && $(RANLIB) $(TO_LIB) | |
70 | ||
71 | local: | |
72 | $(MAKE) install INSTALL_TOP=.. | |
73 | ||
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." | |
80 | ||
81 | # make may get confused with test/ and INSTALL in a case-insensitive OS | |
82 | dummy: | |
83 | ||
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 "" | |
106 | ||
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)" | |
115 | ||
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" | |
124 | ||
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 | |
127 | ||
128 | # (end of Makefile) |