BarryServer : Git

All the code for all my projects
// BarryServer : Git / libBLOC / blob / master / Makefile

// Related

libBLOC

Barry Restructuring object core + portable locking 22e0342 (2 years, 11 months ago)
PRODUCT=libBLOC.a

CC=gcc
CFLAGS=-Iinclude/

AR=ar

SRCS := $(wildcard **/*.c)
OBJS = $(addprefix build/,$(SRCS:.c=.o))

.PHONY: clean all install

all: $(PRODUCT)

clean:
	$(info Removing object files)
	@mkdir -p build
	@rm -rf build
	@touch $(PRODUCT)
	@rm $(PRODUCT)

install: $(PRODUCT)
	$(info INSTALL $^)
	@cp -r include/* /usr/include/
	@install -Dm 644 $^ -t /usr/lib/

$(PRODUCT): $(OBJS)
	$(info AR $@)
	@mkdir -p $(@D)
	@$(AR) rcs $@ $^

build/%.o: %.c
	$(info CC $<)
	@mkdir -p $(@D)
	@$(CC) -c $< -o $@ $(CFLAGS)