25
25
PKG_NAME = $(CFG_PACKAGE_NAME )
26
26
27
27
PKG_GITMODULES := $(S ) src/libuv $(S ) src/llvm $(S ) src/gyp $(S ) src/compiler-rt
28
-
29
28
PKG_FILES := \
30
29
$(S ) COPYRIGHT \
31
30
$(S ) LICENSE-APACHE \
@@ -48,8 +47,8 @@ PKG_FILES := \
48
47
snapshots.txt \
49
48
test) \
50
49
$(PKG_GITMODULES ) \
51
- $(filter-out Makefile config.stamp config.mk , \
52
- $(MKFILE_DEPS ) )
50
+ $(filter-out config.stamp, \
51
+ $(MKFILES_FOR_TARBALL ) )
53
52
54
53
UNROOTED_PKG_FILES := $(patsubst $(S ) % ,./% ,$(PKG_FILES ) )
55
54
@@ -83,6 +82,23 @@ $(PKG_TAR): $(PKG_FILES)
83
82
84
83
dist-tar-src : $(PKG_TAR )
85
84
85
+ distcheck-tar-src : $(PKG_TAR )
86
+ $(Q ) rm -Rf tmp/distcheck/$(PKG_NAME )
87
+ $(Q ) rm -Rf tmp/distcheck/srccheck
88
+ $(Q ) mkdir -p tmp/distcheck
89
+ @$(call E, unpacking $(PKG_TAR ) in tmp/distcheck/$(PKG_NAME ) )
90
+ $(Q ) cd tmp/distcheck && tar -xzf ../../$(PKG_TAR )
91
+ @$(call E, configuring in tmp/distcheck/srccheck)
92
+ $(Q ) mkdir -p tmp/distcheck/srccheck
93
+ $(Q ) cd tmp/distcheck/srccheck && ../$(PKG_NAME ) /configure
94
+ @$(call E, making 'check' in tmp/distcheck/srccheck)
95
+ $(Q ) +make -C tmp/distcheck/srccheck check
96
+ @$(call E, making 'clean' in tmp/distcheck/srccheck)
97
+ $(Q ) +make -C tmp/distcheck/srccheck clean
98
+ $(Q ) rm -Rf tmp/distcheck/$(PKG_NAME )
99
+ $(Q ) rm -Rf tmp/distcheck/srccheck
100
+
101
+
86
102
# #####################################################################
87
103
# Windows .exe installer
88
104
# #####################################################################
@@ -100,7 +116,7 @@ PKG_EXE = dist/$(PKG_NAME)-install.exe
100
116
cp $< $@
101
117
102
118
$(PKG_EXE ) : rust.iss modpath.iss LICENSE.txt rust-logo.ico \
103
- $(PKG_FILES) $( CSREQ3_T_$(CFG_BUILD)_H_$(CFG_BUILD)) \
119
+ $(CSREQ3_T_$(CFG_BUILD)_H_$(CFG_BUILD)) \
104
120
dist-prepare-win
105
121
$(CFG_PYTHON) $(S)src/etc/copy-runtime-deps.py tmp/dist/win/bin
106
122
@$(call E, ISCC: $@)
@@ -156,10 +172,6 @@ endif
156
172
# Unix binary installer tarballs
157
173
# #####################################################################
158
174
159
- dist-install-dirs : $(foreach host,$(CFG_HOST ) ,dist-install-dir-$(host ) )
160
-
161
- dist-tar-bins : $(foreach host,$(CFG_HOST ) ,dist/$(PKG_NAME ) -$(host ) .tar.gz)
162
-
163
175
define DEF_INSTALLER
164
176
dist-install-dir-$(1 ) : PREPARE_HOST=$(1 )
165
177
dist-install-dir-$(1 ) : PREPARE_TARGETS=$(1 )
@@ -187,6 +199,22 @@ endef
187
199
$(foreach host,$(CFG_HOST),\
188
200
$(eval $(call DEF_INSTALLER,$(host))))
189
201
202
+ dist-install-dirs : $(foreach host,$(CFG_HOST ) ,dist-install-dir-$(host ) )
203
+
204
+ dist-tar-bins : $(foreach host,$(CFG_HOST ) ,dist/$(PKG_NAME ) -$(host ) .tar.gz)
205
+
206
+ # Just try to run the compiler for the build host
207
+ distcheck-tar-bins : dist-tar-bins
208
+ @$(call E, checking binary tarball)
209
+ $(Q ) rm -Rf tmp/distcheck/$(PKG_NAME ) -$(CFG_BUILD )
210
+ $(Q ) rm -Rf tmp/distcheck/tarbininstall
211
+ $(Q ) mkdir -p tmp/distcheck
212
+ $(Q ) cd tmp/distcheck && tar -xzf ../../dist/$(PKG_NAME ) -$(CFG_BUILD ) .tar.gz
213
+ $(Q ) mkdir -p tmp/distcheck/tarbininstall
214
+ $(Q ) sh tmp/distcheck/$(PKG_NAME ) -$(CFG_BUILD ) /install.sh --prefix=tmp/distcheck/tarbininstall
215
+ $(Q ) tmp/distcheck/tarbininstall/bin/rustc --version
216
+ $(Q ) rm -Rf tmp/distcheck/$(PKG_NAME ) -$(CFG_BUILD )
217
+ $(Q ) rm -Rf tmp/distcheck/tarbininstall
190
218
191
219
# #####################################################################
192
220
# Docs
@@ -208,6 +236,7 @@ ifdef CFG_WINDOWSY_$(CFG_BUILD)
208
236
dist : dist-win
209
237
210
238
distcheck : dist
239
+ $(Q ) rm -Rf tmp/distcheck
211
240
@echo
212
241
@echo -----------------------------------------------
213
242
@echo Rust ready for distribution (see ./dist)
@@ -217,19 +246,8 @@ else
217
246
218
247
dist : dist-tar-src
219
248
220
- distcheck : $(PKG_TAR )
221
- $(Q ) rm -Rf dist
222
- $(Q ) mkdir -p dist
223
- @$(call E, unpacking $(PKG_TAR ) in dist/$(PKG_NAME ) )
224
- $(Q ) cd dist && tar -xzf ../$(PKG_TAR )
225
- @$(call E, configuring in dist/$(PKG_NAME ) -build)
226
- $(Q ) mkdir -p dist/$(PKG_NAME ) -build
227
- $(Q ) cd dist/$(PKG_NAME ) -build && ../$(PKG_NAME ) /configure
228
- @$(call E, making 'check' in dist/$(PKG_NAME ) -build)
229
- $(Q ) +make -C dist/$(PKG_NAME ) -build check
230
- @$(call E, making 'clean' in dist/$(PKG_NAME ) -build)
231
- $(Q ) +make -C dist/$(PKG_NAME ) -build clean
232
- $(Q ) rm -Rf dist
249
+ distcheck : dist distcheck-tar-src
250
+ $(Q ) rm -Rf tmp/distcheck
233
251
@echo
234
252
@echo -----------------------------------------------
235
253
@echo Rust ready for distribution (see ./dist)
0 commit comments