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
|
# Include makefile config
include config.mk
# Token lib generation
TLIST = common/tokenize.list
THEAD = common/tokenize.h
TSRC = common/tokenize.c
SRCS = $(filter-out $(TSRC),$(wildcard *.c) $(wildcard common/*.c) $(wildcard clib/*.c) $(wildcard clib/soup/*.c) $(wildcard widgets/*.c)) $(TSRC)
HEADS = $(wildcard *.h) $(wildcard common/*.h) $(wildcard widgets/*.h) $(wildcard clib/*.h) $(wildcard clib/soup/*.h) $(THEAD) globalconf.h
OBJS = $(foreach obj,$(SRCS:.c=.o),$(obj))
all: options newline luakit luakit.1
options:
@echo luakit build options:
@echo "CC = $(CC)"
@echo "LUA_PKG_NAME = $(LUA_PKG_NAME)"
@echo "CFLAGS = $(CFLAGS)"
@echo "CPPFLAGS = $(CPPFLAGS)"
@echo "LDFLAGS = $(LDFLAGS)"
@echo "INSTALLDIR = $(INSTALLDIR)"
@echo "MANPREFIX = $(MANPREFIX)"
@echo "DOCDIR = $(DOCDIR)"
@echo
@echo build targets:
@echo "SRCS = $(SRCS)"
@echo "HEADS = $(HEADS)"
@echo "OBJS = $(OBJS)"
$(THEAD) $(TSRC): $(TLIST)
./build-utils/gentokens.lua $(TLIST) $@
globalconf.h: globalconf.h.in
sed 's#LUAKIT_INSTALL_PATH .*#LUAKIT_INSTALL_PATH "$(PREFIX)/share/luakit"#' globalconf.h.in > globalconf.h
$(OBJS): $(HEADS) config.mk
.c.o:
@echo $(CC) -c $< -o $@
@$(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@
widgets/webview.o: $(wildcard widgets/webview/*.c)
luakit: $(OBJS)
@echo $(CC) -o $@ $(OBJS)
@$(CC) -o $@ $(OBJS) $(LDFLAGS)
luakit.1: luakit
help2man -N -o $@ ./$<
apidoc: luadoc/luakit.lua
mkdir -p apidocs
luadoc --nofiles -d apidocs luadoc/* lib/*
doc: globalconf.h $(THEAD) $(TSRC)
doxygen -s luakit.doxygen
clean:
rm -rf apidocs doc luakit $(OBJS) $(TSRC) $(THEAD) globalconf.h luakit.1
install:
install -d $(INSTALLDIR)/share/luakit/
install -d $(DOCDIR)
install -m644 README.md AUTHORS COPYING* $(DOCDIR)
cp -r lib $(INSTALLDIR)/share/luakit/
chmod 755 $(INSTALLDIR)/share/luakit/lib/
chmod 755 $(INSTALLDIR)/share/luakit/lib/lousy/
chmod 755 $(INSTALLDIR)/share/luakit/lib/lousy/widget/
chmod 644 $(INSTALLDIR)/share/luakit/lib/*.lua
chmod 644 $(INSTALLDIR)/share/luakit/lib/lousy/*.lua
chmod 644 $(INSTALLDIR)/share/luakit/lib/lousy/widget/*.lua
install -d $(INSTALLDIR)/bin
install luakit $(INSTALLDIR)/bin/luakit
install -d $(DESTDIR)/etc/xdg/luakit/
install config/*.lua $(DESTDIR)/etc/xdg/luakit/
chmod 644 $(DESTDIR)/etc/xdg/luakit/*.lua
install -d $(DESTDIR)/usr/share/pixmaps
install extras/luakit.png $(DESTDIR)/usr/share/pixmaps/
install -d $(DESTDIR)/usr/share/applications
install -m0644 extras/luakit.desktop $(DESTDIR)/usr/share/applications/
install -d $(MANPREFIX)/man1/
install -m644 luakit.1 $(MANPREFIX)/man1/
uninstall:
rm -rf $(INSTALLDIR)/bin/luakit $(INSTALLDIR)/share/luakit $(MANPREFIX)/man1/luakit.1
rm -rf /usr/share/applications/luakit.desktop /usr/share/pixmaps/luakit.png
lunit:
git clone git://repo.or.cz/lunit.git
run-tests: luakit lunit
@./luakit -c tests/lunit-run.lua tests/test_*.lua
newline: options;@echo
.PHONY: all clean options install newline apidoc doc
|