# Compilateur COLORGCC := $(shell which colorgcc >/dev/null 2>&1 ; echo $$?) ifeq ($(COLORGCC), 0) CC = colorgcc endif # Autres outils AR = ar RANLIB = ranlib RM = rm -f # Variables générales LIB_CIBLE=libowlps-client VERSION=1.0 # Cibles à construire STATIC=$(LIB_CIBLE).a HEADER=owlps-client.h # Composition de la bibliothèque OBJS=$(LIB_CIBLE).o # Flags LIBOWLPS_DIR = ../libowlps CFLAGS = -O2 -Wall -Wextra -Wstrict-prototypes -O -I$(LIBOWLPS_DIR) #CFLAGS += -g -O0 CFLAGS += -D DEBUG DEPFLAGS=-MMD XCFLAGS=$(CFLAGS) $(DEPFLAGS) $(WARN) $(HEADERS) PICFLAG=-fPIC #STRIPFLAGS= -Wl,-s #LDFLAGS= ## Cibles de compilation standard ## .PHONY : all static clean purge help all : static static : $(STATIC) %.o : %.c $(HEADER) $(CC) $(XCFLAGS) -c $< # Compilation de la bibliothèque statique $(STATIC) : $(OBJS) $(RM) $@ $(AR) cru $@ $^ $(RANLIB) $@ ## Nettoyage ## clean : @$(RM) *~ *.o *.d purge : clean @$(RM) $(STATIC) ## Aide ## help : @echo "Bibliothèques nécessaires à la compilation :" @echo " libowlps-dev" @echo @echo "Cibles possibles :" @echo " static (cible par défaut) : Compile la bibliothèque \ statique (.a)." @echo @echo " clean : Supprime les fichiers temporaires." @echo " purge : Supprime le résultat de la compilation."