DESTDIR :=
+OPTIONAL:=
PREFIX := /usr/local
BINDIR := $(PREFIX)/bin
DATADIR := $(PREFIX)/share
MINGW = $(findstring MINGW32, $(UNAME))
CC ?= clang
-CFLAGS += -Wall -Wextra -Werror -I. -fno-strict-aliasing -fsigned-char
+CFLAGS += -Wall -Wextra -Werror -I. -fno-strict-aliasing -fsigned-char $(OPTIONAL)
ifneq ($(shell git describe --always 2>/dev/null),)
CFLAGS += -DGMQCC_GITINFO="\"$(shell git describe --always)\""
endif
# but also turn off the STUPID ONES
ifeq ($(CC), clang)
CFLAGS += \
- -Weverything \
- -Wno-padded \
- -Wno-format-nonliteral \
- -Wno-disabled-macro-expansion \
- -Wno-conversion \
- -Wno-missing-prototypes \
- -Wno-float-equal \
- -Wno-cast-align \
- -Wno-missing-variable-declarations \
- -Wno-unknown-warning-option
+ -Weverything \
+ -Wno-padded \
+ -Wno-format-nonliteral \
+ -Wno-disabled-macro-expansion \
+ -Wno-conversion \
+ -Wno-missing-prototypes \
+ -Wno-float-equal \
+ -Wno-cast-align \
+ -Wno-missing-variable-declarations \
+ -Wno-unknown-warning-option
else
#Tiny C Compiler doesn't know what -pedantic-errors is
# and instead of ignoring .. just errors.
ifneq ($(CC), tcc)
- CFLAGS +=-pedantic-errors
+ CFLAGS +=-pedantic-errors -ffunction-sections -fdata-sections -Wl,-gc-sections
else
CFLAGS += -Wno-pointer-sign -fno-common
endif
endif
ifeq ($(track), no)
- CFLAGS += -DNOTRACK
+ CFLAGS += -DNOTRACK
endif
OBJ_D = util.o code.o ast.o ir.o conout.o ftepp.o opts.o fs.o utf8.o correct.o
#gource flags
GOURCEFLAGS= \
- --date-format "%d %B, %Y" \
+ --date-format "%d %B, %Y" \
--seconds-per-day 0.01 \
--auto-skip-seconds 1 \
--title "GMQCC" \
+ --key \
+ --camera-mode overview \
+ --highlight-all-users \
+ --file-idle-time 0 \
+ --hide progress,mouse \
+ --stop-at-end \
+ --max-files 99999999999 \
+ --max-file-lag 0.000001 \
+ --bloom-multiplier 1.3 \
-1280x720
+
#ffmpeg flags for gource
FFMPEGFLAGS= \
-y \
-kepttrans \
-unqualifiedtrans \
+matchanyintegral \
- -bufferoverflowhigh \
+voidabstract \
-nullassign \
-unrecog \
@ splint $(SPLINTFLAGS) *.c *.h
gource:
+ @ gource $(GOURCEFLAGS)
+
+gource-record:
@ gource $(GOURCEFLAGS) -o - | ffmpeg $(FFMPEGFLAGS) gource.mp4
depend: