More sane handling of prereleases, I hope.
[profile/ivi/syslinux.git] / Makefile.private
1 ## -*- makefile -*- ------------------------------------------------------
2 ##   
3 ##   Copyright 2000 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 PRIVATE = Makefile.private
22
23 official:
24         $(MAKE) spotless
25         $(MAKE) all DATE=`date +'%Y-%m-%d'`
26         $(MAKE) dist
27
28 release:
29         -rm -rf release/syslinux-$(VERSION)
30         -rm -f release/syslinux-$(VERSION).*
31         mkdir -p release/syslinux-$(VERSION)
32         cp $(SOURCES) $(DOCS) $(OTHER) release/syslinux-$(VERSION)
33         ln $(PRIVATE) release/syslinux-$(VERSION)
34         cd release/syslinux-$(VERSION) && $(MAKE) official
35         cd release/syslinux-$(VERSION) && rm -f $(PRIVATE)
36         cd release && tar cvvf - syslinux-$(VERSION) | \
37                 gzip -9 > syslinux-$(VERSION).tar.gz
38         cd release/syslinux-$(VERSION) && \
39                 zip -9r ../syslinux-$(VERSION).zip *
40
41
42 PRERELDIR := release/syslinux-$(VERSION)-prerel
43 PRERELNO  := `cat $(PRERELDIR)/.prerel 2>/dev/null || echo 1`
44 PREREL    := syslinux-$(VERSION)-$(PRERELNO)
45
46 prerel:
47         mkdir -p $(PRERELDIR)
48         -rm -rf $(PRERELDIR)/$(PREREL)
49         -rm -f $(PRERELDIR)/$(PREREL).*
50         mkdir -p $(PRERELDIR)/$(PREREL)
51         cp $(SOURCES) $(DOCS) $(OTHER) $(PRERELDIR)/$(PREREL)
52         make -C $(PRERELDIR)/$(PREREL) spotless
53         make -C $(PRERELDIR)/$(PREREL) all DATE=`printf 'PR %s-%d          ' $(VERSION) $(PRERELNO) | dd bs=10 count=1 2>/dev/null`
54         make -C $(PRERELDIR)/$(PREREL) dist
55         cd $(PRERELDIR)/$(PREREL) && \
56                 rm -f $(PRIVATE)
57         cd $(PRERELDIR) && tar cvvf - $(PREREL) | \
58                 gzip -9 > $(PREREL).tar.gz 
59         cd $(PRERELDIR) && \
60                 uuencode $(PREREL).tar.gz $(PREREL).tar.gz > $(PREREL).uu
61         cd $(PRERELDIR)/$(PREREL) && \
62                 zip -9r ../$(PREREL).zip *
63         expr $(PRERELNO) + 1 > $(PRERELDIR)/.prerel