# Compilateur COLORGCC := $(shell which colorgcc >/dev/null 2>&1 ; echo $$?) ifeq ($(COLORGCC), 0) CC = colorgcc endif # Autres outils AR = ar RANLIB = ranlib RM = rm -fv # 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) DEPFLAGS=-MMD XCFLAGS=$(CFLAGS) $(DEPFLAGS) $(WARN) $(HEADERS) PICFLAG=-fPIC LIBS = -L$(LIBOWLPS_DIR) -lowlps #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 :\n\ libowlps-dev\n\ \n\ Cibles possibles :\n\ static (cible par défaut) : Compile la bibliothèque statique (.a).\n\ \n\ clean : Supprime les fichiers temporaires.\n\ purge : Supprime le résultat de la compilation.\n\"