mirror of
https://github.com/Quad4-Software/Reticulum-Go
synced 2026-08-29 23:48:44 -04:00
48 lines
1.1 KiB
Makefile
48 lines
1.1 KiB
Makefile
# SPDX-License-Identifier: Apache-2.0
|
|
# Copyright (c) 2024-2026 Quad4.io
|
|
|
|
ROOT := ../..
|
|
BIN := $(ROOT)/bin
|
|
RNS_LIB := $(BIN)/librns.so
|
|
BUILD_DIR := build
|
|
ABS_BIN := $(abspath $(BIN))
|
|
|
|
.PHONY: all test check smoke examples clean librns configure
|
|
|
|
all: test
|
|
|
|
librns: $(RNS_LIB)
|
|
|
|
$(RNS_LIB):
|
|
cd $(ROOT) && task build-librns
|
|
|
|
configure: $(RNS_LIB)
|
|
cmake -S . -B $(BUILD_DIR) \
|
|
-DCMAKE_CXX_STANDARD=17 \
|
|
-DRNS_LIB_DIR=$(ABS_BIN) \
|
|
-DRNS_INCLUDE_DIR=$(abspath $(ROOT)/include)
|
|
|
|
test: configure
|
|
cmake --build $(BUILD_DIR)
|
|
cd $(BUILD_DIR) && \
|
|
LIBRARY_PATH="$(ABS_BIN):$${LIBRARY_PATH:-}" \
|
|
LD_LIBRARY_PATH="$(ABS_BIN):$${LD_LIBRARY_PATH:-}" \
|
|
ctest --output-on-failure
|
|
|
|
check: test
|
|
|
|
smoke: test
|
|
|
|
examples: $(RNS_LIB)
|
|
$(MAKE) -C examples/smoke
|
|
$(MAKE) -C examples/page-fetch
|
|
$(MAKE) -C examples/pageserver
|
|
LIBRARY_PATH="$(ABS_BIN):$${LIBRARY_PATH:-}" \
|
|
LD_LIBRARY_PATH="$(ABS_BIN):$${LD_LIBRARY_PATH:-}" \
|
|
./examples/smoke/cpp-smoke
|
|
|
|
clean:
|
|
rm -rf $(BUILD_DIR)
|
|
$(MAKE) -C examples/smoke clean
|
|
$(MAKE) -C examples/page-fetch clean
|
|
$(MAKE) -C examples/pageserver clean
|