summaryrefslogtreecommitdiff
path: root/test/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'test/Makefile')
-rw-r--r--test/Makefile79
1 files changed, 51 insertions, 28 deletions
diff --git a/test/Makefile b/test/Makefile
index 7327580a9..ce3e2744b 100644
--- a/test/Makefile
+++ b/test/Makefile
@@ -1,55 +1,78 @@
#
# NetSurf unit tests
-CFLAGS := -std=c99 -g -O0 -D_BSD_SOURCE -D_POSIX_C_SOURCE -I. -I.. \
+
+test_CFLAGS := -std=c99 -g -Wall \
+ -D_BSD_SOURCE \
+ -D_POSIX_C_SOURCE=200809L \
+ -D_XOPEN_SOURCE=600 \
+ -Itest -I. -I.. \
$(shell pkg-config --cflags libcurl)
-LDFLAGS := $(shell pkg-config --libs libcurl) -lz
+test_LDFLAGS := $(shell pkg-config --libs libcurl) -lz
-llcache_CFLAGS := $(shell pkg-config --cflags libparserutils libwapcaplet libdom) -O2
-llcache_LDFLAGS := $(shell pkg-config --libs libparserutils libwapcaplet libdom)
+# nsurl sources and flags
+nsurl_SRCS := utils/corestrings.c utils/nsurl.c utils/idna.c test/log.c test/nsurl.c
+nsurl_CFLAGS := $(shell pkg-config --cflags libwapcaplet libdom libutf8proc) -O0
+nsurl_LDFLAGS := $(shell pkg-config --libs libwapcaplet libdom libutf8proc)
+# low level cache sources and flags
llcache_SRCS := content/fetch.c content/fetchers/curl.c \
content/fetchers/about.c content/fetchers/data.c \
content/fetchers/resource.c content/llcache.c \
content/urldb.c desktop/version.c \
image/image_cache.c \
utils/base64.c utils/corestrings.c utils/hashtable.c \
- utils/log.c utils/nsurl.c utils/messages.c utils/url.c \
+ utils/nsurl.c utils/messages.c utils/url.c \
utils/useragent.c utils/utils.c test/llcache.c
+llcache_CFLAGS := $(shell pkg-config --cflags libparserutils libwapcaplet libdom) -O2
+llcache_LDFLAGS := $(shell pkg-config --libs libparserutils libwapcaplet libdom)
-urldbtest_SRCS := content/urldb.c utils/url.c utils/utils.c utils/log.c \
- utils/messages.c utils/hashtable.c \
+# url database test sources and flags
+urldbtest_SRCS := content/urldb.c utils/url.c utils/utils.c utils/idna.c \
+ utils/messages.c utils/hashtable.c utils/bloom.c utils/nsoption.c \
utils/filename.c utils/nsurl.c utils/corestrings.c \
- test/urldbtest.c
+ test/log.c test/urldbtest.c
+urldbtest_CFLAGS := $(shell pkg-config --cflags libwapcaplet libdom libnsutils libutf8proc) -O2
+urldbtest_LDFLAGS := $(shell pkg-config --libs libwapcaplet libdom libnsutils libutf8proc)
-urldbtest_CFLAGS := $(shell pkg-config --cflags libwapcaplet libdom libnsutils) -O2
-urldbtest_LDFLAGS := $(shell pkg-config --libs libwapcaplet libdom libnsutils)
-
-nsurl_SRCS := utils/corestrings.c utils/log.c utils/nsurl.c utils/idna.c desktop/version.c test/nsurl.c
-nsurl_CFLAGS := $(shell pkg-config --cflags libwapcaplet libdom libutf8proc)
-nsurl_LDFLAGS := $(shell pkg-config --libs libwapcaplet libdom libutf8proc)
nsoption_SRCS := utils/log.c utils/nsoption.c test/nsoption.c
nsoption_CFLAGS := -Dnsgtk
-.PHONY: all
+CLEANS += test-clean
+
+TESTS := nsurl urldbtest
+
+TESTROOT := build-$(HOST)-test
+
+
+.PHONY:test
+
+test: $(TESTROOT)/created $(addprefix $(TESTROOT)/,$(TESTS))
+ $(TESTROOT)/nsurl
+ $(TESTROOT)/urldbtest
+
+$(TESTROOT)/created:
+ $(VQ)echo " MKDIR: $(TESTROOT)"
+ $(Q)$(MKDIR) $(TESTROOT)
+ $(Q)$(TOUCH) $@
+
+$(TESTROOT)/nsurl: $(nsurl_SRCS)
+ $(CC) $(test_CFLAGS) $(nsurl_CFLAGS) $^ -o $@ $(test_LDFLAGS) $(nsurl_LDFLAGS)
+
-all: nsurl
- ./nsurl
+$(TESTROOT)/urldbtest: $(urldbtest_SRCS)
+ $(CC) $(test_CFLAGS) $(urldbtest_CFLAGS) $^ -o $@ $(test_LDFLAGS) $(urldbtest_LDFLAGS)
-llcache: $(addprefix ../,$(llcache_SRCS))
- $(CC) $(CFLAGS) $(llcache_CFLAGS) $^ -o $@ $(LDFLAGS) $(llcache_LDFLAGS)
+$(TESTROOT)/llcache: $(llcache_SRCS)
+ $(CC) $(test_CFLAGS) $(llcache_CFLAGS) $^ -o $@ $(test_LDFLAGS) $(llcache_LDFLAGS)
-urldbtest: $(addprefix ../,$(urldbtest_SRCS))
- $(CC) $(CFLAGS) $(urldbtest_CFLAGS) $^ -o $@ $(LDFLAGS) $(urldbtest_LDFLAGS)
-nsurl: $(addprefix ../,$(nsurl_SRCS))
- $(CC) $(CFLAGS) $(nsurl_CFLAGS) $^ -o $@ $(LDFLAGS) $(nsurl_LDFLAGS)
-nsoption: $(addprefix ../,$(nsoption_SRCS))
- $(CC) $(CFLAGS) $(nsoption_CFLAGS) $^ -o $@ $(LDFLAGS) $(nsoption_LDFLAGS)
+$(TESTROOT)/nsoption: $(addprefix ../,$(nsoption_SRCS))
+ $(CC) $(test_CFLAGS) $(nsoption_CFLAGS) $^ -o $@ $(test_LDFLAGS) $(nsoption_LDFLAGS)
-.PHONY: clean
+.PHONY: test-clean
-clean:
- $(RM) llcache urldbtest nsurl nsoption
+test-clean:
+ $(RM) $(addprefix $(TESTROOT)/,$(TESTS))