Skip to content

Commit a8510bb

Browse files
authored
Auto merge of #3270 - brson:cargo-docs, r=alexcrichton
Revert "Continuously publish Cargo builds" This reverts commit 7799014. Fixes #3269. The reason doc.crates.io doesn't display correctly is that travis-cargo writes its own index.html that is just a meta-redirect to the api docs, overwriting cargo's own docs. r? @alexcrichton
2 parents 10eaa2a + b008422 commit a8510bb

File tree

12 files changed

+112
-346
lines changed

12 files changed

+112
-346
lines changed

.travis.yml

+43-143
Original file line numberDiff line numberDiff line change
@@ -1,149 +1,49 @@
11
language: rust
2-
rust: stable
3-
sudo: required
4-
dist: trusty
5-
os: linux
6-
services:
7-
- docker
2+
rust:
3+
- stable
4+
- beta
5+
- nightly
6+
sudo: false
7+
script:
8+
- ./configure --prefix=$HOME/cargo-install --disable-cross-tests --disable-optimize
9+
- make
10+
- make test
11+
- make distcheck
12+
- make doc
13+
- make install
14+
- make uninstall
15+
after_success: |
16+
[ $TRAVIS_BRANCH = master ] &&
17+
[ $TRAVIS_PULL_REQUEST = false ] &&
18+
[ $(uname -s) = Linux ] &&
19+
pip install ghp-import --user $USER &&
20+
$HOME/.local/bin/ghp-import -n target/doc &&
21+
git push -qf https://${TOKEN}@github.com/${TRAVIS_REPO_SLUG}.git gh-pages
22+
env:
23+
global:
24+
# apparently we use too much memory and if there's more than one rustc then
25+
# when compiling Cargo's unit tests some compilers will be randomly kill
26+
# -9'd
27+
- CARGOFLAGS=-j1
28+
- secure: scGpeetUfba5RWyuS4yt10bPoFAI9wpHEReIFqEx7eH5vr2Anajk6+70jW6GdrWVdUvdINiArlQ3An2DeB9vEUWcBjw8WvuPtOH0tDMoSsuVloPlFD8yn1Ac0Bx9getAO5ofxqtoNg+OV4MDVuGabEesqAOWqURNrBC7XK+ntC8=
829

930
matrix:
1031
include:
11-
# stable linux builds, tested
12-
- env: TARGET=x86_64-unknown-linux-gnu
13-
ALT=i686-unknown-linux-gnu
14-
IMAGE=dist
15-
MAKE_TARGETS="test distcheck doc install uninstall"
16-
- env: TARGET=i686-unknown-linux-gnu
17-
IMAGE=dist
18-
MAKE_TARGETS=test-unit-i686-unknown-linux-gnu
19-
CFG_DISABLE_CROSS_TESTS=1
20-
21-
# stable osx builds, tested
22-
- env: TARGET=x86_64-apple-darwin
23-
ALT=i686-apple-darwin
24-
MAKE_TARGETS="test distcheck doc install uninstall"
25-
MACOSX_DEPLOYMENT_TARGET=10.7
26-
os: osx
27-
before_install:
28-
- export OPENSSL_INCLUDE_DIR=`brew --prefix openssl`/include
29-
- export OPENSSL_LIB_DIR=`brew --prefix openssl`/include
30-
- env: TARGET=i686-apple-darwin
31-
MAKE_TARGETS=test
32-
MACOSX_DEPLOYMENT_TARGET=10.7
33-
CFG_DISABLE_CROSS_TESTS=1
34-
os: osx
32+
- os: osx
33+
rust: stable
3534
before_install:
3635
- export OPENSSL_INCLUDE_DIR=`brew --prefix openssl`/include
37-
- export OPENSSL_LIB_DIR=`brew --prefix openssl`/include
38-
39-
# stable musl target, tested
40-
- env: TARGET=x86_64-unknown-linux-musl
41-
IMAGE=x86_64-musl
42-
CFG_DISABLE_CROSS_TESTS=1
43-
MAKE_TARGETS=test-unit-$TARGET
44-
45-
# cross compiled targets
46-
- env: TARGET=arm-unknown-linux-gnueabi
47-
IMAGE=cross
48-
- env: TARGET=arm-unknown-linux-gnueabihf
49-
IMAGE=cross
50-
- env: TARGET=armv7-unknown-linux-gnueabihf
51-
IMAGE=cross
52-
- env: TARGET=aarch64-unknown-linux-gnu
53-
IMAGE=cross
54-
- env: TARGET=i686-unknown-freebsd
55-
IMAGE=cross
56-
- env: TARGET=x86_64-unknown-freebsd
57-
IMAGE=cross
58-
- env: TARGET=x86_64-unknown-netbsd
59-
IMAGE=cross
60-
- env: TARGET=mips-unknown-linux-gnu
61-
IMAGE=cross
62-
- env: TARGET=mipsel-unknown-linux-gnu
63-
IMAGE=cross
64-
- env: TARGET=mips64-unknown-linux-gnuabi64
65-
IMAGE=cross
66-
rust: nightly
67-
- env: TARGET=mips64el-unknown-linux-gnuabi64
68-
IMAGE=cross
69-
rust: nightly
70-
- env: TARGET=s390x-unknown-linux-gnu
71-
IMAGE=cross
72-
rust: nightly
73-
- env: TARGET=powerpc-unknown-linux-gnu
74-
IMAGE=cross
75-
rust: beta
76-
- env: TARGET=powerpc64-unknown-linux-gnu
77-
IMAGE=cross
78-
rust: beta
79-
- env: TARGET=powerpc64le-unknown-linux-gnu
80-
IMAGE=cross
81-
rust: beta
82-
83-
# beta/nightly builds
84-
- env: TARGET=x86_64-unknown-linux-gnu
85-
ALT=i686-unknown-linux-gnu
86-
IMAGE=dist
87-
MAKE_TARGETS="test distcheck doc install uninstall"
88-
DEPLOY=0
89-
rust: beta
90-
- env: TARGET=x86_64-unknown-linux-gnu
91-
ALT=i686-unknown-linux-gnu
92-
IMAGE=dist
93-
MAKE_TARGETS="test distcheck doc install uninstall"
94-
DEPLOY=0
95-
rust: nightly
96-
97-
exclude:
98-
- rust: stable
99-
100-
before_script:
101-
- pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH
102-
- curl https://static.rust-lang.org/rustup.sh |
103-
sh -s -- --add-target=$TARGET --disable-sudo -y --prefix=`rustc --print sysroot`
104-
- if [ ! -z "$ALT" ]; then
105-
curl https://static.rust-lang.org/rustup.sh |
106-
sh -s -- --add-target=$ALT --disable-sudo -y --prefix=`rustc --print sysroot`;
107-
fi
108-
script:
109-
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then
110-
SRC=. src/ci/run.sh $TARGET;
111-
else
112-
src/ci/docker/run.sh $IMAGE $TARGET;
113-
fi
114-
after_success:
115-
- travis-cargo --only nightly doc-upload
116-
117-
env:
118-
global:
119-
- DEPLOY=1
120-
- secure: LB2o9UL90Z4CVOLVQsTbZr7ZBLA1dCLxFODuCkPkbdqG3Kl5z1yMIPMRvSbjp9KwBlIgm+Mg0R1iqphKVq+rVP5zo96K4+kEQMG+zWsPb23ZKTxiL8MK5VgCZ7s9AONCvNeCTCNAG3EyeciFr5Zr9eygVCfo0WF6JsPujYYQZx0=
121-
122-
notifications:
123-
email:
124-
on_success: never
125-
126-
before_deploy:
127-
- mkdir -p deploy/$TRAVIS_COMMIT
128-
- cp target/$TARGET/release/dist/cargo-nightly-$TARGET.tar.gz
129-
deploy/$TRAVIS_COMMIT
130-
131-
deploy:
132-
- provider: s3
133-
bucket: rust-lang-cargo-dev
134-
skip_cleanup: true
135-
local_dir: deploy
136-
upload_dir: cargo-master
137-
acl: public_read
138-
region: us-west-1
139-
access_key_id: AKIAJYHGN72KKCN4DFBQ
140-
secret_access_key:
141-
secure: wKKDMYBVTdWLuc7+ffpjTqJs1EdM2pXpV6keUfZGv9RLRta+esh/r/cgc+UQ7+m9JHAliH8eWhlMm5ws6WDgkTvM0PTdqWBgwd24BRbAitsXX2kWfi9WgAeSJVSkIJdZ999TRpRIJu7Zc+1++fbfdD/tDv5XBirQGOJv1HynVWY=
142-
on:
143-
branch: auto
144-
condition: $DEPLOY = 1
145-
146-
cache:
147-
directories:
148-
- $HOME/.cargo
149-
- target/openssl
36+
- export OPENSSL_LIB_DIR=`brew --prefix openssl`/lib
37+
38+
branches:
39+
only:
40+
- master
41+
42+
addons:
43+
apt:
44+
sources:
45+
- kalakris-cmake
46+
packages:
47+
- cmake
48+
- g++-multilib
49+
- lib32stdc++6

Makefile.in

+25-30
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,11 @@ OPENSSL_SHA256=e7aff292be21c259c6af26469c7a9b3ba26e9abaaffd325e3dccc9785256c431
66

77
include config.mk
88

9+
ifneq ($(CFG_LOCAL_RUST_ROOT),)
10+
export LD_LIBRARY_PATH := $(CFG_LOCAL_RUST_ROOT)/lib:$(LD_LIBRARY_PATH)
11+
export DYLD_LIBRARY_PATH := $(CFG_LOCAL_RUST_ROOT)/lib:$(DYLD_LIBRARY_PATH)
12+
endif
13+
914
export PATH := $(dir $(CFG_RUSTC)):$(PATH)
1015

1116
ifdef CFG_ENABLE_NIGHTLY
@@ -79,45 +84,44 @@ $(foreach target,$(CFG_TARGET),$(eval $(call DIST_TARGET,$(target))))
7984
ifdef CFG_LOCAL_CARGO
8085
CARGO := $(CFG_LOCAL_CARGO)
8186
else
82-
CARGO := $(CFG_CARGO)
87+
CARGO := $(TARGET_ROOT)/snapshot/bin/cargo$(X)
8388
endif
8489

8590
all: $(foreach target,$(CFG_TARGET),cargo-$(target))
8691

8792
define CARGO_TARGET
88-
cargo-$(1): target/openssl/$(1).stamp
93+
cargo-$(1): $$(CARGO) target/openssl/$(1).stamp
8994
$$(CFG_RUSTC) -V
9095
$$(CARGO) --version
9196
$$(CARGO) build --target $(1) \
9297
--manifest-path $(S)Cargo.toml \
9398
$$(OPT_FLAG) $$(CARGOFLAGS) $$(VERBOSE_FLAG) $$(ARGS)
9499

95-
test-unit-$(1): target/openssl/$(1).stamp cargo-$(1)
96-
@mkdir -p $$(CFG_BUILD_DIR)/target/$(1)/cit
97-
$$(CARGO) test --target $(1) \
98-
--manifest-path $(S)Cargo.toml \
99-
$$(OPT_FLAG) $$(CARGOFLAGS) $$(VERBOSE_FLAG) $$(only)
100+
test-unit-$(1): $$(CARGO)
101+
@mkdir -p target/$(1)/cit
102+
$$(CARGO) test --target $(1) $$(CARGOFLAGS) $$(VERBOSE_FLAG) $$(only)
100103
endef
101104
$(foreach target,$(CFG_TARGET),$(eval $(call CARGO_TARGET,$(target))))
102105

106+
$(TARGET_ROOT)/snapshot/bin/cargo$(X): $(S)src/snapshots.txt
107+
$(CFG_PYTHON) $(S)src/etc/dl-snapshot.py $(CFG_BUILD)
108+
touch $@
109+
110+
103111
# === Tests
104112

105113
test: style no-exes $(foreach target,$(CFG_TARGET),test-unit-$(target))
106114

107115
style:
108-
(cd $(S) && sh tests/check-style.sh)
116+
sh tests/check-style.sh
109117

110-
ifeq ($(CFG_GIT),)
111-
no-exes:
112-
else
113118
no-exes:
114-
(cd $(S) && find $$($(CFG_GIT) ls-files) -type f \
119+
find $$(git ls-files) -type f \
115120
\( -perm -u+x -or -perm -g+x -or -perm -o+x \) \
116121
-not -name configure -not -name '*.sh' -not -name '*.rs' \
117122
-not -name '*.py' -not -wholename "*/rust-installer/*" | \
118123
grep '.*' \
119-
&& exit 1 || exit 0)
120-
endif
124+
&& exit 1 || exit 0
121125

122126
# === Misc
123127

@@ -139,9 +143,9 @@ DOC_OPTS := --markdown-no-toc \
139143
--markdown-css stylesheets/normalize.css \
140144
--markdown-css stylesheets/all.css \
141145
--markdown-css stylesheets/prism.css \
142-
--html-in-header $(S)src/doc/html-headers.html \
143-
--html-before-content $(S)src/doc/header.html \
144-
--html-after-content $(S)src/doc/footer.html
146+
--html-in-header src/doc/html-headers.html \
147+
--html-before-content src/doc/header.html \
148+
--html-after-content src/doc/footer.html
145149
ASSETS := CNAME images/noise.png images/forkme.png images/Cargo-Logo-Small.png \
146150
stylesheets/all.css stylesheets/normalize.css javascripts/prism.js \
147151
javascripts/all.js stylesheets/prism.css images/circle-with-i.png \
@@ -152,19 +156,14 @@ doc: $(foreach doc,$(DOCS),target/doc/$(doc).html) \
152156
$(foreach asset,$(ASSETS),target/doc/$(asset)) \
153157
target/doc/cargo/index.html
154158

155-
target/doc/cargo/index.html: target/openssl/$(CFG_BUILD).stamp cargo-$(CFG_BUILD)
156-
$(CARGO) doc --no-deps --target $(CFG_BUILD) \
157-
--manifest-path $(S)Cargo.toml $(OPT_FLAG)
159+
target/doc/cargo/index.html:
160+
$(CARGO) doc --no-deps
158161

159-
$(DOC_DIR)/%.html: \
160-
$(S)src/doc/%.md \
161-
$(S)src/doc/html-headers.html \
162-
$(S)src/doc/header.html \
163-
$(S)src/doc/footer.html
162+
$(DOC_DIR)/%.html: src/doc/%.md src/doc/html-headers.html src/doc/header.html src/doc/footer.html
164163
@mkdir -p $(@D)
165164
$(CFG_RUSTDOC) $< -o $(@D) $(DOC_OPTS)
166165

167-
$(DOC_DIR)/%: $(S)src/doc/%
166+
$(DOC_DIR)/%: src/doc/%
168167
@mkdir -p $(@D)
169168
cp $< $@
170169

@@ -174,7 +173,6 @@ OPENSSL_OS_arm-unknown-linux-gnueabihf := linux-armv4
174173
OPENSSL_OS_armv7-unknown-linux-gnueabihf := linux-armv4
175174
OPENSSL_OS_i686-unknown-freebsd := BSD-x86-elf
176175
OPENSSL_OS_i686-unknown-linux-gnu := linux-elf
177-
OPENSSL_OS_i686-unknown-linux-musl := linux-elf
178176
OPENSSL_OS_mips-unknown-linux-gnu := linux-mips32
179177
OPENSSL_OS_mipsel-unknown-linux-gnu := linux-mips32
180178
OPENSSL_OS_mips64-unknown-linux-gnuabi64 := linux64-mips64
@@ -194,7 +192,6 @@ OPENSSL_AR_arm-unknown-linux-gnueabihf := arm-linux-gnueabihf-ar
194192
OPENSSL_AR_armv7-unknown-linux-gnueabihf := armv7-linux-gnueabihf-ar
195193
OPENSSL_AR_i686-unknown-freebsd := i686-unknown-freebsd10-ar
196194
OPENSSL_AR_i686-unknown-linux-gnu := ar
197-
OPENSSL_AR_i686-unknown-linux-musl := ar
198195
OPENSSL_AR_mips-unknown-linux-gnu := mips-linux-gnu-ar
199196
OPENSSL_AR_mips64-unknown-linux-gnuabi64 := mips64-linux-gnuabi64-ar
200197
OPENSSL_AR_mips64el-unknown-linux-gnuabi64 := mips64el-linux-gnuabi64-ar
@@ -213,7 +210,6 @@ OPENSSL_CC_arm-unknown-linux-gnueabihf := arm-linux-gnueabihf-gcc
213210
OPENSSL_CC_armv7-unknown-linux-gnueabihf := armv7-linux-gnueabihf-gcc
214211
OPENSSL_CC_i686-unknown-freebsd := i686-unknown-freebsd10-gcc
215212
OPENSSL_CC_i686-unknown-linux-gnu := gcc
216-
OPENSSL_CC_i686-unknown-linux-musl := musl-gcc
217213
OPENSSL_CC_mips-unknown-linux-gnu := mips-linux-gnu-gcc
218214
OPENSSL_CC_mips64-unknown-linux-gnuabi64 := mips64-linux-gnuabi64-gcc
219215
OPENSSL_CC_mips64el-unknown-linux-gnuabi64 := mips64el-linux-gnuabi64-gcc
@@ -229,7 +225,6 @@ OPENSSL_CC_x86_64-unknown-netbsd := x86_64-unknown-netbsd-gcc
229225

230226
SETARCH_i686-unknown-linux-gnu := setarch i386
231227
OPENSSL_CFLAGS_i686-unknown-linux-gnu := -m32
232-
OPENSSL_CFLAGS_i686-unknown-linux-musl := -m32
233228

234229
define BUILD_OPENSSL
235230
ifdef OPENSSL_OS_$(1)

0 commit comments

Comments
 (0)