view src/Makefile.pmake @ 935:960e2395973d

Fix the bug of crash by abort() when running testsvg.js. The cached coords their pcache areas should be recomputed are also add ro zeroing list. They have no dirty areas. But, their pcache area must be added to parent cached coord.
author Thinker K.F. Li <thinker@codemud.net>
date Fri, 12 Nov 2010 16:03:19 +0800
parents 586e50f82c1f
children
line wrap: on
line source

# -*- indent-tabs-mode: t; tab-width: 8; c-basic-offset: 4; -*-
# vim: sw=4:ts=8:sts=4
SRCS =	coord.c geo.c shape_path.c shape_text.c shape_rect.c \
     	shape_image.c \
	redraw_man.c timer.c animate.c paint.c event.c observer.c \
	X_supp.c timertool.c tools.c shift.c chgcolor.c \
	visibility.c rotate.c prop.c mouse.c img_ldr.c
OBJS = ${SRCS:C/(.*)\.c/\1.o/g}
TESTCASE_SRCS = ${SRCS:C/X_supp\.c//}
TESTCASE_OBJS = ${TESTCASE_SRCS:C/(.*)\.c/testcase-\1.o/g}
CFLAGS+=	-Wall -I../include -I/usr/local/include \
		`pkg-config --cflags cairo`
LDFLAGS =	`pkg-config --libs cairo`
BINS =	libmbfly.a X_main
PREFIX?=/usr/local/
HEADERS=	X_supp.h animate.h mb.h mb_timer.h mb_types.h \
		observer.h paint.h redraw_man.h shapes.h tools.h
MKDIR?=	mkdir -p

all: $(BINS)

install: $(BINS)
	$(INSTALL) -d ${PREFIX}include/mb
.for i in $(HEADERS)
	$(INSTALL) -o root -m 0644 ${i} ${PREFIX}include/mb/
.endfor
	$(INSTALL) -o root libmbfly.a ${PREFIX}lib/

uninstall:
.for i in $(HEADERS)
	rm -f ${PREFIX}include/mb/${i}
.endfor
	rm -f ${PREFIX}lib/libmbfly.a
	rmdir ${PREFIX}include/mb/

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) testcase; do \
		echo "delete $$i"; \
		rm -f $$i; \
	done

depend:
	mkdep $(CFLAGS) $(SRCS)