mawk/Makefile.in
2023-07-26 23:50:48 +00:00

196 lines
7.5 KiB
Makefile

# $MawkId: Makefile.in,v 1.60 2023/07/26 23:20:37 tom Exp $
# Makefile-template for MAWK
###############################################################################
# copyright 2009-2021,2023 Thomas E. Dickey
# copyright 2010, Guido Berhoerster
# copyright 2009, Jonathan Nieder
# copyright 2005, Aleksey Cheusov
# copyright 1996, Michael D. Brennan
#
# This is a source file for mawk, an implementation of
# the AWK programming language.
#
# Mawk is distributed without warranty under the terms of
# the GNU General Public License, version 2, 1991.
###############################################################################
SHELL=/bin/sh
####################################
srcdir = @srcdir@
VPATH = @srcdir@
x = @EXEEXT@
o = .@OBJEXT@
prefix = @prefix@
exec_prefix = @exec_prefix@
datarootdir = @datarootdir@
manext = 1
bindir = @bindir@
CC = @CC@
CPP = @CPP@
BUILD_CC = @BUILD_CC@
CPPFLAGS = -I. -I$(srcdir) -DHAVE_CONFIG_H @CPPFLAGS@
EXTRA_CFLAGS = @EXTRA_CFLAGS@
CFLAGS = @CFLAGS@ $(EXTRA_CFLAGS)
LDFLAGS = @CFLAGS@ @LDFLAGS@
LIBS = @LIBS@
BUILD_CFLAGS = @BUILD_CFLAGS@
BUILD_CPPFLAGS = -I. -I$(srcdir) -DHAVE_CONFIG_H @BUILD_CPPFLAGS@
BUILD_LDFLAGS = @BUILD_LDFLAGS@
BUILD_LIBS = @BUILD_LIBS@
BUILD_EXEEXT = @BUILD_EXEEXT@
BUILD_OBJEXT = @BUILD_OBJEXT@
MAKE_RECUR = @cf_cv_makeflags@ prefix="$(prefix)" DESTDIR="$(DESTDIR)" PROGRAM="$(actual_PROG)"
YACC = @YACC@
CTAGS = @CTAGS@
ETAGS = @ETAGS@
LINT = @LINT@
LINTOPTS = @LINT_OPTS@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
transform = @program_transform_name@
# where to put mawk
BINDIR = $(DESTDIR)$(bindir)
#######################################
actual_PROG = `echo mawk| sed '$(transform)'`
binary_PROG = $(actual_PROG)$x
PROGRAM = mawk$x
OBJS = parse$o scan$o memory$o main$o hash$o execute$o code$o \
da$o error$o init$o bi_vars$o cast$o print$o bi_funct$o \
kw$o jmp$o array$o field$o split$o re_cmpl$o regexp$o zmalloc$o \
fin$o files$o scancode$o matherr$o fcall$o version$o @EXTRAOBJS@
.SUFFIXES: .c .i .s $o
.c.i :
@RULE_CC@
@ECHO_CC@$(CPP) -C $(CPPFLAGS) $< >$@
.c.s :
@echo compiling $<
@$(CC) -S $(CFLAGS) $(CPPFLAGS) $< -o $@ # >$@
.c$o :
@RULE_CC@
@ECHO_CC@$(CC) -c $(CPPFLAGS) $(CFLAGS) $<
@MAKE_PHONY@.PHONY: all check mawk_test fpe_test install uninstall clean distclean maintainer-clean lint
all : $(PROGRAM)
check : mawk_test fpe_test
$(PROGRAM) : $(OBJS)
@ECHO_LD@$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
CHECK = AWK=`pwd`/$(PROGRAM); export AWK; cd $(srcdir)/test; echo "** $@"
mawk_test : $(PROGRAM) # test that we have a sane mawk
@sh -c '$(CHECK); ./mawktest'
fpe_test : $(PROGRAM) # test FPEs are handled OK
@sh -c '$(CHECK); ./fpe_test'
parse.c : parse.y
@echo expect 4 shift/reduce conflicts
$(YACC) -d parse.y
sed -e '/^#line/s%"y.tab.c"%"parse.c"%' -e '/typedef.*YYINT;/s,int,short,' y.tab.c >$@
rm -f y.tab.c
-if cmp -s y.tab.h parse.h ;\
then rm y.tab.h ;\
else mv y.tab.h parse.h ; fi
NOIDENT = sed -e 's/[$$]MawkId\([^$$]*\)[$$]/@MawkId\1@/'
scancode.c : $(srcdir)/makescan.c scancode.h nstd.h config.h
@ECHO_LD@$(BUILD_CC) $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -o makescan$x $(srcdir)/makescan.c
rm -f scancode.c
./makescan$x > scancode.c
rm makescan$x
install :: $(BINDIR) $(PROGRAM)
install \
uninstall ::
@echo "$@ing $(binary_PROG) executable"
@$(INSTALL_PROGRAM) $(PROGRAM) $(BINDIR)/$(binary_PROG)
@echo "$@ing $(actual_PROG) manpages"
@cd man && $(MAKE) $(MAKE_RECUR) $@
@cd man && $(MAKE) $(MAKE_RECUR) $@ TOPIC=-arrays SECTION=7
@cd man && $(MAKE) $(MAKE_RECUR) $@ TOPIC=-code SECTION=7
clean :
-cd man && $(MAKE) $(MAKE_RECUR) $@
-rm -f y.tab.c y.tab.h makescan$x
-rm -f *$o *.i test/$(PROGRAM) *core* test/*core* $(PROGRAM)
distclean : clean
-cd man && $(MAKE) $(MAKE_RECUR) $@
-rm -f scancode.c
-rm -f man2html.tmp
-rm -f defines.out maxint.out fpe_check$x tags makedeps.awk
-rm -f config.h Makefile config.status config.log config.cache
maintainer-clean : distclean
-rm -f parse.c parse.h
-rm -f array.c array.h
-rm -f configure config.guess config.sub install-sh
-rm -fr autom4te.cache
lint :
$(LINT) $(LINTOPTS) $(CPPFLAGS) $(OBJS:$o=.c)
tags :
$(CTAGS) *.[ch] */*.[ch]
@MAKE_UPPER_TAGS@TAGS :
@MAKE_UPPER_TAGS@ $(ETAGS) *.[ch] */*.[ch]
$(BINDIR) :
mkdir -p "$@"
# output from makedeps.sh
array.o : array.h bi_vars.h config.h field.h mawk.h memory.h nstd.h sizes.h symtype.h types.h zmalloc.h
bi_funct.o : array.h bi_funct.h bi_vars.h config.h field.h files.h fin.h init.h mawk.h memory.h nstd.h regexp.h repl.h sizes.h symtype.h types.h zmalloc.h
bi_vars.o : array.h bi_vars.h config.h field.h init.h mawk.h memory.h nstd.h sizes.h symtype.h types.h zmalloc.h
cast.o : array.h config.h field.h mawk.h memory.h nstd.h parse.h repl.h scan.h scancode.h sizes.h symtype.h types.h zmalloc.h
code.o : array.h code.h config.h field.h init.h jmp.h mawk.h memory.h nstd.h sizes.h symtype.h types.h zmalloc.h
da.o : array.h bi_funct.h code.h config.h field.h mawk.h memory.h nstd.h repl.h sizes.h symtype.h types.h zmalloc.h
error.o : array.h bi_vars.h config.h mawk.h nstd.h parse.h scan.h scancode.h sizes.h symtype.h types.h
execute.o : array.h bi_funct.h bi_vars.h code.h config.h field.h fin.h mawk.h memory.h nstd.h regexp.h repl.h sizes.h symtype.h types.h zmalloc.h
fcall.o : array.h code.h config.h mawk.h memory.h nstd.h sizes.h symtype.h types.h zmalloc.h
field.o : array.h bi_vars.h config.h field.h init.h mawk.h memory.h nstd.h parse.h regexp.h repl.h scan.h scancode.h sizes.h symtype.h types.h zmalloc.h
files.o : array.h config.h files.h fin.h init.h mawk.h memory.h nstd.h sizes.h symtype.h types.h zmalloc.h
fin.o : array.h bi_vars.h config.h field.h fin.h mawk.h memory.h nstd.h parse.h scan.h scancode.h sizes.h symtype.h types.h zmalloc.h
hash.o : array.h config.h mawk.h memory.h nstd.h sizes.h symtype.h types.h zmalloc.h
init.o : array.h bi_vars.h code.h config.h field.h init.h mawk.h memory.h nstd.h sizes.h symtype.h types.h zmalloc.h
jmp.o : array.h code.h config.h init.h jmp.h mawk.h memory.h nstd.h sizes.h symtype.h types.h zmalloc.h
kw.o : array.h config.h init.h mawk.h nstd.h parse.h sizes.h symtype.h types.h
main.o : array.h code.h config.h files.h init.h mawk.h memory.h nstd.h sizes.h symtype.h types.h zmalloc.h
makescan.o : config.h nstd.h scancode.h
matherr.o : array.h config.h init.h mawk.h nstd.h sizes.h symtype.h types.h
memory.o : config.h mawk.h memory.h nstd.h sizes.h types.h zmalloc.h
parse.o : array.h bi_funct.h bi_vars.h code.h config.h field.h files.h jmp.h mawk.h memory.h nstd.h sizes.h symtype.h types.h zmalloc.h
print.o : array.h bi_funct.h bi_vars.h config.h field.h files.h mawk.h memory.h nstd.h parse.h scan.h scancode.h sizes.h symtype.h types.h zmalloc.h
re_cmpl.o : array.h config.h mawk.h memory.h nstd.h parse.h regexp.h repl.h scan.h scancode.h sizes.h symtype.h types.h zmalloc.h
scan.o : array.h code.h config.h field.h files.h fin.h init.h mawk.h memory.h nstd.h parse.h repl.h scan.h scancode.h sizes.h symtype.h types.h zmalloc.h
split.o : array.h bi_funct.h bi_vars.h config.h field.h mawk.h memory.h nstd.h parse.h regexp.h repl.h scan.h scancode.h sizes.h symtype.h types.h zmalloc.h
version.o : array.h config.h init.h mawk.h nstd.h patchlev.h sizes.h symtype.h types.h
zmalloc.o : config.h mawk.h nstd.h sizes.h types.h zmalloc.h
regexp.o : rexpdb.c rexp4.c rexp2.c regexp_system.c sizes.h mawk.h rexp0.c rexp1.c config.h rexp.h regexp.h nstd.h rexp3.c rexp.c field.h