1280405Srpaulo# Makefile for installing Lua
2280405Srpaulo# See doc/readme.html for installation and customization instructions.
3280405Srpaulo
4280405Srpaulo# == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT =======================
5280405Srpaulo
6280405Srpaulo# Your platform. See PLATS for possible values.
7280405SrpauloPLAT= none
8280405Srpaulo
9280405Srpaulo# Where to install. The installation starts in the src and doc directories,
10280405Srpaulo# so take care if INSTALL_TOP is not an absolute path. See the local target.
11280405Srpaulo# You may want to make INSTALL_LMOD and INSTALL_CMOD consistent with
12280405Srpaulo# LUA_ROOT, LUA_LDIR, and LUA_CDIR in luaconf.h.
13280405SrpauloINSTALL_TOP= /usr/local
14280405SrpauloINSTALL_BIN= $(INSTALL_TOP)/bin
15280405SrpauloINSTALL_INC= $(INSTALL_TOP)/include
16280405SrpauloINSTALL_LIB= $(INSTALL_TOP)/lib
17280405SrpauloINSTALL_MAN= $(INSTALL_TOP)/man/man1
18280405SrpauloINSTALL_LMOD= $(INSTALL_TOP)/share/lua/$V
19280405SrpauloINSTALL_CMOD= $(INSTALL_TOP)/lib/lua/$V
20280405Srpaulo
21280405Srpaulo# How to install. If your install program does not support "-p", then
22280405Srpaulo# you may have to run ranlib on the installed liblua.a.
23280405SrpauloINSTALL= install -p
24280405SrpauloINSTALL_EXEC= $(INSTALL) -m 0755
25280405SrpauloINSTALL_DATA= $(INSTALL) -m 0644
26280405Srpaulo#
27280405Srpaulo# If you don't have "install" you can use "cp" instead.
28280405Srpaulo# INSTALL= cp -p
29280405Srpaulo# INSTALL_EXEC= $(INSTALL)
30280405Srpaulo# INSTALL_DATA= $(INSTALL)
31280405Srpaulo
32280405Srpaulo# Other utilities.
33280405SrpauloMKDIR= mkdir -p
34280405SrpauloRM= rm -f
35280405Srpaulo
36280405Srpaulo# == END OF USER SETTINGS -- NO NEED TO CHANGE ANYTHING BELOW THIS LINE =======
37280405Srpaulo
38280405Srpaulo# Convenience platforms targets.
39280405SrpauloPLATS= aix bsd c89 freebsd generic linux macosx mingw posix solaris
40280405Srpaulo
41280405Srpaulo# What to install.
42280405SrpauloTO_BIN= lua luac
43280405SrpauloTO_INC= lua.h luaconf.h lualib.h lauxlib.h lua.hpp
44280405SrpauloTO_LIB= liblua.a
45280405SrpauloTO_MAN= lua.1 luac.1
46280405Srpaulo
47280405Srpaulo# Lua version and release.
48280405SrpauloV= 5.3
49326344SimpR= $V.4
50280405Srpaulo
51280405Srpaulo# Targets start here.
52280405Srpauloall:	$(PLAT)
53280405Srpaulo
54280405Srpaulo$(PLATS) clean:
55280405Srpaulo	cd src && $(MAKE) $@
56280405Srpaulo
57280405Srpaulotest:	dummy
58280405Srpaulo	src/lua -v
59280405Srpaulo
60280405Srpauloinstall: dummy
61280405Srpaulo	cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD)
62280405Srpaulo	cd src && $(INSTALL_EXEC) $(TO_BIN) $(INSTALL_BIN)
63280405Srpaulo	cd src && $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC)
64280405Srpaulo	cd src && $(INSTALL_DATA) $(TO_LIB) $(INSTALL_LIB)
65280405Srpaulo	cd doc && $(INSTALL_DATA) $(TO_MAN) $(INSTALL_MAN)
66280405Srpaulo
67280405Srpaulouninstall:
68280405Srpaulo	cd src && cd $(INSTALL_BIN) && $(RM) $(TO_BIN)
69280405Srpaulo	cd src && cd $(INSTALL_INC) && $(RM) $(TO_INC)
70280405Srpaulo	cd src && cd $(INSTALL_LIB) && $(RM) $(TO_LIB)
71280405Srpaulo	cd doc && cd $(INSTALL_MAN) && $(RM) $(TO_MAN)
72280405Srpaulo
73280405Srpaulolocal:
74280405Srpaulo	$(MAKE) install INSTALL_TOP=../install
75280405Srpaulo
76280405Srpaulonone:
77280405Srpaulo	@echo "Please do 'make PLATFORM' where PLATFORM is one of these:"
78280405Srpaulo	@echo "   $(PLATS)"
79280405Srpaulo	@echo "See doc/readme.html for complete instructions."
80280405Srpaulo
81280405Srpaulo# make may get confused with test/ and install/
82280405Srpaulodummy:
83280405Srpaulo
84280405Srpaulo# echo config parameters
85280405Srpauloecho:
86280405Srpaulo	@cd src && $(MAKE) -s echo
87280405Srpaulo	@echo "PLAT= $(PLAT)"
88280405Srpaulo	@echo "V= $V"
89280405Srpaulo	@echo "R= $R"
90280405Srpaulo	@echo "TO_BIN= $(TO_BIN)"
91280405Srpaulo	@echo "TO_INC= $(TO_INC)"
92280405Srpaulo	@echo "TO_LIB= $(TO_LIB)"
93280405Srpaulo	@echo "TO_MAN= $(TO_MAN)"
94280405Srpaulo	@echo "INSTALL_TOP= $(INSTALL_TOP)"
95280405Srpaulo	@echo "INSTALL_BIN= $(INSTALL_BIN)"
96280405Srpaulo	@echo "INSTALL_INC= $(INSTALL_INC)"
97280405Srpaulo	@echo "INSTALL_LIB= $(INSTALL_LIB)"
98280405Srpaulo	@echo "INSTALL_MAN= $(INSTALL_MAN)"
99280405Srpaulo	@echo "INSTALL_LMOD= $(INSTALL_LMOD)"
100280405Srpaulo	@echo "INSTALL_CMOD= $(INSTALL_CMOD)"
101280405Srpaulo	@echo "INSTALL_EXEC= $(INSTALL_EXEC)"
102280405Srpaulo	@echo "INSTALL_DATA= $(INSTALL_DATA)"
103280405Srpaulo
104280405Srpaulo# echo pkg-config data
105280405Srpaulopc:
106280405Srpaulo	@echo "version=$R"
107280405Srpaulo	@echo "prefix=$(INSTALL_TOP)"
108280405Srpaulo	@echo "libdir=$(INSTALL_LIB)"
109280405Srpaulo	@echo "includedir=$(INSTALL_INC)"
110280405Srpaulo
111280405Srpaulo# list targets that do not create files (but not all makes understand .PHONY)
112280405Srpaulo.PHONY: all $(PLATS) clean test install local none dummy echo pecho lecho
113280405Srpaulo
114280405Srpaulo# (end of Makefile)
115