Skip to content

Commit

Permalink
Release/111 (#1)
Browse files Browse the repository at this point in the history
* only build necessary target (alexcrichton#43)

* Bump to 111.6.1+1.1.1d

* Update checkout actions reference

* Fixed apparent typo in the readme (alexcrichton#46)

* Work around upstream cargo issues

* Add handling for target riscv64gc-unknown-linux-gnu (alexcrichton#48)

* Disable asmjs for now

* Allow to specify custom path for Perl (alexcrichton#49)

* Allow to specify custom path for Perl

Env var OPENSSL_SRC_PERL can be set to specify
a path to the perl binary to use to call the openssl
perl scripts.

Resolves alexcrichton#45

* Fallback to PERL env var if OPENSSL_SRC_PERL is not set

* Add support for non-x86 archs on FreeBSD (alexcrichton#50)

Caused by:
  process didn't exit successfully: `.../rust-bootstrap/work-aarch64/rustc-1.40.0-src/build/x86_64-unknown-freebsd/stage1-tools/release/build/openssl-sys-4b2d35028bf73953/build-script-main` (exit code: 101)
--- stdout
cargo:rustc-cfg=const_fn

--- stderr
thread 'main' panicked at 'don't know how to configure OpenSSL for aarch64-unknown-freebsd', .../rust-bootstrap/work-aarch64/rustc-1.40.0-src/vendor/openssl-src/src/lib.rs:178:18

* Update CI installation of Rust on macos~

* support for illumos systems (alexcrichton#52)

Resolves alexcrichton#51

* More comment out of asmjs

* Use gmake by default on all DragonFlyBSD, FreeBSD or Solaris targets (alexcrichton#53)

* Bump to 1.1.1e (alexcrichton#54)

* Add support for illumos triple (alexcrichton#56)

* Bump to 1.1.1f (alexcrichton#58)

* Release 111.8.1+1.1.1f

* Bump to 1.1.1g

* Do not overwrite AR and RANLIB env vars if set (alexcrichton#62)

* Add engine support for linux-gnu (alexcrichton#63)

* add engine support for linux-gnu

Signed-off-by: Xintao <hunterlxt@live.com>

* address comment

Signed-off-by: Xintao <hunterlxt@live.com>

* add blacklist os

Signed-off-by: Xintao <hunterlxt@live.com>

* add blacklist os

Signed-off-by: Xintao <hunterlxt@live.com>

* To check CI build info

Signed-off-by: Xintao <hunterlxt@live.com>

* add comments

Signed-off-by: Xintao <hunterlxt@live.com>

* Bump to 111.10.0+1.1.1g

* Fix build on macOS with latest cc crate (alexcrichton#67)

cc v1.0.58 broke the macOS build by including the "-arch" flag in the
default set of compiler flags. Strip it out, like we do for iOS targets.

Closes alexcrichton#66.

* Bump to 111.10.1+1.1.1g

* add optional features for less used algorithms (alexcrichton#68)

This commit disables by default a few of the weaker cryptographical algorithms into
a "weak-crypto" feature as well as some of the less used algorithms into
their own specific features.
These algorithms are not directly exposed through the rust-openssl crate.
The compilation of these can be re-enabled by selecting the desired features.
This should slightly reduce build time and library size.

Signed-off-by: Petre Eftime <petre.eftime@gmail.com>

* Bump to 111.10.2+1.1.1g

* Bump to 1.1.1h (alexcrichton#73)

* Add FreeBSD powerpc64le support (alexcrichton#75)

FreeBSD PowerPC64LE is a new target.

This is needed to cross-build cargo.

* Add upstream patch to allow building on aarch64-apple-darwin (alexcrichton#74)

* Use fs module convenience methods for MUSL patch

* Add upstream patch to allow building on aarch64-apple-darwin

Closes alexcrichton#72

* i586 support (alexcrichton#76)

* Bump to 111.12.0+1.1.1h

* Add aarch64-apple-darwin to CI (alexcrichton#77)

* OpenBSD support (alexcrichton#78)

* Update OpenSSL to 1.1.1i

* Update CI

* Remove now no-longer-necessary patches

* Support targets `armv7-unknown-linux-gnueabi/musleabi` (alexcrichton#80)

Support targets `armv7-unknown-linux-gnueabi` & `armv7-unknown-linux-musleabi`

* Make it compile for wasm32-wasi (alexcrichton#81)

* Catch more failures on Windows in CI (alexcrichton#84)

* Catch more failures on Windows in CI

* Link missing library for OpenSSL on MSVC

Looks like some functions may pull in user32 functions, so that library
needs to be linked.

* Try to fix msvc +crt-static builds

* Try to see all failures

* More output

* Fix setting crt-static

* More CI tweaks

* Add the bin dir to cargo's search path on MSVC

That's where it contains the actual dlls needed at runtime

* Moved "no-shared" so that also windows statically link to the libraries (alexcrichton#83)

* Moved "no-shared" so that windows statically link to the libraries

* try reapplying changes

* removed shared as it's always false.

Co-authored-by: molleafauss <lmollea@yahoo.it>

* Bump to OpenSSL 1.1.1j (alexcrichton#85)

* add nasm support for msvc (alexcrichton#87)

* add nasm support for windows-msvc

This will automatically detect whether nasm.exe is installed and
try to enable the assembly language routines. These can also be
disabled by set the `OPENSSL_RUST_NO_NASM` environment variable to
a non-zero value.

* don't use '>> $GITHUB_ENV' to overwrite PATH

* remove the windows check in CI

* give user more control on the env var

* add env var in CI, less acceptable values for env var

* fix path format for using bash on windows

* 'OPENSSL_RUST_USE_NASM' env var only accept 0 or 1

* Bump to 1.1.1k

* Add FreeBSD powerpc support (alexcrichton#90)

This is needed to support cargo cross-build for 32-bit powerpc on FreeBSD.

* Upgrade to GitHub-native Dependabot (alexcrichton#92)

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Support targets `armv5te-unknown-linux-gnueabi/musleabi` (alexcrichton#94)

* Support targets `popwerpc64(le)-unknown-linux-musl` (alexcrichton#95)

* Support targets `mips64(el)-unknown-linux-muslabi64` (alexcrichton#96)

* Support target `s390x-unknown-linux-musl` (alexcrichton#97)

* Bump to openssl 1.1.1l (alexcrichton#100)

* Bump to 1.1.1m

* test on 1.1.1 branch

* Fix aarch64-apple-darwin CI (alexcrichton#116)

(cherry picked from commit 466ffd2)

* Bump to 1.1.1n (alexcrichton#123)

* Update "old" windows image on CI (alexcrichton#126)

* Bump to 1.1.1o (alexcrichton#136)

* Bump to 1.1.1o

* Disable arm-linux-androideabi test

* Backport wycheproof exclude to 1.1.1 branch (alexcrichton#139)

* Backport wycheproof exclude to 1.1.1 branch

* Backport exclude CI checks

* Backport exclude CI checks

* Configure `--openssldir` to its default location (alexcrichton#141) (alexcrichton#142)

As pointed out in alexcrichton#140 otherwise certificates and configure is by
default looked up in the directory of the build machine itself which is
often a writable path. Instead switch the configuration option back to
the default recommended in openssl's `INSTALL.md`

Closes alexcrichton#140

* Bump to 111.20.0+1.1.1o (alexcrichton#143)

* Bump to 1.1.1p (alexcrichton#145)

* Bump to 1.1.1q (alexcrichton#147)

Co-authored-by: Jay <BusyJay@users.noreply.github.com>
Co-authored-by: Alex Crichton <alex@alexcrichton.com>
Co-authored-by: Alex Gaynor <alex.gaynor@gmail.com>
Co-authored-by: msizanoen1 <55322658+msizanoen1@users.noreply.github.com>
Co-authored-by: Franck Royer <royer.franck@gmail.com>
Co-authored-by: Tobias Kortkamp <t6@users.noreply.github.com>
Co-authored-by: Joshua M. Clulow <josh@sysmgr.org>
Co-authored-by: MikaelUrankar <49529234+MikaelUrankar@users.noreply.github.com>
Co-authored-by: Steven Fackler <sfackler@gmail.com>
Co-authored-by: Patrick Mooney <pmooney@pfmooney.com>
Co-authored-by: Steven Fackler <sfackler@palantir.com>
Co-authored-by: James McMurray <jamesmcm03@gmail.com>
Co-authored-by: Xintao <hunterlxt@live.com>
Co-authored-by: Nikhil Benesch <nikhil.benesch@gmail.com>
Co-authored-by: petreeftime <petre.eftime@gmail.com>
Co-authored-by: Brandon Bergren <git@bdragon.rtk0.net>
Co-authored-by: Jake Goulding <shepmaster@mac.com>
Co-authored-by: Will <will@mon.im>
Co-authored-by: Jake Goulding <jake.goulding@gmail.com>
Co-authored-by: kiron1 <kiron1@gmail.com>
Co-authored-by: IceCodeNew <32576256+IceCodeNew@users.noreply.github.com>
Co-authored-by: Pierre Krieger <pierre.krieger1708@gmail.com>
Co-authored-by: Alex Malgaroli <alex.malgaroli@gmail.com>
Co-authored-by: molleafauss <lmollea@yahoo.it>
Co-authored-by: Kane <KaneGreen@users.noreply.github.com>
Co-authored-by: Brandon Bergren <bdragon@FreeBSD.org>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: messense <messense@icloud.com>
Co-authored-by: Alexis Mousset <contact@amousset.me>
Co-authored-by: Eric Huss <eric@huss.org>
Co-authored-by: Alexis Mousset <alexis.mousset@rudder.io>
  • Loading branch information
1 parent 57536cf commit 81d791c
Show file tree
Hide file tree
Showing 14 changed files with 318 additions and 137 deletions.
8 changes: 8 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
version: 2
updates:
- package-ecosystem: cargo
directory: "/"
schedule:
interval: daily
time: "08:00"
open-pull-requests-limit: 10
149 changes: 63 additions & 86 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -1,148 +1,125 @@
name: CI
on: [push, pull_request]
on:
push:
branches: [master, release/111]
pull_request:
branches: [master, release/111]

defaults:
run:
shell: bash

jobs:
test:
name: Test
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
thing:
- stable
- beta
- nightly
- macos-x86_64
- arm-android
- arm64-android
- i686-android
- x86_64-android
- i686-linux
- arm-linux
- aarch64-linux
- x86_64-musl
- x86_64-mingw
- asmjs
- i686-msvc
- i686-msvc-static
- x86_64-msvc
- x86_64-msvc-static
include:
- thing: stable
target: x86_64-unknown-linux-gnu
- target: x86_64-unknown-linux-gnu
rust: stable
os: ubuntu-latest
- thing: beta
target: x86_64-unknown-linux-gnu
- target: x86_64-unknown-linux-gnu
rust: beta
os: ubuntu-latest
- thing: nightly
target: x86_64-unknown-linux-gnu
- target: x86_64-unknown-linux-gnu
rust: nightly
os: ubuntu-latest
- thing: macos-x86_64
target: x86_64-apple-darwin
- target: x86_64-apple-darwin
rust: stable
os: macos-latest
- thing: arm-android
target: arm-linux-androideabi
rust: stable
os: ubuntu-latest
- thing: arm64-android
target: aarch64-linux-android
rust: stable
os: ubuntu-latest
- thing: i686-android
target: i686-linux-android
- target: aarch64-apple-darwin
rust: nightly
os: macos-latest
#- target: arm-linux-androideabi
# rust: stable
# os: ubuntu-latest
- target: aarch64-linux-android
rust: stable
os: ubuntu-latest
- thing: x86_64-android
target: x86_64-linux-android
- target: i686-linux-android
rust: stable
os: ubuntu-latest
- thing: i686-linux
target: i686-unknown-linux-gnu
- target: x86_64-linux-android
rust: stable
os: ubuntu-latest
- thing: arm-linux
target: arm-unknown-linux-gnueabi
- target: i686-unknown-linux-gnu
rust: stable
os: ubuntu-latest
- thing: aarch64-linux
target: aarch64-unknown-linux-gnu
- target: arm-unknown-linux-gnueabi
rust: stable
os: ubuntu-latest
- thing: x86_64-musl
target: x86_64-unknown-linux-musl
- target: aarch64-unknown-linux-gnu
rust: stable
os: ubuntu-latest
- thing: x86_64-mingw
target: x86_64-pc-windows-gnu
- target: x86_64-unknown-linux-musl
rust: stable
os: ubuntu-latest
- thing: asmjs
target: asmjs-unknown-emscripten
- target: x86_64-pc-windows-gnu
rust: stable
os: ubuntu-latest
- thing: i686-msvc
target: i686-pc-windows-msvc
# - target: asmjs-unknown-emscripten
# rust: stable
# os: ubuntu-latest
- target: i686-pc-windows-msvc
rust: stable-i686-msvc
os: windows-2016
- thing: i686-msvc-static
target: i686-pc-windows-msvc
os: windows-2019
- target: i686-pc-windows-msvc
rust: stable-i686-msvc
os: windows-2016
crt_static: true
- thing: x86_64-msvc
target: x86_64-pc-windows-msvc
os: windows-2019
crt_static: yes
- target: x86_64-pc-windows-msvc
rust: stable-x86_64-msvc
os: windows-latest
- thing: x86_64-msvc-static
target: x86_64-pc-windows-msvc
- target: x86_64-pc-windows-msvc
rust: stable-x86_64-msvc
os: windows-latest
crt_static: true
crt_static: yes
- target: x86_64-pc-windows-msvc
rust: stable-x86_64-msvc
os: windows-latest
nasm_exe: installed

steps:
- uses: actions/checkout@master
- uses: actions/checkout@v1
with:
submodules: true
- name: Install Rust (rustup)
run: rustup update ${{ matrix.rust }} --no-self-update && rustup default ${{ matrix.rust }}
if: matrix.os != 'macos-latest'
shell: bash
- name: Install Rust (macos)
run: |
curl https://sh.rustup.rs | sh -s -- -y
echo ::add-path::$HOME/.cargo/bin
if: matrix.os == 'macos-latest'
- run: rustup target add ${{ matrix.target }}
- name: Set crt-static
if: matrix.crt_static == 'yes'
run: echo ::set-env name=RUSTFLAGS::-Ctarget-feature=+crt-static
shell: bash
run: echo RUSTFLAGS=-Ctarget-feature=+crt-static >> $GITHUB_ENV
- name: Use strawberry perl
if: startsWith(matrix.os, 'windows')
run: echo ::add-path::C:/Strawberry/perl/bin
shell: bash
- run: |
run: echo OPENSSL_SRC_PERL=C:/Strawberry/perl/bin/perl >> $GITHUB_ENV
- name: Run tests (not Windows)
if: "!startsWith(matrix.os, 'windows')"
run: |
set -e
cargo generate-lockfile
./ci/run-docker.sh ${{ matrix.target }}
if: "!startsWith(matrix.os, 'windows')"
name: Run tests (not Windows)
- run: |
cargo test --manifest-path testcrate/Cargo.toml --target ${{ matrix.target }}
cargo test --manifest-path testcrate/Cargo.toml --target ${{ matrix.target }} --release
cargo run --release --target ${{ matrix.target }} --manifest-path testcrate/Cargo.toml --features package
- name: Download nasm.exe (Windows)
if: matrix.nasm_exe == 'installed'
run: |
WINNASMVERSION='2.15.05'
curl -O https://www.nasm.us/pub/nasm/releasebuilds/${WINNASMVERSION}/win64/nasm-${WINNASMVERSION}-win64.zip
unzip nasm-${WINNASMVERSION}-win64.zip
echo "$GITHUB_WORKSPACE\\nasm-${WINNASMVERSION}" >> $GITHUB_PATH
echo "OPENSSL_RUST_USE_NASM=1" >> $GITHUB_ENV
- name: Run tests (Windows)
if: startsWith(matrix.os, 'windows')
name: Run tests (Windows)
shell: cmd
run: |
cargo test --manifest-path testcrate/Cargo.toml --target ${{ matrix.target }} -vv
cargo test --manifest-path testcrate/Cargo.toml --target ${{ matrix.target }} --release -vv
cargo run --release --target ${{ matrix.target }} --manifest-path testcrate/Cargo.toml --features package -vv
rustfmt:
name: Rustfmt
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- uses: actions/checkout@v1
- name: Install Rust
run: rustup update stable && rustup default stable && rustup component add rustfmt
- run: cargo fmt -- --check
19 changes: 18 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "openssl-src"
version = "111.6.0+1.1.1d"
version = "111.22.0+1.1.1q"
authors = ["Alex Crichton <alex@alexcrichton.com>"]
license = "MIT/Apache-2.0"
readme = "README.md"
Expand All @@ -14,10 +14,27 @@ exclude = [
'openssl/krb5/*',
'openssl/pyca-cryptography/*',
'openssl/test/*',
'openssl/wycheproof/*',
]

[features]
default = []
# Enables compilation of some older algorithms: md2 (hash), rc5 (block cypher) and enabled use of
# some weaker algorithms in SSL connections. These are generally not recommended for use.
weak-crypto = []
# Enables compilation of the Camellia symmetric key block cypher. Since hardware acceleration for
# it is not available on most systems, this is not as used as AES.
camellia = []
# Enables compilation of International Data Encryption Algorithm (IDEA), a symmetric key block
# cypher sometimes used as an AES128 alternative.
idea = []
# Enables compilation of SEED, a symmetric key block cypher mostly used in South Korea, but
# otherwise not widely supported.
seed = []

[workspace]
members = ['testcrate']
exclude = ['target']

[dependencies]
cc = "1.0"
18 changes: 17 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,24 @@ This project is licensed under either of

at your option.

### Windows MSVC Assembly
Building OpenSSL for `windows-msvc` targets, users can choose whether to enable
assembly language routines, which requires [nasm](https://www.nasm.us/).
The build process will automatically detect whether `nasm.exe` is installed in
PATH. If found, the assembly language routines will be enabled (in other words,
the `no-asm` option will NOT be configured).
You can manipulate this behavior by setting the `OPENSSL_RUST_USE_NASM` environment
variable:
* `1`: Force enable the assembly language routines. (panic if `nasm.exe` is not
availible.)
* `0`: Force disable the assembly language routines even if the `nasm.exe` can be
found in PATH.
* not set: Let the build process automatically detect whether `nasm.exe` is
installed. If found, enable. If not, disable.
However, this environment variable does not take effects on non-windows platforms.

### Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in Serde by you, as defined in the Apache-2.0 license, shall be
for inclusion in openssl-src by you, as defined in the Apache-2.0 license, shall be
dual licensed as above, without any additional terms or conditions.
2 changes: 1 addition & 1 deletion ci/docker/aarch64-linux-android/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,4 @@ RUN android-ndk-r15b/build/tools/make_standalone_toolchain.py \

ENV PATH=$PATH:/android/ndk/bin \
CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER=aarch64-linux-android-gcc \
CARGO_TARGET_AARCH64_LINUX_ANDROID_RUNNER=true
CARGO_TARGET_AARCH64_LINUX_ANDROID_RUNNER=echo
2 changes: 1 addition & 1 deletion ci/docker/aarch64-unknown-linux-gnu/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,5 @@ RUN apt-get update -y && apt-get install -y --no-install-recommends \
libc6-dev \
gcc-aarch64-linux-gnu \
libc6-dev-arm64-cross
ENV CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUNNER=true \
ENV CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUNNER=echo \
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=aarch64-linux-gnu-gcc
2 changes: 1 addition & 1 deletion ci/docker/arm-linux-androideabi/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,4 @@ RUN android-ndk-r15b/build/tools/make_standalone_toolchain.py \

ENV PATH=$PATH:/android/ndk/bin \
CARGO_TARGET_ARM_LINUX_ANDROIDEABI_LINKER=arm-linux-androideabi-gcc \
CARGO_TARGET_ARM_LINUX_ANDROIDEABI_RUNNER=true
CARGO_TARGET_ARM_LINUX_ANDROIDEABI_RUNNER=echo
2 changes: 1 addition & 1 deletion ci/docker/arm-unknown-linux-gnueabi/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ RUN apt-get update -y && apt-get install -y --no-install-recommends \
gcc-arm-linux-gnueabi \
libc6-dev-armel-cross

ENV CARGO_TARGET_ARM_UNKNOWN_LINUX_GNUEABI_RUNNER=true \
ENV CARGO_TARGET_ARM_UNKNOWN_LINUX_GNUEABI_RUNNER=echo \
CARGO_TARGET_ARM_UNKNOWN_LINUX_GNUEABI_LINKER=arm-linux-gnueabi-gcc
2 changes: 1 addition & 1 deletion ci/docker/i686-linux-android/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,4 @@ RUN android-ndk-r15b/build/tools/make_standalone_toolchain.py \

ENV PATH=$PATH:/android/ndk/bin \
CARGO_TARGET_I686_LINUX_ANDROID_LINKER=i686-linux-android-gcc \
CARGO_TARGET_I686_LINUX_ANDROID_RUNNER=true
CARGO_TARGET_I686_LINUX_ANDROID_RUNNER=echo
2 changes: 1 addition & 1 deletion ci/docker/x86_64-linux-android/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,4 @@ RUN android-ndk-r15b/build/tools/make_standalone_toolchain.py \

ENV PATH=$PATH:/android/ndk/bin \
CARGO_TARGET_X86_64_LINUX_ANDROID_LINKER=x86_64-linux-android-gcc \
CARGO_TARGET_X86_64_LINUX_ANDROID_RUNNER=true
CARGO_TARGET_X86_64_LINUX_ANDROID_RUNNER=echo
2 changes: 1 addition & 1 deletion ci/docker/x86_64-pc-windows-gnu/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@ RUN apt-get update -y && apt-get install -y --no-install-recommends \
gcc-mingw-w64-x86-64

ENV CARGO_TARGET_X86_64_PC_WINDOWS_GNU_LINKER=x86_64-w64-mingw32-gcc \
CARGO_TARGET_X86_64_PC_WINDOWS_GNU_RUNNER=true
CARGO_TARGET_X86_64_PC_WINDOWS_GNU_RUNNER=echo
39 changes: 37 additions & 2 deletions ci/run.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,39 @@
#!/bin/bash

target=$1
testcrate_dir="$(pwd)/testcrate"
set -ex
cargo test --manifest-path testcrate/Cargo.toml --target $1 -vv
cargo test --manifest-path testcrate/Cargo.toml --target $1 -vv --release

if [ "$1" = "aarch64-apple-darwin" ] ; then
export CARGO_TARGET_AARCH64_APPLE_DARWIN_RUNNER=echo
fi

cargo test --manifest-path "$testcrate_dir/Cargo.toml" --target $1 -vv
cargo test --manifest-path "$testcrate_dir/Cargo.toml" --target $1 -vv --release

if [ "$1" = "x86_64-unknown-linux-gnu" ] ; then
cargo test --manifest-path "$testcrate_dir/Cargo.toml" --target $1 -vv --all-features

# Run a few tests here:
#
# * Make sure the packaged crate file isn't bigger than 10MB which is
# crate.io's limit.
# * Make sure that the package crate itself works.
#
# A lot of OpenSSL's source code is excluded on crates.io because it makes the
# crate file much too large, so the test here should inform us if we're
# missing anything actually required to build OpenSSL.
rm -rf target/ci
cargo package --allow-dirty --target-dir target/ci
crate=`ls target/ci/package/*.crate`
filesize=$(stat -c%s "$crate")
echo "tarball is $filesize bytes"
if (( filesize > 10000000 )); then
echo "file size too big"
exit 1
fi
rm "$crate"
cd target/ci/package/openssl-src-*
cp -r "$testcrate_dir" .
cargo test --manifest-path "testcrate/Cargo.toml" --target $1 -vv
fi
2 changes: 1 addition & 1 deletion openssl
Submodule openssl updated 1372 files
Loading

0 comments on commit 81d791c

Please sign in to comment.