Skip to content
Snippets Groups Projects
common.mk 735 B
Newer Older
Dan Hirsch's avatar
Dan Hirsch committed
CFLAGS := $(shell pkg-config --cflags glib-2.0) -std=gnu99 -Wall -Wextra -Werror
LDFLAGS := $(shell pkg-config --libs glib-2.0)
CC := gcc
Dan Hirsch's avatar
Dan Hirsch committed
# Set V=1 for verbose mode...
V := 0
CFLAGS += -DINCLUDE_TESTS
Dan Hirsch's avatar
Dan Hirsch committed
HUSH = $(TOPLEVEL)/lib/hush

# Check to make sure variables are properly set
ifeq ($(TOPLEVEL),)
$(error $$TOPLEVEL is unset)
endif

#.SUFFIXES:
Dan Hirsch's avatar
Dan Hirsch committed
ifeq ($(V),0)
.SILENT:
endif
Dan Hirsch's avatar
Dan Hirsch committed
%.a: | $(HUSH)
Dan Hirsch's avatar
Dan Hirsch committed
	$(if $(findstr 0,$(V)),$(HUSH) "Archiving $@",) ar cr $@ $^
Dan Hirsch's avatar
Dan Hirsch committed

ifeq ($(V),0)
# silent mode
%.o: %.c | $(HUSH)
	$(HUSH) "Compiling $<" $(CC) $(CFLAGS) -c -o $@ $<
else
Dan Hirsch's avatar
Dan Hirsch committed
endif
Dan Hirsch's avatar
Dan Hirsch committed

$(TOPLEVEL)/lib/hush: $(TOPLEVEL)/lib/hush.c
	make -C $(TOPLEVEL)/lib hush