
#########################################################################
# ATTENTION :                                                           #
# EXTRA_FLAGS doit tre positionn correctement  l'appel de ce Make !  #
# (sinon, on utilise des entiers 32 bits)                               #
#########################################################################

# Choose one of these :
# LINEAR_VALUE_IS_LONGLONG
# LINEAR_VALUE_IS_LONG
# LINEAR_VALUE_IS_FLOAT
# LINEAR_VALUE_IS_CHARS   (used for type checking)
# LINEAR_VALUE_IS_INT     (default)
#VALUE_TYPE = LINEAR_VALUE_IS_LONGLONG

#EXTRA_FLAGS = -D$(VALUE_TYPE) 	-DLINEAR_VALUE_PROTECT_MULTIPLY \
#-DLINEAR_VALUE_ASSUME_SOFTWARE_IDIV

CC = gcc
CFLAGS = -O2 -Wall -g $(EXTRA_FLAGS)



LIB_CFILES=	abs.c \
		divide.c \
		exp.c \
		modulo.c \
		pgcd.c \
		ppcm.c \
		io.c \
		errors.c

HEADERS=	assert.h boolean.h arithmetic_errors.h arithmetique.h

LIB_OBJECTS= $(LIB_CFILES:.c=.o) 

arithmetique.a: $(LIB_OBJECTS) Makefile
	ar r arithmetique.a $(LIB_OBJECTS)

$(LIB_OBJECTS): $(HEADERS) Makefile

clean:
	/bin/rm -f *.o *.a

