diff options
author | admin <admin@optics-design.com> | 2025-08-04 00:35:10 +0200 |
---|---|---|
committer | admin <admin@optics-design.com> | 2025-08-04 00:35:10 +0200 |
commit | 4910356db2585e55d2876001e40b21e9b148bcc4 (patch) | |
tree | 26474e58de023c6f3913a1e11ee928f630a8b814 /Makefile | |
parent | 8332d652eac5b46d8b8b02b25d47aa5355ef31cd (diff) |
added fgla search
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 14 |
1 files changed, 13 insertions, 1 deletions
@@ -30,8 +30,12 @@ BINDIR_WIN := bin/win INCDIR := include
DLL_CACHE := $(HOME)/.cache/glamac-dlls
+# Security and warning flags
+SECURITY_FLAGS := -fstack-protector-strong -D_FORTIFY_SOURCE=2 -fPIE
+WARNING_FLAGS := -Wall -Wextra -Wformat=2 -Wformat-security -Wnull-dereference -Wstack-protector -Wvla
+
# Compiler flags
-CFLAGS := -I$(INCDIR) -O2 -flto
+CFLAGS := -I$(INCDIR) -O2 -flto $(SECURITY_FLAGS) $(WARNING_FLAGS)
CFLAGS_NATIVE := $(CFLAGS) -march=native
CFLAGS_CROSS := $(CFLAGS) -I$(CROSS_PREFIX)/include
@@ -41,6 +45,9 @@ GLAUTILS_SRCS := $(wildcard $(SRCDIR)/glautils/*.c) GLAUTILS_BINS := $(patsubst $(SRCDIR)/glautils/%.c, $(BINDIR)/%$(EXE_EXT), $(GLAUTILS_SRCS))
GLAUTILS_BINS_WIN := $(patsubst $(SRCDIR)/glautils/%.c, $(BINDIR_WIN)/%.exe, $(GLAUTILS_SRCS))
+# Glass data dependencies for fgla
+GLASS_DATA_SRCS := $(SRCDIR)/glamac/glass_data.c $(SRCDIR)/glamac/glamac_errors.c
+
# Default target
all: glamac glautils
@@ -53,6 +60,11 @@ $(BINDIR)/glamac$(EXE_EXT): $(GLAMAC_SRCS) | $(BINDIR) @echo "Building glamac..."
$(CC) $^ $(CFLAGS_NATIVE) $(SDL3_LIBS) -o $@
+# Special rule for fgla which needs glass_data dependencies
+$(BINDIR)/fgla$(EXE_EXT): $(SRCDIR)/glautils/fgla.c $(GLASS_DATA_SRCS) | $(BINDIR)
+ $(CC) $^ $(CFLAGS_NATIVE) -o $@
+
+# General rule for other glautils (excluding fgla)
$(BINDIR)/%$(EXE_EXT): $(SRCDIR)/glautils/%.c | $(BINDIR)
$(CC) $< $(CFLAGS_NATIVE) -o $@
|