5 kx # Makefile for installing Lua
5 kx # See doc/readme.html for installation and customization instructions.
5 kx
5 kx # == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT =======================
5 kx
5 kx # Your platform. See PLATS for possible values.
5 kx PLAT= guess
5 kx
5 kx # Where to install. The installation starts in the src and doc directories,
5 kx # so take care if INSTALL_TOP is not an absolute path. See the local target.
5 kx # You may want to make INSTALL_LMOD and INSTALL_CMOD consistent with
5 kx # LUA_ROOT, LUA_LDIR, and LUA_CDIR in luaconf.h.
5 kx INSTALL_TOP= /usr
5 kx INSTALL_BIN= $(INSTALL_TOP)/bin
5 kx INSTALL_INC= $(INSTALL_TOP)/include
5 kx INSTALL_LIB= $(INSTALL_TOP)/lib
5 kx INSTALL_MAN= $(INSTALL_TOP)/share/man/man1
5 kx INSTALL_LMOD= $(INSTALL_TOP)/share/lua/$V
5 kx INSTALL_CMOD= $(INSTALL_TOP)/lib/lua/$V
5 kx
5 kx # How to install. If your install program does not support "-p", then
5 kx # you may have to run ranlib on the installed liblua.a.
5 kx INSTALL= install -p
5 kx INSTALL_EXEC= $(INSTALL) -m 0755
5 kx INSTALL_DATA= $(INSTALL) -m 0644
5 kx #
5 kx # If you don't have "install" you can use "cp" instead.
5 kx # INSTALL= cp -p
5 kx # INSTALL_EXEC= $(INSTALL)
5 kx # INSTALL_DATA= $(INSTALL)
5 kx
5 kx # Other utilities.
5 kx MKDIR= mkdir -p
5 kx RM= rm -f
5 kx
5 kx # == END OF USER SETTINGS -- NO NEED TO CHANGE ANYTHING BELOW THIS LINE =======
5 kx
5 kx # Convenience platforms targets.
5 kx PLATS= guess aix bsd c89 freebsd generic linux linux-readline macosx mingw posix solaris
5 kx
5 kx # What to install.
5 kx TO_BIN= lua luac
5 kx TO_INC= lua.h luaconf.h lualib.h lauxlib.h lua.hpp
5 kx TO_LIB= liblua.a
5 kx TO_MAN= lua.1 luac.1
5 kx
5 kx # Lua version and release.
5 kx V= 5.4
5 kx R= $V.2
5 kx
5 kx # Targets start here.
5 kx all: $(PLAT)
5 kx
5 kx $(PLATS) help test clean:
5 kx @cd src && $(MAKE) $@ V=$(V) R=$(R)
5 kx
5 kx install: dummy
5 kx cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD)
5 kx cd src && $(INSTALL_EXEC) $(TO_BIN) $(INSTALL_BIN)
5 kx cd src && $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC)
5 kx cd src && $(INSTALL_DATA) $(TO_LIB) $(INSTALL_LIB)
5 kx cd doc && $(INSTALL_DATA) $(TO_MAN) $(INSTALL_MAN)
5 kx
5 kx uninstall:
5 kx cd src && cd $(INSTALL_BIN) && $(RM) $(TO_BIN)
5 kx cd src && cd $(INSTALL_INC) && $(RM) $(TO_INC)
5 kx cd src && cd $(INSTALL_LIB) && $(RM) $(TO_LIB)
5 kx cd doc && cd $(INSTALL_MAN) && $(RM) $(TO_MAN)
5 kx
5 kx local:
5 kx $(MAKE) install INSTALL_TOP=../install
5 kx
5 kx # make may get confused with install/ if it does not support .PHONY.
5 kx dummy:
5 kx
5 kx # Echo config parameters.
5 kx echo:
5 kx @cd src && $(MAKE) -s echo
5 kx @echo "PLAT= $(PLAT)"
5 kx @echo "V= $V"
5 kx @echo "R= $R"
5 kx @echo "TO_BIN= $(TO_BIN)"
5 kx @echo "TO_INC= $(TO_INC)"
5 kx @echo "TO_LIB= $(TO_LIB)"
5 kx @echo "TO_MAN= $(TO_MAN)"
5 kx @echo "INSTALL_TOP= $(INSTALL_TOP)"
5 kx @echo "INSTALL_BIN= $(INSTALL_BIN)"
5 kx @echo "INSTALL_INC= $(INSTALL_INC)"
5 kx @echo "INSTALL_LIB= $(INSTALL_LIB)"
5 kx @echo "INSTALL_MAN= $(INSTALL_MAN)"
5 kx @echo "INSTALL_LMOD= $(INSTALL_LMOD)"
5 kx @echo "INSTALL_CMOD= $(INSTALL_CMOD)"
5 kx @echo "INSTALL_EXEC= $(INSTALL_EXEC)"
5 kx @echo "INSTALL_DATA= $(INSTALL_DATA)"
5 kx
5 kx # Echo pkg-config data.
5 kx pc:
5 kx @echo "version=$R"
5 kx @echo "prefix=$(INSTALL_TOP)"
5 kx @echo "libdir=$(INSTALL_LIB)"
5 kx @echo "includedir=$(INSTALL_INC)"
5 kx
5 kx # Targets that do not create files (not all makes understand .PHONY).
5 kx .PHONY: all $(PLATS) help test clean install uninstall local dummy echo pc
5 kx
5 kx # (end of Makefile)