|
| 1 | +# Makefile for installing Lua |
| 2 | +# See doc/readme.html for installation and customization instructions. |
| 3 | + |
| 4 | +# == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT ======================= |
| 5 | + |
| 6 | +# Your platform. See PLATS for possible values. |
| 7 | +PLAT= none |
| 8 | + |
| 9 | +# Where to install. The installation starts in the src and doc directories, |
| 10 | +# so take care if INSTALL_TOP is not an absolute path. See the local target. |
| 11 | +# You may want to make INSTALL_LMOD and INSTALL_CMOD consistent with |
| 12 | +# LUA_ROOT, LUA_LDIR, and LUA_CDIR in luaconf.h. |
| 13 | +INSTALL_TOP= /usr/local |
| 14 | +INSTALL_BIN= $(INSTALL_TOP)/bin |
| 15 | +INSTALL_INC= $(INSTALL_TOP)/include |
| 16 | +INSTALL_LIB= $(INSTALL_TOP)/lib |
| 17 | +INSTALL_MAN= $(INSTALL_TOP)/man/man1 |
| 18 | +INSTALL_LMOD= $(INSTALL_TOP)/share/lua/$V |
| 19 | +INSTALL_CMOD= $(INSTALL_TOP)/lib/lua/$V |
| 20 | + |
| 21 | +# How to install. If your install program does not support "-p", then |
| 22 | +# you may have to run ranlib on the installed liblua.a. |
| 23 | +INSTALL= install -p |
| 24 | +INSTALL_EXEC= $(INSTALL) -m 0755 |
| 25 | +INSTALL_DATA= $(INSTALL) -m 0644 |
| 26 | +# |
| 27 | +# If you don't have "install" you can use "cp" instead. |
| 28 | +# INSTALL= cp -p |
| 29 | +# INSTALL_EXEC= $(INSTALL) |
| 30 | +# INSTALL_DATA= $(INSTALL) |
| 31 | + |
| 32 | +# Other utilities. |
| 33 | +MKDIR= mkdir -p |
| 34 | +RM= rm -f |
| 35 | + |
| 36 | +# == END OF USER SETTINGS -- NO NEED TO CHANGE ANYTHING BELOW THIS LINE ======= |
| 37 | + |
| 38 | +# Convenience platforms targets. |
| 39 | +PLATS= aix bsd c89 freebsd generic linux macosx mingw posix solaris |
| 40 | + |
| 41 | +# What to install. |
| 42 | +TO_BIN= lua luac |
| 43 | +TO_INC= lua.h luaconf.h lualib.h lauxlib.h lua.hpp |
| 44 | +TO_LIB= liblua.a |
| 45 | +TO_MAN= lua.1 luac.1 |
| 46 | + |
| 47 | +# Lua version and release. |
| 48 | +V= 5.3 |
| 49 | +R= $V.4 |
| 50 | + |
| 51 | +# Targets start here. |
| 52 | +all: $(PLAT) |
| 53 | + |
| 54 | +$(PLATS) clean: |
| 55 | + cd src && $(MAKE) $@ |
| 56 | + |
| 57 | +test: dummy |
| 58 | + src/lua -v |
| 59 | + |
| 60 | +install: dummy |
| 61 | + cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD) |
| 62 | + cd src && $(INSTALL_EXEC) $(TO_BIN) $(INSTALL_BIN) |
| 63 | + cd src && $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC) |
| 64 | + cd src && $(INSTALL_DATA) $(TO_LIB) $(INSTALL_LIB) |
| 65 | + cd doc && $(INSTALL_DATA) $(TO_MAN) $(INSTALL_MAN) |
| 66 | + |
| 67 | +uninstall: |
| 68 | + cd src && cd $(INSTALL_BIN) && $(RM) $(TO_BIN) |
| 69 | + cd src && cd $(INSTALL_INC) && $(RM) $(TO_INC) |
| 70 | + cd src && cd $(INSTALL_LIB) && $(RM) $(TO_LIB) |
| 71 | + cd doc && cd $(INSTALL_MAN) && $(RM) $(TO_MAN) |
| 72 | + |
| 73 | +local: |
| 74 | + $(MAKE) install INSTALL_TOP=../install |
| 75 | + |
| 76 | +none: |
| 77 | + @echo "Please do 'make PLATFORM' where PLATFORM is one of these:" |
| 78 | + @echo " $(PLATS)" |
| 79 | + @echo "See doc/readme.html for complete instructions." |
| 80 | + |
| 81 | +# make may get confused with test/ and install/ |
| 82 | +dummy: |
| 83 | + |
| 84 | +# echo config parameters |
| 85 | +echo: |
| 86 | + @cd src && $(MAKE) -s echo |
| 87 | + @echo "PLAT= $(PLAT)" |
| 88 | + @echo "V= $V" |
| 89 | + @echo "R= $R" |
| 90 | + @echo "TO_BIN= $(TO_BIN)" |
| 91 | + @echo "TO_INC= $(TO_INC)" |
| 92 | + @echo "TO_LIB= $(TO_LIB)" |
| 93 | + @echo "TO_MAN= $(TO_MAN)" |
| 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 | + |
| 104 | +# echo pkg-config data |
| 105 | +pc: |
| 106 | + @echo "version=$R" |
| 107 | + @echo "prefix=$(INSTALL_TOP)" |
| 108 | + @echo "libdir=$(INSTALL_LIB)" |
| 109 | + @echo "includedir=$(INSTALL_INC)" |
| 110 | + |
| 111 | +# list targets that do not create files (but not all makes understand .PHONY) |
| 112 | +.PHONY: all $(PLATS) clean test install local none dummy echo pecho lecho |
| 113 | + |
| 114 | +# (end of Makefile) |
0 commit comments