ISO 8601 parser/unparser / Makefile

CFLAGS+=-std=c99 -g -Werror -Wmissing-field-initializers -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wshadow -Wsign-compare -Wnewline-eof -Wshorten-64-to-32 -Wundeclared-selector
LDFLAGS+=-framework Foundation

all: testparser unparse-weekdate unparse-ordinaldate unparse-date
test: all parser-test unparser-test
analysis: ISO8601DateFormatter-analysis.plist

parser-test: testparser
unparser-test: unparse-weekdate unparse-ordinaldate unparse-date
	./ > testunparser.out
	diff -qs test_files/testunparser-expected.out testunparser.out

.PHONY: all test analysis parser-test unparser-test

testparser: testparser.o ISO8601DateFormatter.o

unparse-weekdate: unparse-weekdate.o ISO8601DateFormatter.o ISO8601DateFormatter.o
unparse-ordinaldate: unparse-ordinaldate.o ISO8601DateFormatter.o ISO8601DateFormatter.o
unparse-date: unparse-date.o ISO8601DateFormatter.o ISO8601DateFormatter.o

ISO8601DateFormatter-analysis.plist: ISO8601DateFormatter.m
	$(CLANG) $^ --analyze -o /dev/null
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.