71 lines
1.2 KiB
Makefile
71 lines
1.2 KiB
Makefile
# 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=-liw
|
|
#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\"
|