mirror of https://github.com/oxen-io/lokinet
Add initial dockerfile support
This provides a simple way to do quick cross-platform verification of changes. `make docker-debian` will build a debian image and run the tests `make docker-fedora` will build a fedora image and run the tests
This commit is contained in:
parent
080c0da4a0
commit
01445399f0
|
@ -0,0 +1 @@
|
|||
build/
|
12
Makefile
12
Makefile
|
@ -7,7 +7,7 @@ REPO := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
|
|||
|
||||
PREFIX ?= /usr/local
|
||||
|
||||
CC ?= cc
|
||||
CC ?= cc
|
||||
CXX ?= c++
|
||||
|
||||
SETCAP ?= which setcap && setcap cap_net_admin=+eip
|
||||
|
@ -68,7 +68,7 @@ debug-configure:
|
|||
$(CONFIG_CMD) -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=$(CC) -DCMAKE_CXX_COMPILER=$(CXX) -DDNS_PORT=$(DNS_PORT) -DCMAKE_ASM_FLAGS='$(ASFLAGS)' -DCMAKE_C_FLAGS='$(CFLAGS)' -DCMAKE_CXX_FLAGS='$(CXXFLAGS)'
|
||||
|
||||
release-configure: clean
|
||||
mkdir -p '$(BUILD_ROOT)'
|
||||
mkdir -p '$(BUILD_ROOT)'
|
||||
$(CONFIG_CMD) -DSTATIC_LINK=ON -DCMAKE_BUILD_TYPE=Release -DRELEASE_MOTTO="$(shell cat motto.txt)" -DCMAKE_C_COMPILER=$(CC) -DCMAKE_CXX_COMPILER=$(CXX) -DCMAKE_ASM_FLAGS='$(ASFLAGS)' -DCMAKE_C_FLAGS='$(CFLAGS)' -DCMAKE_CXX_FLAGS='$(CXXFLAGS)'
|
||||
|
||||
debug: debug-configure
|
||||
|
@ -118,7 +118,7 @@ shared-configure: clean
|
|||
shared: shared-configure
|
||||
$(MAKE) -C $(BUILD_ROOT)
|
||||
|
||||
testnet:
|
||||
testnet:
|
||||
cp $(EXE) $(TESTNET_EXE)
|
||||
mkdir -p $(TESTNET_ROOT)
|
||||
python3 contrib/testnet/genconf.py --bin=$(TESTNET_EXE) --svc=$(TESTNET_SERVERS) --clients=$(TESTNET_CLIENTS) --dir=$(TESTNET_ROOT) --out $(TESTNET_CONF) --connect=4
|
||||
|
@ -142,6 +142,12 @@ lint: $(LINT_CHECK)
|
|||
%.cpp-check: %.cpp
|
||||
clang-tidy $^ -- -I$(REPO)/include -I$(REPO)/crypto/libntrup/include -I$(REPO)/llarp
|
||||
|
||||
docker-debian:
|
||||
docker build -f docker/debian.Dockerfile .
|
||||
|
||||
docker-fedora:
|
||||
docker build -f docker/fedora.Dockerfile .
|
||||
|
||||
install:
|
||||
rm -f $(PREFIX)/bin/lokinet
|
||||
cp $(EXE) $(PREFIX)/bin/lokinet
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
FROM debian:latest
|
||||
|
||||
RUN apt update && \
|
||||
apt install -y build-essential cmake git libcap-dev wget rapidjson-dev
|
||||
|
||||
WORKDIR /src/
|
||||
|
||||
COPY . /src/
|
||||
|
||||
RUN make -j 8 JSONRPC=ON
|
|
@ -0,0 +1,11 @@
|
|||
FROM fedora:latest
|
||||
|
||||
RUN dnf update -y && \
|
||||
dnf upgrade -y && \
|
||||
dnf install -y cmake make git gcc gcc-c++ libcap-devel wget rapidjson-devel
|
||||
|
||||
WORKDIR /src/
|
||||
|
||||
COPY . /src/
|
||||
|
||||
RUN make -j8 JSONRPC=ON
|
Loading…
Reference in New Issue