1# ===========================================================================
2#
3#                            PUBLIC DOMAIN NOTICE
4#               National Center for Biotechnology Information
5#
6#  This software/database is a "United States Government Work" under the
7#  terms of the United States Copyright Act.  It was written as part of
8#  the author's official duties as a United States Government employee and
9#  thus cannot be copyrighted.  This software/database is freely available
10#  to the public for use. The National Library of Medicine and the U.S.
11#  Government have not placed any restriction on its use or reproduction.
12#
13#  Although all reasonable efforts have been taken to ensure the accuracy
14#  and reliability of the software and data, the NLM and the U.S.
15#  Government do not and cannot warrant the performance or results that
16#  may be obtained by using this software or data. The NLM and the U.S.
17#  Government disclaim all warranties, express or implied, including
18#  warranties of performance, merchantability or fitness for any particular
19#  purpose.
20#
21#  Please cite the author in any work or product based on this material.
22#
23# ===========================================================================
24
25
26default: std
27
28TOP ?= $(abspath ../../..)
29MODULE = vdb3/src/kfc
30
31# repairs to Makefile.config
32INCDIRS = -I. -I$(TOP)/vdb3/itf
33
34OBJFILES = \
35	$(KFC_OBJ)
36
37INTLIBS = \
38	vdb3-kfc
39
40EXTLIBS =   \
41
42TARGETS =      \
43	$(INTLIBS) \
44	$(EXTLIBS)
45
46# kernel-like facilities
47KFC_SRC =    \
48	rsrc     \
49	pfdmgr   \
50	fdmgr    \
51	fd       \
52	stream   \
53	plogger  \
54	log      \
55	ptimemgr \
56	pmemmgr  \
57	syserr   \
58	string   \
59	timemgr  \
60	time     \
61	ptr      \
62	array    \
63	memmgr   \
64	memory   \
65	ref      \
66	refcount \
67	integer  \
68	except   \
69	callstk
70
71# object files
72KFC_OBJ = \
73	$(addprefix $(OBJDIR)/,$(addsuffix .$(LOBX),$(KFC_SRC)))
74
75all std: $(TARGETS)
76
77compile: $(OBJDIR) $(OBJFILES)
78
79clean:
80	rm -rf $(ILIBDIR)/$(LPFX)vdb3* $(OBJDIR)
81
82.PHONY: default all std $(TARGETS)
83
84# rule to produce the static library
85vdb3-kfc: $(ILIBDIR) $(OBJDIR) $(ILIBDIR)/$(LPFX)vdb3-kfc.$(LIBX)
86$(ILIBDIR)/$(LPFX)vdb3-kfc.$(LIBX): $(KFC_OBJ)
87	$(AR) $@ $^
88
89libvdb3: $(ILIBDIR) $(OBJDIR) $(ILIBDIR)/$(LPFX)vdb3.$(LIBX)
90$(ILIBDIR)/$(LPFX)vdb3.$(LIBX): $(VDB3_OBJ)
91	$(AR) $@ $^
92
93compile: stdcompile
94
95$(TARGDIR)/compile: $(OBJFILES) libvdb3
96
97