-CPPFLAGS=$(shell pkg-config --cflags gtk+-2.0 webkit-1.0) -Wall -W
-LDFLAGS=$(shell pkg-config --libs gtk+-2.0 webkit-1.0)
-all: uzbl
+LIBS := gtk+-2.0 webkit-1.0 gthread-2.0 libsoup-2.4
+ARCH := $(shell uname -m)
+COMMIT := $(shell git log | head -n1 | sed "s/.* //")
+DEBUG := -ggdb -Wall -W -DG_ERRORCHECK_MUTEXES
-test:
- ./uzbl --uri http://www.archlinux.org
+CFLAGS := $(shell pkg-config --cflags $(LIBS)) $(DEBUG) -DARCH="\"$(ARCH)\"" -DCOMMIT="\"$(COMMIT)\"" -std=c99
+LDFLAGS := $(shell pkg-config --libs $(LIBS)) $(LDFLAGS)
+PREFIX ?= $(DESTDIR)/usr
+BINDIR ?= $(PREFIX)/bin
+UZBLDATA ?= $(PREFIX)/share/uzbl
+DOCSDIR ?= $(PREFIX)/share/uzbl/docs
+EXMPLSDIR ?= $(PREFIX)/share/uzbl/examples
+
+all: uzbl uzblctrl
+
+uzbl: uzbl.c uzbl.h config.h
+
+%: %.c
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $@ $<
+
+test: uzbl
+ ./uzbl --uri http://www.uzbl.org
+
+test-config: uzbl
+ ./uzbl --uri http://www.uzbl.org < examples/configs/sampleconfig-dev
+
+test-config-real: uzbl
+ ./uzbl --uri http://www.uzbl.org < $(EXMPLSDIR)/configs/sampleconfig
+
clean:
rm -f uzbl
+ rm -f uzblctrl
install:
- install -d $(DESTDIR)/usr/bin
- install -d $(DESTDIR)/usr/share/uzbl/docs
- install -d $(DESTDIR)/usr/share/uzbl/examples/scripts
- install -d $(DESTDIR)/usr/share/uzbl/examples/configs
- install -D -m755 uzbl $(DESTDIR)/usr/bin/uzbl
- install -D -m644 extra/* $(DESTDIR)/usr/share/uzbl/examples/scripts
- install -D -m644 sampleconfig $(DESTDIR)/usr/share/uzbl/examples/configs
- install -D -m644 README $(DESTDIR)/usr/share/uzbl/docs
+ install -d $(BINDIR)
+ install -d $(DOCSDIR)
+ install -d $(EXMPLSDIR)
+ install -D -m755 uzbl $(BINDIR)/uzbl
+ install -D -m755 uzblctrl $(BINDIR)/uzblctrl
+ cp -ax docs/* $(DOCSDIR)
+ cp -ax config.h $(DOCSDIR)
+ cp -ax examples/* $(EXMPLSDIR)
+ install -D -m644 AUTHORS $(DOCSDIR)
+ install -D -m644 README $(DOCSDIR)
+
+
+uninstall:
+ rm -rf $(BINDIR)/uzbl
+ rm -rf $(BINDIR)/uzblctrl
+ rm -rf $(UZBLDATA)