summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorMike Pall <mike>2009-12-08 19:49:20 +0100
committerMike Pall <mike>2009-12-08 19:49:20 +0100
commit1d1fed48a002dfc0919135911057ebc255a53e0a (patch)
treec5c6643908374bb8f02f4c7691332d32f6645986 /Makefile
parent55b16959717084884fd4a0cbae6d19e3786c20c7 (diff)
downloadluajit2-1d1fed48a002dfc0919135911057ebc255a53e0a.tar.gz
RELEASE LuaJIT-2.0.0-beta2v2.0.0-beta2
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile96
1 files changed, 76 insertions, 20 deletions
diff --git a/Makefile b/Makefile
index 67347041..1dd0c132 100644
--- a/Makefile
+++ b/Makefile
@@ -12,46 +12,104 @@
# Copyright (C) 2005-2009 Mike Pall. See Copyright Notice in luajit.h
##############################################################################
-BASEVER= 2.0.0
-VERSION= 2.0.0-beta1
+MAJVER= 2
+MINVER= 0
+RELVER= 0
+PREREL= -beta2
+VERSION= $(MAJVER).$(MINVER).$(RELVER)$(PREREL)
+ABIVER= 5.1
+NODOTABIVER= 51
##############################################################################
#
# Change the installation path as needed and modify src/luaconf.h accordingly.
# Note: PREFIX must be an absolute path!
#
-PREFIX= /usr/local
+export PREFIX= /usr/local
##############################################################################
-INSTALL_BIN= $(PREFIX)/bin
-INSTALL_NAME= luajit-$(VERSION)
-INSTALL_T= $(INSTALL_BIN)/$(INSTALL_NAME)
-INSTALL_TSYM= $(INSTALL_BIN)/luajit
-INSTALL_INC= $(PREFIX)/include/luajit-$(BASEVER)
-INSTALL_JITLIB= $(PREFIX)/share/luajit-$(VERSION)/jit
-
+DPREFIX= $(DESTDIR)$(PREFIX)
+INSTALL_BIN= $(DPREFIX)/bin
+INSTALL_LIB= $(DPREFIX)/lib
+INSTALL_SHARE= $(DPREFIX)/share
+INSTALL_INC= $(DPREFIX)/include/luajit-$(MAJVER).$(MINVER)
+
+INSTALL_JITLIB= $(INSTALL_SHARE)/luajit-$(VERSION)/jit
+INSTALL_LMOD= $(INSTALL_SHARE)/lua/$(ABIVER)
+INSTALL_CMOD= $(INSTALL_LIB)/lua/$(ABIVER)
+INSTALL_MAN= $(INSTALL_SHARE)/man/man1
+INSTALL_PKGCONFIG= $(INSTALL_LIB)/pkgconfig
+
+INSTALL_TNAME= luajit-$(VERSION)
+INSTALL_TSYMNAME= luajit
+INSTALL_ANAME= libluajit-$(ABIVER).a
+INSTALL_SONAME= libluajit-$(ABIVER).so.$(MAJVER).$(MINVER).$(RELVER)
+INSTALL_SOSHORT= libluajit-$(ABIVER).so
+INSTALL_DYLIBNAME= libluajit-$(NODOTABIVER).$(MAJVER).$(MINVER).$(RELVER).dylib
+INSTALL_DYLIBSHORT1= libluajit-$(NODOTABIVER).dylib
+INSTALL_DYLIBSHORT2= libluajit-$(NODOTABIVER).$(MAJVER).dylib
+INSTALL_PCNAME= luajit.pc
+
+INSTALL_STATIC= $(INSTALL_LIB)/$(INSTALL_ANAME)
+INSTALL_DYN= $(INSTALL_LIB)/$(INSTALL_SONAME)
+INSTALL_SHORT1= $(INSTALL_LIB)/$(INSTALL_SOSHORT)
+INSTALL_SHORT2= $(INSTALL_LIB)/$(INSTALL_SOSHORT)
+INSTALL_T= $(INSTALL_BIN)/$(INSTALL_TNAME)
+INSTALL_TSYM= $(INSTALL_BIN)/$(INSTALL_TSYMNAME)
+INSTALL_PC= $(INSTALL_PKGCONFIG)/$(INSTALL_PCNAME)
+
+INSTALL_DIRS= $(INSTALL_BIN) $(INSTALL_LIB) $(INSTALL_INC) $(INSTALL_MAN) \
+ $(INSTALL_PKGCONFIG) $(INSTALL_JITLIB) $(INSTALL_LMOD) $(INSTALL_CMOD)
+
+RM= rm -f
MKDIR= mkdir -p
-SYMLINK= ln -f -s
+SYMLINK= ln -sf
INSTALL_X= install -m 0755
INSTALL_F= install -m 0644
-
-FILES_T= luajit
+LDCONFIG= ldconfig -n
+SED_PC= sed -e "s|^prefix=.*|prefix=$(PREFIX)|"
+
+FILE_T= luajit
+FILE_A= libluajit.a
+FILE_SO= libluajit.so
+FILE_MAN= luajit.1
+FILE_PC= luajit.pc
FILES_INC= lua.h lualib.h lauxlib.h luaconf.h lua.hpp luajit.h
FILES_JITLIB= bc.lua v.lua dump.lua dis_x86.lua dis_x64.lua vmdef.lua
+ifeq (,$(findstring Windows,$(OS)))
+ ifeq (Darwin,$(shell uname -s))
+ INSTALL_SONAME= $(INSTALL_DYLIBNAME)
+ INSTALL_SHORT1= $(INSTALL_LIB)/$(INSTALL_DYLIBSHORT1)
+ INSTALL_SHORT2= $(INSTALL_LIB)/$(INSTALL_DYLIBSHORT2)
+ LDCONFIG= :
+ endif
+endif
+
##############################################################################
INSTALL_DEP= src/luajit
-all $(INSTALL_DEP):
+default all $(INSTALL_DEP):
@echo "==== Building LuaJIT $(VERSION) ===="
$(MAKE) -C src
@echo "==== Successfully built LuaJIT $(VERSION) ===="
install: $(INSTALL_DEP)
@echo "==== Installing LuaJIT $(VERSION) to $(PREFIX) ===="
- $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_JITLIB)
- cd src && $(INSTALL_X) $(FILES_T) $(INSTALL_T)
+ $(MKDIR) $(INSTALL_DIRS)
+ cd src && $(INSTALL_X) $(FILE_T) $(INSTALL_T)
+ cd src && test -f $(FILE_A) && $(INSTALL_F) $(FILE_A) $(INSTALL_STATIC) || :
+ $(RM) $(INSTALL_DYN) $(INSTALL_SHORT1) $(INSTALL_SHORT2)
+ cd src && test -f $(FILE_SO) && \
+ $(INSTALL_F) $(FILE_SO) $(INSTALL_DYN) && \
+ $(LDCONFIG) $(INSTALL_LIB) && \
+ $(SYMLINK) $(INSTALL_SONAME) $(INSTALL_SHORT1) && \
+ $(SYMLINK) $(INSTALL_SONAME) $(INSTALL_SHORT2) || :
+ cd etc && $(INSTALL_F) $(FILE_MAN) $(INSTALL_MAN)
+ cd etc && $(SED_PC) $(FILE_PC) > $(FILE_PC).tmp && \
+ $(INSTALL_F) $(FILE_PC).tmp $(INSTALL_PC) && \
+ $(RM) $(FILE_PC).tmp
cd src && $(INSTALL_F) $(FILES_INC) $(INSTALL_INC)
cd lib && $(INSTALL_F) $(FILES_JITLIB) $(INSTALL_JITLIB)
@echo "==== Successfully installed LuaJIT $(VERSION) to $(PREFIX) ===="
@@ -59,7 +117,7 @@ install: $(INSTALL_DEP)
@echo "Note: the beta releases deliberately do NOT install a symlink for luajit"
@echo "You can do this now by running this command (with sudo):"
@echo ""
- @echo " $(SYMLINK) $(INSTALL_NAME) $(INSTALL_TSYM)"
+ @echo " $(SYMLINK) $(INSTALL_TNAME) $(INSTALL_TSYM)"
@echo ""
##############################################################################
@@ -77,8 +135,6 @@ cleaner:
distclean:
$(MAKE) -C src distclean
-SUB_TARGETS= amalg clean cleaner distclean
-
-.PHONY: all install $(SUB_TARGETS)
+.PHONY: all install amalg clean cleaner distclean
##############################################################################