build: add Makefile and C runtime configuration files

This commit is contained in:
2026-03-30 01:07:23 +02:00
parent d2c118833b
commit accaa5fbdb
3 changed files with 48 additions and 1 deletions

5
.gitignore vendored
View File

@@ -1,4 +1,7 @@
__pycache__/
venv/
.venv/
config.py
config.py
*.o
miner
launcher

21
Makefile Normal file
View File

@@ -0,0 +1,21 @@
CC := gcc
CFLAGS := -O3 -Wall -Wextra -std=c11 -D_GNU_SOURCE -D_POSIX_C_SOURCE=200809L
LDFLAGS := -pthread -lcrypto -lm
COMMON_OBJS := config.o utils.o json.o rpc.o types.o block_builder.o miner.o mining_loop.o
.PHONY: all clean
all: miner launcher
miner: main.o $(COMMON_OBJS)
$(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
launcher: launcher.o $(COMMON_OBJS)
$(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
%.o: %.c
$(CC) $(CFLAGS) -c $< -o $@
clean:
rm -f *.o miner launcher

23
miner.conf.example Normal file
View File

@@ -0,0 +1,23 @@
# RPC
RPC_USER=regtest
RPC_PASSWORD=regtest
RPC_HOST=127.0.0.1
RPC_PORT=18443
# Wallet
WALLET_ADDRESS=bcrt1qn9ewln06n3xmc64278nj8m4nyde7ddeuvsvhw6
# Mining
DIFFICULTY_FACTOR=0.01
NONCE_MODE=incremental # incremental | random | mixed
TIMESTAMP_UPDATE_INTERVAL=30
BATCH=10000
COINBASE_MESSAGE=/c-miner/
EXTRANONCE1=1234567890abcdef
EXTRANONCE2=12341234
# Workers
NUM_PROCESSORS=0 # <=0 uses CPU count
# Watchdog
CHECK_INTERVAL=20