# Copyright (c) 2026, Mr. Goblin # # SPDX-License-Identifier: BSD-2-Clause # All 3 values commented, using make's default or export CC. # If you don't like ``modern'' diagnostics, too, try uncommenting # some of variants below or add line like: # export CC='gcc -fno-diagnostics-show-caret -fdiagnostics-color=never' # or # export CC='clang -fno-caret-diagnostics -fno-color-diagnostics' # to your .bashrc | .zshrc | .shrc | .profile or whatever config file # does your shell use # # CC = cc -fno-caret-diagnostics -fno-color-diagnostics # CC = gcc -fno-diagnostics-show-caret -fdiagnostics-color=never # CC = gcc CFLAGS = -Wall -Wextra -pedantic -std=c99 # DEBUG = -g # DEBUG = -ggdb DEBUG = # STATIC = -static STATIC = -static -s # STATIC = PROG_NAME=btasktd VER=0.0.0 DIST_NAME=$(PROG_NAME)-$(VER) MAINBINARIES = btasktd .SUFFIXES: .SUFFIXES: .c .o .PHONY: all clean dist ctags rebuild all: $(MAINBINARIES) ctags: ctags *.c *.h *.cpp *.hpp dist: git archive --format=tar --prefix=$(DIST_NAME)/ HEAD | \ bzip2 > $(DIST_NAME).tar.bz2 clean: $(MAKE) -C $(LIBSDIR)/logger clean rm -f $(MAINBINARIES) *.o *.test tags $(DIST_NAME) rebuild: clean all .c.o: $(CC) $(DEBUG) $(CFLAGS) -I$(LIBSDIR) -c $< -o $@ LIBSDIR = ./lib LDFLAGS = -L$(LIBSDIR)/logger $(LIBSDIR)/logger/liblogger.a: $(MAKE) -C $(LIBSDIR)/logger BTASKTD_OBJECTS = btasktd.o cliflags.o codes.o BTASKTD_LIBDEPS = $(LIBSDIR)/logger/liblogger.a BTASKTD_LIBS = -lc -llogger btasktd: $(BTASKTD_OBJECTS) $(BTASKTD_LIBDEPS) $(CC) $(DEBUG) $(CFLAGS) $(STATIC) $(LDFLAGS) \ $(BTASKTD_OBJECTS) -o $@ $(BTASKTD_LIBS)