SHELL = /bin/sh package = patanjali Package = $(package) VERSION = 0.99 # ARCHITECTURE is for Linux packages only: #ARCHITECTURE = i386 ARCHITECTURE=$(shell arch="`if test -x /usr/bin/dpkg; \ then dpkg --print-architecture; else uname -m; fi`" \ && if [ "$${arch%%i?86}"y = y ]; then arch=i386; fi \ && echo "$$arch") # flags for your C compiler: OPT = -O2 WARN = -ansi -Wall -Wno-unused CFLAGS = $(OPT) $(WARN) $(DEFS) # install files with this ownership: owner=root group=bin install_own = -o $(owner) -g $$Group INSTALL_DATA = install -c $(install_own) -m 664 INSTALL_MAN = $(INSTALL_DATA) INSTALL_PROGRAM = install -c -s $(install_own) -m 775 INSTALL_SCRIPT = install -c $(install_own) -m 775 MKDIR = install -d $(install_own) -m 2775 BIN = patanjali BINshort = dp CC = cc DP = patanjali-sutras-english.txt DEBDIST = ../$(package)_$(VERSION)_$(ARCHITECTURE).changes \ ../$(package)_$(VERSION)_$(ARCHITECTURE).deb \ ../$(package)_$(VERSION).dsc \ ../$(package)_$(VERSION).tar.gz DEBIAN = debian/changelog debian/control debian/copyright debian/rules DOCS = $(DP) $(Package)-$(VERSION).lsm changelog COPYING copyright INSTALL README EXAMPLES = examples/profile examples/xsession #GZIPDOCS = yes SRCS = $(BIN).c $(Package).spec.in Makefile INSTALL PREFIX = /usr prefix = ${PREFIX} exec_prefix = $(prefix) bindir = $(exec_prefix)/bin docsdir = $(prefix)/share/doc/$(Package) examplesdir = $(docsdir)/examples datadir = $(prefix)/share/$(Package) # relative symlink from docsdir to datadir: relDATADIR = ../../$(Package) DEFS = '-DDPPATHNAME="$(datadir)/$(DP)"' \ '-DDPPATHNAME2="$(datadir)/$(DP)"' '-DVERSION="$(VERSION)"' all: $(BIN) $(BIN): clean: -rm -R -f *.o *~ *.bak 1 2 t tmp \#*\# errors* core* \ a.out typescript debian/tmp debian/files* debian/substvars* \ ./stdin ./stdout $(BIN) $(BINshort) $(Package)-*.spec \ FreeBSD_port/$(Package)/work debdist $(DEBDIST): $(DEBIAN) $(DOCS) $(EXAMPLES) $(MAN1) $(SRCS) test -r $$HOME/.pgp/secring.pgp dpkg-buildpackage dist tar: clean all $(Package)-$(VERSION).lsm $(Package)-$(VERSION).spec -rm -f *.o cd .. && tar -cvzf $(Package)-$(VERSION).tar.gz $(Package)-$(VERSION)/ # should not rm deb files distclean: clean disttest: $(DEBDIST) cp $(addprefix ../$(package)_$(VERSION).,dsc tar.gz) /tmp/ cd /tmp && tar -xvzf $(package)_$(VERSION).tar.gz cd /tmp/$(package)-$(VERSION) && \ pmake install test uninstall make rpm rpm --install --force --nodeps /usr/src/redhat/RPMS/$(ARCHITECTURE)/$(Package)-$(VERSION)-0.$(ARCHITECTURE).rpm rpm -qisv $(Package) rm -R -f /tmp/$(package)-$(VERSION) cd /tmp && dpkg-source -x $(package)_$(VERSION).dsc cd /tmp/$(package)-$(VERSION) && \ dpkg-buildpackage -B dpkg --contents /tmp/$(package)_$(VERSION)_$(ARCHITECTURE).deb -rpm --erase $(Package) dpkg --install /tmp/$(package)_$(VERSION)_$(ARCHITECTURE).deb cd /tmp/$(package)-$(VERSION) && rm $(DEBDIST) rm -R -f /tmp/$(package)-$(VERSION) install: all $(DOCS) $(MAN1) set -o errexit; set -x; \ for group in $(group) wheel staff bin root; \ do if install -d -g $$group ./tstdir; \ then \ Group=$$group; export Group; \ rmdir ./tstdir; \ break; \ fi; \ done; \ test -e $(bindir) || $(MKDIR) $(bindir); \ $(INSTALL_PROGRAM) $(BIN) $(bindir); \ if [ $(BINshort)_ != _ ]; \ then \ ln -f -s $(BIN) $(bindir)/$(BINshort) \ || ln -f $(BIN) $(bindir)/$(BINshort); \ fi; \ test -e $(datadir) || $(MKDIR) $(datadir); \ $(INSTALL_DATA) $(DP) $(datadir); \ test -e $(docsdir) || $(MKDIR) $(docsdir); \ for f in $(DOCS); do \ if test -h $$f; then cp -pf $$f $(docsdir); \ else $(INSTALL_MAN) $$f $(docsdir); \ fi; \ done; \ test -e $(examplesdir) || $(MKDIR) $(examplesdir); \ $(INSTALL_SCRIPT) $(EXAMPLES) $(examplesdir) # Group is used here [ _$(GZIPDOCS) != _yes ] || gzip --best --force --verbose $(docsdir)/changelog if [ $(datadir) != $(docsdir) ]; \ then \ ln -f -s $(relDATADIR)/$(DP) $(docsdir) \ || ln -f $(relDATADIR)/$(DP) $(docsdir); \ fi $(Package)-$(VERSION).lsm lsm: $(Package).lsm.in -rm -f $(package)*.lsm $(Package)*.lsm [ $(VERSION)x != x ] sed -e 's/$${date}/'`LC_ALL=C date +%d%b%y |tr a-z A-Z`'/g; \ s/$${version}/$(VERSION)/g' $(Package).lsm.in >$(Package)-$(VERSION).lsm touch lsm port: sed -n -e 's/^Description:[[:space:]]*//p' $(Package).lsm.in \ > FreeBSD_port/$(Package)/pkg/COMMENT { sed -n -e '/^Description:/,/^[^[:space:]]/!d; /^[[:space:]]/p' \ $(Package).lsm.in; echo; \ echo '- Ricardas Cepas '; } \ > FreeBSD_port/$(Package)/pkg/DESCR cd FreeBSD_port/$(Package)/ # && make makesum cd FreeBSD_port/$(Package)/work/$(Package)-$(VERSION) && make \ && make distclean \ && make group=wheel prefix=/tmp/$(Package) install { find /tmp/$(Package) -type f -or -type l \ |sed -e 's!^'/tmp/$(Package)/'!!'; \ echo @dirrm share/doc/display-sutras-patanjali/examples; \ echo @dirrm share/doc/display-sutras-patanjali; \ echo @dirrm share/display-sutras-patanjali; \ } > FreeBSD_port/$(Package)/pkg/PLIST realclean: distclean -rm $(DEBDIST) *.lsm $(Package)-$(VERSION).spec: $(Package).spec.in -rm -f $(Package)*.spec [ $(VERSION)x != x ] Summary="`sed -n -e 's/^Description:[[:space:]]*//p' \ $(Package).lsm.in`" \ && Copying="`sed -n -e 's/^Copying-policy:[[:space:]]*//p' \ $(Package).lsm.in`" \ && sed -e 's/$${version}/$(VERSION)/g; s/$${summary}/'"$${Summary}"'/g; \ s/$${copying}/'"$${Copying}"/g \ $(Package).spec.in >tmp sed -n -e '1,/^%description/p' tmp >$@ sed -n -e '/^Description:/,/^[^[:space:]]/!d; /^[[:space:]]/p' \ $(Package).lsm.in >>$@ sed -n -e '1,/^%description/!p' tmp >>$@ rm -f tmp rpm: tar $(Package)-$(VERSION).spec cp ../$(Package)-$(VERSION).tar.gz /usr/src/redhat/SOURCES rpm --clean -v -ba $(Package)-$(VERSION).spec rpmi: rpm -vv -bi --short-circuit $(Package)-$(VERSION).spec rpmsign: test -r $$HOME/.pgp/secring.pgp rpm -vv --resign \ /usr/src/redhat/SRPMS/$(Package)-$(VERSION)-*.src.rpm \ /usr/src/redhat/RPMS/$(ARCHITECTURE)/$(Package)-$(VERSION)-*.$(ARCHITECTURE).rpm rpmdist: rpm rpmsign test check: @echo Testing installation... $(bindir)/$(BIN) -$(bindir)/$(BINshort) sh -c '. $(examplesdir)/profile' @echo -n "Press ... " @sh -c 'read a' uninstall: rm -f $(bindir)/$(BIN) $(bindir)/$(BINshort) \ $(datadir)/$(DP) cd $(docsdir) \ && for f in $(DOCS); do rm -f $$f $$f.gz; done cd $(examplesdir) \ && for f in $(EXAMPLES); \ do rm -f $${f##*/} $${f##*/}.gz; done -rmdir $(examplesdir) -rmdir $(datadir) $(docsdir) UPHOST=sunsite.unc.edu upload: #dist debdist ../$(Package)-$(VERSION).tar.gz $(Package)-$(VERSION).lsm [ $(VERSION)x != x ] [ "`rpm --checksig \ /usr/src/redhat/SRPMS/$(Package)-$(VERSION)-*.src.rpm \ /usr/src/redhat/RPMS/$(ARCHITECTURE)/$(Package)-$(VERSION)-*.$(ARCHITECTURE).rpm \ | grep -c 'pgp md5 OK$$'`" = 2 ] set -x; xPWD=`pwd` && echo -e \ open -r -d 10 ftp.redhat.com\\n \ cd /pub/Incoming\\n \ mput /usr/src/redhat/SRPMS/$(Package)-$(VERSION)-*.src.rpm \ /usr/src/redhat/RPMS/$(ARCHITECTURE)/$(Package)-$(VERSION)-*.rpm\\n \ dir $(Package)-$(VERSION)-0.src.rpm $(Package)-$(VERSION)-0.i386.rpm\\n \ redir \>$$xPWD/../$(Package)-$(VERSION).ftp.redhat.com\\n \ | ncftp set -x; xPWD=`pwd` && echo -e open -r -d 10 $(UPHOST)\\n \ cd /incoming/Linux\\n \ lcd $$xPWD\\n \ mput ../$(Package)-$(VERSION).tar.gz $(Package)-$(VERSION).lsm\\n \ dir $(Package)*\\n \ redir $(Package)* \>../$(Package)-$(VERSION).$(UPHOST)\\n \ | ncftp dupload --to erlangen ../$(package)_$(VERSION)_$(ARCHITECTURE).changes # vi: set noexpandtab: