owlps/libowlps-client/Makefile_drone

81 lines
1.5 KiB
Plaintext

# Emplacement de la suite de cross-compilation
TOOLCHAIN_PREFIX = /arm
TOOLCHAIN_BIN = $(TOOLCHAIN_PREFIX)/bin
TOOLCHAIN_USR = $(TOOLCHAIN_PREFIX)/arm-none-linux-gnueabi/libc/usr
TOOLCHAIN_USR_2 = $(TOOLCHAIN_PREFIX)/arm-none-linux-gnueabi/libc
# Compilateur
CC = $(TOOLCHAIN_BIN)/arm-none-linux-gnueabi-gcc
# 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) -I.
DEPFLAGS=-MMD
XCFLAGS=$(CFLAGS) $(DEPFLAGS) $(WARN) $(HEADERS)
PICFLAG=-fPIC
LIBS=-liw
#STRIPFLAGS= -Wl,-s
#LDFLAGS=
LATHEROS=-L$(TOOLCHAIN_USR_2)/lib/
IATHEROS=-I$(TOOLCHAIN_USR)/include/
## Cibles de compilation standard ##
.PHONY : all static clean purge help
all : static
static : $(STATIC)
%.o : %.c $(HEADER)
$(CC) $(XCFLAGS) $(IATHEROS) -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\"
# Local Variables: *
# mode: makefile-gmake *
# End: *