This commit is contained in:
Cassandra Heart 2025-03-23 22:17:18 -05:00
parent e51992f3e8
commit 2a3a9bba47
No known key found for this signature in database
GPG Key ID: 6352152859385958
5 changed files with 21 additions and 2 deletions

View File

@ -106,7 +106,7 @@ RUN ./build.sh -o qclient && cp qclient /usr/bin
# Build and install QCL sidecar
WORKDIR /opt/ceremonyclient/bedlam
RUN ./build.sh -o sidecar apps/garbled && cp sidecar /usr/bin
RUN ./build.sh -o sidecar ./apps/garbled && cp sidecar /usr/bin
# Allows exporting single binary
FROM scratch as qclient

View File

@ -39,6 +39,12 @@ tasks:
- verenc/generate.sh
- node/build.sh -o build/arm64_macos/node
build_sidecar_arm64_macos:
desc: Build the Quilibrium QCL sidecar binary for MacOS ARM. Assumes it's ran from the same platform. Outputs to node/build.
cmds:
- ferret/generate.sh
- bedlam/build.sh -o build/arm64_macos/sidecar ./bedlam/apps/garbled
build_qclient_arm64_macos:
desc: Build the QClient node binary for MacOS ARM. Outputs to client/build
cmds:
@ -51,6 +57,11 @@ tasks:
cmds:
- docker build --platform linux/arm64 -f Dockerfile.source --output node/build/arm64_linux --target=node .
build_sidecar_arm64_linux:
desc: Build the Quilibrium QCL sidecar binary for ARM64 Linux. Outputs to node/build.
cmds:
- docker build --platform linux/arm64 -f Dockerfile.source --output node/build/arm64_linux --target=sidecar .
build_qclient_arm64_linux:
desc: Build the QClient node binary for ARM64 Linux. Outputs to client/build.
cmds:
@ -61,6 +72,11 @@ tasks:
cmds:
- docker build --platform linux/amd64 -f Dockerfile.source --output node/build/amd64_linux --target=node .
build_sidecar_amd64_linux:
desc: Build the Quilibrium QCL sidecar binary for AMD64 Linux. Outputs to node/build.
cmds:
- docker build --platform linux/amd64 -f Dockerfile.source --output node/build/amd64_linux --target=sidecar .
build_node_amd64_avx512_linux:
desc: Build the Quilibrium node binary for AMD64 Linux with AVX-512 extensions. Outputs to node/build.
cmds:

Binary file not shown.

View File

@ -26,7 +26,7 @@ case "$os_type" in
fi
;;
"Linux")
export CGO_LDFLAGS="-L/usr/local/lib -ldl -lm -L$BINARIES_DIR -lcrypto -lssl -static"
export CGO_LDFLAGS="-L/usr/local/lib -ldl -lm -L$BINARIES_DIR -lstdc++ -lcrypto -lssl -lferret -static"
go build -ldflags "-linkmode 'external'" "$@"
;;
*)

View File

@ -34,16 +34,19 @@ fn main() {
cc::Build::new()
.cpp(true)
.flag_if_supported("-std=c++17")
.flag_if_supported("-march=armv8-a+crypto")
.file("emp_bridge.cpp")
.flag("-I/usr/local/include/emp-tool/")
.flag("-I/usr/local/include/emp-ot/")
.flag("-I/usr/include/openssl/")
.flag("-L/usr/local/lib/")
.flag("-L/usr/local/lib/aarch64-linux-gnu/")
.flag("-L/usr/lib/aarch64-linux-gnu/openssl/")
.warnings(false)
.compile("emp_bridge");
println!("cargo:rustc-link-search=native=/usr/local/lib/aarch64-linux-gnu");
println!("cargo:rustc-link-search=native=/usr/local/lib/");
println!("cargo:rustc-link-lib=static=emp-tool");