###########################################################################
#
# FairCom Corporation makefile for c-treeACE ODBC API Tutorials
#
###########################################################################

# c-treeACE base directory
ACEBASEDIR=../../..
MODEL=multithreaded/static

# Directories in which c-tree header files are located
INCDIRS=-I$(ACEBASEDIR)/ctree.drivers/include/unix/$(MODEL) -I$(ACEBASEDIR)/ctree.drivers/include/unix -I$(ACEBASEDIR)/ctree.drivers/include

# Compile options
CFLAGS=-fPIC -g -m32 -w -DFAIRCOM_MOD -DDH_OS_UNIX -DDH_OS_UNIX_LINUX $(INCDIRS) -o $@

# Directories in which c-tree libraries are located
LIBDIRS=-L$(ACEBASEDIR)/ctree.drivers/lib -L$(ACEBASEDIR)/ctree.drivers/lib/License.Lib/openssl/lib

# System libraries required for link
SYSLIBS=-lstdc++ -lpthread -lm -ldl -lssl -lcrypto

# Directory in which tutorial source code is located
SRCDIR=..

# Directory in which tutorial binaries are created
OUTDIR=..

ALL: \
	$(OUTDIR)/ODBCTutorial1 \
	$(OUTDIR)/ODBCTutorial2 \
	$(OUTDIR)/ODBCTutorial3 \
	$(OUTDIR)/ODBCTutorial4
	@echo The ODBC tutorials are ready to run.
	@echo Type \'make run\' to run the tutorials.



$(OUTDIR)/ODBCTutorial1: $(SRCDIR)/ODBCTutorial1.c
	cc $(CFLAGS) $? $(LIBDIRS) -lodbc_c -lctesql $(SYSLIBS)

$(OUTDIR)/ODBCTutorial2: $(SRCDIR)/ODBCTutorial2.c
	cc $(CFLAGS) $? $(LIBDIRS) -lodbc_c -lctesql $(SYSLIBS)

$(OUTDIR)/ODBCTutorial3: $(SRCDIR)/ODBCTutorial3.c
	cc $(CFLAGS) $? $(LIBDIRS) -lodbc_c -lctesql $(SYSLIBS)

$(OUTDIR)/ODBCTutorial4: $(SRCDIR)/ODBCTutorial4.c
	cc $(CFLAGS) $? $(LIBDIRS) -lodbc_c -lctesql $(SYSLIBS)

run:
	@echo Running ODBC Tutorial 1 ...
	@../ODBCTutorial1
	@echo ''
	@echo Running ODBC Tutorial 2 ...
	@../ODBCTutorial2
	@echo ''
	@echo Running ODBC Tutorial 3 ...
	@../ODBCTutorial3
	@echo ''
	@echo Running ODBC Tutorial 4 ...
	@../ODBCTutorial4

clean:
	rm -f $(OUTDIR)/ODBCTutorial1
	rm -f $(OUTDIR)/ODBCTutorial2
	rm -f $(OUTDIR)/ODBCTutorial3
	rm -f $(OUTDIR)/ODBCTutorial4
