upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/src/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'src/Makefile')
-rw-r--r--src/Makefile75
1 files changed, 75 insertions, 0 deletions
diff --git a/src/Makefile b/src/Makefile
new file mode 100644
index 0000000..3280fd3
--- /dev/null
+++ b/src/Makefile
@@ -0,0 +1,75 @@
1# Bitflash Linux build — ImGui + GLFW + OpenGL3
2# Called by: make linux (root Makefile)
3
4CXX ?= g++
5
6SECP_INC ?= /usr/local/include
7SECP_LIB ?= /usr/local/lib
8RANDOMX_DIR ?= $(HOME)/RandomX
9
10IMGUI_DIR = imgui
11
12CXXFLAGS = -std=gnu++14 -O2 -w -fpermissive -pthread \
13 -DSECP256K1_STATIC \
14 -I$(SECP_INC) -I$(RANDOMX_DIR)/src \
15 -I/usr/include/nlohmann \
16 -I$(IMGUI_DIR)
17
18LIBS = -L$(SECP_LIB) -lsecp256k1 \
19 -L$(RANDOMX_DIR)/build -lrandomx \
20 -lsodium -lssl -lcrypto -ldb_cxx -lpthread \
21 -lglfw -lGL
22
23HEADERS = headers_core.h headers.h util.h main.h serialize.h uint256.h \
24 key.h bignum.h script.h db.h base58.h net.h irc.h nostr.h \
25 randomx_pow.h btfaddr.h btfchan.h btfrv.h btftunnel.h market.h compat.h
26
27IMGUI_OBJS = obj/imgui.o obj/imgui_draw.o obj/imgui_tables.o \
28 obj/imgui_widgets.o obj/imgui_impl_glfw.o obj/imgui_impl_opengl3.o
29
30NODE_OBJS = obj/util.o obj/script.o obj/db.o obj/net.o obj/main.o \
31 obj/market.o obj/sha.o obj/irc.o obj/nostr.o obj/randomx_pow.o \
32 obj/btfaddr.o obj/btfchan.o obj/btfrv.o obj/btftunnel.o obj/rpc.o
33
34GUI_OBJS = obj/gui.o obj/main_gui.o
35
36all: bitflash
37
38obj/%.o: %.cpp $(HEADERS)
39 @mkdir -p obj
40 $(CXX) -c $(CXXFLAGS) -o $@ $<
41
42obj/sha.o: sha.cpp sha.h
43 @mkdir -p obj
44 $(CXX) -c $(CXXFLAGS) -O3 -o $@ $<
45
46obj/imgui.o: $(IMGUI_DIR)/imgui.cpp
47 @mkdir -p obj
48 $(CXX) -c $(CXXFLAGS) -o $@ $<
49
50obj/imgui_draw.o: $(IMGUI_DIR)/imgui_draw.cpp
51 @mkdir -p obj
52 $(CXX) -c $(CXXFLAGS) -o $@ $<
53
54obj/imgui_tables.o: $(IMGUI_DIR)/imgui_tables.cpp
55 @mkdir -p obj
56 $(CXX) -c $(CXXFLAGS) -o $@ $<
57
58obj/imgui_widgets.o: $(IMGUI_DIR)/imgui_widgets.cpp
59 @mkdir -p obj
60 $(CXX) -c $(CXXFLAGS) -o $@ $<
61
62obj/imgui_impl_glfw.o: $(IMGUI_DIR)/imgui_impl_glfw.cpp
63 @mkdir -p obj
64 $(CXX) -c $(CXXFLAGS) -o $@ $<
65
66obj/imgui_impl_opengl3.o: $(IMGUI_DIR)/imgui_impl_opengl3.cpp
67 @mkdir -p obj
68 $(CXX) -c $(CXXFLAGS) -o $@ $<
69
70bitflash: $(IMGUI_OBJS) $(NODE_OBJS) $(GUI_OBJS)
71 $(CXX) $(CXXFLAGS) -o $@ $^ $(LIBS)
72 @echo "Built: bitflash"
73
74clean:
75 rm -rf obj bitflash