owlps/infrastructure-centred/libowlps-client/Makefile

68 lines
1.1 KiB
Makefile

# Compilateur
CC = gcc
# Autres outils
AR = ar
RANLIB = ranlib
# 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
CFLAGS=-O2 -W -Wall -Wstrict-prototypes -O -I.
DEPFLAGS=-MMD
XCFLAGS=$(CFLAGS) $(DEPFLAGS) $(WARN) $(HEADERS)
PICFLAG=-fPIC
LIBS=-liw
#STRIPFLAGS= -Wl,-s
#LDFLAGS=
## Cibles de compilation standard ##
.PHONY : all static clean purge help
all : static
static : $(STATIC)
% : %.o
$(CC) $(LDFLAGS) $(STRIPFLAGS) $(XCFLAGS) -o $@ $^
%.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\"