45 lines
1.1 KiB
Makefile
Raw Normal View History

2024-11-27 12:08:50 +02:00
# Makefile for Waku Go Bindings
# Directories
2025-09-24 22:34:00 +01:00
THIRD_PARTY_DIR := $(shell pwd)/../third_party
2024-11-27 12:08:50 +02:00
NWAKU_REPO := https://github.com/waku-org/nwaku
NWAKU_DIR := $(THIRD_PARTY_DIR)/nwaku
2025-02-14 14:20:49 +02:00
.PHONY: all clean prepare build-libwaku build
2024-11-27 12:08:50 +02:00
# Default target
all: build
# Prepare third_party directory and clone nwaku
prepare:
@echo "Creating third_party directory..."
@mkdir -p $(THIRD_PARTY_DIR)
2025-03-11 10:57:48 +01:00
2024-11-27 12:08:50 +02:00
@echo "Cloning nwaku repository..."
@if [ ! -d "$(NWAKU_DIR)" ]; then \
cd $(THIRD_PARTY_DIR) && \
git clone $(NWAKU_REPO) && \
cd $(NWAKU_DIR) && \
make update; \
2024-11-27 12:08:50 +02:00
else \
echo "nwaku repository already exists."; \
fi
2025-02-14 14:20:49 +02:00
# Build libwaku
build-libwaku: prepare
2024-11-27 12:08:50 +02:00
@echo "Building libwaku..."
@cd $(NWAKU_DIR) && make libwaku
# Build Waku Go Bindings
2025-09-24 22:34:00 +01:00
build: export CGO_CFLAGS = "-I${NWAKU_DIR}/library/"
build: export CGO_LDFLAGS = "-L${NWAKU_DIR}/build/ -lwaku -L${NWAKU_DIR} -Wl,-rpath,${NWAKU_DIR}/build/"
build:
2024-11-27 12:08:50 +02:00
@echo "Building Waku Go Bindings..."
2025-01-22 18:58:23 +01:00
go build ./...
2024-11-27 12:08:50 +02:00
# Clean up generated files
clean:
@echo "Cleaning up..."
@rm -rf $(THIRD_PARTY_DIR)
@rm -f waku-go-bindings