windows build script

main
Ziyang Hu 2 years ago
parent 12ff5a2040
commit 4454ecdf38

@ -1,31 +1,40 @@
$ErrorActionPreference="Stop" $ErrorActionPreference="Stop"
$COZO_VERSION = cat Cargo.toml | select-string '([0-9.]+)' | select-string '^version' | ForEach-Object { $COZO_VERSION = cat .\VERSION
$_.Matches[0].Groups[1].Value $CARGO_PROFILE_RELEASE_LTO = "fat"
} $TARGET = "x86_64-pc-windows-msvc"
$PYO3_NO_PYTHON=1
echo $COZO_VERSION
mkdir -force release > $null
if (test-path release) {
Remove-Item -Recurse -Force release cargo build --release -p cozoserver -p cozo_c -p cozo_java -p cozo-node -F compact -F storage-rocksdb --target $TARGET
} cp target/$TARGET/release/cozoserver.exe release/cozoserver-$VERSION-$TARGET.exe # standalone
cp target/$TARGET/release/cozo_c.lib release/libcozo_c-$VERSION-$TARGET.lib # c static
mkdir release cp target/$TARGET/release/cozo_c.dll release/libcozo_c-$VERSION-$TARGET.dll # c dynamic
cp target/$TARGET/release/cozo_java.dll release/libcozo_java-$VERSION-$TARGET.dll # java
cargo build --release cp target/$TARGET/release/cozo_node.dll release/libcozo_node-$VERSION-$TARGET.dll # nodejs
cargo build --release --manifest-path=cozo-lib-c/Cargo.toml
cargo build --release --manifest-path=cozo-lib-java/Cargo.toml cd cozo-lib-python
maturin build -F compact -F storage-rocksdb --release --strip --target $TARGET
cp target/release/cozoserver.exe release/cozoserver-${COZO_VERSION}-windows-x86_64.exe cd ..
cp target/release/cozo_c.lib release/libcozo_c-${COZO_VERSION}-windows-x86_64.lib
cp target/release/cozo_c.dll release/libcozo_c-${COZO_VERSION}-windows-x86_64.dll cp target/wheels/*.whl release/
cp target/release/cozo_java.dll release/libcozo_java-${COZO_VERSION}-windows-x86_64.dll
Compress-Archive -Path release/cozoserver-${COZO_VERSION}-windows-x86_64.exe -DestinationPath release/cozoserver-${COZO_VERSION}-windows-x86_64.zip # cargo build --release
Compress-Archive -Path release/libcozo_c-${COZO_VERSION}-windows-x86_64.lib -DestinationPath release/libcozo_c-${COZO_VERSION}-windows-x86_64.lib.zip # cargo build --release --manifest-path=cozo-lib-c/Cargo.toml
Compress-Archive -Path release/libcozo_c-${COZO_VERSION}-windows-x86_64.dll -DestinationPath release/libcozo_c-${COZO_VERSION}-windows-x86_64.dll.zip # cargo build --release --manifest-path=cozo-lib-java/Cargo.toml
Compress-Archive -Path release/libcozo_java-${COZO_VERSION}-windows-x86_64.dll -DestinationPath release/libcozo_java-${COZO_VERSION}-windows-x86_64.dll.zip
Remove-Item release/cozoserver-${COZO_VERSION}-windows-x86_64.exe # cp target/release/cozoserver.exe release/cozoserver-${COZO_VERSION}-windows-x86_64.exe
Remove-Item release/libcozo_c-${COZO_VERSION}-windows-x86_64.lib # cp target/release/cozo_c.lib release/libcozo_c-${COZO_VERSION}-windows-x86_64.lib
Remove-Item release/libcozo_c-${COZO_VERSION}-windows-x86_64.dll # cp target/release/cozo_c.dll release/libcozo_c-${COZO_VERSION}-windows-x86_64.dll
gzip release/libcozo_java-${COZO_VERSION}-windows-x86_64.dll # cp target/release/cozo_java.dll release/libcozo_java-${COZO_VERSION}-windows-x86_64.dll
# Compress-Archive -Path release/cozoserver-${COZO_VERSION}-windows-x86_64.exe -DestinationPath release/cozoserver-${COZO_VERSION}-windows-x86_64.zip
# Compress-Archive -Path release/libcozo_c-${COZO_VERSION}-windows-x86_64.lib -DestinationPath release/libcozo_c-${COZO_VERSION}-windows-x86_64.lib.zip
# Compress-Archive -Path release/libcozo_c-${COZO_VERSION}-windows-x86_64.dll -DestinationPath release/libcozo_c-${COZO_VERSION}-windows-x86_64.dll.zip
# Compress-Archive -Path release/libcozo_java-${COZO_VERSION}-windows-x86_64.dll -DestinationPath release/libcozo_java-${COZO_VERSION}-windows-x86_64.dll.zip
# Remove-Item release/cozoserver-${COZO_VERSION}-windows-x86_64.exe
# Remove-Item release/libcozo_c-${COZO_VERSION}-windows-x86_64.lib
# Remove-Item release/libcozo_c-${COZO_VERSION}-windows-x86_64.dll
# gzip release/libcozo_java-${COZO_VERSION}-windows-x86_64.dll
Loading…
Cancel
Save