summaryrefslogtreecommitdiff
path: root/test/lib/Makefile
diff options
context:
space:
mode:
authorJohn Mark Bell <jmb@netsurf-browser.org>2007-09-22 13:32:42 +0000
committerJohn Mark Bell <jmb@netsurf-browser.org>2007-09-22 13:32:42 +0000
commitf1f80696ebe87520de0c857371e0ca109fce68cb (patch)
tree66b241e6ef7384e9bed2b57b11c5d8f075601b12 /test/lib/Makefile
parentdac9bafa302a42ef8e58fa017739cc29a046413f (diff)
downloadlibdom-f1f80696ebe87520de0c857371e0ca109fce68cb.tar.gz
libdom-f1f80696ebe87520de0c857371e0ca109fce68cb.tar.bz2
Create a library of utility functions for the testsuite to use
Make test/binding.c include stdio.h itself rather than relying on other things to include it. svn path=/trunk/dom/; revision=3568
Diffstat (limited to 'test/lib/Makefile')
-rw-r--r--test/lib/Makefile69
1 files changed, 69 insertions, 0 deletions
diff --git a/test/lib/Makefile b/test/lib/Makefile
new file mode 100644
index 0000000..22a06e9
--- /dev/null
+++ b/test/lib/Makefile
@@ -0,0 +1,69 @@
+# Makefile for DOM testcase utility library
+#
+# Toolchain is exported by top-level makefile
+#
+# Top-level makefile also exports the following variables:
+#
+# COMPONENT Name of component
+# EXPORT Absolute path of export directory
+# TOP Absolute path of source tree root
+#
+# The top-level makefile requires the following targets to exist:
+#
+# clean Clean source tree
+# debug Create a debug binary
+# distclean Fully clean source tree, back to pristine condition
+# export Export distributable components to ${EXPORT}
+# release Create a release binary
+# setup Perform any setup required prior to compilation
+# test Execute any test cases
+
+# Manipulate include paths
+CFLAGS += -I$(TOP) -I$(CURDIR)
+
+# Release output
+RELEASE = libdebug.a
+
+# Debug output
+DEBUG = libdebug-debug.a
+
+# Objects
+OBJS = list testassert testobject utils
+
+.PHONY: clean debug export release setup test
+
+# Targets
+release: $(addprefix Release/, $(addsuffix .o, $(OBJS)))
+ @${AR} ${ARFLAGS} $(RELEASE) Release/*
+
+debug: $(addprefix Debug/, $(addsuffix .o, $(OBJS)))
+ @${AR} ${ARFLAGS} $(DEBUG) Debug/*
+
+clean:
+ifneq (${OBJS}, )
+ -@${RM} ${RMFLAGS} $(addprefix Release/, $(addsuffix .o, ${OBJS}))
+ -@${RM} ${RMFLAGS} $(addprefix Debug/, $(addsuffix .o, ${OBJS}))
+endif
+ -@${RM} ${RMFLAGS} $(RELEASE) $(DEBUG)
+
+distclean:
+ -@${RM} ${RMFLAGS} -r Release
+ -@${RM} ${RMFLAGS} -r Debug
+
+setup:
+ @${MKDIR} ${MKDIRFLAGS} Release
+ @${MKDIR} ${MKDIRFLAGS} Debug
+
+export:
+
+test:
+
+# Pattern rules
+Release/%.o: %.c
+ @${ECHO} ${ECHOFLAGS} "==> $<"
+ @${CC} -c ${CFLAGS} -DNDEBUG -o $@ $<
+
+Debug/%.o: %.c
+ @${ECHO} ${ECHOFLAGS} "==> $<"
+ @${CC} -c -g ${CFLAGS} -o $@ $<
+