This commit is contained in:
nonam3e
2024-07-29 07:46:49 +00:00
parent 8852c9b39d
commit 88cfe1b685
11 changed files with 20 additions and 15 deletions

View File

@@ -60,7 +60,7 @@ jobs:
working-directory: ./wrappers/golang_v3
if: needs.check-changed-files.outputs.golang == 'true' || needs.check-changed-files.outputs.cpp_cuda == 'true'
# builds a single curve with the curve's specified build args
run: ./build.sh -curve=${{ matrix.curve.name }} ${{ matrix.curve.build_args }}
run: ./build.sh -cuda_backend=main -curve=${{ matrix.curve.name }} ${{ matrix.curve.build_args }}
- name: Test
working-directory: ./wrappers/golang_v3/curves
if: needs.check-changed-files.outputs.golang == 'true' || needs.check-changed-files.outputs.cpp_cuda == 'true'
@@ -89,7 +89,7 @@ jobs:
working-directory: ./wrappers/golang_v3
if: needs.check-changed-files.outputs.golang == 'true' || needs.check-changed-files.outputs.cpp_cuda == 'true'
# builds a single field with the fields specified build args
run: ./build.sh -field=${{ matrix.field.name }} ${{ matrix.field.build_args }}
run: ./build.sh -cuda_backend=main -field=${{ matrix.field.name }} ${{ matrix.field.build_args }}
- name: Test
working-directory: ./wrappers/golang_v3/fields
if: needs.check-changed-files.outputs.golang == 'true' || needs.check-changed-files.outputs.cpp_cuda == 'true'

View File

@@ -13,6 +13,7 @@ BUILD_HASHES=( )
SUPPORTED_CURVES=("bn254" "bls12_377" "bls12_381" "bw6_761", "grumpkin")
SUPPORTED_FIELDS=("babybear")
# SUPPORTED_HASHES=("keccak")
CUDA_BACKEND=OFF
BUILD_DIR="${ICICLE_BUILD_DIR:-$(realpath "$PWD/../../icicle_v3/build")}"
DEFAULT_BACKEND_INSTALL_DIR="${DEFAULT_BACKEND_INSTALL_DIR:="/usr/local/"}"
@@ -32,7 +33,8 @@ if [[ $1 == "-help" ]]; then
echo " -field=<field_name> The field that should be built. If \"all\" is supplied,"
echo " all fields will be built with any other supplied field options"
echo " -field-ext Builds the field lib with the extension field enabled"
echo " -backend Path to the folder where libraries will be installed"
echo " -install_dir Path to the folder where libraries will be installed"
echo " -cuda_backend "
echo " -devmode Enables devmode debugging and fast build times"
echo " -cuda_version=<version> The version of cuda to use for compiling"
echo ""
@@ -47,7 +49,10 @@ do
cuda_version=$(echo "$arg" | cut -d'=' -f2)
CUDA_COMPILER_PATH=/usr/local/cuda-$cuda_version/bin/nvcc
;;
-backend=*)
-cuda_backend=*)
CUDA_BACKEND=$(echo "$arg_lower" | cut -d'=' -f2)
;;
-install_dir=*)
DEFAULT_BACKEND_INSTALL_DIR=$(echo "$arg_lower" | cut -d'=' -f2)
;;
-ecntt)
@@ -107,7 +112,7 @@ do
echo "G2=${G2_DEFINED}" >> build_config.txt
echo "DEVMODE=${DEVMODE}" >> build_config.txt
echo "DEFAULT_BACKEND_INSTALL_DIR=${DEFAULT_BACKEND_INSTALL_DIR}" >> build_config.txt
cmake -DCMAKE_CUDA_COMPILER=$CUDA_COMPILER_PATH -DCMAKE_INSTALL_PREFIX=$DEFAULT_BACKEND_INSTALL_DIR -DCURVE=$CURVE -DG2=$G2_DEFINED -DECNTT=$ECNTT_DEFINED -DDEVMODE=$DEVMODE -DCMAKE_BUILD_TYPE=Release -S . -B build
cmake -DCMAKE_CUDA_COMPILER=$CUDA_COMPILER_PATH -DCMAKE_INSTALL_PREFIX=$DEFAULT_BACKEND_INSTALL_DIR -DCUDA_BACKEND=$CUDA_BACKEND -DCURVE=$CURVE -DG2=$G2_DEFINED -DECNTT=$ECNTT_DEFINED -DDEVMODE=$DEVMODE -DCMAKE_BUILD_TYPE=Release -S . -B build
cmake --build build --target install -j8 && rm build_config.txt
done
@@ -120,7 +125,7 @@ do
echo "FIELD=${FIELD}" > build_config.txt
echo "DEVMODE=${DEVMODE}" >> build_config.txt
echo "DEFAULT_BACKEND_INSTALL_DIR=${DEFAULT_BACKEND_INSTALL_DIR}" >> build_config.txt
cmake -DCMAKE_CUDA_COMPILER=$CUDA_COMPILER_PATH -DCMAKE_INSTALL_PREFIX=$DEFAULT_BACKEND_INSTALL_DIR -DFIELD=$FIELD -DEXT_FIELD=$EXT_FIELD -DDEVMODE=$DEVMODE -DCMAKE_BUILD_TYPE=Release -S . -B build
cmake -DCMAKE_CUDA_COMPILER=$CUDA_COMPILER_PATH -DCMAKE_INSTALL_PREFIX=$DEFAULT_BACKEND_INSTALL_DIR -DCUDA_BACKEND=$CUDA_BACKEND -DFIELD=$FIELD -DEXT_FIELD=$EXT_FIELD -DDEVMODE=$DEVMODE -DCMAKE_BUILD_TYPE=Release -S . -B build
cmake --build build --target install -j8 && rm build_config.txt
done

View File

@@ -1,4 +1,4 @@
package bls12377
// #cgo LDFLAGS: -Lusr/local/ -licicle_field_bls12_377 -licicle_curve_bls12_377 -lstdc++ -Wl,-rpath=usr/local/
// #cgo LDFLAGS: -Lusr/local/lib/ -licicle_field_bls12_377 -licicle_curve_bls12_377 -lstdc++ -Wl,-rpath=usr/local/lib/
import "C"

View File

@@ -1,4 +1,4 @@
package bls12381
// #cgo LDFLAGS: -Lusr/local/ -licicle_field_bls12_381 -licicle_curve_bls12_381 -lstdc++ -Wl,-rpath=usr/local/
// #cgo LDFLAGS: -Lusr/local/lib/ -licicle_field_bls12_381 -licicle_curve_bls12_381 -lstdc++ -Wl,-rpath=usr/local/lib/
import "C"

View File

@@ -1,4 +1,4 @@
package bn254
// #cgo LDFLAGS: -Lusr/local/ -licicle_field_bn254 -licicle_curve_bn254 -lstdc++ -Wl,-rpath=usr/local/
// #cgo LDFLAGS: -Lusr/local/lib/ -licicle_field_bn254 -licicle_curve_bn254 -lstdc++ -Wl,-rpath=usr/local/lib/
import "C"

View File

@@ -1,4 +1,4 @@
package bw6761
// #cgo LDFLAGS: -Lusr/local/ -licicle_field_bw6_761 -licicle_curve_bw6_761 -lstdc++ -Wl,-rpath=usr/local/
// #cgo LDFLAGS: -Lusr/local/lib/ -licicle_field_bw6_761 -licicle_curve_bw6_761 -lstdc++ -Wl,-rpath=usr/local/lib/
import "C"

View File

@@ -1,4 +1,4 @@
package grumpkin
// #cgo LDFLAGS: -Lusr/local/ -licicle_field_grumpkin -licicle_curve_grumpkin -lstdc++ -Wl,-rpath=usr/local/
// #cgo LDFLAGS: -Lusr/local/lib/ -licicle_field_grumpkin -licicle_curve_grumpkin -lstdc++ -Wl,-rpath=usr/local/lib/
import "C"

View File

@@ -1,4 +1,4 @@
package babybear
// #cgo LDFLAGS: -Lusr/local/ -licicle_field_babybear -lstdc++ -Wl,-rpath=usr/local/
// #cgo LDFLAGS: -Lusr/local/lib/ -licicle_field_babybear -lstdc++ -Wl,-rpath=usr/local/lib/
import "C"

View File

@@ -1,4 +1,4 @@
package {{.PackageName}}
// #cgo LDFLAGS: -Lusr/local/ -licicle_field_{{.Field}} -licicle_curve_{{.Field}} -lstdc++ -Wl,-rpath=usr/local/
// #cgo LDFLAGS: -Lusr/local/lib/ -licicle_field_{{.Field}} -licicle_curve_{{.Field}} -lstdc++ -Wl,-rpath=usr/local/lib/
import "C"

View File

@@ -1,4 +1,4 @@
package {{.PackageName}}
// #cgo LDFLAGS: -Lusr/local/ -licicle_field_{{.Field}} -lstdc++ -Wl,-rpath=usr/local/
// #cgo LDFLAGS: -Lusr/local/lib/ -licicle_field_{{.Field}} -lstdc++ -Wl,-rpath=usr/local/lib/
import "C"

View File

@@ -1,4 +1,4 @@
package runtime
// #cgo LDFLAGS: -Lusr/local/ -licicle_device -lstdc++ -lm -Wl,-rpath=usr/local/
// #cgo LDFLAGS: -Lusr/local/lib/ -licicle_device -lstdc++ -lm -Wl,-rpath=usr/local/lib/
import "C"