#
# This is a sample Makeflow script that retrieves an image from the web,
# creates four variations of it, and then combines them into an animation.

# A Makeflow script is a subset of the Makefile language (see the manual
# for more information). For example, for convenience we can define the
# textual substitutions:
CURL=/usr/bin/curl
CONVERT=/usr/bin/convert
URL="https://ccl.cse.nd.edu/images/capitol.jpg"

# We specify the set of inputs and outputs. This is not required, but strongly
# recommended. MAKEFLOW_INPUTS files should exist in the local filesystem, but
# they are not copied to a remote execution site unless they appear as a rule
# prerequisite.
MAKEFLOW_INPUTS=
MAKEFLOW_OUTPUTS="capitol.montage.gif"

capitol.montage.gif: capitol.jpg capitol.90.jpg capitol.180.jpg capitol.270.jpg capitol.360.jpg
	$(CONVERT) -delay 10 -loop 0 capitol.jpg capitol.90.jpg capitol.180.jpg capitol.270.jpg capitol.360.jpg capitol.270.jpg capitol.180.jpg capitol.90.jpg capitol.montage.gif

capitol.90.jpg: capitol.jpg
	$(CONVERT) -swirl 90 capitol.jpg capitol.90.jpg

capitol.180.jpg: capitol.jpg
	$(CONVERT) -swirl 180 capitol.jpg capitol.180.jpg

capitol.270.jpg: capitol.jpg
	$(CONVERT) -swirl 270 capitol.jpg capitol.270.jpg

capitol.360.jpg: capitol.jpg
	$(CONVERT) -swirl 360 capitol.jpg capitol.360.jpg

# If a rule is preceded by LOCAL, it executes at the local site.
capitol.jpg:
	LOCAL $(CURL) -o capitol.jpg $(URL)

