X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=Makefile;h=defd15a03988a11bafb74974245ded918ea8bb3a;hb=701d295ffd80625a1cc5f6696dc403bdf7525674;hp=aa18aaad5a2e096e9456008fcafc41f65d45bb64;hpb=7970ab05408ec48ffde9bffddb451a8e49ef6fa6;p=monkeysphere.git diff --git a/Makefile b/Makefile index aa18aaa..defd15a 100644 --- a/Makefile +++ b/Makefile @@ -1,16 +1,51 @@ -monkeysphere: main.c gnutls-helpers.o - gcc -g -Wall --pedantic -o monkeysphere main.c `libgnutls-config --libs --cflags` -lgnutls-extra gnutls-helpers.o +MONKEYSPHERE_VERSION = `head -n1 debian/changelog | sed 's/.*(\([^-]*\)-.*/\1/'` -gpg2ssh: gpg2ssh.c gnutls-helpers.o - gcc -g -Wall --pedantic -o gpg2ssh gpg2ssh.c `libgnutls-config --libs --cflags` -lgnutls-extra gnutls-helpers.o +# these defaults are for debian. porters should probably adjust them +# before calling make install +ETCPREFIX ?= +PREFIX ?= /usr -ssh2gpg: ssh2gpg.c gnutls-helpers.o - gcc -g -Wall --pedantic -o ssh2gpg ssh2gpg.c `libgnutls-config --libs --cflags` -lgnutls-extra gnutls-helpers.o +all: keytrans -%.o: %.c - gcc -g -Wall --pedantic -o $@ -c $< +keytrans: + $(MAKE) -C src/keytrans -clean: - rm -f monkeysphere *.o +tarball: clean + rm -rf monkeysphere-$(MONKEYSPHERE_VERSION) + mkdir -p monkeysphere-$(MONKEYSPHERE_VERSION)/doc + ln -s ../../website/getting-started-user.mdwn ../../website/getting-started-admin.mdwn ../../doc/TODO ../../doc/MonkeySpec monkeysphere-$(MONKEYSPHERE_VERSION)/doc + ln -s ../COPYING ../etc ../Makefile ../man ../src monkeysphere-$(MONKEYSPHERE_VERSION) + tar -ch monkeysphere-$(MONKEYSPHERE_VERSION) | gzip -n > monkeysphere_$(MONKEYSPHERE_VERSION).orig.tar.gz + rm -rf monkeysphere-$(MONKEYSPHERE_VERSION) -.PHONY: clean +debian-package: tarball + tar xzf monkeysphere_$(MONKEYSPHERE_VERSION).orig.tar.gz + cp -a debian monkeysphere-$(MONKEYSPHERE_VERSION) + (cd monkeysphere-$(MONKEYSPHERE_VERSION) && debuild -uc -us) + rm -rf monkeysphere-$(MONKEYSPHERE_VERSION) + +clean: + $(MAKE) -C src/keytrans clean + # clean up old monkeysphere packages lying around as well. + rm -f monkeysphere_* + +# this target is to be called from the tarball, not from the git +# working dir! +install: all + mkdir -p $(DESTDIR)$(PREFIX)/bin $(DESTDIR)$(PREFIX)/sbin $(DESTDIR)$(PREFIX)/share/monkeysphere + mkdir -p $(DESTDIR)$(PREFIX)/share/man/man1 $(DESTDIR)$(PREFIX)/share/man/man7 $(DESTDIR)$(PREFIX)/share/man/man8 + mkdir -p $(DESTDIR)$(PREFIX)/share/doc/monkeysphere + mkdir -p $(DESTDIR)$(ETCPREFIX)/etc/monkeysphere + install src/monkeysphere src/monkeysphere-ssh-proxycommand src/keytrans/openpgp2ssh $(DESTDIR)/$(PREFIX)/bin + install src/monkeysphere-server $(DESTDIR)/$(PREFIX)/sbin + install -m 0644 src/common $(DESTDIR)/$(PREFIX)/share/monkeysphere + install doc/* $(DESTDIR)$(PREFIX)/share/doc/monkeysphere + install man/man1/* $(DESTDIR)$(PREFIX)/share/man/man1 + install man/man7/* $(DESTDIR)$(PREFIX)/share/man/man7 + install man/man8/* $(DESTDIR)$(PREFIX)/share/man/man8 + install -m 0644 etc/* $(DESTDIR)$(ETCPREFIX)/etc/monkeysphere + +releasenote: + ./utils/build-releasenote + +.PHONY: all clean tarball debian-package install releasenote