SPECIFICATION_FILE = example.scm

MY_SOURCES = example.c # plus any other .c/.h files you need

MY_LIBS    =         # extra libs you need go here
MY_LDFLAGS =         # extra -L flags go here
MY_CPPFLAGS =        # extra -I include flags go here
MY_DEFS =            # extra -D define flags go here

VERSION_STRING = "example 0.1"

# System settings
LIBCTL_DIR = /usr/share/libctl3
GEN_CTL_IO = /usr/bin/gen-ctl-io
LIBCTL     = -lctl

# Where to install the package data
pkgdatadir = /usr/local/share/example

CTL_DEFS = -DCTL_SCM='"'$(LIBCTL_DIR)/base/ctl.scm'"' \
       -DINCLUDE_SCM='"'$(LIBCTL_DIR)/base/include.scm'"' \
          -DSPEC_SCM='"'$(pkgdatadir)/$(SPECIFICATION_FILE)'"' \
    -DVERSION_STRING='"'$(VERSION_STRING)'"'

OBJS = main.o geom.o ctl-io.o

example: $(OBJS)
	gcc -Wall $(MY_LDFLAGS) $(MY_LIBS) $(LIBCTL) -o $@ $(OBJS)

.c.o:
	gcc -Wall -c $(MY_CPPFLAGS) $(MY_DEFS) $(CTL_DEFS) -o $*.o $*.c

ctl-io.c: $(SPECIFICATION_FILE) $(LIBCTL_DIR)/utils/geom.scm
	$(GEN_CTL_IO) --code -o $@ $(SPECIFICATION_FILE) $(LIBCTL_DIR)

ctl-io.h: $(SPECIFICATION_FILE) $(LIBCTL_DIR)/utils/geom.scm
	$(GEN_CTL_IO) --header -o $@ $(SPECIFICATION_FILE) $(LIBCTL_DIR)

clean:
	rm -f *.o ctl-io.*

.PHONY: clean
