blob: 40771e81468e69cb5894059d93c21bcdc3cf9304 [file] [log] [blame]
#
# GNU makefile fragment for building a library
#
CC = gcc
LINK = ar cru
LINKD = ld -G
LIBPATH = ../../obj/lib
STATIC_LIB = $(LIBPATH)/$(LIB_NAME).a
DYNAMIC_LIB = $(LIBPATH)/$(LIB_NAME).so
all : release
debug : CFLAGS = -g -O0 -DDEBUG $(DEBUG_CFLAGS) -Wall -W $(INCLUDES)
release : CFLAGS = -O3 -fomit-frame-pointer -funroll-loops -ffast-math -finline-functions -DNDEBUG $(RELEASE_CFLAGS) -Wall -W $(INCLUDES)
LFLAGS = -L$(LIBPATH)
debug : $(STATIC_LIB) $(DYNAMIC_LIB)
release : $(STATIC_LIB) $(DYNAMIC_LIB)
$(STATIC_LIB) : $(OBJS)
$(LINK) $@ $(OBJS)
$(DYNAMIC_LIB) : $(OBJS)
$(LINKD) -o $@ $(OBJS) $(LFLAGS) $(LIBS)
%.o : %.c
$(CC) $(CFLAGS) -c $< -o $@
%.i : %.c
$(CC) $(CFLAGS) -E $< -o $@
.PHONY : clean
clean :
-rm -f $(OBJS) $(STATIC_LIB) $(DYNAMIC_LIB)
.PHONY : depend
depend:
makedepend -- $(CFLAGS) $(INCLUDES) -- *.c