314 lines
6.2 KiB
Makefile
314 lines
6.2 KiB
Makefile
#!/bin/sh
|
|
|
|
cat << EOF > Makefile
|
|
# Default target
|
|
.DEFAULT_GOAL = all
|
|
|
|
PROJECT_NAME = $PROJECT_NAME
|
|
PROJECT_FULLNAME = $PROJECT_FULLNAME
|
|
PROJECT_COPYRIGHT = $PROJECT_COPYRIGHT
|
|
PROJECT_VERSION = $PROJECT_VERSION
|
|
PROEJCT_PAGE = $PROJECT_PAGE
|
|
PROJECT_MAIL = $PROJECT_MAIL
|
|
|
|
INSTALL = $INSTALL
|
|
INSTALL_PROGRAM = \$(INSTALL)
|
|
INSTALL_PROGRAM_STRIP = \$(INSTALL) -s
|
|
INSTALL_DATA = \$(INSTALL) -m 644
|
|
INSTALL_DIR = \$(INSTALL) -d
|
|
SHELL = $SHELL
|
|
CC = $CC
|
|
BISON = $BISON
|
|
FLEX = $FLEX
|
|
RM = $RM
|
|
RMDIR = $RMDIR
|
|
TEST = $TEST
|
|
MAKE = $MAKE
|
|
GREP = $GREP
|
|
CUT = $CUT
|
|
SORT = $SORT
|
|
PR = $PR
|
|
CP = $CP
|
|
CHMOD = $CHMOD
|
|
MAKEINFO = $MAKEINFO
|
|
TEXI2DVI = $TEXI2DVI
|
|
TEXI2PDF = $TEXI2PDF
|
|
DVIPS = $DVIPS
|
|
|
|
CFLAGS = $CFLAGS
|
|
LDFLAGS = $LDFLAGS
|
|
LDLIBS = $LDLIBS
|
|
BFLAGS = $BFLAGS
|
|
FFLAGS = $FFLAGS
|
|
|
|
DESTDIR = $DESTDIR
|
|
|
|
prefix = $prefix
|
|
exec_prefix = $exec_prefix
|
|
bindir = $bindir
|
|
sbindir = $sbindir
|
|
libexecdir = $libexecdir
|
|
datarootdir = $datarootdir
|
|
datadir = $datadir
|
|
sysconfdir = $sysconfdir
|
|
sharedstatedir = $sharedstatedir
|
|
localstatedir = $localstatedir
|
|
docdir = $docdir
|
|
infodir = $infodir
|
|
htmldir = $htmldir
|
|
dvidir = $dvidir
|
|
pdfdir = $pdfdir
|
|
psdir = $psdir
|
|
libdir = $libdir
|
|
localedir = $localedir
|
|
mandir = $mandir
|
|
man1dir = $man1dir
|
|
man2dir = $man2dir
|
|
man3dir = $man3dir
|
|
man4dir = $man4dir
|
|
man5dir = $man5dir
|
|
man6dir = $man6dir
|
|
man7dir = $man7dir
|
|
man8dir = $man8dir
|
|
man9dir = $man9dir
|
|
manext = $manext
|
|
man1ext = $man1ext
|
|
man2ext = $man2ext
|
|
man3ext = $man3ext
|
|
man4ext = $man4ext
|
|
man5ext = $man5ext
|
|
man6ext = $man6ext
|
|
man7ext = $man7ext
|
|
man8ext = $man8ext
|
|
man9ext = $man9ext
|
|
|
|
ALL_CFLAGS = \$(CFLAGS)
|
|
ALL_LDFLAGS = \$(LDFLAGS)
|
|
ALL_LDLIBS = \$(LDLIBS)
|
|
ALL_BFLAGS = \$(BFLAGS)
|
|
ALL_FFLAGS = -t \$(FFLAGS)
|
|
|
|
vpath %.c ./src
|
|
vpath %.l ./src
|
|
vpath %.ggo ./src
|
|
vpath %.pl ./src
|
|
vpath %.sed ./src
|
|
vpath %.sh ./src
|
|
vpath %.texinfo ./doc
|
|
|
|
PROGRAMS_SCRIPT = gph kot unfla grp mar ser kon rm12 uam.tag2re sen-nl
|
|
PROGRAMS_EXEC = tok sen fla rs12
|
|
PROGRAMS = \$(PROGRAMS_SCRIPT) \$(PROGRAMS_EXEC)
|
|
DOC_FILES = utt.info utt.dvi utt.html utt.pdf utt.ps
|
|
|
|
TOK_OBJ_FILES = tok.o tok_cmdline.o
|
|
TOK_FLEX_FILES = tok.l
|
|
TOK_GGO_FILES = tok_cmdline.ggo
|
|
tok: \$(TOK_OBJ_FILES)
|
|
tok.o: tok.c
|
|
tok.o: tok_cmdline.h
|
|
tok.c: tok.l
|
|
tok_cmdline.o: tok_cmdline.c tok_cmdline.h
|
|
tok_cmdline.c: tok_cmdline.ggo
|
|
tok_cmdline.h: tok_cmdline.ggo
|
|
|
|
SEN_OBJ_FILES = sen.o
|
|
SEN_FLEX_FILES = sen.l
|
|
sen: \$(SEN_OBJ_FILES)
|
|
sen.o: sen.c
|
|
sen.c: sen.l
|
|
|
|
FLA_OBJ_FILES = fla.o
|
|
fla: \$(FLA_OBJ_FILES)
|
|
fla.o: fla.c
|
|
|
|
GPH_PERL_FILES = gph.pl
|
|
gph: \$(GPH_PERL_FILES)
|
|
|
|
UAMTAG2RE_PERL_FILES = uam.tag2re.pl
|
|
uam.tag2re: \$(UAMTAG2RE_PERL_FILES)
|
|
|
|
KOT_PERL_FILES = kot.pl
|
|
kot: \$(KOT_PERL_FILES)
|
|
|
|
UNFLA_SH_FILES = unfla.sh
|
|
unfla: \$(UNFLA_SH_FILES)
|
|
|
|
GRP_PERL_FILES = grp.pl
|
|
grp: \$(GRP_PERL_FILES)
|
|
|
|
MAR_PERL_FILES = mar.pl
|
|
mar: \$(MAR_PERL_FILES)
|
|
|
|
SER_PERL_FILES = ser.pl
|
|
ser: \$(SER_PERL_FILES)
|
|
|
|
KON_PERL_FILES = kon.pl
|
|
kon: \$(KON_PERL_FILES)
|
|
|
|
RM12_SED_FILES = rm12.sed
|
|
rm12: \$(RM12_SED_FILES)
|
|
|
|
SENNL_SED_FILES = sen-nl.sed
|
|
sen-nl: \$(SENNL_SED_FILES)
|
|
|
|
RS12_OBJ_FILES = rs12.o
|
|
rs12: \$(RS12_OBJ_FILES)
|
|
rs12.o: rs12.c
|
|
|
|
CONFIG_FILES = src/config.h Makefile
|
|
|
|
.SUFFIXES:
|
|
.SUFFIXES: .l .y .h .c .pl .o .texinfo .info .dvi .html .pdf .ps
|
|
|
|
.PHONY: help
|
|
help:
|
|
@\$(MAKE) --print-data-base --question | \\
|
|
\$(GREP) '^[^.%][-A-Za-z0-9_]*:' | \\
|
|
\$(CUT) -f 1 -d : | \\
|
|
\$(GREP) -v '^Makefile\$\$' | \\
|
|
\$(SORT) | \\
|
|
\$(PR) --omit-pagination --width=80 --columns=4
|
|
|
|
.PHONY: all
|
|
all: \$(PROGRAMS)
|
|
|
|
.PHONY: doc
|
|
doc: info dvi html pdf ps
|
|
|
|
.PHONY: info
|
|
info: utt.info
|
|
|
|
.PHONY: dvi
|
|
dvi: utt.dvi
|
|
|
|
.PHONY: html
|
|
html: utt.html
|
|
|
|
.PHONY: pdf
|
|
pdf: utt.pdf
|
|
|
|
.PHONY: ps
|
|
ps: utt.ps
|
|
|
|
.PHONY: install-all
|
|
install-all: install install-doc
|
|
|
|
.PHONY: installdirs
|
|
installdirs:
|
|
\$(INSTALL_DIR) \$(DESTDIR)\$(prefix) \\
|
|
\$(DESTDIR)\$(exec_prefix) \\
|
|
\$(DESTDIR)\$(bindir) \\
|
|
\$(DESTDIR)\$(datarootdir) \\
|
|
\$(DESTDIR)\$(datadir) \\
|
|
\$(DESTDIR)\$(docdir) \\
|
|
\$(DESTDIR)\$(infodir) \\
|
|
\$(DESTDIR)\$(htmldir) \\
|
|
\$(DESTDIR)\$(dvidir) \\
|
|
\$(DESTDIR)\$(pdfdir) \\
|
|
\$(DESTDIR)\$(psdir) \\
|
|
|
|
.PHONY: install
|
|
install: installdirs
|
|
\$(INSTALL_PROGRAM) \$(PROGRAMS) \$(DESTDIR)\$(bindir)
|
|
|
|
.PHONY: install-strip
|
|
install-strip: installdirs
|
|
\$(INSTALL_PROGRAM) \$(PROGRAMS_SCRIPT) \$(DESTDIR)\$(bindir)
|
|
\$(INSTALL_PROGRAM_STRIP) \$(PROGRAMS_EXEC) \$(DESTDIR)\$(bindir)
|
|
|
|
.PHONY: install-doc
|
|
install-doc: install-info install-dvi install-html install-pdf install-ps
|
|
|
|
.PHONY: install-info
|
|
install-info: installdirs
|
|
\$(INSTALL_DATA) utt.info \$(DESTDIR)\$(infodir)
|
|
|
|
.PHONY: install-dvi
|
|
install-dvi: installdirs
|
|
\$(INSTALL_DATA) utt.dvi \$(DESTDIR)\$(dvidir)
|
|
|
|
.PHONY: install-html
|
|
install-html: installdirs
|
|
\$(INSTALL_DATA) utt.html \$(DESTDIR)\$(htmldir)
|
|
|
|
.PHONY: install-pdf
|
|
install-pdf: installdirs
|
|
\$(INSTALL_DATA) utt.pdf \$(DESTDIR)\$(pdfdir)
|
|
|
|
.PHONY: install-ps
|
|
install-ps: installdirs
|
|
\$(INSTALL_DATA) utt.ps \$(DESTDIR)\$(psdir)
|
|
|
|
.PHONY: uninstall
|
|
uninstall:
|
|
\$(RM) \$(foreach file,\$(PROGRAMS),\$(DESTDIR)\$(bindir)/\$(file))
|
|
\$(RM) \$(DESTDIR)\$(infodir)/utt.info
|
|
\$(RM) \$(DESTDIR)\$(dvidir)/utt.dvi
|
|
\$(RM) \$(DESTDIR)\$(htmldir)/utt.html
|
|
\$(RM) \$(DESTDIR)\$(pdfdir)/utt.pdf
|
|
\$(RM) \$(DESTDIR)\$(psdir)/utt.ps
|
|
\$(RMDIR) \$(DESTDIR)\$(docdir)
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
\$(RM) \$(PROGRAMS)
|
|
\$(RM) \$(TOK_OBJ_FILES)
|
|
\$(RM) \$(patsubst %.l,%.c,\$(TOK_FLEX_FILES))
|
|
\$(RM) \$(patsubst %.ggo,%.c,\$(TOK_GGO_FILES))
|
|
\$(RM) \$(patsubst %.ggo,%.h,\$(TOK_GGO_FILES))
|
|
\$(RM) \$(SEN_OBJ_FILES)
|
|
\$(RM) \$(patsubst %.l,%.c,\$(SEN_FLEX_FILES))
|
|
\$(RM) \$(FLA_OBJ_FILES)
|
|
\$(RM) \$(RS12_OBJ_FILES)
|
|
\$(RM) \$(DOC_FILES)
|
|
|
|
.PHONY: distclean
|
|
distclean: clean
|
|
\$(RM) \$(CONFIG_FILES)
|
|
|
|
%.o: %.c
|
|
\$(CC) -c \$< -o \$@ \$(ALL_CFLAGS)
|
|
|
|
%.c: %.l
|
|
\$(FLEX) -t \$< > \$@
|
|
|
|
%.c: %.ggo
|
|
gengetopt --input \$< --file-name \$(basename \$@) --conf-parser
|
|
|
|
%.h: %.ggo
|
|
gengetopt --input \$< --file-name \$(basename \$@) --conf-parser
|
|
|
|
%: %.o
|
|
\$(CC) \$? -o \$@ \$(ALL_LDFLAGS) \$(ALL_CFLAGS) \$(ALL_LDLIBS)
|
|
|
|
%: %.pl
|
|
\$(CP) \$< \$@
|
|
\$(CHMOD) a+x \$@
|
|
|
|
%: %.sh
|
|
\$(CP) \$< \$@
|
|
\$(CHMOD) a+x \$@
|
|
|
|
%: %.sed
|
|
\$(CP) \$< \$@
|
|
\$(CHMOD) a+x \$@
|
|
|
|
%.info: %.texinfo
|
|
\$(MAKEINFO) \$< -o \$@
|
|
|
|
%.dvi: %.texinfo
|
|
\$(TEXI2DVI) --build=clean \$< -o \$@
|
|
|
|
%.html: %.texinfo
|
|
\$(MAKEINFO) --html --no-split \$< -o \$@
|
|
|
|
%.pdf: %.texinfo
|
|
\$(TEXI2PDF) --build=clean \$< -o \$@
|
|
|
|
%.ps: %.dvi
|
|
\$(DVIPS) \$< -o \$@
|
|
|
|
EOF
|
|
|