0.1.4
[kbuild-mirror.git] / Maintenance.kmk
blobab8240ee394b0e61a09835bade85d4b41bb8ba29
1 # $Id$
2 ## @file
3 # Maintenance Makefile for kBuild.
7 # Copyright (c) 2008 knut st. osmundsen <bird-kBuild-spam@anduin.net>
9 # This file is part of kBuild.
11 # kBuild is free software; you can redistribute it and/or modify
12 # it under the terms of the GNU General Public License as published by
13 # the Free Software Foundation; either version 2 of the License, or
14 # (at your option) any later version.
16 # kBuild is distributed in the hope that it will be useful,
17 # but WITHOUT ANY WARRANTY; without even the implied warranty of
18 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 # GNU General Public License for more details.
21 # You should have received a copy of the GNU General Public License
22 # along with kBuild; if not, write to the Free Software
23 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
27 DEPTH = .
28 include $(PATH_KBUILD)/header.kmk
30 RMTREE = $(ECHO) todo: $(RM) -Rf
31 RMTREE = rm -Rf
32 SVN = svn
33 TAR = tar
34 GZIP = gzip
36 ifeq ($(strip $(KBUILD_SVN_INFO_KMK)),)
37 $(error wtf? KBUILD_SVN_INFO_KMK is empty!)
38 endif
41 # Creates the 'all' tarballs.
43 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-all.tar.gz: | $$(dir $$@)
44 $(RM) -f $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-all.tar $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-all.tar.gz
45 $(RMTREE) $(PATH_TARGET)/all/
46 $(MKDIR) -p $(PATH_TARGET)/all/
47 $(SVN) export . $(PATH_TARGET)/all/kBuild-$(KBUILD_VERSION)/
48 $(INSTALL) $(KBUILD_SVN_INFO_KMK) \
49 $(PATH_TARGET)/all/kBuild-$(KBUILD_VERSION)/SvnInfo.kmk
50 $(TAR) cvf $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-all.tar \
51 -C $(PATH_TARGET)/all/ kBuild-$(KBUILD_VERSION)/
52 $(GZIP) -9 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-all.tar
53 $(RMTREE) $(PATH_TARGET)/all/kBuild-$(KBUILD_VERSION)/
55 OTHER_CLEAN += \
56 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-all.tar \
57 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-all.tar.gz
60 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-all.tar.gz: | $$(dir $$@)
61 $(RM) -f $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-all.tar $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-all.tar.gz
62 $(RMTREE) $(PATH_TARGET)/night-all/
63 $(MKDIR) -p $(PATH_TARGET)/night-all/
64 $(SVN) export . $(PATH_TARGET)/night-all/kBuild-$(KBUILD_SVN_REV)/
65 $(INSTALL) $(KBUILD_SVN_INFO_KMK) \
66 $(PATH_TARGET)/night-all/kBuild-$(KBUILD_SVN_REV)/SvnInfo.kmk
67 $(TAR) cvf $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-all.tar \
68 -C $(PATH_TARGET)/night-all/ kBuild-$(KBUILD_SVN_REV)/
69 $(GZIP) -9 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-all.tar
70 $(RMTREE) $(PATH_TARGET)/night-all/kBuild-$(KBUILD_SVN_REV)/
72 OTHER_CLEAN += \
73 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-all.tar \
74 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-all.tar.gz
78 # Creates the source tarballs.
80 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-src.tar.gz: | $$(dir $$@)
81 $(RM) -f $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-src.tar $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-src.tar.gz
82 $(RMTREE) $(PATH_TARGET)/src/
83 $(MKDIR) -p $(PATH_TARGET)/src/
84 $(SVN) export . $(PATH_TARGET)/src/kBuild-$(KBUILD_VERSION)/
85 $(RMTREE) $(PATH_TARGET)/src/kBuild-$(KBUILD_VERSION)/kBuild/bin
86 $(INSTALL) $(KBUILD_SVN_INFO_KMK) \
87 $(PATH_TARGET)/src/kBuild-$(KBUILD_VERSION)/SvnInfo.kmk
88 $(TAR) cvf $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-src.tar \
89 -C $(PATH_TARGET)/src/ kBuild-$(KBUILD_VERSION)/
90 $(GZIP) -9 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-src.tar
91 $(RMTREE) $(PATH_TARGET)/src/kBuild-$(KBUILD_VERSION)/
93 OTHER_CLEAN += \
94 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-src.tar \
95 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-src.tar.gz
98 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-src.tar.gz: | $$(dir $$@)
99 $(RM) -f $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-src.tar $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-src.tar.gz
100 $(RMTREE) $(PATH_TARGET)/night-src/
101 $(MKDIR) -p $(PATH_TARGET)/night-src/
102 $(SVN) export . $(PATH_TARGET)/night-src/kBuild-$(KBUILD_SVN_REV)/
103 $(RMTREE) $(PATH_TARGET)/night-src/kBuild-$(KBUILD_SVN_REV)/kBuild/bin
104 $(INSTALL) $(KBUILD_SVN_INFO_KMK) \
105 $(PATH_TARGET)/night-src/kBuild-$(KBUILD_SVN_REV)/SvnInfo.kmk
106 $(TAR) cvf $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-src.tar \
107 -C $(PATH_TARGET)/night-src/ kBuild-$(KBUILD_SVN_REV)/
108 $(GZIP) -9 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-src.tar
109 $(RMTREE) $(PATH_TARGET)/night-src/kBuild-$(KBUILD_SVN_REV)/
111 OTHER_CLEAN += \
112 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-src.tar \
113 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-src.tar.gz
116 # Creates the binary tarballs.
118 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION).tar.gz: | $$(dir $$@)
119 $(RM) -f $(PATH_TARGET)/kBuild-$(KBUILD_VERSION).tar $(PATH_TARGET)/kBuild-$(KBUILD_VERSION).tar.gz
120 $(RMTREE) $(PATH_TARGET)/bin/
121 $(MKDIR) -p $(PATH_TARGET)/bin/kBuild-$(KBUILD_VERSION)/
122 $(SVN) export kBuild/ $(PATH_TARGET)/bin/kBuild-$(KBUILD_VERSION)/kBuild/
123 $(TAR) cvf $(PATH_TARGET)/kBuild-$(KBUILD_VERSION).tar \
124 -C $(PATH_TARGET)/bin/ kBuild-$(KBUILD_VERSION)/
125 $(GZIP) -9 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION).tar
126 $(RMTREE) $(PATH_TARGET)/bin/kBuild-$(KBUILD_VERSION)/
128 OTHER_CLEAN += \
129 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION).tar \
130 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION).tar.gz
133 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV).tar.gz: | $$(dir $$@)
134 $(RM) -f $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV).tar $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV).tar.gz
135 $(RMTREE) $(PATH_TARGET)/night-bin/
136 $(MKDIR) -p $(PATH_TARGET)/night-bin/kBuild-$(KBUILD_SVN_REV)/
137 $(SVN) export kBuild/ $(PATH_TARGET)/night-bin/kBuild-$(KBUILD_SVN_REV)/kBuild/
138 $(TAR) cvf $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV).tar \
139 -C $(PATH_TARGET)/night-bin/ kBuild-$(KBUILD_SVN_REV)/
140 $(GZIP) -9 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV).tar
141 $(RMTREE) $(PATH_TARGET)/night-bin/kBuild-$(KBUILD_SVN_REV)/
143 OTHER_CLEAN += \
144 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV).tar \
145 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV).tar.gz
149 # Aliases
151 tarballs: \
152 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-src.tar.gz \
153 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION).tar.gz \
154 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV).tar.gz \
155 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-src.tar.gz
157 release: \
158 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION).tar.gz \
159 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-src.tar.gz \
160 $(PATH_TARGET)/kBuild-$(KBUILD_VERSION)-all.tar.gz
162 nightly: \
163 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV).tar.gz \
164 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-src.tar.gz \
165 $(PATH_TARGET)/kBuild-$(KBUILD_SVN_REV)-all.tar.gz
167 .PHONY: tarballs release nightly
169 include $(PATH_KBUILD)/footer.kmk