-CFLAGS = -std=gnu99 -Wall -Werror -g -D_GNU_SOURCE=1
-all: dump dump2
+CFLAGS := -std=gnu99 -Wall -Werror -g -D_GNU_SOURCE=1
+base_cflags := $(CFLAGS)
+base_ldflags := $(LDFLAGS)
+parse-xml.o: CFLAGS := $(shell pkg-config --cflags libxml-2.0) $(base_cflags)
+parse-xml: LDFLAGS := $(shell pkg-config --libs libxml-2.0) $(LDFLAGS)
+dump2.o: CFLAGS := $(base_cflags) -Wno-unused
+
+all: dump dump2 parse-xml
dump: dump.o
dump2: dump2.o
+parse-xml: parse-xml.o