|
|
1.1 root 1: ###############################################################################
2: # @(#)Makefile.inc 1.11 89/09/13 Copyr 1988 SMI
3: #
4: # Copyright (c) 1988 by Sun Microsystems, Inc.
5: #
6: # Description:
7: # This is the include for all the makefiles. The goals for designing
8: # the makefiles follow:
9: # 1) Each product should know what objects it is made of.
10: # (prevent hidden dependencies)
11: # 2) The dependency of an object should only be known at
12: # the level of its source file.
13: #
14: # Comments:
15: # 1) The SRC_DIR macro should have been set before including this
16: # file. It is the directory that is the root of the source tree.
17: # 2) *** Release Engineering - set DESTDIR to what you want.
18: # 3) Define local cpp flags LOCAL_CPPFLAGS before including this file
19: # 4) No targets should be defined in this file!
20: #
21: ###############################################################################
22:
23: #
24: # Set the target archecture macro
25: #
26: ARCH = $(TARGET_ARCH:-%=%)
27:
28: #
29: # Default Release level
30: #
31: RELEASE=NOT_SET
32:
33: #
34: # Directory to install the programs
35: #
36: DESTDIR = $(SRC_DIR)/../release/$(RELEASE)
37: DESTDIR_SRC = $(DESTDIR)/src
38: DESTDIR_BIN = $(DESTDIR)/$(ARCH)/bin
39: DESTDIR_LIB = $(DESTDIR)/$(ARCH)/lib
40: DESTDIR_INC = $(DESTDIR)/$(ARCH)/include
41: DESTDIR_DEMO = $(DESTDIR)/$(ARCH)/netlic_sample
42: DESTDIR_ISAM = $(DESTDIR)/sunisam
43: DESTDIR_MAN = $(DESTDIR)/$(ARCH)/man
44:
45: #
46: # These ENLD products will dissapear when we FCS NLD.
47: #
48: DESTDIR_ENLD_BIN = $(DESTDIR)/$(ARCH)/ENLD_bin
49:
50: #
51: # Location of the SUN-ISAM library and its name
52: #
53: SUNISAM_DIR = $(SRC_DIR)/../sunisam/$(ARCH)
54: SUNISAM_LIB_DIR = $(SUNISAM_DIR)/lib
55:
56: #
57: # Uses the alpha isam library
58: # Remember to link the right $inc/isam.h file if you change these
59: # two lines. isam_old.h is used with libfst_isam.a and isam_new.h
60: # is used with libisam.a
61: #
62: SUNISAM_LIB_FILE= $(SUNISAM_LIB_DIR)/libisam.a
63: SUNISAM_LIB = -lisam
64: #SUNISAM_LIB_FILE= $(SUNISAM_LIB_DIR)/libfst_isam.a
65: #SUNISAM_LIB = -lfst_isam
66:
67: #
68: # Location of commonly referenced directories
69: #
70: SCHEMA_DIR = $(SRC_DIR)/schema
71: PROTO_DIR = $(SRC_DIR)/protocol
72: UTILS_DIR = $(SRC_DIR)/utils
73: INC_DIR = $(SRC_DIR)/include
74: CLNT_LIB = $(SRC_DIR)/clnt_libs
75:
76: #
77: # Command macros and flag definitions
78: #
79: AWK = awk
80: CPP = /lib/cpp
81: CPPFLAGS= -I. -I$(INC_DIR) -D$(ARCH) $(LOCAL_CPPFLAGS)
82: LPR = lpr
83: #
84: # Using System V lint
85: #
86: #LINT=/usr/5bin/lint
87: #LINTFLAGS= -c -Dlint
88: #LINT.c = $(LINT) $(CPPFLAGS) $(LINTFLAGS)
89:
90: #
91: # Flags for Sun OS lint
92: #
93: LINTFLAGS= -achx -Dlint
94:
95: CFLOW=cflow
96: CFLOWFLAGS = $(CPPFLAGS)
97: CFLOW_OUT=flow.out
98:
99: SCCS_CHECK_FILE=$(SRC_DIR)/sccs.outs
100: SCCS_VERS_BASE=$(DESTDIR)/Module_SIDS
101: SCCS_VERS_FILE=$(SCCS_VERS_BASE).${ARCH}
102: SCCS_VERS_ARGS="-d Module:\t:M:\t:I:\t:D:"
103:
104: #
105: # Generic targets
106: # We leave out release, install and sccs_check because we make
107: # the locals for those before the nested
108: #
109: TARGETS = all cflow clean debug depend lint profile sccs_check install \
110: release tags
111: TARGETS.nested = $(TARGETS:%=%.nested)
112: TARGETS.local = $(TARGETS:%=%.local)
113:
114: #
115: # C flags for the targets
116: #
117: all := CFLAGS= -O
118: debug := CFLAGS= -g -DDEBUGGING
119: profile := CFLAGS= -pg -O -DPROFILE
120: install := CFLAGS= -O
121: all.local := CFLAGS= -O
122: debug.local := CFLAGS= -g -DDEBUGGING
123: profile.local := CFLAGS= -pg -O -DPROFILE
124: install.local := CFLAGS= -O
125:
126: #
127: # Loader flags for the targets
128: #
129: all := LDFLAGS= -s $(LOCAL_LDFLAGS)
130: debug := LDFLAGS= $(LOCAL_LDFLAGS)
131: profile := LDFLAGS= $(LOCAL_LDFLAGS)
132: install := LDFLAGS= -s $(LOCAL_LDFLAGS)
133: release := LDFLAGS= -s $(LOCAL_LDFLAGS)
134: all.local := LDFLAGS= -s $(LOCAL_LDFLAGS)
135: debug.local := LDFLAGS= $(LOCAL_LDFLAGS)
136: profile.local := LDFLAGS= $(LOCAL_LDFLAGS)
137: install.local := LDFLAGS= -s $(LOCAL_LDFLAGS)
138: release.local := LDFLAGS= -s $(LOCAL_LDFLAGS)
139:
140: #
141: # Lint Flags (Uncomment these if using SYS V lint)
142: #
143: #lint := CPP=
144: #lint.local := CPP=
145: #lint := CFLAGS=
146: #lint.local := CFLAGS=
147:
148: #
149: # Recursive Targets
150: #
151: all := TARGET = all
152: cflow := TARGET = cflow
153: clean := TARGET = clean
154: debug := TARGET = debug
155: depend := TARGET = depend
156: install := TARGET = install
157: lint := TARGET = lint
158: profile := TARGET = profile
159: sccs_check := TARGET = sccs_check
160: release := TARGET = release
161: tags := TARGET = tags
162:
163: #
164: # All makefiles keep the command state
165: #
166: .KEEP_STATE:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.