diff options
Diffstat (limited to 'linux/GNUmakefile')
-rw-r--r-- | linux/GNUmakefile | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/linux/GNUmakefile b/linux/GNUmakefile new file mode 100644 index 0000000..f1dbbd1 --- /dev/null +++ b/linux/GNUmakefile @@ -0,0 +1,109 @@ +GTK_VERSION?= gtk3 +ifeq ("${GTK_VERSION}", "gtk2") +JS_CF=$(shell pkg-config --silence-errors --cflags javascriptcoregtk-1.0) +JS_LD=$(shell pkg-config --silence-errors --libs javascriptcoregtk-1.0) +else +JS_CF=$(shell pkg-config --silence-errors --cflags javascriptcoregtk-3.0) +JS_LD=$(shell pkg-config --silence-errors --libs javascriptcoregtk-3.0) +endif + +LIBS= glib-2.0 +ifeq ("${GTK_VERSION}", "gtk2") +LIBS+= gtk+-2.0 webkit-1.0 +CFLAGS+=-I/usr/include/gtk-2.0 +else +LIBS+= gtk+-3.0 webkitgtk-3.0 +CFLAGS+=-I/usr/include/gtk-3.0 +endif +LIBS+= libsoup-2.4 gnutls libbsd + +CFLAGS+= -O2 -Wall -ggdb3 -D_GNU_SOURCE -I. -I.. $(shell pkg-config --cflags $(LIBS)) $(JS_CF) +LDADD+= $(shell pkg-config --libs $(LIBS)) $(JS_LD) -ldl -lX11 + +PREFIX?= /usr/local +BINDIR?= $(PREFIX)/bin +APPDIR?= $(PREFIX)/share/applications +MANDIR?= $(PREFIX)/share/man +RESDIR?= $(PREFIX)/share/xombrero + +SRCS= $(shell ls ../*.c) +SRCS+= linux.c +OBJS= $(SRCS:.c=.o) +DEPS= $(addsuffix .depend, $(OBJS)) + +CC?= gcc + +BUILDVERSION= $(shell sh $(CURDIR)/../buildver.sh) +ifneq ("${BUILDVERSION}", "") +CFLAGS+= -DXOMBRERO_BUILDSTR=\"$(BUILDVERSION)\" +endif + +all: javascript.h tooltip.h xombrero + +javascript.h: ../js-merge-helper.pl ../hinting.js ../autoscroll.js + perl ../js-merge-helper.pl ../hinting.js ../input-focus.js \ + ../autoscroll.js > javascript.h + +tooltip.h: ../ascii2txt.pl ../txt2tooltip.pl ../xombrero.1 + nroff -c -Tascii -mandoc ../xombrero.1 | \ + perl ../ascii2txt.pl | \ + perl ../txt2tooltip.pl > tooltip.h + +xombrero: $(OBJS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $+ $(LDADD) + +%.o: %.c + @echo "Generating $@.depend" + @$(CC) -MM $(CPPFLAGS) $(CFLAGS) $< | \ + sed 's,^.*\.o[ :]*,$@ $@.depend : ,g' > $@.depend + $(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -c $< + +install: all + install -m 755 -d $(DESTDIR)$(BINDIR) + install -m 755 -d $(DESTDIR)$(MANDIR)/man1 + install -m 755 -d $(DESTDIR)$(RESDIR) + install -m 755 -d $(DESTDIR)$(APPDIR) + install -m 755 xombrero $(DESTDIR)$(BINDIR) + install -m 644 ../xombrero.1 $(DESTDIR)$(MANDIR)/man1/xombrero.1 + install -m 644 ../xombrero.css $(DESTDIR)$(RESDIR) + install -m 644 ../xombrero.desktop $(DESTDIR)$(APPDIR) + install -m 644 ../xombreroicon16.png $(DESTDIR)$(RESDIR) + install -m 644 ../xombreroicon32.png $(DESTDIR)$(RESDIR) + install -m 644 ../xombreroicon48.png $(DESTDIR)$(RESDIR) + install -m 644 ../xombreroicon64.png $(DESTDIR)$(RESDIR) + install -m 644 ../xombreroicon128.png $(DESTDIR)$(RESDIR) + install -m 644 ../xombreroicon256.png $(DESTDIR)$(RESDIR) + install -m 644 ../favicon.ico $(DESTDIR)$(RESDIR) + install -m 644 ../tld-rules $(DESTDIR)$(RESDIR) + install -m 644 ../style.css $(DESTDIR)$(RESDIR) + install -m 644 ../hsts-preload $(DESTDIR)$(RESDIR) + install -m 644 ../torenabled.ico $(DESTDIR)$(RESDIR) + install -m 644 ../tordisabled.ico $(DESTDIR)$(RESDIR) + +uninstall: + rm -f $(DESTDIR)$(BINDIR)/xombrero + rm -f $(DESTDIR)$(MANDIR)/man1/xombrero.1 + rm -f $(DESTDIR)$(APPDIR)/xombrero.desktop + rm -f $(DESTDIR)$(RESDIR)/xombreroicon16.png + rm -f $(DESTDIR)$(RESDIR)/xombreroicon32.png + rm -f $(DESTDIR)$(RESDIR)/xombreroicon48.png + rm -f $(DESTDIR)$(RESDIR)/xombreroicon64.png + rm -f $(DESTDIR)$(RESDIR)/xombreroicon128.png + rm -f $(DESTDIR)$(RESDIR)/xombreroicon256.png + rm -f $(DESTDIR)$(RESDIR)/xombrero.css + rm -f $(DESTDIR)$(RESDIR)/favicon.ico + rm -f $(DESTDIR)$(RESDIR)/tordisabled.ico + rm -f $(DESTDIR)$(RESDIR)/torenabled.ico + rm -f $(DESTDIR)$(RESDIR)/tld-rules + rm -f $(DESTDIR)$(RESDIR)/style.css + rm -f $(DESTDIR)$(RESDIR)/hsts-preload + if [ -d $(DESTDIR)$(RESDIR) ]; then rmdir $(DESTDIR)$(RESDIR); fi +clean: + rm -f xombrero $(OBJS) $(DEPS) + rm -f javascript.h + rm -f tooltip.h + + +-include $(DEPS) + +.PHONY: all install clean |