path: root/src/utils/Makefile
diff options
authorJohn Mark Bell <>2007-09-29 01:01:55 +0000
committerJohn Mark Bell <>2007-09-29 01:01:55 +0000
commit6b1aeb6465f339bfbc7be33b1ecab3f235adbe7f (patch)
tree720ad0f18306af6b11b9b1c0dbd622bf57792af6 /src/utils/Makefile
parent83bc8f09261fb4d265cc79d39e740b4a0c9648e2 (diff)
Introduce global initialistaion/finalisation for DOM library. This should be used to initialise any parts of the library before they are used. Mostly, this will comprise of static initialisers. Finalisation cleans up afterwards. This API is only exposed to language-specific binding libraries -- they should expose their own global initialisation/finalisation routines which call the core libdom ones.
Introduce new utility code for namespace and qname processing. Port dom_document_create_element_ns() and dom_document_create_attribute_ns() to this new code. Make libdom-libxml's initialiser initialise libdom itself first of all. svn path=/trunk/dom/; revision=3604
Diffstat (limited to 'src/utils/Makefile')
1 files changed, 53 insertions, 0 deletions
diff --git a/src/utils/Makefile b/src/utils/Makefile
new file mode 100644
index 0000000..29369ae
--- /dev/null
+++ b/src/utils/Makefile
@@ -0,0 +1,53 @@
+# Makefile for libdom
+# 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
+# Objects
+OBJS = namespace
+.PHONY: clean debug distclean export release setup test
+# Targets
+release: $(addprefix ../Release/, $(addsuffix .o, $(OBJS)))
+debug: $(addprefix ../Debug/, $(addsuffix .o, $(OBJS)))
+ -@${RM} ${RMFLAGS} $(addprefix ../Release/, $(addsuffix .o, ${OBJS}))
+ -@${RM} ${RMFLAGS} $(addprefix ../Debug/, $(addsuffix .o, ${OBJS}))
+# Pattern rules
+../Release/%.o: %.c
+ @${ECHO} ${ECHOFLAGS} "==> $<"
+ @${CC} -c ${CFLAGS} -DNDEBUG -o $@ $<
+../Debug/%.o: %.c
+ @${ECHO} ${ECHOFLAGS} "==> $<"
+ @${CC} -c -g ${CFLAGS} -o $@ $<