b8e7ea58b8841d7718359be5021d431868cbe704
[openafs.git] / src / config / Makefile.config.in
1 #
2 # Installation vars
3 #
4 afsbackupdir=@afsbackupdir@
5 afsbosconfigdir=@afsbosconfigdir@
6 afsconfdir=@afsconfdir@
7 afsdbdir=@afsdbdir@
8 afslocaldir=@afslocaldir@
9 afslogsdir=@afslogsdir@
10 afssrvbindir=@afssrvbindir@
11 afskerneldir=@afskerneldir@
12 afssrvlibexecdir=@afssrvlibexecdir@
13 afssrvsbindir=@afssrvsbindir@
14 afsdatadir=@afsdatadir@
15 bindir=@bindir@
16 exec_prefix=@exec_prefix@
17 datarootdir=@datarootdir@
18 datadir=@datadir@
19 includedir=@includedir@
20 libdir=@libdir@
21 libexecdir=@libexecdir@
22 localstatedir=@localstatedir@
23 mandir=@mandir@
24 prefix=@prefix@
25 sbindir=@sbindir@
26 sysconfdir=@sysconfdir@
27 viceetcdir=@viceetcdir@/
28
29
30 #
31 # Programs and other defines
32 #
33 AR = @AR@
34 AS = @AS@
35 ASFLAGS = @ASFLAGS@
36 AFSD_LIBS = @AFSD_LIBS@
37 AFSD_LDFLAGS = @AFSD_LDFLAGS@
38 CC = @CC@
39 CPP = @CPP@
40 CPPFLAGS_roken = @CPPFLAGS_roken@
41 CCOBJ = @CCOBJ@
42 CCXPG2 = @CCXPG2@
43 CFLAGS = @CFLAGS@
44 CP = @CP@
45 DARWIN_INFOFILE=@DARWIN_INFOFILE@
46 DBG = @DBG@
47 DEST = @DEST@
48 DIR_roken = @DIR_roken@
49 FSINCLUDES = @FSINCLUDES@
50 GENCAT = @GENCAT@
51 INCLUDE_LIBINTL = @INCLUDE_libintl@
52 KERN_DBG = @KERN_DBG@
53 KERN_OPTMZ = @KERN_OPTMZ@
54 LD = @LD@
55 LDFLAGS_roken = @LDFLAGS_roken@
56 LDFLAGS_hcrypto = @LDFLAGS_hcrypto@
57 LDFLAGS_krb5 = @KRB5_LDFLAGS@
58 LEX = @LEX@
59 LIB_AFSDB = @LIB_AFSDB@
60 LIB_crypt = @LIB_crypt@
61 LIB_curses = @LIB_curses@
62 LIB_hcrypto = @LIB_hcrypto@
63 LIB_roken = @LIB_roken@
64 LIB_krb5 = @KRB5_LIBS@
65 LIBS = @LIBS@
66 LIB_LIBINTL = @LIB_libintl@
67 LINUX_KERNEL_PATH = @LINUX_KERNEL_PATH@
68 LINUX_KERNEL_BUILD = @LINUX_KERNEL_BUILD@
69 LINUX_LIBAFS_NAME = @LINUX_LIBAFS_NAME@
70 LINUX_KERNEL_PACKAGING = @LINUX_KERNEL_PACKAGING@
71 LINUX_VERSION = @LINUX_VERSION@
72 LINUX_VERS = @LINUX_VERSION@
73 LWP_OPTMZ = @LWP_OPTMZ@
74 LWP_DBG = @LWP_DBG@
75 MKAFS_OSTYPE = @MKAFS_OSTYPE@
76 AFS_PARAM_COMMON = @AFS_PARAM_COMMON@
77 MT_CC = @MT_CC@
78 MT_CFLAGS = @MT_CFLAGS@
79 MT_LIBS = @MT_LIBS@
80 MV = @MV@
81 NO_STRIP_BIN = @NO_STRIP_BIN@
82 OPTMZ = @OPTMZ@
83 PAM_CFLAGS = @PAM_CFLAGS@
84 PAM_LIBS = @PAM_LIBS@
85 PAM_OPTMZ = @PAM_OPTMZ@
86 PAM_DBG = @PAM_DBG@
87 PATH_CPP = @PATH_CPP@
88 RANLIB = @RANLIB@
89 REGEX_OBJ = @REGEX_OBJ@
90 REGEX_OBJ_PIC = @REGEX_OBJ_PIC@
91 RM = @RM@
92 RXDEBUG = @RXDEBUG@
93 ROKEN_HEADERS = @ROKEN_HEADERS@
94 ROKEN_LIBOBJS = @LIBOBJS@
95 SHLIB_CFLAGS = @SHLIB_CFLAGS@
96 SHLIB_LDFLAGS = @SHLIB_LDFLAGS@
97 SHLIB_LINKER = @SHLIB_LINKER@
98 SHLIB_SUFFIX = @SHLIB_SUFFIX@
99 SYS_NAME = @AFS_SYSNAME@
100 TOP_INCDIR = @TOP_INCDIR@
101 TOP_LIBDIR = @TOP_LIBDIR@
102 TOP_JLIBDIR= @TOP_JLIBDIR@
103 TOP_OBJDIR = @TOP_OBJDIR@
104 TOP_SRCDIR = @TOP_SRCDIR@
105 VPATH = ${srcdir}
106 XCFLAGS64 = @XCFLAGS64@
107 XCFLAGS = @XCFLAGS@
108 XLDFLAGS64 = @XLDFLAGS64@
109 XLDFLAGS = @XLDFLAGS@
110 XLIBELFA = @XLIBELFA@
111 XLIBKVM = @XLIBKVM@
112 XLIBS = @XLIBS@
113 YACC = @YACC@
114
115 #
116 # Install targets
117 #
118
119 INSTALL = @INSTALL@
120 INSTALL_DATA = @INSTALL_DATA@
121 INSTALL_PROGRAM = @INSTALL_PROGRAM@
122 INSTALL_SCRIPT = @INSTALL_SCRIPT@
123
124 #
125 # Special build targets
126 #
127 dest_XFS_SIZE_CHECK = @dest_XFS_SIZE_CHECK@
128 install_XFS_SIZE_CHECK = @install_XFS_SIZE_CHECK@
129 XFS_SIZE_CHECK = @XFS_SIZE_CHECK@
130 AIX32 = @AIX32@
131 AIX64 = @AIX64@
132
133 #
134 # Paths to build dirs
135 #
136 # Could be absolute, but leaving as relative for now
137 #UKERNELDIR = ${TOP_OBJDIR}/src/libuafs
138 #KERNELDIR = ${TOP_OBJDIR}/src/libafs
139 UKERNELDIR = ../libuafs
140 KERNELDIR = ../libafs
141
142 #
143 # Build helper apps
144 #
145 COMPILE_ET = ${TOP_OBJDIR}/src/comerr/compile_et
146 RXGEN = ${TOP_OBJDIR}/src/rxgen/rxgen
147 SHELL = /bin/sh
148
149 #
150 # "Pretty" build line stuff
151 #
152
153 # Default to disabling the "pretty" build lines
154 # If the user specifies 'V=0', the variables below expand to their _V0
155 # variants, which enable the "pretty" build lines
156 V=1
157
158 RUNCMD=RUNCMD () { \
159         echo "  $$1  $$2"; \
160         shift; shift; \
161         "$$@" || failcode=$$?; \
162         if [ x"$$failcode" != x ] ; then \
163                 echo >&2; \
164                 echo "FAILED COMMAND: $$@" >&2; \
165                 echo >&2; \
166                 echo "In dir:" >&2; \
167                 pwd >&2; \
168                 echo >&2; \
169                 exit $$failcode; \
170         fi; \
171         exit 0; \
172 } ; RUNCMD
173
174 RUN_CC_NOQ_V0=${RUNCMD} CC "`pwd`/$@"
175 RUN_LD_NOQ_V0=${RUNCMD} LD "`pwd`/$@"
176
177 # Prefixing a command with $(Q) will suppress that line from being printed
178 # during a "pretty" make, so the RUNCMD function above can decide itself how
179 # much to print. The Q is just for "quiet", and Q kinda looks like @.
180 #
181 # The _NOQ variants of the RUN_ commands are for when a compiler invocation is
182 # in the middle of e.g. a switch/case or an if/else, etc. In those cases, we
183 # want to prefix the _entire_ command with $(Q), not just the compiler, linker,
184 # etc.
185 Q_V0=@
186 Q=$(Q_V$(V))
187
188 RUN_CC=$(Q)$(RUN_CC_NOQ_V$(V))
189 RUN_LD=$(Q)$(RUN_LD_NOQ_V$(V))
190
191 RUN_CC_NOQ=$(RUN_CC_NOQ_V$(V))
192 RUN_LD_NOQ=$(RUN_LD_NOQ_V$(V))
193
194 #
195 # Common/standard cflags/paths/etc
196 # Cflags defaults, will be overridden later if necessary
197 #
198 # -I. and -I${srcdir} are only needed for objdir builds - we should
199 # conditionalise them on that.
200
201 COMMON_INCL=$(MODULE_INCLUDE) -I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} \
202             -I${srcdir} -I. 
203
204 COMMON_CFLAGS=$(CFLAGS) ${DBG} ${OPTMZ} $(XCFLAGS) \
205               ${COMMON_INCL} ${INCLUDE_LIBINTL} \
206               $(CPPFLAGS_roken) $(ARCHFLAGS)
207
208 COMMON_LDFLAGS=$(LDFLAGS) $(LDFLAGS_hcrypto) $(LDFLAGS_roken) $(DBG) $(OPTMZ)
209
210 # LWP Flags
211 LWP_CFLAGS=$(COMMON_CFLAGS) $(MODULE_CFLAGS)
212 LWP_LDFLAGS=$(COMMON_LDFLAGS) $(MODULE_LDFLAGS) $(XLDFLAGS) $(ARCHFLAGS)
213 LWP_CCRULE        =$(RUN_CC) $(CCOBJ) $(LWP_CFLAGS) $(CFLAGS_$(@)) -o $@ -c
214 LWP_CCRULE_NOQ=$(RUN_CC_NOQ) $(CCOBJ) $(LWP_CFLAGS) $(CFLAGS_$(@)) -o $@ -c
215
216 # Pthreaded
217 PTH_CFLAGS=$(COMMON_CFLAGS) $(MODULE_CFLAGS) $(MT_CFLAGS)
218 PTH_LDFLAGS=$(COMMON_LDFLAGS) $(MODULE_LDFLAGS) $(MT_LDFLAGS)
219 PTH_CCRULE        =$(RUN_CC) $(MT_CC) $(PTH_CFLAGS) $(CFLAGS_$(@)) -o $@ -c
220 PTH_CCRULE_NOQ=$(RUN_CC_NOQ) $(MT_CC) $(PTH_CFLAGS) $(CFLAGS_$(@)) -o $@ -c
221
222 # Shared
223 SHD_CFLAGS=$(COMMON_CFLAGS) $(MODULE_CFLAGS) $(MT_CFLAGS) $(SHLIB_CFLAGS)
224 SHD_LDFLAGS=$(COMMON_LDFLAGS) $(MODULE_LDFLAGS) $(SHLIB_LDFLAGS)
225 SHD_CCRULE        =$(RUN_CC) $(MT_CC) $(SHD_CFLAGS) $(CFLAGS_$(@)) -o $@ -c
226 SHD_CCRULE_NOQ=$(RUN_CC_NOQ) $(MT_CC) $(SHD_CFLAGS) $(CFLAGS_$(@)) -o $@ -c
227
228 # Default rules. These will be overriden if the module Makefile specifically
229 # includes a particular type (lwp, pthread, or shared)
230
231 AFS_LDRULE         =$(RUN_LD) $(CC) $(AFS_LDFLAGS) $(AFS_CFLAGS) $(LDFLAGS_$(@)) -o $@
232 AFS_LDRULE_NOQ =$(RUN_LD_NOQ) $(CC) $(AFS_LDFLAGS) $(AFS_CFLAGS) $(LDFLAGS_$(@)) -o $@
233