003
2021-01-21
op
# Copyright (c) 2021 Omar Polo <op@omarpolo.com>
005
2021-01-21
op
# Permission to use, copy, modify, and distribute this software for any
006
2021-01-21
op
# purpose with or without fee is hereby granted, provided that the above
007
2021-01-21
op
# copyright notice and this permission notice appear in all copies.
009
2021-01-21
op
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
010
2021-01-21
op
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
011
2021-01-21
op
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
012
2021-01-21
op
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
013
2021-01-21
op
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
014
2021-01-21
op
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
015
2021-01-21
op
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
017
2021-01-21
op
# adapted from mandoc configure and oconfigure, thanks schwarze@ and
018
2021-01-21
op
# kristaps@!
022
2021-01-21
op
[ -w config.log ] && mv config.log config.log.old
023
2021-01-21
op
[ -w config.h ] && mv config.h config.h.old
025
2021-01-21
op
# Output file descriptor usage:
026
2021-01-21
op
# 1 (stdout): config.h, Makefile.local
027
2021-01-21
op
# 2 (stderr): original stderr, usually to the console
028
2021-01-21
op
# 3: config.log
030
2021-01-21
op
exec 3> config.log
031
2021-01-21
op
echo "file config.log: writing..."
033
2021-01-21
op
# --------
034
2021-01-27
op
# default settings: initialize all vars here such that nothing is
035
2021-07-06
op
# leaked from the environment except for CC, CFLAGS and LDFLAGS
037
2022-04-07
op
VERSION=1.8.3-current
039
2021-01-27
op
CC=`printf "all:\\n\\t@echo \\\$(CC)\\n" | make ${MAKE_FLAGS} -sf -`
041
2021-07-06
op
if [ -z "${CFLAGS}" ]; then
042
2021-07-06
op
CFLAGS=`printf "all:\\n\\t@echo \\\$(CFLAGS)\\n" | make ${MAKE_FLAGS} -sf -`
045
2021-07-07
op
CFLAGS="${CFLAGS} -W -Wall -Wextra -Wmissing-prototypes -Wstrict-prototypes"
046
2021-07-07
op
CFLAGS="${CFLAGS} -Wwrite-strings -Wno-unused-parameter"
048
2021-07-06
op
if [ -z "${LDFLAGS}" ]; then
049
2021-07-06
op
LDFLAGS=`printf "all:\\n\\t@echo \\\$(LDFLAGS)\\n" | make ${MAKE_FLAGS} -sf -`
050
2021-07-06
op
LDFLAGS="-ltls -levent -lcrypto"
057
2021-07-02
op
DISABLE_SANDBOX=0
059
2021-01-21
op
NEED_GNU_SOURCE=0
060
2021-01-21
op
NEED_OPENBSD_SOURCE=0
062
2021-01-21
op
PREFIX="/usr/local"
065
2021-01-21
op
INSTALL="install"
067
2021-07-08
op
add_library() {
068
2021-07-08
op
if pkg-config "$1"; then
069
2021-07-08
op
CFLAGS="${CFLAGS} $(pkg-config --cflags "$1")"
070
2021-07-08
op
LDFLAGS="${LDFLAGS} $(pkg-config --libs "$1")"
074
2021-01-21
op
# try to auto detect CFLAGS and LDFLAGS
075
2022-03-18
op
if command -v pkg-config >/dev/null; then
076
2021-07-08
op
add_library "libtls"
077
2021-07-08
op
add_library "openssl"
079
2021-02-08
op
case "$(uname)" in
081
2021-07-07
op
# use libevent and imsg in base
084
2021-07-08
op
add_library "libevent"
085
2021-07-08
op
add_library "libimsg"
089
2021-07-08
op
case "$(uname)" in
090
2021-07-08
op
*BSD|DragonFly|Darwin)
093
2021-07-08
op
add_library "libbsd-ctor libbsd-overlay"
098
2021-01-21
op
# auto detect yacc/bison
099
2022-03-18
op
command -v ${YACC} >/dev/null || {
100
2021-01-21
op
echo "${YACC} not found: trying bison" 1>&2
101
2021-01-21
op
echo "${YACC} not found: trying bison" 1>&3
102
2021-01-21
op
YACC=bison
103
2022-03-18
op
command -v ${YACC} >/dev/null || {
104
2021-01-21
op
echo "${YACC} not found: giving up" 1>&2
105
2021-01-21
op
echo "${YACC} not found: giving up" 1>&3
109
2021-01-21
op
# --------
110
2021-01-21
op
# allow certain variables to be overridden on the command line
112
2021-01-21
op
for keyvals in "$@"; do
113
2021-07-02
op
if [ "$keyvals" = "--disable-sandbox" ]; then
114
2021-07-02
op
DISABLE_SANDBOX=1
118
2021-07-07
op
if [ "$keyvals" = "--enable-sandbox" ]; then
119
2021-07-07
op
DISABLE_SANDBOX=0
123
2021-01-21
op
key=`echo $keyvals | cut -s -d '=' -f1`
124
2021-01-21
op
if [ -z "$key" ]; then
125
2021-01-21
op
echo "$0: invalid key-value: $keyvals" 1>&2
128
2021-01-21
op
val=`echo $keyvals | cut -d '=' -f 2-`
129
2021-01-21
op
case "$key" in
130
2021-12-09
op
BINDIR) BINDIR="$val" ;;
131
2021-12-09
op
CC) CC="$val" ;;
132
2021-12-09
op
CFLAGS) CFLAGS="$val" ;;
133
2021-12-09
op
DESTDIR) DESTDIR="$val" ;;
134
2021-12-09
op
LDFLAGS) LDFLAGS="$val" ;;
135
2022-03-18
op
MANDIR) MANDIR="$val" ;;
136
2021-12-09
op
PREFIX) PREFIX="$val" ;;
137
2021-12-09
op
YACC) YACC="$val" ;;
138
2021-12-09
op
--prefix) PREFIX="$val" ;;
140
2021-01-21
op
echo "$0: invalid key: $key" 1>&2
145
2021-01-21
op
# --------
146
2021-01-21
op
# tests functions
148
2021-01-21
op
# Check whether this HAVE_ setting is manually overridden.
149
2021-01-21
op
# If yes, use the override, if no, do not decide anything yet.
150
2021-01-21
op
# Arguments: test file name, test var name, manual value
151
2021-01-21
op
ismanual() {
152
2021-01-21
op
[ -z "${3}" ] && return 1
153
2021-01-21
op
echo "tested ${1}: HAVE_${2}=${3} (manual)" 1>&2
154
2021-01-21
op
echo "tested ${1}: HAVE_${2}=${3} (manual)" 1>&3
155
2021-01-21
op
echo 1>&3
159
2021-01-21
op
# Run a single autoconfiguration test.
160
2021-01-21
op
# In case of success, enable the feature.
161
2021-01-21
op
# In case of failure, do not decide anything yet.
162
2021-01-21
op
# Arguments: test file name, test var name, additional CFLAGS
163
2021-01-21
op
singletest() {
164
2021-01-21
op
n=${1}${3}
165
2021-01-21
op
cat 1>&3 << __HEREDOC__
166
2021-01-21
op
testing ${n} ...
167
2021-01-21
op
${COMP} -o have/${1} have/${1}.c ${3} ${LDFLAGS}
168
2021-01-21
op
__HEREDOC__
170
2021-01-21
op
if ${COMP} -o "have/${1}" "have/${1}.c" ${3} ${LDFLAGS} 1>&3 2>&3
172
2021-01-21
op
echo "tested ${n}: yes" 1>&2
173
2021-11-16
op
echo "tested ${n}: yes" 1>&3
174
2021-01-21
op
echo 1>&3
175
2021-01-21
op
eval HAVE_${2}=1
176
2021-01-21
op
[ "${3}" = "-D_GNU_SOURCE" ] && NEED_GNU_SOURCE=1
177
2021-01-21
op
[ "${3}" = "-D_OPENBSD_SOURCE" ] && NEED_OPENBSD_SOURCE=1
178
2021-02-23
op
[ "${3}" = "-lutil" ] && LD_IMSG="-lutil"
179
2021-01-21
op
rm "have/${1}"
182
2021-11-16
op
echo "tested ${n}: no (compilation failed)" 1>&2
183
2021-11-16
op
echo "result of ${n}: ${CC} failed with exit status $?" 1>&3
184
2021-11-16
op
echo "result of compiling ${n}: no" 1>&3
185
2021-01-21
op
echo 1>&3
190
2021-01-21
op
# Run a complete autoconfiguration test, including the check for
191
2021-01-21
op
# a manual override and disabling the feature on failure.
192
2021-01-21
op
# Arguments: test file name, test var name, additional CFLAGS
193
2021-01-21
op
# The final argument can optionally be repeated a second time.
194
2021-01-21
op
runtest() {
195
2021-01-21
op
eval _manual=\${HAVE_${2}}
196
2021-01-21
op
ismanual "${1}" "${2}" "${_manual}" && return 0
197
2021-01-21
op
singletest "${1}" "${2}" "${3}" && return 0
198
2021-01-21
op
[ -n "${4}" ] && singletest "${1}" "${2}" "${4}" && return 0
199
2021-01-21
op
eval HAVE_${2}=0
203
2021-01-21
op
# --------
204
2021-01-21
op
# compiler options
206
2021-01-27
op
COMP="${CC} ${CFLAGS} -Wno-unused -Werror"
208
2021-01-21
op
echo "selected CFLAGS=\"${CFLAGS}\"" 1>&2
209
2021-01-21
op
echo "selected CFLAGS=\"${CFLAGS}\"" 1>&3
212
2021-01-21
op
if [ -n "${STATIC}" ]; then
213
2021-01-21
op
echo "selected STATIC=\"${STATIC}\" (manual)" 1>&2
214
2021-01-21
op
echo "selected STATIC=\"${STATIC}\" (manual)" 1>&3
215
2021-01-21
op
echo 1>&3
217
2021-01-21
op
runtest noop STATIC -static || true
218
2021-01-21
op
[ ${HAVE_STATIC} -eq 0 ] || STATIC="-static"
219
2021-01-21
op
echo "selected STATIC=\"${STATIC}\"" 1>&2
220
2021-01-21
op
echo "selected STATIC=\"${STATIC}\"" 1>&3
221
2021-01-21
op
echo 1>&3
224
2022-01-03
op
if runtest noop MMD -MMD; then
225
2022-01-03
op
CFLAGS="${CFLAGS} -MMD"
226
2022-01-03
op
echo "adding -MMD to CFLAGS" 1>&2
227
2022-01-03
op
echo "adding -MMD to CFLAGS" 1>&3
230
2021-01-21
op
# --------
231
2021-01-21
op
# tests for config.h
233
2021-01-21
op
runtest err ERR || true
234
2021-01-21
op
runtest explicit_bzero EXPLICIT_BZERO || true
235
2021-02-23
op
runtest freezero FREEZERO || true
236
2021-02-23
op
runtest getdtablecount GETDTABLECOUNT || true
237
2021-09-18
op
runtest getdtablesize GETDTABLESIZE || true
238
2021-01-21
op
runtest getprogname GETPROGNAME || true
239
2021-02-23
op
runtest imsg IMSG -lutil || true
240
2021-09-19
op
runtest landlock LANDLOCK || true
241
2021-02-08
op
runtest libevent LIBEVENT || true
242
2021-10-02
op
runtest libevent2 LIBEVENT2 || true
243
2021-01-21
op
runtest libtls LIBTLS || true
244
2021-01-25
op
runtest openssl OPENSSL || true
245
2021-02-04
op
runtest pr_set_name PR_SET_NAME || true
246
2021-02-23
op
runtest program_invocation_short_name PROGRAM_INVOCATION_SHORT_NAME "" -D_GNU_SOURCE || true
247
2021-02-23
op
runtest queue_h QUEUE_H || true
248
2021-04-25
op
runtest reallocarray REALLOCARRAY || true
249
2021-01-21
op
runtest recallocarray RECALLOCARRAY || true
250
2021-02-04
op
runtest setproctitle SETPROCTITLE || true
251
2021-01-21
op
runtest strlcat STRLCAT || true
252
2021-01-21
op
runtest strlcpy STRLCPY || true
253
2021-01-21
op
runtest strtonum STRTONUM || true
254
2021-10-07
op
runtest tree_h TREE_H || true
255
2021-01-21
op
runtest vasprintf VASPRINTF "" -D_GNU_SOURCE || true
257
2021-01-21
op
if [ ${HAVE_LIBTLS} -eq 0 ]; then
258
2021-01-21
op
echo "FATAL: libtls not found" 1>&2
259
2021-01-21
op
echo "FATAL: libtls not found" 1>&3
263
2021-01-25
op
if [ ${HAVE_OPENSSL} -eq 0 ]; then
264
2021-01-25
op
echo "FATAL: openssl not found" 1>&2
265
2021-01-25
op
echo "FATAL: openssl not found" 1>&3
269
2021-02-08
op
if [ ${HAVE_LIBEVENT} -eq 0 ]; then
270
2021-02-08
op
echo "FATAL: libevent not found" 1>&2
271
2021-02-08
op
echo "FATAL: libevent not found" 1>&3
275
2021-10-07
op
if [ ${HAVE_QUEUE_H} -eq 0 -o ${HAVE_IMSG} -eq 0 -o ${HAVE_TREE_H} -eq 0 ]; then
276
2021-02-23
op
CFLAGS="${CFLAGS} -I ${PWD}/compat"
279
2021-01-21
op
# --------
280
2021-01-21
op
# write config.h
282
2021-01-21
op
exec > config.h
284
2021-01-21
op
cat <<__HEREDOC__
285
2021-01-21
op
#ifdef __cplusplus
286
2021-01-21
op
#error "Do not use C++."
288
2021-01-21
op
__HEREDOC__
290
2021-01-21
op
[ ${NEED_GNU_SOURCE} -eq 0 ] || echo "#define _GNU_SOURCE"
291
2021-01-21
op
[ ${NEED_OPENBSD_SOURCE} -eq 0 ] || echo "#define _OPENBSD_SOURCE"
293
2021-02-23
op
[ ${HAVE_STRLCAT} -eq 0 -o ${HAVE_STRLCPY} -eq 0 -o ${HAVE_IMSG} -eq 0 ] \
294
2021-01-21
op
&& echo "#include <sys/types.h>"
295
2021-01-21
op
[ ${HAVE_VASPRINTF} -eq 0 ] && echo "#include <stdarg.h>"
297
2021-02-23
op
if [ ${HAVE_QUEUE_H} -eq 1 ]; then
298
2021-02-23
op
echo "#include <sys/queue.h>"
300
2021-02-23
op
echo "#include <queue.h>"
303
2021-10-07
op
if [ ${HAVE_TREE_H} -eq 1 ]; then
304
2021-10-07
op
echo "#include <sys/tree.h>"
306
2021-10-07
op
echo "#include <tree.h>"
309
2021-02-23
op
echo "#include <sys/types.h>"
310
2021-02-23
op
echo "#include <sys/uio.h>"
311
2021-02-23
op
echo "#include <stdint.h>"
312
2021-02-23
op
echo "#include <imsg.h>"
314
2021-01-21
op
cat <<__HEREDOC__
316
2021-07-10
op
#define VERSION "${VERSION}"
317
2021-07-02
op
#define DISABLE_SANDBOX ${DISABLE_SANDBOX}
319
2021-01-21
op
#define HAVE_ERR ${HAVE_ERR}
320
2021-01-21
op
#define HAVE_EXPLICIT_BZERO ${HAVE_EXPLICIT_BZERO}
321
2021-02-23
op
#define HAVE_FREEZERO ${HAVE_FREEZERO}
322
2021-02-23
op
#define HAVE_GETDTABLECOUNT ${HAVE_GETDTABLECOUNT}
323
2021-02-23
op
#define HAVE_GETDTABLESIZE ${HAVE_GETDTABLESIZE}
324
2021-01-21
op
#define HAVE_GETPROGNAME ${HAVE_GETPROGNAME}
325
2021-02-23
op
#define HAVE_IMSG ${HAVE_IMSG}
326
2021-09-19
op
#define HAVE_LANDLOCK ${HAVE_LANDLOCK}
327
2021-02-08
op
#define HAVE_LIBEVENT ${HAVE_LIBEVENT}
328
2021-10-02
op
#define HAVE_LIBEVENT2 ${HAVE_LIBEVENT2}
329
2021-02-11
op
#define HAVE_PROGRAM_INVOCATION_SHORT_NAME ${HAVE_PROGRAM_INVOCATION_SHORT_NAME}
330
2021-02-04
op
#define HAVE_PR_SET_NAME ${HAVE_PR_SET_NAME}
331
2021-02-23
op
#define HAVE_QUEUE_H ${HAVE_QUEUE_H}
332
2021-04-25
op
#define HAVE_REALLOCARRAY ${HAVE_REALLOCARRAY}
333
2021-01-21
op
#define HAVE_RECALLOCARRAY ${HAVE_RECALLOCARRAY}
334
2021-02-12
op
#define HAVE_SETPROCTITLE ${HAVE_SETPROCTITLE}
335
2021-01-21
op
#define HAVE_STRLCAT ${HAVE_STRLCAT}
336
2021-01-21
op
#define HAVE_STRLCPY ${HAVE_STRLCPY}
337
2021-01-21
op
#define HAVE_STRTONUM ${HAVE_STRTONUM}
338
2021-10-07
op
#define HAVE_TREE_H ${HAVE_TREE_H}
339
2021-01-21
op
#define HAVE_VASPRINTF ${HAVE_VASPRINTF}
341
2021-01-21
op
__HEREDOC__
343
2021-01-22
op
[ ${HAVE_EXPLICIT_BZERO} -eq 0 -o \
344
2021-02-23
op
${HAVE_FREEZERO} -eq 0 -o \
345
2021-04-25
op
${HAVE_REALLOCARRAY} -eq 0 -o \
346
2021-01-22
op
${HAVE_RECALLOCARRAY} -eq 0 -o \
347
2021-01-22
op
${HAVE_STRLCAT} -eq 0 -o \
348
2021-01-22
op
${HAVE_STRLCPY} -eq 0 -o \
349
2021-01-22
op
${HAVE_STRTONUM} -eq 0 ] && echo "#include <stddef.h>"
351
2021-01-21
op
if [ ${HAVE_ERR} -eq 0 ]; then
352
2021-01-21
op
echo "extern void err(int, const char*, ...);"
353
2021-01-21
op
echo "extern void errx(int, const char*, ...);"
354
2021-01-21
op
echo "extern void warn(const char*, ...);"
355
2021-01-21
op
echo "extern void warnx(const char*, ...);"
356
2021-01-21
op
COMPAT="${COMPAT} compat/err.o"
358
2021-01-21
op
echo "#include <err.h>"
360
2021-01-21
op
if [ ${HAVE_EXPLICIT_BZERO} -eq 0 ]; then
361
2021-01-21
op
echo "extern void explicit_bzero(void*, size_t);"
362
2021-01-21
op
COMPAT="${COMPAT} compat/explicit_bzero.o"
364
2021-02-23
op
if [ ${HAVE_FREEZERO} -eq 0 ]; then
365
2021-02-23
op
echo "extern void freezero(void*, size_t);"
366
2021-02-23
op
COMPAT="${COMPAT} compat/freezero.o"
368
2021-02-23
op
if [ ${HAVE_GETDTABLECOUNT} -eq 0 ]; then
369
2021-02-23
op
echo "extern int getdtablecount(void);"
370
2021-02-23
op
COMPAT="${COMPAT} compat/getdtablecount.o"
372
2021-02-23
op
if [ ${HAVE_GETDTABLESIZE} -eq 0 ]; then
373
2021-02-23
op
echo "extern int getdtablesize(void);"
374
2021-02-23
op
COMPAT="${COMPAT} compat/getdtablesize.o"
376
2021-01-25
op
if [ ${HAVE_GETPROGNAME} -eq 0 ]; then
377
2021-01-25
op
echo "extern const char *getprogname(void);"
378
2021-01-25
op
COMPAT="${COMPAT} compat/getprogname.o"
380
2021-02-23
op
if [ ${HAVE_IMSG} -eq 0 ]; then
381
2021-02-23
op
COMPAT="${COMPAT} compat/imsg.o compat/imsg-buffer.o"
383
2021-04-25
op
if [ ${HAVE_REALLOCARRAY} -eq 0 ]; then
384
2021-04-25
op
echo "extern void *reallocarray(void*, size_t, size_t);"
385
2021-04-25
op
COMPAT="${COMPAT} compat/reallocarray.o"
387
2021-01-21
op
if [ ${HAVE_RECALLOCARRAY} -eq 0 ]; then
388
2021-04-25
op
echo "extern void *recallocarray(void*, size_t, size_t, size_t);"
389
2021-01-21
op
COMPAT="${COMPAT} compat/recallocarray.o"
391
2021-02-04
op
if [ ${HAVE_SETPROCTITLE} -eq 0 ]; then
392
2021-02-04
op
echo "extern void setproctitle(const char *fmt, ...);"
393
2021-02-04
op
COMPAT="${COMPAT} compat/setproctitle.o"
395
2021-01-21
op
if [ ${HAVE_STRLCAT} -eq 0 ]; then
396
2021-01-21
op
echo "extern size_t strlcat(char*, const char*, size_t);"
397
2021-01-21
op
COMPAT="${COMPAT} compat/strlcat.o"
399
2021-01-21
op
if [ ${HAVE_STRLCPY} -eq 0 ]; then
400
2021-01-21
op
echo "extern size_t strlcpy(char*, const char*, size_t);"
401
2021-01-21
op
COMPAT="${COMPAT} compat/strlcpy.o"
403
2021-01-21
op
if [ ${HAVE_STRTONUM} -eq 0 ]; then
404
2021-01-22
op
echo "extern long long strtonum(const char*, long long, long long, const char**);"
405
2021-01-21
op
COMPAT="${COMPAT} compat/strtonum.o"
407
2021-01-21
op
if [ ${HAVE_VASPRINTF} -eq 0 ]; then
408
2021-01-21
op
echo "extern int vasprintf(char**, const char*, va_list);"
409
2021-01-21
op
COMPAT="${COMPAT} compat/vasprintf.o"
411
2021-01-21
op
echo "file config.h: written" 1>&2
412
2021-01-21
op
echo "file config.h: written" 1>&3
414
2021-01-21
op
# --------
415
2021-01-21
op
# tests for Makefile.local
417
2022-01-03
op
GMID_SRCS="dirs.c ex.c fcgi.c gmid.c iri.c log.c mime.c proxy.c puny.c"
418
2022-01-03
op
GMID_SRCS="${GMID_SRCS} sandbox.c server.c utf8.c utils.c y.tab.c"
420
2022-01-03
op
GMID_OBJS=
421
2022-01-03
op
for src in ${GMID_SRCS}; do
422
2022-01-03
op
GMID_OBJS="${GMID_OBJS} ${src%.c}.o"
424
2022-01-03
op
GMID_OBJS="${GMID_OBJS} ${COMPAT}"
426
2022-01-03
op
GG_SRCS="gg.c iri.c utf8.c"
429
2022-01-03
op
for src in ${GG_SRCS}; do
430
2022-01-03
op
GG_OBJS="${GG_OBJS} ${src%.c}.o"
432
2022-01-03
op
GG_OBJS="${GG_OBJS} ${COMPAT}"
434
2022-01-03
op
ALL_SRCS="${GMID_SRCS} gg.c"
436
2021-01-21
op
exec > Makefile.local
438
2021-01-21
op
[ -z "${BINDIR}" ] && BINDIR="${PREFIX}/bin"
439
2021-01-21
op
[ -z "${MANDIR}" ] && MANDIR="${PREFIX}/man"
441
2021-01-21
op
[ -z "${INSTALL_PROGRAM}" ] && INSTALL_PROGRAM="${INSTALL} -m 0555"
442
2021-01-21
op
[ -z "${INSTALL_LIB}" ] && INSTALL_LIB="${INSTALL} -m 0444"
443
2021-01-21
op
[ -z "${INSTALL_MAN}" ] && INSTALL_MAN="${INSTALL} -m 0444"
444
2021-01-21
op
[ -z "${INSTALL_DATA}" ] && INSTALL_DATA="${INSTALL} -m 0444"
446
2021-01-21
op
cat << __HEREDOC__
447
2021-01-21
op
CC = ${CC}
448
2021-01-21
op
CFLAGS = ${CFLAGS}
449
2021-02-23
op
LDFLAGS = ${LDFLAGS} ${LD_IMSG}
450
2021-01-21
op
YACC = ${YACC}
451
2021-01-21
op
STATIC = ${STATIC}
452
2021-01-21
op
PREFIX = ${PREFIX}
453
2021-01-21
op
BINDIR = ${BINDIR}
454
2021-02-07
op
MANDIR = ${MANDIR}
455
2021-01-21
op
INCLUDEDIR = ${INCLUDEDIR}
456
2021-01-21
op
INSTALL = ${INSTALL}
457
2021-01-21
op
INSTALL_PROGRAM = ${INSTALL_PROGRAM}
458
2021-01-21
op
INSTALL_LIB = ${INSTALL_LIB}
459
2021-01-21
op
INSTALL_MAN = ${INSTALL_MAN}
460
2021-01-21
op
INSTALL_DATA = ${INSTALL_DATA}
462
2022-01-03
op
GMID_OBJS = ${GMID_OBJS}
463
2022-01-03
op
GG_OBJS = ${GG_OBJS}
465
2021-07-10
op
VERSION = ${VERSION}
467
2021-01-21
op
__HEREDOC__
469
2021-02-10
op
printf "COMPAT ="
470
2021-02-10
op
for comp in ${COMPAT}; do
471
2021-02-10
op
printf " %s/%s" "$PWD" "$comp"
473
2022-01-03
op
printf "\n\n"
475
2022-01-03
op
# Include dependency info
476
2022-01-03
op
for src in ${ALL_SRCS}; do
477
2022-01-03
op
printf "%s\n" "-include ${src%.c}.d"
480
2022-01-03
op
for comp in ${COMPAT}; do
481
2022-01-03
op
printf "%s\n" "-include ${comp%.o}.d"
484
2021-01-21
op
echo "file Makefile.local: written" 1>&2
485
2021-01-21
op
echo "file Makefile.local: written" 1>&3