|
| 1 | +# |
| 2 | +# Build TimesTen Sample Programs (Unix) |
| 3 | +# Copyright (c) 1999, 2017, Oracle and/or its affiliates. All rights reserved. |
| 4 | +# |
| 5 | +# $Revision |
| 6 | +# |
| 7 | + |
| 8 | +# |
| 9 | +# Precompilation of plsqlPROC.pc requires that the environment variable |
| 10 | +# TWO_TASK is set. The syntax for setting environment variables varies |
| 11 | +# depending on which type of shell is used. This make file uses Bourne shell. |
| 12 | +# |
| 13 | +SHELL=/bin/sh |
| 14 | + |
| 15 | +TT_MVL_LINUX = 0 |
| 16 | + |
| 17 | +INSTDIR = $(TIMESTEN_HOME)/install |
| 18 | +COMMDIR = $(QUICKSTART_HOME)/sample_code/common |
| 19 | +TTORACLE_HOME = $(INSTDIR)/ttoracle_home/instantclient_11_2 |
| 20 | +OCIINCS = $(TTORACLE_HOME)/sdk/include |
| 21 | + |
| 22 | +CC = gcc |
| 23 | + |
| 24 | +PLATCFLAGS = -Os -finline-functions |
| 25 | +LDFLAGS = |
| 26 | + |
| 27 | +EXTRALIBS = -lpthread -lm -lrt |
| 28 | + |
| 29 | +ifeq ($(TT_MVL_LINUX),1) |
| 30 | +EXTRALIBS += -ldl -lnsl -lnnz11 |
| 31 | +endif |
| 32 | + |
| 33 | +INCS = -I$(INSTDIR)/include -I$(COMMDIR) -I$(OCIINCS) |
| 34 | + |
| 35 | +CSDEFS = -DTTCLIENTSERVER |
| 36 | +CFLAGS = $(PLATDEFS) $(PLATCFLAGS) $(INCS) |
| 37 | + |
| 38 | +TTLINK = -L$(INSTDIR)/lib -L$(TTORACLE_HOME) -Wl,-rpath,$(INSTDIR)/lib |
| 39 | + |
| 40 | +ICLIBS = $(TTLINK) -lclntsh $(EXTRALIBS) |
| 41 | + |
| 42 | +ANSIDYN1 = ansidyn1 |
| 43 | +ANSIDYN1OBJS = ansidyn1.o psswds.o parseargs.o |
| 44 | +ADDEMPPROC = addempPROC |
| 45 | +ADDEMPPROCOBJS = addempPROC.o psswds.o parseargs.o |
| 46 | +BATCHFETCHPROC = batchfetchPROC |
| 47 | +BATCHFETCHPROCOBJS = batchfetchPROC.o psswds.o parseargs.o |
| 48 | +CURSORPROC = cursorPROC |
| 49 | +CURSORPROCOBJS = cursorPROC.o psswds.o parseargs.o |
| 50 | +GETEMPPROC = getempPROC |
| 51 | +GETEMPPROCOBJS = getempPROC.o psswds.o parseargs.o |
| 52 | +PLSQLPROC = plsqlPROC |
| 53 | +PLSQLPROCOBJS = plsqlPROC.o psswds.o parseargs.o |
| 54 | + |
| 55 | +PROGS = $(ANSIDYN1) $(ADDEMPPROC) $(BATCHFETCHPROC) $(CURSORPROC) \ |
| 56 | + $(GETEMPPROC) $(PLSQLPROC) |
| 57 | +C_FILES = ansidyn1.c addempPROC.c batchfetchPROC.c cursorPROC.c \ |
| 58 | + getempPROC.c plsqlPROC.c |
| 59 | + |
| 60 | +# |
| 61 | +# Top level targets |
| 62 | +# |
| 63 | + |
| 64 | +all: $(PROGS) |
| 65 | + |
| 66 | +clean: |
| 67 | + rm -f $(PROGS) *.o *.lis $(C_FILES) |
| 68 | + |
| 69 | + |
| 70 | +# |
| 71 | +# Targets for building executables |
| 72 | +# |
| 73 | + |
| 74 | +$(ANSIDYN1): $(ANSIDYN1OBJS) |
| 75 | + $(CC) -o $@ $(LDFLAGS) $(ANSIDYN1OBJS) $(ICLIBS) |
| 76 | + |
| 77 | +$(ADDEMPPROC): $(ADDEMPPROCOBJS) |
| 78 | + $(CC) -o $@ $(LDFLAGS) $(ADDEMPPROCOBJS) $(ICLIBS) |
| 79 | + |
| 80 | +$(BATCHFETCHPROC): $(BATCHFETCHPROCOBJS) |
| 81 | + $(CC) -o $@ $(LDFLAGS) $(BATCHFETCHPROCOBJS) $(ICLIBS) |
| 82 | + |
| 83 | +$(CURSORPROC): $(CURSORPROCOBJS) |
| 84 | + $(CC) -o $@ $(LDFLAGS) $(CURSORPROCOBJS) $(ICLIBS) |
| 85 | + |
| 86 | +$(GETEMPPROC): $(GETEMPPROCOBJS) |
| 87 | + $(CC) -o $@ $(LDFLAGS) $(GETEMPPROCOBJS) $(ICLIBS) |
| 88 | + |
| 89 | +$(PLSQLPROC): $(PLSQLPROCOBJS) |
| 90 | + $(CC) -o $@ $(LDFLAGS) $(PLSQLPROCOBJS) $(ICLIBS) |
| 91 | + |
| 92 | + |
| 93 | +# |
| 94 | +# Target for building object files |
| 95 | +# |
| 96 | + |
| 97 | +.c.o: |
| 98 | + $(CC) $(CFLAGS) -o $@ -c $< |
| 99 | + |
| 100 | + |
| 101 | +# |
| 102 | +# Targets for Oracle Pro*C Pre-compilation |
| 103 | +# |
| 104 | + |
| 105 | +ansidyn1.c: ansidyn1.pc |
| 106 | + @proc include=$(COMMDIR) iname=ansidyn1.pc config=pcscfg.cfg mode=ansi |
| 107 | + |
| 108 | +addempPROC.c: addempPROC.pc |
| 109 | + @proc include=$(COMMDIR) iname=addempPROC.pc config=pcscfg.cfg |
| 110 | + |
| 111 | +batchfetchPROC.c: batchfetchPROC.pc |
| 112 | + @proc include=$(COMMDIR) iname=batchfetchPROC.pc config=pcscfg.cfg |
| 113 | + |
| 114 | +cursorPROC.c: cursorPROC.pc |
| 115 | + @proc include=$(COMMDIR) iname=cursorPROC.pc config=pcscfg.cfg |
| 116 | + |
| 117 | +getempPROC.c: getempPROC.pc |
| 118 | + @proc include=$(COMMDIR) iname=getempPROC.pc config=pcscfg.cfg |
| 119 | + |
| 120 | +plsqlPROC.c: plsqlPROC.pc |
| 121 | +ifeq ($(TT_MVL_LINUX),1) |
| 122 | + @TWO_TASK=sampledb;export TWO_TASK;LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) proc include=$(COMMDIR) USERID=appuser iname=plsqlPROC.pc config=pcscfg.cfg sqlcheck=semantics |
| 123 | +else |
| 124 | + @TWO_TASK=sampledb;export TWO_TASK;proc include=$(COMMDIR) USERID=appuser iname=plsqlPROC.pc config=pcscfg.cfg sqlcheck=semantics |
| 125 | +endif |
| 126 | + |
0 commit comments