view src/Makefile @ 101:d6f9af55b0d0

More documentation. 1. main page 2. copyright
author Thinker K.F. Li <thinker@branda.to>
date Wed, 10 Sep 2008 13:35:56 +0800
parents 3645e29e4986
children 565b55508c8d
line wrap: on
line source

SRCS =	coord.c geo.c shape_path.c shape_text.c shape_rect.c \
	redraw_man.c timer.c animate.c paint.c event.c observer.c \
	X_supp.c timertool.c tools.c
OBJS = ${SRCS:C/(.*)\.c/\1.o/g}
TESTCASE_OBJS = ${SRCS:C/(.*)\.c/testcase-\1.o/g}
CFLAGS+=	-Wall -I/usr/local/include `pkg-config --cflags cairo`
LDFLAGS =	`pkg-config --libs cairo`
BINS =	testcase libmbfly.a X_main

all: $(BINS)

testcase: testcase.o $(TESTCASE_OBJS)
	$(CC) $(LDFLAGS) -o $@ $(.ALLSRC) -L/usr/local/lib -lcunit

libmbfly.a: $(OBJS)
	$(AR) -cr $@ $(.ALLSRC)


.for i in $(TESTCASE_OBJS)
${i}: ${i:C/testcase-(.*).o/\1.c/}
	$(CC) $(CFLAGS) -DUNITTEST -g -c -o $@ $(.ALLSRC)
.endfor

testcase.o:	testcase.c
	$(CC) $(CFLAGS) -c $(.ALLSRC)

X_main: X_main.o libmbfly.a
	$(CC) $(CFALGS) `pkg-config --libs cairo` -o $@ $(.ALLSRC)

X_main.o: X_main.c
	$(CC) $(CFLAGS) `pkg-config --cflags cairo` -c $(.ALLSRC)

clean:
	for i in *.o *~ *.core $(SHAPE_OBJS) $(BINS); do \
		echo "delete $$i"; \
		rm -f $$i; \
	done

depend:
	mkdep $(CFLAGS) $(SRCS)