Nuke directories named CVS. Apparenly cvs export -d is broken, and puts
[profile/ivi/syslinux.git] / Makefile.private
1 ## -*- makefile -*- ------------------------------------------------------
2 ##   
3 ##   Copyright 2000-2003 H. Peter Anvin - All Rights Reserved
4 ##
5 ##   This program is free software; you can redistribute it and/or modify
6 ##   it under the terms of the GNU General Public License as published by
7 ##   the Free Software Foundation, Inc., 675 Mass Ave, Cambridge MA 02139,
8 ##   USA; either version 2 of the License, or (at your option) any later
9 ##   version; incorporated herein by reference.
10 ##
11 ## -----------------------------------------------------------------------
12 # $Id$
13
14 #
15 # This should only be used by the maintainer to generate official binaries
16 # for release.  Please do not "make official" and distribute the binaries,
17 # please.
18 #
19 .PHONY: official release
20
21 CVS     = cvs -d hpa@terminus.zytor.com:/home/hpa/cvsroot
22
23 PRIVATE = Makefile.private .depend memdisk/.depend com32/lib
24
25 isolinux.iso: all
26         cp isolinux-debug.bin isolinux-test/isolinux/isolinux.bin
27         mkisofs -v -r -J \
28                 -b isolinux/isolinux.bin -c isolinux/boot.cat \
29                 -no-emul-boot -boot-load-size 4 -boot-info-table \
30                 -o isolinux.iso isolinux-test
31
32 burn: isolinux.iso
33         cdrecord -v blank=fast isolinux.iso
34
35 official:
36         $(MAKE) spotless
37         $(MAKE) all DATE=`date +'%Y-%m-%d'`
38         $(MAKE) dist
39
40 release:
41         $(CVS) tag -F `echo syslinux-$(VERSION) | sed -e 's/\./_/g'`
42         -rm -rf release/syslinux-$(VERSION)
43         -rm -f release/syslinux-$(VERSION).*
44         mkdir -p release/syslinux-$(VERSION)
45         cd release && $(CVS) export -r `echo syslinux-$(VERSION) | sed -e 's/\./_/g'` -d syslinux-$(VERSION) syslinux
46         find release/syslinux-$(VERSION) \
47                 \( -name '*~' -or -name '#*' \) -type f -print0 | \
48                 xargs -0rt rm -f
49         find release/syslinux-$(VERSION) -name CVS -type d -print0 | \
50                 xargs -0rt rm -rf
51         $(MAKE) -C release/syslinux-$(VERSION) spotless
52         $(MAKE) -C release/syslinux-$(VERSION) depend
53         $(MAKE) -C release/syslinux-$(VERSION) official
54         cd release/syslinux-$(VERSION) && rm -rf $(PRIVATE)
55         cd release && tar cvvf - syslinux-$(VERSION) | \
56                 gzip -9 > syslinux-$(VERSION).tar.gz
57         cd release/syslinux-$(VERSION) && \
58                 zip -9r ../syslinux-$(VERSION).zip *
59
60
61 PRERELDIR := release/syslinux-$(VERSION)-pre
62 PRERELNO  := $(shell cat $(PRERELDIR)/.prerel 2>/dev/null || echo 1)
63 PREREL    := syslinux-$(VERSION)-pre$(PRERELNO)
64
65 prerel:
66         $(CVS) tag -F `echo $(PREREL) | sed -e 's/\./_/g'`
67         mkdir -p $(PRERELDIR) $(PRERELDIR)/uu
68         -rm -rf $(PRERELDIR)/$(PREREL)
69         -rm -f $(PRERELDIR)/$(PREREL).*
70         mkdir -p $(PRERELDIR)/$(PREREL)
71         cd $(PRERELDIR) && $(CVS) export -r `echo $(PREREL) | sed -e 's/\./_/g'` -d $(PREREL) syslinux
72         find $(PRERELDIR)/$(PREREL) \
73                 \( -name '*~' -or -name '#*' \) -type f -print0 | \
74                 xargs -0rt rm -f
75         find $(PRERELDIR)/$(PREREL) -name CVS -type d -print0 | \
76                 xargs -0rt rm -rf
77         $(MAKE) -C $(PRERELDIR)/$(PREREL) spotless
78         $(MAKE) -C $(PRERELDIR)/$(PREREL) depend
79         $(MAKE) -C $(PRERELDIR)/$(PREREL) all DATE=`printf '%s-pre%d          ' $(VERSION) $(PRERELNO) | dd bs=10 count=1 2>/dev/null`
80         $(MAKE) -C $(PRERELDIR)/$(PREREL) dist
81         cd $(PRERELDIR)/$(PREREL) && rm -rf $(PRIVATE)
82         cd $(PRERELDIR) && tar cvvf - $(PREREL) | \
83                 gzip -9 > $(PREREL).tar.gz 
84         cd $(PRERELDIR) && \
85                 uuencode $(PREREL).tar.gz $(PREREL).tar.gz > uu/$(PREREL).uu
86         cd $(PRERELDIR)/$(PREREL) && \
87                 zip -9r ../$(PREREL).zip *
88         expr $(PRERELNO) + 1 > $(PRERELDIR)/.prerel
89
90 unprerel:
91         expr $(PRERELNO) - 1 > $(PRERELDIR)/.prerel
92         @echo Next release will be syslinux-$(VERSION)-pre`cat $(PRERELDIR)/.prerel`