forked from ijl/orjson
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathazure-macos.yml
More file actions
54 lines (53 loc) · 2.13 KB
/
Copy pathazure-macos.yml
File metadata and controls
54 lines (53 loc) · 2.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
parameters:
interpreter: ''
toolchain: ''
steps:
- bash: curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain $(toolchain) --profile minimal -y
displayName: rustup
- bash: rustup default $(toolchain)
displayName: ensure toolchain
- bash: pip install --upgrade pip "maturin>=0.12.19,<0.13" wheel
displayName: build dependencies
- bash: pip install -r test/requirements.txt -r integration/requirements.txt
displayName: test dependencies
- bash: PATH=$HOME/.cargo/bin:$PATH cargo fetch
- bash: PATH=$HOME/.cargo/bin:$PATH maturin build --no-sdist --release --strip --cargo-extra-args="--features=unstable-simd,yyjson" --interpreter $(interpreter)
env:
CC: "clang"
CFLAGS: "-O2 -fno-plt -flto=thin"
LDFLAGS: "-O2 -flto=thin -fuse-ld=lld -Wl,--as-needed"
displayName: build
- bash: pip install target/wheels/orjson*.whl
displayName: install
- bash: pytest -s -rxX -v test
displayName: pytest
- bash: pip uninstall -y numpy
displayName: remove optional packages
- bash: pytest -s -rxX -v test
displayName: pytest without optional packages
- bash: ./integration/run thread
displayName: thread
- bash: ./integration/run http
displayName: http
- bash: rustup target add aarch64-apple-darwin
displayName: rustup target
- bash: PATH=$HOME/.cargo/bin:$PATH PYO3_CROSS_LIB_DIR=$(python -c "import sysconfig;print(sysconfig.get_config_var('LIBDIR'))") maturin build --no-sdist --release --strip --cargo-extra-args="--features=unstable-simd" --interpreter $(interpreter) --universal2
env:
CC: "clang"
CFLAGS: "-O2 -fno-plt -flto=thin"
LDFLAGS: "-O2 -flto=thin -fuse-ld=lld -Wl,--as-needed"
displayName: build universal2
- bash: pip install --force-reinstall target/wheels/orjson*universal2.whl
displayName: install universal2
- bash: pytest -s -rxX -v test
displayName: pytest universal2
- bash: ./ci/deploy target/wheels/*_x86_64.whl
displayName: deploy x86_64
env:
MATURIN_PASSWORD: $(TWINE_PASSWORD)
MATURIN_USERNAME: $(TWINE_USERNAME)
- bash: ./ci/deploy target/wheels/*_universal2.whl
displayName: deploy universal2
env:
MATURIN_PASSWORD: $(TWINE_PASSWORD)
MATURIN_USERNAME: $(TWINE_USERNAME)