From 855259b52e0e7c5ed81539c975dcaef4469797b9 Mon Sep 17 00:00:00 2001 From: Hisham Muhammad Date: Tue, 17 Mar 2015 22:27:20 -0300 Subject: New set of Makefiles for self-upgrade. --- Makefile | 41 +++-------------------------------------- Makefile.install.inc | 22 ++++++++++++++++++++++ Makefile.luarocks | 15 +++++++++++++++ Makefile.setup.inc | 19 +++++++++++++++++++ makedist | 6 +++--- rockspec | 12 +++++------- 6 files changed, 67 insertions(+), 48 deletions(-) create mode 100644 Makefile.install.inc create mode 100644 Makefile.luarocks create mode 100644 Makefile.setup.inc diff --git a/Makefile b/Makefile index 8159ddee..c56ebd0c 100644 --- a/Makefile +++ b/Makefile @@ -1,32 +1,16 @@ include config.unix +include Makefile.setup.inc +include Makefile.install.inc .PHONY: all build dev build_bins luadoc check_makefile cleanup_bins clean \ - install_bins install_luas install_site_config write_sysconfig \ - install bootstrap install_rock + install_site_config write_sysconfig install bootstrap install_rock -DESTDIR = -PREFIX ?= /usr/local ROCKS_TREE ?= $(PREFIX) SYSCONFDIR ?= $(PREFIX)/etc/luarocks -BINDIR ?= $(PREFIX)/bin -LUADIR ?= $(PREFIX)/share/lua/$(LUA_VERSION)/ LUA_DIR ?= /usr/local LUA_BINDIR ?= $(LUA_DIR)/bin -BIN_FILES = luarocks luarocks-admin -LUAROCKS_FILES = fs/unix/tools.lua fs/unix.lua fs/win32/tools.lua fs/win32.lua \ -fs/lua.lua persist.lua list.lua require.lua repos.lua dir.lua make_manifest.lua \ -command_line.lua install.lua build/command.lua build/cmake.lua build/make.lua \ -build/builtin.lua fetch/cvs.lua fetch/git.lua fetch/sscm.lua tools/patch.lua \ -fetch/svn.lua tools/zip.lua tools/tar.lua pack.lua type_check.lua make.lua \ -remove.lua fs.lua manif.lua add.lua deps.lua build.lua search.lua show.lua \ -manif_core.lua fetch.lua unpack.lua validate.lua cfg.lua download.lua \ -help.lua util.lua index.lua cache.lua refresh_cache.lua loader.lua \ -admin_remove.lua fetch/hg.lua fetch/git_file.lua new_version.lua lint.lua \ -purge.lua path.lua path_cmd.lua write_rockspec.lua doc.lua upload.lua \ -upload/api.lua upload/multipart.lua fetch/git_http.lua - CONFIG_FILE = $(SYSCONFDIR)/config-$(LUA_VERSION).lua SAFEPWD=`echo "$$PWD" | sed -e 's/\([][]\)\1/]]..'\''\1\1'\''..[[/g'` @@ -139,25 +123,6 @@ cleanup_bins: clean: cleanup_bins rm -f src/luarocks/site_config.lua -install_bins: - mkdir -p "$(DESTDIR)$(BINDIR)" - cd src/bin && \ - luaver="$(LUA_VERSION)" && [ -n "$$luaver" ] || luaver=`$(LUA) -e 'print(_VERSION:sub(5))'`; \ - for f in $(BIN_FILES); \ - do \ - cp "$$f" "$(DESTDIR)$(BINDIR)/$$f-$$luaver"; \ - ln -nfs "$$f-$$luaver" "$(DESTDIR)$(BINDIR)/$$f"; \ - done - -install_luas: - mkdir -p "$(DESTDIR)$(LUADIR)/luarocks" - cd src/luarocks && for f in $(LUAROCKS_FILES); \ - do \ - d="$(DESTDIR)$(LUADIR)/luarocks"/`dirname "$$f"` && \ - mkdir -p "$$d" && \ - cp "$$f" "$$d" || exit 1; \ - done - install_site_config: src/luarocks/site_config.lua mkdir -p "$(DESTDIR)$(LUADIR)/luarocks" cp src/luarocks/site_config.lua "$(DESTDIR)$(LUADIR)/luarocks" diff --git a/Makefile.install.inc b/Makefile.install.inc new file mode 100644 index 00000000..20d96a12 --- /dev/null +++ b/Makefile.install.inc @@ -0,0 +1,22 @@ + +.PHONY: install_bins install_luas + +install_bins: + mkdir -p "$(DESTDIR)$(BINDIR)" + cd src/bin && \ + luaver="$(LUA_VERSION)" && [ -n "$$luaver" ] || luaver=`$(LUA) -e 'print(_VERSION:sub(5))'`; \ + for f in $(BIN_FILES); \ + do \ + cp "$$f" "$(DESTDIR)$(BINDIR)/$$f-$$luaver"; \ + ln -nfs "$$f-$$luaver" "$(DESTDIR)$(BINDIR)/$$f"; \ + done + +install_luas: + mkdir -p "$(DESTDIR)$(LUADIR)/luarocks" + cd src/luarocks && for f in $(LUAROCKS_FILES); \ + do \ + d="$(DESTDIR)$(LUADIR)/luarocks"/`dirname "$$f"` && \ + mkdir -p "$$d" && \ + cp "$$f" "$$d" || exit 1; \ + done + diff --git a/Makefile.luarocks b/Makefile.luarocks new file mode 100644 index 00000000..1eecfeae --- /dev/null +++ b/Makefile.luarocks @@ -0,0 +1,15 @@ + +include Makefile.setup.inc +include Makefile.install.inc + +.PHONY: all install copy_site_config + +all: + @echo This Makefile is used by the LuaRocks rockspec for upgrading itself. + +install: install_bins install_luas copy_site_config + +copy_site_config: + luaver="$(LUA_VERSION)" && [ -n "$$luaver" ] || luaver=`$(LUA) -e 'print(_VERSION:sub(5))'`; \ + mkdir -p "$(DESTDIR)$(LUADIR)/luarocks"; \ + cp $(LUAROCKS_PREFIX)/share/lua/$$luaver/luarocks/site_config.lua "$(DESTDIR)$(LUADIR)/luarocks" diff --git a/Makefile.setup.inc b/Makefile.setup.inc new file mode 100644 index 00000000..eb51ba5e --- /dev/null +++ b/Makefile.setup.inc @@ -0,0 +1,19 @@ + +DESTDIR = +PREFIX ?= /usr/local +BINDIR ?= $(PREFIX)/bin +LUADIR ?= $(PREFIX)/share/lua/$(LUA_VERSION)/ + +BIN_FILES = luarocks luarocks-admin +LUAROCKS_FILES = fs/unix/tools.lua fs/unix.lua fs/win32/tools.lua fs/win32.lua \ +fs/lua.lua persist.lua list.lua require.lua repos.lua dir.lua make_manifest.lua \ +command_line.lua install.lua build/command.lua build/cmake.lua build/make.lua \ +build/builtin.lua fetch/cvs.lua fetch/git.lua fetch/sscm.lua tools/patch.lua \ +fetch/svn.lua tools/zip.lua tools/tar.lua pack.lua type_check.lua make.lua \ +remove.lua fs.lua manif.lua add.lua deps.lua build.lua search.lua show.lua \ +manif_core.lua fetch.lua unpack.lua validate.lua cfg.lua download.lua \ +help.lua util.lua index.lua cache.lua refresh_cache.lua loader.lua \ +admin_remove.lua fetch/hg.lua fetch/git_file.lua new_version.lua lint.lua \ +purge.lua path.lua path_cmd.lua write_rockspec.lua doc.lua upload.lua \ +upload/api.lua upload/multipart.lua fetch/git_http.lua + diff --git a/makedist b/makedist index 797e1b34..482c77f7 100755 --- a/makedist +++ b/makedist @@ -39,8 +39,8 @@ do cp "$i" "$out/$dir" if echo "$i" | grep -v "/bin/" | grep -q "^src/" then - grep -qw `basename "$i"` Makefile || { - echo "Missing ref in makefile: $i" + grep -qw `basename "$i"` Makefile.setup.inc || { + echo "Missing ref in Makefile.setup.inc: $i" touch "missing_ref" exit 1 } @@ -68,7 +68,7 @@ cd .. rm -rf "release-unix" cd "release-windows/$out-win32" -rm -rf makedist Makefile configure lfw .travis.yml .gitignore test +rm -rf makedist Makefile* configure lfw .travis.yml .gitignore test cd .. zip -r ../"$out-win32.zip" "$out-win32" cd .. diff --git a/rockspec b/rockspec index f2f26b19..5b0ffc9c 100644 --- a/rockspec +++ b/rockspec @@ -1,7 +1,9 @@ package = "LuaRocks" -local VER = "scm" -local REV = "1" -version = VER.."-"..REV +local VER = "scm-1" + +source = { + url = "--this rockspec is used by `make bootstrap` only--", +} description = { summary = "A deployment and management system for Lua modules.", @@ -23,10 +25,6 @@ dependencies = { "lua >= 5.1" } -source = { - url = "http://luarocks.org/releases/luarocks-"..VER..".tar.gz", -} - build = { type = "make", install_target = "install_rock", -- cgit v1.2.3-55-g6feb