# Makefile
# $Id: Makefile,v 1.2 2007/07/13 06:50:26 sendan Exp $
# masashi shimakura
#

AR = ar
AR_OPT = rcus

CC = gcc
CFLAGS = -Wall -O2 -g
RM = rm

TARGET = difference difference.a libdifference.so

OBJ = difference.o difference_off.o difference_on.o \
      diff_onset.o diff_offset.o mallocset.o data_aray.o \
      diff_comp.o diff_uncomp.o difference_onset.o

AOBJ = almemsys.a

INC = difference.h almemsys.h

ALMEMSYS = almemsys.a almemsys.h

MEMSYS_PATH = ../almemsys



all : ${ALMEMSYS} ${TARGET}

almemsys.h: almemsys.h

	cp -ip ${MEMSYS_PATH}/almemsys.h ./

almemsys.a: almemsys.a

	cp -ip ${MEMSYS_PATH}/almemsys.a ./



difference: ${OBJ} ${AOBJ} ${INC} 

	${CC} ${CFLAGS} ${CPPFLAGS} -o $@ ${OBJ} ${AOBJ}

difference_off.o : difference_off.c ${AOBJ} ${INC}

	${CC} ${CFLAGS} -c difference_off.c

difference_on.o : difference_on.c ${AOBJ} ${INC}

	${CC} ${CFLAGS} -c difference_on.c

difference_onset.o : difference_onset.c ${AOBJ} ${INC}

	${CC} ${CFLAGS} -c difference_onset.c

diff_onset.o : diff_onset.c ${AOBJ} ${INC}

	${CC} ${CFLAGS} -c diff_onset.c

diff_offset.o : diff_offset.c ${AOBJ} ${INC}

	${CC} ${CFLAGS} -c diff_offset.c

difference.o : difference.c ${AOBJ} ${INC}

	${CC} ${CFLAGS} -c difference.c

data_aray.o : data_aray.c ${AOBJ} ${INC}

	${CC} ${CFLAGS} -c data_aray.c

diff_comp.o : diff_comp.c ${AOBJ} ${INC}

	${CC} ${CFLAGS} -c diff_comp.c

diff_uncomp.o : diff_uncomp.c ${AOBJ} ${INC}

	${CC} ${CFLAGS} -c diff_uncomp.c

mallocset.o : mallocset.c ${INC}

	${CC} ${CFLAGS} -c mallocset.c


# lib
difference.a: ${OBJ}

	${AR} ${AR_OPT} difference.a ${OBJ}

libdifference.so: ${OBJ}

	gcc -shared -Wl,-soname,libdifference.so.0 -o libdifference.so ${OBJ}



clean:
	${RM} -f ${TARGET} *.so *.a *.o *.core ${ALMEMSYS}


