.PHONY: clean distclean build-package install uninstall run-tests

PACKAGE := functional-command.plt
SRC_DIR := $(patsubst %.plt,%,$(PACKAGE))
PLT_FILE := ../$(PACKAGE)

PLANET_SPEC := cobbe $(PACKAGE) 1 0

SOURCES := $(wildcard *.rkt) $(wildcard *.scrbl)

EXTRA_FILES := *.html *.css *.js *~ compiled planet-docs

$(PLT_FILE) : $(SOURCES)
	$(RM) -r $(EXTRA_FILES)
	(cd ..; raco planet link $(PLANET_SPEC) $(SRC_DIR) )
	(cd ..; raco planet create $(SRC_DIR) )
	(cd ..; raco planet unlink $(PLANET_SPEC) )

clean :
	$(RM) -r $(EXTRA_FILES)

distclean : clean
	 $(RM) -r $(PLT_FILE)

build-package : $(PLT_FILE)

manual.html : $(SOURCES)
	raco planet link $(PLANET_SPEC) .
	raco scribble manual.scrbl
	raco planet unlink $(PLANET_SPEC)

install : $(PLT_FILE)
	(cd ..; raco planet fileinject $(PLANET_SPEC) )

uninstall :
	raco planet remove $(PLANET_SPEC)

run-tests :
	racket -t run-all-tests.rkt
