#
# Makefile for daemontools Slackware package
# Copyright (c) 2003 by Robert Stan <robalo@linuxpackages.net>
#

PROGNAME	= daemontools
VERSION		= 0.76
ARCH		= i486
BUILD		= 2rob

SOURCE		= http://cr.yp.to/daemontools/daemontools-$(VERSION).tar.gz

DOCS		= package/README src/{CHANGES,TODO}

CUSTNAME	= $(PROGNAME)
PKGNAME		= $(CUSTNAME)-$(VERSION)-$(ARCH)-$(BUILD)

MAINTAINER	= Robert Stan <robalo@linuxpackages.net>

CFLAGS		= "-O2 -pipe -march=$(ARCH) -mcpu=i686"
CXXFLAGS	= $(CFLAGS)
STRIPLIB	= y
STRIPBIN	= y

TMP		= /var/tmp
PKG		= $(TMP)/package-$(PROGNAME)-$(VERSION)

conf:
	if [ -d $(PKG) ]; then cd $(TMP); rm -rf package-$(PROGNAME)-$(VERSION); fi
	mkdir -p $(PKG)/install
	
	if [ ! -r $(PROGNAME)-$(VERSION).tar.gz ]; then wget $(SOURCE); fi
	
	mkdir -p $(PKG)/usr/local/bin $(PKG)/package
	
	cwd=`pwd`; cd $(PKG)/package; \
	if [ -r $$cwd/$(PROGNAME)-$(VERSION).tar.gz ]; then \
	     tar xvzf $$cwd/$(PROGNAME)-$(VERSION).tar.gz; \
	else \
	     echo "No source tarball available !"; \
	     exit 1; \
	fi
	
	cwd=`pwd`; cd $(PKG)/package/admin/$(PROGNAME)-$(VERSION); \
	patch -p1 < $$cwd/daemontools-0.76.errno.patch; \
	sed -e 's}^parent.*}parent=/package/admin}' \
	    -e 's} /command/} $(PKG)/command/}g' \
	    -e 's}-p /command}-p $(PKG)/command}' \
	    -e 's}ln -s $(PKG)/command/}ln -s /command/}' \
	    -e 's} /usr/local/bin/} $(PKG)/usr/local/bin/}g' \
	    -e 's}/usr/local}/usr/local}g' \
	    package/upgrade > package/upgrade'{new}'; \
	if [ "$$?" != 0 ]; then exit 1; else \
	  mv package/upgrade'{new}' package/upgrade; \
	  chmod 755 package/upgrade; \
	fi

build: conf
	cd $(PKG)/package/admin/$(PROGNAME)-$(VERSION); \
	package/compile

package: build
	mkdir -p $(PKG)/usr/doc/$(PROGNAME)-$(VERSION)
	cd $(PKG)/package/admin/$(PROGNAME)-$(VERSION); \
	cp -a $(DOCS) $(PKG)/usr/doc/$(PROGNAME)-$(VERSION); \
	package/upgrade
	
	rm -rf $(PKG)/package/admin/$(PROGNAME)-$(VERSION)/{compile,src/*}
	
	cat slack-desc > ../$(PKGNAME).txt
	cat slack-desc > $(PKG)/install/slack-desc
	STRIPLIB=$(STRIPLIB) STRIPBIN=$(STRIPBIN) ../../preparepkg $(PKG)
	cd $(PKG) ; makepkg -l y -c n $(PKGNAME).tgz
	cat doinst.sh > $(PKG)/install/doinst.sh
	cd $(PKG) ; makepkg -l y -c n $(PKGNAME).tgz
	mv $(PKG)/$(PKGNAME).tgz ..

include ../../Makefile.global