68
68
endif
69
69
endif
70
70
71
+ # VRF library selection
72
+ ifeq (libsodium,$(findstring libsodium,$(LBM_BUILD_OPTIONS ) ) )
73
+ CGO_ENABLED =1
74
+ BUILD_TAGS += gcc libsodium
75
+ LIBSODIUM_TARGET = libsodium
76
+ CGO_CFLAGS += "-I$(LIBSODIUM_OS ) /include"
77
+ CGO_LDFLAGS += "-L$(LIBSODIUM_OS ) /lib -lsodium"
78
+ endif
79
+
71
80
# secp256k1 implementation selection
72
81
ifeq (libsecp256k1,$(findstring libsecp256k1,$(LBM_BUILD_OPTIONS ) ) )
73
82
CGO_ENABLED =1
@@ -115,7 +124,6 @@ include contrib/devtools/Makefile
115
124
BUILD_TARGETS := build install
116
125
117
126
build : BUILD_ARGS=-o $(BUILDDIR ) /
118
- CGO_CFLAGS=$(CGO_CFLAGS ) CGO_LDFLAGS=$(CGO_LDFLAGS ) CGO_ENABLED=$(CGO_ENABLED ) go build -mod=readonly $(BUILD_FLAGS ) $(BUILD_ARGS ) ./...
119
127
120
128
build-docker : go.sum $(BUILDDIR ) /
121
129
docker build -t simapp:latest . --platform=" linux/amd64" --build-arg ARCH=$(ARCH )
@@ -124,8 +132,8 @@ build-docker: go.sum $(BUILDDIR)/
124
132
build-linux :
125
133
GOOS=linux GOARCH=$(if $(findstring aarch64,$(shell uname -m) ) || $(findstring arm64,$(shell uname -m) ) ,arm64,amd64) LEDGER_ENABLED=false $(MAKE ) build
126
134
127
- $(BUILD_TARGETS ) : go.sum $(BUILDDIR ) /
128
- go $@ -mod=readonly $(BUILD_FLAGS ) $(BUILD_ARGS ) ./...
135
+ $(BUILD_TARGETS ) : go.sum $(BUILDDIR ) / $( LIBSODIUM_TARGET )
136
+ CGO_CFLAGS= $( CGO_CFLAGS ) CGO_LDFLAGS= $( CGO_LDFLAGS ) CGO_ENABLED= $( CGO_ENABLED ) go $@ -mod=readonly $(BUILD_FLAGS ) $(BUILD_ARGS ) ./...
129
137
130
138
$(BUILDDIR ) / :
131
139
mkdir -p $(BUILDDIR ) /
@@ -536,3 +544,27 @@ rosetta-data:
536
544
docker container rm data_dir_build
537
545
538
546
.PHONY : rosetta-data
547
+
548
+ # ##############################################################################
549
+ # ## tools ###
550
+ # ##############################################################################
551
+
552
+ VRF_ROOT = $(shell pwd) /tools
553
+ LIBSODIUM_ROOT = $(VRF_ROOT ) /libsodium
554
+ LIBSODIUM_OS = $(VRF_ROOT ) /sodium/$(shell go env GOOS) _$(shell go env GOARCH)
555
+ ifneq ($(TARGET_HOST ) , "")
556
+ LIBSODIUM_HOST = "--host=$(TARGET_HOST ) "
557
+ endif
558
+
559
+ libsodium :
560
+ @if [ ! -f $( LIBSODIUM_OS) /lib/libsodium.a ]; then \
561
+ rm -rf $(LIBSODIUM_ROOT ) && \
562
+ mkdir $(LIBSODIUM_ROOT ) && \
563
+ git submodule update --init --recursive && \
564
+ cd $(LIBSODIUM_ROOT ) && \
565
+ ./autogen.sh && \
566
+ ./configure --disable-shared --prefix=" $( LIBSODIUM_OS) " $(LIBSODIUM_HOST ) && \
567
+ $(MAKE ) && \
568
+ $(MAKE ) install; \
569
+ fi
570
+ .PHONY : libsodium
0 commit comments