summaryrefslogtreecommitdiffstats
path: root/libtecla-1.6.3/Makefile.rules
diff options
context:
space:
mode:
Diffstat (limited to 'libtecla-1.6.3/Makefile.rules')
-rw-r--r--libtecla-1.6.3/Makefile.rules169
1 files changed, 169 insertions, 0 deletions
diff --git a/libtecla-1.6.3/Makefile.rules b/libtecla-1.6.3/Makefile.rules
new file mode 100644
index 0000000..0cf2316
--- /dev/null
+++ b/libtecla-1.6.3/Makefile.rules
@@ -0,0 +1,169 @@
+default: $(OBJDIR) $(TARGETS) $(DEMOS) $(PROGRAMS)
+
+#-----------------------------------------------------------------------
+# You shouldn't need to change anything in this file.
+#-----------------------------------------------------------------------
+
+# Create the directory in which the object files will be created.
+
+$(OBJDIR):
+ mkdir $(OBJDIR)
+
+# Construct the compilation command.
+
+COMPILE = $(CC) -c $(CFLAGS) -o $@
+
+LIB_OBJECTS = $(OBJDIR)/getline.o $(OBJDIR)/keytab.o $(OBJDIR)/freelist.o \
+ $(OBJDIR)/strngmem.o $(OBJDIR)/hash.o $(OBJDIR)/history.o \
+ $(OBJDIR)/direader.o $(OBJDIR)/homedir.o $(OBJDIR)/pathutil.o \
+ $(OBJDIR)/expand.o $(OBJDIR)/stringrp.o $(OBJDIR)/cplfile.o \
+ $(OBJDIR)/cplmatch.o $(OBJDIR)/pcache.o $(OBJDIR)/version.o \
+ $(OBJDIR)/chrqueue.o $(OBJDIR)/ioutil.o $(OBJDIR)/errmsg.o
+
+# List the available demonstration programs.
+
+DEMO_PROGS = demo$(SUFFIX) demo2$(SUFFIX) demo3$(SUFFIX)
+
+# List all of the programs that this makefile can build.
+
+PROGS = $(DEMO_PROGS) enhance$(SUFFIX)
+
+static: libtecla$(SUFFIX).a
+
+libtecla$(SUFFIX).a: $(LIB_OBJECTS)
+ $(AR) -ru $@ $(LIB_OBJECTS); \
+ $(RANLIB) $@; \
+ rm -f $(PROGS)
+
+shared: libtecla$(SUFFIX)$(SHARED_EXT)
+
+libtecla$(SUFFIX)$(SHARED_EXT): $(LIB_OBJECTS) $(srcdir)/libtecla.map \
+ libtecla.map.opt
+ $(LINK_SHARED)
+ @endings="$(SHARED_ALT)" ; \
+ for alt in $$endings ; do \
+ lnk="libtecla$(SUFFIX)$$alt"; \
+ echo "rm -f $$lnk; $(LN_S) $@ $$lnk"; \
+ rm -f $$lnk; $(LN_S) $@ $$lnk; \
+ done; \
+ rm -f $(PROGS)
+
+libtecla.map.opt: $(srcdir)/libtecla.map
+ sed -n 's/^[ ]*\([_a-zA-Z0-9]*\)[ ]*;.*/+e \1/p' $? >$@
+
+demos: $(DEMO_PROGS)
+
+demo$(SUFFIX): $(OBJDIR)/demo.o $(TARGETS)
+ LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) -o $@ \
+ $(OBJDIR)/demo.o -L. -ltecla$(SUFFIX) $(LIBS)
+
+demo2$(SUFFIX): $(OBJDIR)/demo2.o $(TARGETS)
+ LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) -o $@ \
+ $(OBJDIR)/demo2.o -L. -ltecla$(SUFFIX) $(LIBS)
+
+demo3$(SUFFIX): $(OBJDIR)/demo3.o $(TARGETS)
+ LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) -o $@ \
+ $(OBJDIR)/demo3.o -L. -ltecla$(SUFFIX) $(LIBS)
+
+enhance$(SUFFIX): $(OBJDIR)/enhance.o $(TARGETS)
+ LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) -o $@ \
+ $(OBJDIR)/enhance.o -L. -ltecla$(SUFFIX) $(LIBS)
+
+#-----------------------------------------------------------------------
+# Object file dependencies.
+#-----------------------------------------------------------------------
+
+$(OBJDIR)/getline.o: $(srcdir)/getline.c $(srcdir)/pathutil.h \
+ $(srcdir)/libtecla.h $(OBJDIR)/keytab.h $(srcdir)/history.h \
+ $(srcdir)/freelist.h $(srcdir)/stringrp.h $(srcdir)/getline.h \
+ $(srcdir)/ioutil.h $(srcdir)/chrqueue.h $(srcdir)/cplmatch.h \
+ $(srcdir)/expand.h $(srcdir)/errmsg.h
+ $(COMPILE) $(srcdir)/getline.c
+
+$(OBJDIR)/keytab.o: $(srcdir)/keytab.c $(OBJDIR)/keytab.h \
+ $(srcdir)/strngmem.h $(srcdir)/getline.h $(srcdir)/errmsg.h \
+ $(srcdir)/hash.h
+ $(COMPILE) $(srcdir)/keytab.c
+
+$(OBJDIR)/strngmem.o: $(srcdir)/strngmem.c $(srcdir)/strngmem.h \
+ $(srcdir)/freelist.h
+ $(COMPILE) $(srcdir)/strngmem.c
+
+$(OBJDIR)/freelist.o: $(srcdir)/freelist.c $(srcdir)/freelist.h
+ $(COMPILE) $(srcdir)/freelist.c
+
+$(OBJDIR)/hash.o: $(srcdir)/hash.c $(srcdir)/hash.h $(srcdir)/strngmem.h \
+ $(srcdir)/freelist.h
+ $(COMPILE) $(srcdir)/hash.c
+
+$(OBJDIR)/history.o: $(srcdir)/history.c $(srcdir)/ioutil.h \
+ $(srcdir)/history.h $(srcdir)/freelist.h $(srcdir)/errmsg.h
+ $(COMPILE) $(srcdir)/history.c
+
+$(OBJDIR)/expand.o: $(srcdir)/expand.c $(srcdir)/freelist.h \
+ $(srcdir)/direader.h $(srcdir)/pathutil.h $(srcdir)/homedir.h \
+ $(srcdir)/stringrp.h $(srcdir)/libtecla.h $(srcdir)/ioutil.h \
+ $(srcdir)/expand.h $(srcdir)/errmsg.h
+ $(COMPILE) $(srcdir)/expand.c
+
+$(OBJDIR)/direader.o: $(srcdir)/direader.c $(srcdir)/direader.h \
+ $(srcdir)/errmsg.h
+ $(COMPILE) $(srcdir)/direader.c
+
+$(OBJDIR)/homedir.o: $(srcdir)/homedir.c $(srcdir)/pathutil.h \
+ $(srcdir)/homedir.h $(srcdir)/errmsg.h
+ $(COMPILE) $(srcdir)/homedir.c
+
+$(OBJDIR)/pathutil.o: $(srcdir)/pathutil.c $(srcdir)/pathutil.h
+ $(COMPILE) $(srcdir)/pathutil.c
+
+$(OBJDIR)/stringrp.o: $(srcdir)/stringrp.c $(srcdir)/freelist.h \
+ $(srcdir)/stringrp.h
+ $(COMPILE) $(srcdir)/stringrp.c
+
+$(OBJDIR)/cplfile.o: $(srcdir)/cplfile.c $(srcdir)/libtecla.h \
+ $(srcdir)/direader.h $(srcdir)/homedir.h $(srcdir)/pathutil.h \
+ $(srcdir)/cplfile.h $(srcdir)/errmsg.h
+ $(COMPILE) $(srcdir)/cplfile.c
+
+$(OBJDIR)/cplmatch.o: $(srcdir)/cplmatch.c $(srcdir)/libtecla.h \
+ $(srcdir)/ioutil.h $(srcdir)/stringrp.h $(srcdir)/pathutil.h \
+ $(srcdir)/cplfile.h $(srcdir)/cplmatch.h $(srcdir)/errmsg.h
+ $(COMPILE) $(srcdir)/cplmatch.c
+
+$(OBJDIR)/pcache.o: $(srcdir)/pcache.c $(srcdir)/libtecla.h \
+ $(srcdir)/pathutil.h $(srcdir)/homedir.h $(srcdir)/freelist.h \
+ $(srcdir)/direader.h $(srcdir)/stringrp.h $(errmsg.h)
+ $(COMPILE) $(srcdir)/pcache.c
+
+$(OBJDIR)/demo.o: $(srcdir)/demo.c $(srcdir)/libtecla.h
+ $(COMPILE) $(srcdir)/demo.c
+
+$(OBJDIR)/demo2.o: $(srcdir)/demo2.c $(srcdir)/libtecla.h
+ $(COMPILE) $(srcdir)/demo2.c
+
+$(OBJDIR)/demo3.o: $(srcdir)/demo3.c $(srcdir)/libtecla.h
+ $(COMPILE) $(srcdir)/demo3.c
+
+$(OBJDIR)/version.o: $(srcdir)/version.c $(srcdir)/libtecla.h
+ $(COMPILE) $(srcdir)/version.c
+
+$(OBJDIR)/enhance.o: $(srcdir)/enhance.c $(srcdir)/libtecla.h
+ $(COMPILE) $(srcdir)/enhance.c
+
+$(OBJDIR)/chrqueue.o: $(srcdir)/chrqueue.c $(srcdir)/ioutil.h \
+ $(srcdir)/chrqueue.h $(srcdir)/freelist.h $(srcdir)/errmsg.h
+ $(COMPILE) $(srcdir)/chrqueue.c
+
+$(OBJDIR)/ioutil.o: $(srcdir)/ioutil.c $(srcdir)/ioutil.h
+ $(COMPILE) $(srcdir)/ioutil.c
+
+$(OBJDIR)/errmsg.o: $(srcdir)/errmsg.c $(srcdir)/errmsg.h
+ $(COMPILE) $(srcdir)/errmsg.c
+
+#-----------------------------------------------------------------------
+# Include file dependencies.
+#-----------------------------------------------------------------------
+
+$(OBJDIR)/keytab.h: $(srcdir)/keytab.h $(srcdir)/libtecla.h
+ cp $(srcdir)/keytab.h $@