blob: d1c2d3de19c34cf624f28d0e57c7d36225c4c6d4 (
plain) (
tree)
|
|
CFILES := $(wildcard *.c)
OFILES := $(patsubst %.c,%.o,$(CFILES))
SHARED ?= 1
STATIC ?= 1
TEST ?= 0
CC ?= gcc
AR ?= ar
WARNS := -Wall -Wextra -Wduplicated-cond -Wduplicated-branches -Wlogical-op -Wrestrict -Wnull-dereference -Wdouble-promotion -Wshadow -Wcast-align
CFLAGS := $(WARNS) -L$(shell pwd)
.PHONY: all
all: $(OFILES)
ifeq ($(SHARED),1)
$(CC) -shared $(CFLAGS) -o libcgds.so -fPIC $(CFILES)
endif
ifeq ($(STATIC),1)
$(AR) rcs libcgds.a $^
endif
ifeq ($(TEST), 1)
$(CC) -I$(shell pwd) -L. -l:libcgds.so -o testprg test/main.c
export LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$(shell pwd) ; ./testprg
endif
%.o:%.c
$(CC) -c -o $@ $<
|