1.PHONY: test
2GITHUB_ORG_URI := https://github.com/yaml
3TEST_SUITE_URL := $(GITHUB_ORG_URI)/yaml-test-suite
4LIBYAML_DIR ?= $(PWD)/libyaml-parser-emitter/libyaml
5
6default: help
7
8help:
9	@echo 'test  - Run the tests'
10	@echo 'clean - Remove generated files'
11	@echo 'help  - Show help'
12
13# Depends on parser and emitter but, building parser will also build emitter.
14# Building twice makes things fail. Note: Some environments like on OS X, the
15# shell resets the {DY,}LD_LIBRARY_PATH vars, so we work around it like so:
16test: data src/libyaml-parser
17	(export MY_LD_LIBRARY_PATH=$(LIBYAML_DIR)/src/.libs; prove -lv test)
18
19clean:
20	rm -fr data
21
22data:
23	git clone $(TEST_SUITE_URL) $@ --branch=$@
24
25%/libyaml-parser %/libyaml-emitter: %
26	(cd $<; make clean build)
27	(cd $<; make clean build)
28
29libyaml-parser-emitter:
30	git clone $(GITHUB_ORG_URI)/$@ $@
31