23
23
# * dist-docs - Stage docs for upload
24
24
25
25
PKG_NAME := $(CFG_PACKAGE_NAME )
26
+ DOC_PKG_NAME := rust-docs-$(CFG_PACKAGE_VERS )
27
+ MINGW_PKG_NAME := rust-mingw-$(CFG_PACKAGE_VERS )
26
28
27
29
# License suitable for displaying in a popup
28
30
LICENSE.txt : $(S ) COPYRIGHT $(S ) LICENSE-APACHE $(S ) LICENSE-MIT
@@ -229,10 +231,20 @@ dist-install-dir-$(1): prepare-base-dir-$(1) docs compiler-docs
229
231
$$(Q )$$(PREPARE_MAN_CMD ) $$(S ) LICENSE-APACHE $$(PREPARE_DEST_DIR )
230
232
$$(Q )$$(PREPARE_MAN_CMD ) $$(S ) LICENSE-MIT $$(PREPARE_DEST_DIR )
231
233
$$(Q )$$(PREPARE_MAN_CMD ) $$(S ) README.md $$(PREPARE_DEST_DIR )
232
- $$(Q ) [ ! -d doc ] || cp -r doc $$(PREPARE_DEST_DIR )
234
+ $$(Q ) mkdir -p $$(PREPARE_DEST_DIR ) /share/doc/rust
235
+ $$(Q )$$(PREPARE_MAN_CMD ) $$(S ) COPYRIGHT $$(PREPARE_DEST_DIR ) /share/doc/rust
236
+ $$(Q )$$(PREPARE_MAN_CMD ) $$(S ) LICENSE-APACHE $$(PREPARE_DEST_DIR ) /share/doc/rust
237
+ $$(Q )$$(PREPARE_MAN_CMD ) $$(S ) LICENSE-MIT $$(PREPARE_DEST_DIR ) /share/doc/rust
238
+ $$(Q )$$(PREPARE_MAN_CMD ) $$(S ) README.md $$(PREPARE_DEST_DIR ) /share/doc/rust
233
239
234
240
dist/$$(PKG_NAME ) -$(1 ) .tar.gz: dist-install-dir-$(1 )
235
241
@$(call E, build: $$@ )
242
+ # Copy essential gcc components into installer
243
+ ifdef CFG_WINDOWSY_$(1)
244
+ $$(Q)rm -Rf dist/win-rust-gcc-$(1)
245
+ $$(Q)$$(CFG_PYTHON) $$(S)src/etc/make-win-dist.py tmp/dist/$$(PKG_NAME)-$(1)-image dist/win-rust-gcc-$(1) $(1)
246
+ $$(Q)cp -r $$(S)src/etc/third-party tmp/dist/$$(PKG_NAME)-$(1)-image/share/doc/
247
+ endif
236
248
$$(Q )$$(S ) src/rust-installer/gen-installer.sh \
237
249
--product-name=Rust \
238
250
--verify-bin=rustc \
@@ -242,9 +254,50 @@ dist/$$(PKG_NAME)-$(1).tar.gz: dist-install-dir-$(1)
242
254
--work-dir=tmp/dist \
243
255
--output-dir=dist \
244
256
--non-installed-prefixes=$$(NON_INSTALLED_PREFIXES ) \
245
- --package-name=$$(PKG_NAME ) -$(1 )
257
+ --package-name=$$(PKG_NAME ) -$(1 ) \
258
+ --component-name=rustc \
259
+ --legacy-manifest-dirs=rustlib,cargo
246
260
$$(Q ) rm -R tmp/dist/$$(PKG_NAME ) -$(1 ) -image
247
261
262
+ dist-doc-install-dir-$(1 ) : docs compiler-docs
263
+ $$(Q ) mkdir -p tmp/dist/$$(DOC_PKG_NAME ) -$(1 ) -image/share/doc/rust
264
+ $$(Q ) cp -r doc tmp/dist/$$(DOC_PKG_NAME ) -$(1 ) -image/share/doc/rust/html
265
+
266
+ dist/$$(DOC_PKG_NAME ) -$(1 ) .tar.gz: dist-doc-install-dir-$(1 )
267
+ @$(call E, build: $$@ )
268
+ $$(Q )$$(S ) src/rust-installer/gen-installer.sh \
269
+ --product-name=Rust-Documentation \
270
+ --rel-manifest-dir=rustlib \
271
+ --success-message=Rust-documentation-is-installed. \
272
+ --image-dir=tmp/dist/$$(DOC_PKG_NAME ) -$(1 ) -image \
273
+ --work-dir=tmp/dist \
274
+ --output-dir=dist \
275
+ --package-name=$$(DOC_PKG_NAME ) -$(1 ) \
276
+ --component-name=rust-docs \
277
+ --legacy-manifest-dirs=rustlib,cargo \
278
+ --bulk-dirs=share/doc/rust/html
279
+ $$(Q ) rm -R tmp/dist/$$(DOC_PKG_NAME ) -$(1 ) -image
280
+
281
+ dist-mingw-install-dir-$(1 ) :
282
+ $$(Q ) mkdir -p tmp/dist/rust-mingw-tmp-$(1 ) -image
283
+ $$(Q ) rm -Rf tmp/dist/$$(MINGW_PKG_NAME ) -$(1 ) -image
284
+ $$(Q )$$(CFG_PYTHON ) $$(S ) src/etc/make-win-dist.py \
285
+ tmp/dist/rust-mingw-tmp-$(1 ) -image tmp/dist/$$(MINGW_PKG_NAME ) -$(1 ) -image $(1 )
286
+
287
+ dist/$$(MINGW_PKG_NAME ) -$(1 ) .tar.gz: dist-mingw-install-dir-$(1 )
288
+ @$(call E, build: $$@ )
289
+ $$(Q )$$(S ) src/rust-installer/gen-installer.sh \
290
+ --product-name=Rust-MinGW \
291
+ --rel-manifest-dir=rustlib \
292
+ --success-message=Rust-MinGW-is-installed. \
293
+ --image-dir=tmp/dist/$$(MINGW_PKG_NAME ) -$(1 ) -image \
294
+ --work-dir=tmp/dist \
295
+ --output-dir=dist \
296
+ --package-name=$$(MINGW_PKG_NAME ) -$(1 ) \
297
+ --component-name=rust-mingw \
298
+ --legacy-manifest-dirs=rustlib,cargo
299
+ $$(Q ) rm -R tmp/dist/$$(MINGW_PKG_NAME ) -$(1 ) -image
300
+
248
301
endef
249
302
250
303
ifneq ($(CFG_ENABLE_DIST_HOST_ONLY ) ,)
@@ -257,7 +310,16 @@ endif
257
310
258
311
dist-install-dirs : $(foreach host,$(CFG_HOST ) ,dist-install-dir-$(host ) )
259
312
260
- dist-tar-bins : $(foreach host,$(CFG_HOST ) ,dist/$(PKG_NAME ) -$(host ) .tar.gz)
313
+ ifdef CFG_WINDOWSY_$(CFG_BUILD)
314
+ MAYBE_MINGW_TARBALLS =$(foreach host,$(CFG_HOST ) ,dist/$(MINGW_PKG_NAME ) -$(host ) .tar.gz)
315
+ endif
316
+
317
+ ifeq ($(CFG_DISABLE_DOCS ) ,)
318
+ MAYBE_DOC_TARBALLS =$(foreach host,$(CFG_HOST ) ,dist/$(DOC_PKG_NAME ) -$(host ) .tar.gz)
319
+ endif
320
+
321
+ dist-tar-bins : $(foreach host,$(CFG_HOST ) ,dist/$(PKG_NAME ) -$(host ) .tar.gz) \
322
+ $(MAYBE_DOC_TARBALLS ) $(MAYBE_MINGW_TARBALLS )
261
323
262
324
# Just try to run the compiler for the build host
263
325
distcheck-tar-bins : dist-tar-bins
@@ -289,27 +351,20 @@ distcheck-docs: dist-docs
289
351
# Primary targets (dist, distcheck)
290
352
# #####################################################################
291
353
292
- ifdef CFG_WINDOWSY_$(CFG_BUILD)
293
-
294
- dist : dist-win dist-tar-bins
295
-
296
- distcheck : distcheck-win
297
- $(Q ) rm -Rf tmp/distcheck
298
- @echo
299
- @echo -----------------------------------------------
300
- @echo " Rust ready for distribution (see ./dist)"
301
- @echo -----------------------------------------------
302
-
303
- else
354
+ MAYBE_DIST_TAR_SRC =dist-tar-src
355
+ MAYBE_DISTCHECK_TAR_SRC =distcheck-tar-src
304
356
305
357
# FIXME #13224: On OS X don't produce tarballs simply because --exclude-vcs don't work.
306
358
# This is a huge hack because I just don't have time to figure out another solution.
307
359
ifeq ($(CFG_OSTYPE ) , apple-darwin)
308
360
MAYBE_DIST_TAR_SRC =
309
361
MAYBE_DISTCHECK_TAR_SRC =
310
- else
311
- MAYBE_DIST_TAR_SRC =dist-tar-src
312
- MAYBE_DISTCHECK_TAR_SRC =distcheck-tar-src
362
+ endif
363
+
364
+ # Don't bother with source tarballs on windows just because we historically haven't.
365
+ ifeq ($(CFG_OSTYPE ) , pc-windows-gnu)
366
+ MAYBE_DIST_TAR_SRC =
367
+ MAYBE_DISTCHECK_TAR_SRC =
313
368
endif
314
369
315
370
ifneq ($(CFG_DISABLE_DOCS ) ,)
@@ -320,15 +375,13 @@ MAYBE_DIST_DOCS=dist-docs
320
375
MAYBE_DISTCHECK_DOCS =distcheck-docs
321
376
endif
322
377
323
- dist : $(MAYBE_DIST_TAR_SRC ) dist-osx dist-tar-bins $(MAYBE_DIST_DOCS )
378
+ dist : $(MAYBE_DIST_TAR_SRC ) dist-osx dist-win dist- tar-bins $(MAYBE_DIST_DOCS )
324
379
325
- distcheck : $(MAYBE_DISTCHECK_TAR_SRC ) distcheck-osx distcheck-tar-bins $(MAYBE_DISTCHECK_DOCS )
380
+ distcheck : $(MAYBE_DISTCHECK_TAR_SRC ) distcheck-osx distcheck-win distcheck- tar-bins $(MAYBE_DISTCHECK_DOCS )
326
381
$(Q ) rm -Rf tmp/distcheck
327
382
@echo
328
383
@echo -----------------------------------------------
329
384
@echo " Rust ready for distribution (see ./dist)"
330
385
@echo -----------------------------------------------
331
386
332
- endif
333
-
334
387
.PHONY : dist distcheck
0 commit comments