Makefile
author Paul Crowley <paul@lshift.net>
Mon, 09 Nov 2009 15:52:32 +0000
changeset 169 6b34a5421330
parent 168 f9bf8f84df7f
child 171 7b69d1d86254
permissions -rw-r--r--
Make the build target default

#!/usr/bin/env make -f

PREFIX=/usr/local/share
LIBDIR=$(PREFIX)/mercurial-server
DOCDIR=$(PREFIX)/doc/mercurial-server
ETCDIR=/etc/mercurial-server
NEWUSER=hg

INSTALL=install

build: build/html/index.html pythonbuild

setup-adduser: installfiles adduser inituser

# WARNING: this is experimental
setup-useradd: installfiles useradd inituser

installetc:
	$(INSTALL) -d $(ETCDIR)
	$(INSTALL) -m 644 -t $(ETCDIR) \
	    src/init/conf/remote-hgrc src/init/conf/access.conf
	$(INSTALL) -d $(ETCDIR)/keys/root
	$(INSTALL) -d $(ETCDIR)/keys/user

installdoc: build/html/index.html
	$(INSTALL) -d $(DOCDIR)
	$(INSTALL) -m 644 -t $(DOCDIR) README build/html/index.html

build/html/index.html: doc/manual.docbook
	xsltproc -o $@ /usr/share/xml/docbook/stylesheet/nwalsh/html/docbook.xsl $^

pythonbuild:
	python setup.py build

pythoninstall:
	python setup.py install \
	    --install-purelib=$(LIBDIR) \
	    --install-platlib=$(LIBDIR) \
	    --install-scripts=$(LIBDIR) \
	    --install-data=$(LIBDIR)

installfiles: installetc installdoc pythoninstall 

adduser:
	adduser --system --shell /bin/sh --group --disabled-password \
	    --home /var/lib/mercurial-server \
	    --gecos  "Mercurial repositories" $(NEWUSER)

# WARNING: this is experimental
useradd:
	useradd --system --shell /bin/sh \
	    --home /var/lib/mercurial-server --create-home \
	    --comment  "Mercurial repositories" $(NEWUSER)

inituser:
	su -l -c "$(LIBDIR)/init/hginit $(LIBDIR)" $(NEWUSER)