vendor: add complete multi-platform support (runtime + dev)

- Add vendor-macos-dev target for macOS development wheels
- Add vendor-linux-arm and vendor-linux-arm-dev for ARM64 Linux
- Update vendor-all-dev to include all 3 platforms
- Update install_offline.sh to detect aarch64/arm64/x86_64
- Update .gitignore to track all official vendor directories
- Add clean-vendor and clean targets

Vendor directories now include:
- macos-arm64/ and macos-arm64-dev/
- linux-x86_64/ and linux-x86_64-dev/
- linux-aarch64/ and linux-aarch64-dev/

Supports: Mac (native), x86 Linux servers, ARM64 Linux (Mac containers)
This commit is contained in:
LC mac
2026-01-12 17:57:08 +08:00
parent c380986e26
commit fb01a84ea6
41 changed files with 55 additions and 17 deletions

View File

@@ -116,6 +116,21 @@ vendor-macos: requirements.txt
cd $(VENDOR_MACOS) && shasum -a 256 *.whl > SHA256SUMS
@echo "✓ macOS ARM64 wheels: $(VENDOR_MACOS)/"
.PHONY: vendor-macos-dev
vendor-macos-dev: requirements-dev.txt
@echo "Building macOS ARM64 dev wheels (native)..."
@if [ ! -f ".venv312/bin/pip" ]; then \
echo "ERROR: .venv312 not found. Create it first:"; \
echo " python3.12 -m venv .venv312 && source .venv312/bin/activate"; \
exit 1; \
fi
mkdir -p $(VENDOR_MACOS)-dev
.venv312/bin/pip download --dest $(VENDOR_MACOS)-dev -r requirements-dev.txt
.venv312/bin/pip wheel --wheel-dir $(VENDOR_MACOS)-dev --no-deps $(VENDOR_MACOS)-dev/*.tar.gz 2>/dev/null || true
rm -f $(VENDOR_MACOS)-dev/*.tar.gz
cd $(VENDOR_MACOS)-dev && shasum -a 256 *.whl > SHA256SUMS
@echo "✓ macOS ARM64 dev wheels: $(VENDOR_MACOS)-dev/"
.PHONY: vendor-linux
vendor-linux: requirements.txt
@echo "Building Linux x86_64 wheels (Docker)..."
@@ -190,15 +205,15 @@ vendor-all: vendor-macos vendor-linux vendor-linux-arm
@echo "Commit with: git add vendor/ && git commit -m 'vendor: update wheels'"
.PHONY: vendor-all-dev
vendor-all-dev: vendor-linux vendor-linux-dev vendor-linux-arm vendor-linux-arm-dev
vendor-all-dev: vendor-macos-dev vendor-linux-dev vendor-linux-arm-dev
@echo ""
@echo "✓ All platform wheels (runtime + dev):"
@echo " Linux x86_64 (runtime): $(VENDOR_LINUX_X86)/"
@echo "✓ All platform dev wheels built:"
@echo " macOS ARM64 (dev): $(VENDOR_MACOS)-dev/"
@echo " Linux x86_64 (dev): $(VENDOR_LINUX_X86)-dev/"
@echo " Linux aarch64 (runtime): $(VENDOR_LINUX_ARM)/"
@echo " Linux aarch64 (dev): $(VENDOR_LINUX_ARM)-dev/"
@echo ""
@echo "For macOS dev wheels, run on native macOS"
@echo "Commit with: git add vendor/ && git commit -m 'vendor: update dev wheels'"
.PHONY: vendor-linux-dev
vendor-linux-dev: requirements-dev.txt

View File

@@ -3,13 +3,13 @@
518c118a5e00001854adb51f3164e647aa99b6a9877d2a733a28cb5c0a4d6857 cbor2-5.8.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
b21e08af67b8a103c71a250401c78d5e0893beff75e28c53c98f4de42f774062 cffi-2.0.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl
5a366c314df7217e3357bb8c7d2cda540b0bce180705f7a0ce2d1d9e28f62ad4 coincurve-21.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
cb86ab264d180b88b88a68a17d47ed78f98d86321155a8920c603b4b44e891f1 crcmod-1.7-cp312-cp312-linux_aarch64.whl
011e7c8d62c92061b58f9bfc6f8f1986428cbfc00f8447004713f47a8bc2f528 crcmod-1.7-cp312-cp312-linux_aarch64.whl
549e234ff32571b1f4076ac269fcce7a808d3bf98b76c8dd560e42dbc66d7d91 cryptography-46.0.3-cp311-abi3-manylinux_2_34_aarch64.whl
30638e27cf77b7e15c4c4cc1973720149e1033827cfd00661ca5c8cc0cdb24c3 ecdsa-0.19.1-py2.py3-none-any.whl
a69dce6f7b9c2d149b40fe9f2136fbb3365c3043fc8c0f0a8bb7822871253eb4 ed25519_blake2b-1.4.1-cp312-cp312-linux_aarch64.whl
d5c0422d7d4dfaa8491d101de9b0b40df513b49cab46149561b36e9959854c77 ed25519_blake2b-1.4.1-cp312-cp312-linux_aarch64.whl
f631c04d2c48c52b84d0d0549c99ff3859c98df65b3101406327ecc7d53fbf12 iniconfig-2.3.0-py3-none-any.whl
29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 packaging-25.0-py3-none-any.whl
1edc3f2f8d463d58a15af83e7a589dcdf0ad719a81d3badbefe73654f5498aab pgpy-0.6.0-py3-none-any.whl
6ac01e74dcb376dd3dd1a0f9aacb71c7908a2dc8e5b2f34aa70a0130827acb84 pgpy-0.6.0-py3-none-any.whl
e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746 pluggy-1.6.0-py3-none-any.whl
a3929c291408e67a1a11566f251b9f7d06c3fb3ae240caec44b9181de09e3fc9 py_sr25519_bindings-0.2.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 pyasn1-0.6.1-py3-none-any.whl

View File

@@ -3,11 +3,11 @@
518c118a5e00001854adb51f3164e647aa99b6a9877d2a733a28cb5c0a4d6857 cbor2-5.8.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
b21e08af67b8a103c71a250401c78d5e0893beff75e28c53c98f4de42f774062 cffi-2.0.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl
5a366c314df7217e3357bb8c7d2cda540b0bce180705f7a0ce2d1d9e28f62ad4 coincurve-21.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
366e6f9cf39cb1a3d6656ff911b71cb3bcd92cb6510c1bece7c128dd7ba2697c crcmod-1.7-cp312-cp312-linux_aarch64.whl
dcf6928dcc8617205cda9045892ede04af840709be8042a18725baa24e8199f5 crcmod-1.7-cp312-cp312-linux_aarch64.whl
549e234ff32571b1f4076ac269fcce7a808d3bf98b76c8dd560e42dbc66d7d91 cryptography-46.0.3-cp311-abi3-manylinux_2_34_aarch64.whl
30638e27cf77b7e15c4c4cc1973720149e1033827cfd00661ca5c8cc0cdb24c3 ecdsa-0.19.1-py2.py3-none-any.whl
cce822d4a1bbe91061a66e0c3148d15b1c1ac5dd7cd9e8ea23ca1b7aa85ba817 ed25519_blake2b-1.4.1-cp312-cp312-linux_aarch64.whl
6b1e33c6af6dc080855090101cda8bfd293119cdbc36bcf99554a0efc5780a89 pgpy-0.6.0-py3-none-any.whl
6b5b3f442d17fb6c471d9aa7c2c6fc596209ca2b6553b836d323b510536c9f79 ed25519_blake2b-1.4.1-cp312-cp312-linux_aarch64.whl
d8c2ef2c6b5ba85878b9eeb79f6697a9a21969ee73880df38a7b607127d8fbd1 pgpy-0.6.0-py3-none-any.whl
a3929c291408e67a1a11566f251b9f7d06c3fb3ae240caec44b9181de09e3fc9 py_sr25519_bindings-0.2.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 pyasn1-0.6.1-py3-none-any.whl
e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 pycparser-2.23-py3-none-any.whl

Binary file not shown.

View File

@@ -3,13 +3,13 @@
cff2a1999e49cd51c23d1b6786a012127fd8f722c5946e82bd7ab3eb307443f3 cbor2-5.8.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
3e17ed538242334bf70832644a32a7aae3d83b57567f9fd60a26257e992b79ba cffi-2.0.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
1b04778b75339c6e46deb9ae3bcfc2250fbe48d1324153e4310fc4996e135715 coincurve-21.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
5d997d8b486a4cf4a8f2547e46545c3bcc5d5d0a659226bdae98e7b1d3a5cf64 crcmod-1.7-cp312-cp312-linux_x86_64.whl
8eb543967749f706d6eb1cd4087e76d459647d692c68479d00c969aa03be13b2 crcmod-1.7-cp312-cp312-linux_x86_64.whl
10b01676fc208c3e6feeb25a8b83d81767e8059e1fe86e1dc62d10a3018fa926 cryptography-46.0.3-cp311-abi3-manylinux_2_34_x86_64.whl
30638e27cf77b7e15c4c4cc1973720149e1033827cfd00661ca5c8cc0cdb24c3 ecdsa-0.19.1-py2.py3-none-any.whl
deb8c516c49db2b19b977aeca279aed5b291442f40e1586282299e74ef828f10 ed25519_blake2b-1.4.1-cp312-cp312-linux_x86_64.whl
12dc7d15ceff657477cb04db955db9356bd7680b4d6b043405513d60bb3e16cc ed25519_blake2b-1.4.1-cp312-cp312-linux_x86_64.whl
f631c04d2c48c52b84d0d0549c99ff3859c98df65b3101406327ecc7d53fbf12 iniconfig-2.3.0-py3-none-any.whl
29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 packaging-25.0-py3-none-any.whl
bf24c8a19acc5c17951377731de5a527a7f4f21a05cf2345338ec375173af93f pgpy-0.6.0-py3-none-any.whl
e64be459a729a2d502d6a9699afa8cd0825476210615cdc2fee288b663d46603 pgpy-0.6.0-py3-none-any.whl
e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746 pluggy-1.6.0-py3-none-any.whl
9da4c9c7f9a0a0e8e3d9ed6eedc885561288edd72267ebc7b0fd11262e8c8b28 py_sr25519_bindings-0.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 pyasn1-0.6.1-py3-none-any.whl

View File

@@ -3,11 +3,11 @@
cff2a1999e49cd51c23d1b6786a012127fd8f722c5946e82bd7ab3eb307443f3 cbor2-5.8.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
3e17ed538242334bf70832644a32a7aae3d83b57567f9fd60a26257e992b79ba cffi-2.0.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
1b04778b75339c6e46deb9ae3bcfc2250fbe48d1324153e4310fc4996e135715 coincurve-21.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
34c2e307b1aa439a46067707e7367c9dce8c1fe6d7e8524a669205c46a8cae3e crcmod-1.7-cp312-cp312-linux_x86_64.whl
8b1890324a90c74ab9d45ad490118e9c0907fc9b9c93f6a10975e294f0a4cb6e crcmod-1.7-cp312-cp312-linux_x86_64.whl
10b01676fc208c3e6feeb25a8b83d81767e8059e1fe86e1dc62d10a3018fa926 cryptography-46.0.3-cp311-abi3-manylinux_2_34_x86_64.whl
30638e27cf77b7e15c4c4cc1973720149e1033827cfd00661ca5c8cc0cdb24c3 ecdsa-0.19.1-py2.py3-none-any.whl
1c52907da0a83d4ec6ee94720751e35a7858c31727c6df56b90bed4c60f7c948 ed25519_blake2b-1.4.1-cp312-cp312-linux_x86_64.whl
836973be20cf59178f20748a6023a1e0db38a94484fc43fa3a6924b639ee3788 pgpy-0.6.0-py3-none-any.whl
84293fd91179ed952fb9071fde79defcaba61fd5caad738e9aa0efe18b965d7c ed25519_blake2b-1.4.1-cp312-cp312-linux_x86_64.whl
9beeffc4dd9ac4a1788688e488912211d23ee09ef9f45b0567cb2f185a1b773c pgpy-0.6.0-py3-none-any.whl
9da4c9c7f9a0a0e8e3d9ed6eedc885561288edd72267ebc7b0fd11262e8c8b28 py_sr25519_bindings-0.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 pyasn1-0.6.1-py3-none-any.whl
e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 pycparser-2.23-py3-none-any.whl

Binary file not shown.

23
vendor/macos-arm64-dev/SHA256SUMS vendored Normal file
View File

@@ -0,0 +1,23 @@
11a36f4d3ce51dfc1043f3218591ac4eb1ceb172919cebe05b52a5bcc8d245c2 base58-2.1.1-py3-none-any.whl
33792674bda552a071a539b6590b2986aa8c08d0c9c30c2566d7cb323173310d bip_utils-2.10.0-py3-none-any.whl
4b3f91fa699a5ce22470e973601c62dd9d55dc3ca20ee446516ac075fcab27c9 cbor2-5.8.0-cp312-cp312-macosx_11_0_arm64.whl
8eca2a813c1cb7ad4fb74d368c2ffbbb4789d377ee5bb8df98373c2cc0dee76c cffi-2.0.0-cp312-cp312-macosx_11_0_arm64.whl
1cb1cd19fb0be22e68ecb60ad950b41f18b9b02eebeffaac9391dc31f74f08f2 coincurve-21.0.0-cp312-cp312-macosx_11_0_arm64.whl
720fa65e7a4f2c9c57a087e4ae172bfd1c2c2d372b2363e74af278c9748490ed crcmod-1.7-cp312-cp312-macosx_26_0_arm64.whl
109d4ddfadf17e8e7779c39f9b18111a09efb969a301a31e987416a0191ed93a cryptography-46.0.3-cp311-abi3-macosx_10_9_universal2.whl
30638e27cf77b7e15c4c4cc1973720149e1033827cfd00661ca5c8cc0cdb24c3 ecdsa-0.19.1-py2.py3-none-any.whl
e7869e2165f351efc3fdcb822fe133e1f2cfcbcbfa619d0eedc4b95c8a8f5bb5 ed25519_blake2b-1.4.1-cp312-cp312-macosx_26_0_arm64.whl
f631c04d2c48c52b84d0d0549c99ff3859c98df65b3101406327ecc7d53fbf12 iniconfig-2.3.0-py3-none-any.whl
29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 packaging-25.0-py3-none-any.whl
1145648cb2e993e373083de523415a6b9f855c60d9cd9444de4af94c0c305f36 pgpy-0.6.0-py3-none-any.whl
e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746 pluggy-1.6.0-py3-none-any.whl
4443adf871e224493c4ee4c06be205a10ea649a781132af883f6638fd7acc9d7 py_sr25519_bindings-0.2.3-cp312-cp312-macosx_11_0_arm64.whl
0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629 pyasn1-0.6.1-py3-none-any.whl
e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 pycparser-2.23-py3-none-any.whl
187058ab80b3281b1de11c2e6842a357a1f71b42cb1e15bce373f3d238135c27 pycryptodome-3.23.0-cp37-abi3-macosx_10_9_universal2.whl
06698f957fe1ab229a99ba2defeeae1c09af185baa909a31a5d1f9d42b1aaed6 pycryptodomex-3.23.0-cp37-abi3-macosx_10_9_universal2.whl
86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b pygments-2.19.2-py3-none-any.whl
c949ea47e4206af7c8f604b8278093b674f7c79ed0d4719cc836902bf4517465 pynacl-1.6.2-cp38-abi3-macosx_10_10_universal2.whl
711ffd45bf766d5264d487b917733b453d917afd2b0ad65223959f59089f875b pytest-9.0.2-py3-none-any.whl
6d097f465bfa47796b1494e12ea65d1478107d38e13bc56f6e58eedc4f6c1a87 pyzipper-0.3.6-py2.py3-none-any.whl
4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 six-1.17.0-py2.py3-none-any.whl

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.