Files
sovereign_browser/Makefile
T

36 lines
1.1 KiB
Makefile

# sovereign_browser — WebKitGTK + C99
#
# Requires: libwebkit2gtk-4.1-dev (Debian: sudo apt install libwebkit2gtk-4.1-dev)
# nostr_core_lib (vendored at ./nostr_core_lib/, build it first)
# libsecp256k1-dev, libssl-dev, libcurl4-openssl-dev
CC ?= gcc
CFLAGS ?= -std=c99 -Wall -Wextra -O2
CFLAGS += $(shell pkg-config --cflags webkit2gtk-4.1)
CFLAGS += -I./nostr_core_lib
CFLAGS += -DNOSTR_ENABLE_NSIGNER_CLIENT
LDFLAGS ?=
LDLIBS += $(shell pkg-config --libs webkit2gtk-4.1)
# nostr_core_lib static library + its dependencies
NOSTR_LIB = ./nostr_core_lib/libnostr_core_x64.a
NOSTR_DEPS = -lsecp256k1 -lssl -lcrypto -lcurl -lz -ldl -lpthread -lm
BIN := sovereign_browser
SRC := src/main.c src/key_store.c src/login_dialog.c src/nostr_bridge.c src/nostr_inject.c src/history.c src/settings.c src/tab_manager.c src/session.c
$(BIN): $(SRC) $(NOSTR_LIB)
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(NOSTR_LIB) $(LDLIBS) $(NOSTR_DEPS)
$(NOSTR_LIB):
@echo "Building nostr_core_lib..."
cd nostr_core_lib && ./build.sh --nips=all
run: $(BIN)
./$(BIN)
clean:
rm -f $(BIN)
.PHONY: run clean