1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
|
# $Id: Makefile,v 1.28 2008/06/30 12:40:38 hisham Exp $
include config.unix
DESTDIR =
PREFIX ?= /usr/local
BINDIR ?= $(PREFIX)/bin
LUADIR ?= $(PREFIX)/share/lua/5.1/
LUA_DIR ?= /usr/local
LUA_BINDIR ?= $(LUA_DIR)/bin
BIN_FILES = luarocks luarocks-admin
LUAROCKS_FILES = build/cmake.lua build/command.lua build.lua build/make.lua \
command_line.lua cfg.lua deps.lua fetch.lua fs.lua fs/unix.lua \
fs/win32.lua help.lua install.lua list.lua persist.lua \
make_manifest.lua pack.lua path.lua rep.lua require.lua search.lua \
type_check.lua util.lua remove.lua build/builtin.lua make.lua manif.lua unpack.lua \
fetch/cvs.lua fetch/sscm.lua
CONFIG_FILE = $(SYSCONFDIR)/config.lua
all:
for f in $(BIN_FILES) ;\
do \
sed "1d" src/bin/$$f >> src/bin/$$f.bak ;\
echo "#!$(LUA_BINDIR)/lua$(LUA_SUFFIX)" > src/bin/$$f ;\
echo "package.path = [[$(LUADIR)/?.lua;$(LUADIR)/?/init.lua;]]..package.path" >> src/bin/$$f ;\
cat src/bin/$$f.bak >> src/bin/$$f ;\
rm src/bin/$$f.bak ;\
done
cp src/luarocks/cfg.lua src/luarocks/cfg.lua.bak
rm src/luarocks/cfg.lua
if [ "$(LUA_INCDIR)" ] ;\
then \
echo "local LUA_INCDIR=[[$(LUA_INCDIR)]]" >> src/luarocks/cfg.lua ;\
fi
if [ "$(LUA_LIBDIR)" ] ;\
then \
echo "local LUA_LIBDIR=[[$(LUA_LIBDIR)]]" >> src/luarocks/cfg.lua ;\
fi
if [ "$(LUA_BINDIR)" ] ;\
then \
echo "local LUA_BINDIR=[[$(LUA_BINDIR)]]" >> src/luarocks/cfg.lua ;\
fi
if [ "$(LUA_SUFFIX)" ] ;\
then \
echo "local LUA_INTERPRETER=[[lua$(LUA_SUFFIX)]]" >> src/luarocks/cfg.lua ;\
fi
if [ "$(SYSCONFDIR)" ] ;\
then \
echo "local LUAROCKS_SYSCONFIG=[[$(SYSCONFDIR)/config.lua]]" >> src/luarocks/cfg.lua ;\
fi
if [ "$(ROCKS_TREE)" ] ;\
then \
echo "local LUAROCKS_ROCKS_TREE=[[$(ROCKS_TREE)]]" >> src/luarocks/cfg.lua ;\
fi
if [ "$(FORCE_CONFIG)" ] ;\
then \
echo "local LUAROCKS_FORCE_CONFIG=true" >> src/luarocks/cfg.lua ;\
fi
echo "local LUAROCKS_UNAME_S=[[$(LUAROCKS_UNAME_S)]]" >> src/luarocks/cfg.lua
echo "local LUAROCKS_UNAME_M=[[$(LUAROCKS_UNAME_M)]]" >> src/luarocks/cfg.lua
echo "local LUAROCKS_DOWNLOADER=[[$(LUAROCKS_DOWNLOADER)]]" >> src/luarocks/cfg.lua
echo "local LUAROCKS_MD5CHECKER=[[$(LUAROCKS_MD5CHECKER)]]" >> src/luarocks/cfg.lua
cat src/luarocks/cfg.lua.bak >> src/luarocks/cfg.lua
rm src/luarocks/cfg.lua.bak
@echo
@echo "Done. Type 'make install' to install into $(PREFIX)."
@echo
luadoc:
rm -rf doc/luadoc
mkdir -p doc/luadoc
cd src && luadoc -d ../doc/luadoc --nofiles luarocks/*.lua
check_makefile:
echo $(BIN_FILES) | tr " " "\n" | sort > makefile_list.txt
( cd src/bin && ls -d * ) | grep -v "CVS" | sort > luarocks_dir.txt
echo $(LUAROCKS_FILES) | tr " " "\n" | sort >> makefile_list.txt
( cd src/luarocks && ls -d *.lua ) | sort >> luarocks_dir.txt
diff makefile_list.txt luarocks_dir.txt
rm makefile_list.txt luarocks_dir.txt
@echo
@echo "Makefile is sane."
@echo
clean:
for f in $(BIN_FILES) ;\
do \
sed -i.bak "s,^#!.*lua.*,#!/usr/bin/env lua,;/^package.path/d" src/bin/$$f ;\
rm src/bin/$$f.bak ;\
done
sed -i.bak "/^local LUA/d" src/luarocks/cfg.lua
rm src/luarocks/cfg.lua.bak
install:
mkdir -p "$(DESTDIR)$(BINDIR)"
cd src/bin && cp $(BIN_FILES) "$(DESTDIR)$(BINDIR)"
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"; done
mkdir -p "$(DESTDIR)$(ROCKS_TREE)"
if [ ! -e "$(DESTDIR)$(CONFIG_FILE)" ] ;\
then \
mkdir -p `dirname "$(DESTDIR)$(CONFIG_FILE)"` ;\
echo 'rocks_servers = {' >> "$(DESTDIR)$(CONFIG_FILE)" ;\
echo ' [[http://luarocks.luaforge.net/rocks]]' >> "$(DESTDIR)$(CONFIG_FILE)" ;\
echo '}' >> "$(DESTDIR)$(CONFIG_FILE)" ;\
echo 'rocks_trees = {' >> "$(DESTDIR)$(CONFIG_FILE)" ;\
if ! [ "$(FORCE_CONFIG)" ] ;\
then \
echo ' home..[[/.luarocks]],' >> "$(DESTDIR)$(CONFIG_FILE)" ;\
fi ;\
echo ' [[$(ROCKS_TREE)]]' >> "$(DESTDIR)$(CONFIG_FILE)" ;\
echo '}' >> "$(DESTDIR)$(CONFIG_FILE)" ;\
if [ "$(SCRIPTS_DIR)" ] ;\
then \
echo "scripts_dir = [[$(SCRIPTS_DIR)]]" >> "$(DESTDIR)$(CONFIG_FILE)" ;\
fi ;\
fi
|