home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 5 Edit
/
05-Edit.zip
/
vile-src.zip
/
vile-8.1
/
makefile.in
< prev
next >
Wrap
Makefile
|
1998-10-01
|
17KB
|
604 lines
# makefile.in is the makefile template for vile on unix systems.
# makefile is generated from makefile.in by running configure.
#
# If you edit makefile, your changes will be lost when you run configure
# again. See the file INSTALL from instructions on how to configure, make,
# and install vile/xvile.
#
# The command/name/key/function bindings are defined in the file "cmdtbl".
# The mktbls program parses this to produce nebind.h, nename.h, neproto.h and
# nefunc.h, which are used by the rest of the build.
#
# Buffer/window modes are defined in the file "modetbl".
# The mktbls program parses this to produce nemode.h, which is included in
# 'estruct.h'.
#
# The version number is found near the top of edef.h, and is displayed with
# the ":version" command, or by invoking vile with "-V".
#
# Paul Fox
#
# gnu autoconf support by kevin buettner, 5/94
# original makefile for uemacs: Adam Fritz July 30,1987 (do you recognize it?)
#
# $Header: /usr/build/vile/vile/RCS/makefile.in,v 1.117 1998/10/02 01:04:17 tom Exp $
#
#### Start of system configuration section. ####
srcdir = @srcdir@
srcdir_sl = @srcdir@/
VPATH = @srcdir@
CC = @CC@
CPP = @CPP@
LINK = @LINK_PREFIX@ $(CC) $(CFLAGS)
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
EXTRA_CFLAGS = @EXTRA_CFLAGS@
CFLAGS = @CFLAGS@ $(EXTRA_CFLAGS)
LIBS = @LIBS@
LINT = @LINT@
x = @PROG_EXT@
X_CFLAGS = @X_CFLAGS@
X_LIBS = @X_LIBS@
SCREEN = @SCREEN@
TARGET = @TARGET@$x
PERL = @PERL@
PERLLIB = @perl_lib_path@
prefix = @prefix@
exec_prefix = @exec_prefix@
manext = 1
bindir = @bindir@
datadir = @datadir@/vile
perldir = $(datadir)/perl
mandir = @mandir@/man$(manext)
#### End of system configuration section. ####
SHELL = /bin/sh
RM = rm -f
QUOTDEFS = -DVILE_STARTUP_PATH=\"@VILE_STARTUP_PATH@\"
CPPFLAGS = -I. -I$(srcdir) $(X_CFLAGS) \
-DHAVE_CONFIG_H @CPPFLAGS@
LDFLAGS = @IMAKE_LOADFLAGS@
INSTALL_DIRS = $(bindir) $(datadir) $(mandir) @EXTRA_INSTALL_DIRS@
.SUFFIXES: .c .i .o
.c.i:
@RULE_CC@
@ECHO_CC@$(CPP) -C $(CPPFLAGS) $(QUOTDEFS) $< >$@
.c.o:
@RULE_CC@
@ECHO_CC@$(CC) -c $(CPPFLAGS) $(QUOTDEFS) $(CFLAGS) -DHELP_LOC=\"$(datadir)/\" $<
# All of the makefiles which should be preserved and distributed
UNIXMAKIN = makefile.in # for use with configure
VMSMAK = descrip.mms vmsbuild.com # on VMS
TURBOMAK = makefile.tbc # on DOS or OS/2, TURBO C or Borland C
WATMAK = makefile.wat # on DOS, using Watcom C/386
MSCMAK = # still waiting for this one # on DOS, using Microsoft C
DJGPPMAK = makefile.djg # on DOS, DJGCC v1.09
NTMAK = makefile.wnt # on Windows/NT
BCCNTMAK = makefile.blc # Borland C on Windows/NT
OS2MAK = makefile.icc # OS/2, (IBM C Set ++ 2.x)
EMXMAK = makefile.emx config.emx # OS/2, (EMX with gcc)
MAKFILES = \
$(UNIXMAKIN) \
$(VMSMAK) \
$(TURBOMAK) \
$(WATMAK) \
$(DJGPPMAK) \
$(MSCMAK) \
$(BORMAK) \
$(NTMAK) \
$(BCCNTMAK) \
$(OS2MAK) \
$(EMXMAK)
ALLTOOLS = $(MAKFILES) mktbls.c cmdtbl modetbl \
configure config_h.in \
install.sh mkdirs.sh \
configure.in aclocal.m4
# these are normal editable headers
HDRS = \
api.h \
btree.h \
chgdfunc.h \
dirstuff.h \
edef.h \
estruct.h \
os2keys.h \
proto.h \
pscreen.h \
tcap.h \
trace.h
SCREENS = \
ansi.c \
borland.c \
ibmpc.c \
ntconio.c \
ntwinio.c \
os2vio.c \
tcap.c \
vmsvt.c \
x11.c
# other source code, some used in other makefiles, some useful tools,
# some possibly obsolete
PERL_SRC = \
$(srcdir)/perl/glob2re.pl \
$(srcdir)/perl/hgrep.pl \
$(srcdir)/perl/hilite.pl \
$(srcdir)/perl/manfilt.pl \
$(srcdir)/perl/search.pl \
$(srcdir)/perl/shell.pl \
$(srcdir)/perl/syntax.pl \
$(srcdir)/perl/tailf.pl \
$(srcdir)/perl/visit.pl
MACRO_SRC = \
$(srcdir)/macros/manpage.rc \
$(srcdir)/macros/pictmode.rc \
$(srcdir)/macros/digraphs.rc
OTHERSRC = \
c-filt.c \
c-filt.flx \
djhandl.c \
gppconio.c \
manfilt.c \
os2pipe.c \
pas-filt.c \
vms2unix.c \
vmspipe.c
# documentation, such as it is
DOCS = \
doc/config.doc \
doc/hilite.doc \
doc/macros.doc \
doc/menus.doc \
doc/modes.doc \
doc/oleauto.doc \
doc/perl.doc \
doc/visvile.doc \
doc/w32modes.doc \
vile.1 \
vile.hlp
# miscellaneous text files
TEXTFILES = README README.PC \
INSTALL CHANGES \
CHANGES.R7 CHANGES.R6 CHANGES.R5 CHANGES.R4 CHANGES.R3 \
buglist revlist patchlev.h COPYING
VILESRC = main.c api.c basic.c bind.c btree.c buffer.c crypt.c csrch.c \
display.c dumbterm.c eval.c exec.c externs.c fences.c file.c \
filec.c fileio.c finderr.c glob.c globals.c \
history.c input.c insert.c isearch.c itbuff.c lckfiles.c line.c map.c \
modes.c msgs.c npopen.c oneliner.c opers.c path.c random.c \
regexp.c region.c search.c select.c spawn.c tags.c \
tbuff.c termio.c undo.c version.c \
watch.c window.c word.c wordmov.c
ALLSRC = $(VILESRC) $(SCREENS) $(OTHERSRC) $(HDRS)
# this is for work-in-progress files being shared among developers
# which don't need to go into general releases yet.
DEVELOPER_ONLY = NOTES.X11 empty.rc mktbls.bat \
trace.c trace.h \
fakevms.c fakevms.h
# these are the files that go to everyone
DISTFILES = $(ALLTOOLS) $(ALLSRC) $(DOCS) $(TEXTFILES)
# these are the files that go to coders
DEV_DISTFILES = $(DISTFILES) $(DEVELOPER_ONLY)
SRC = $(SCREEN).c $(VILESRC)
MKTBLS = ./mktbls$x
# these headers are built by the mktbls program from the information in cmdtbl
# and in modetbl
BUILTHDRS = nebind.h neproto.h neexec.h nefunc.h nemode.h nename.h nevars.h nefkeys.h nefsms.h
# built from perl.xs
BUILTSRCS = perl.c
# The following are optional (non-core):
# btree.o
# crypt.o
# npopen.o
# spawn.o
OBJ = $(SCREEN).o \
main.o api.o basic.o bind.o buffer.o csrch.o \
display.o dumbterm.o eval.o exec.o externs.o fences.o file.o \
filec.o fileio.o finderr.o glob.o globals.o \
history.o input.o insert.o isearch.o itbuff.o lckfiles.o line.o map.o \
modes.o msgs.o oneliner.o opers.o path.o random.o \
regexp.o region.o search.o select.o tags.o \
tbuff.o termio.o undo.o version.o \
watch.o window.o word.o wordmov.o @EXTRAOBJS@
ALL = $(TARGET) vile-manfilt$x vile-c-filt$x vile-pas-filt$x vile-crypt$x
all: $(ALL)
$(TARGET): $(BUILTHDRS) $(OBJ)
-mv $(TARGET) o$(TARGET)
@ECHO_LD@$(LINK) $(LDFLAGS) -o $@ $(OBJ) $(X_LIBS) $(LIBS)
vile.man: vile.1
nroff -man vile.1 | col -b >vile.man
vile-manfilt$x : manfilt.o
@ECHO_LD@$(LINK) $(LDFLAGS) -o $@ manfilt.o
vile-c-filt$x : c-filt.o
@ECHO_LD@$(LINK) $(LDFLAGS) -o $@ c-filt.o
vile-pas-filt$x : pas-filt.o
@ECHO_LD@$(LINK) $(LDFLAGS) -o $@ pas-filt.o
vile-crypt$x : $(srcdir)/crypt.c
@ECHO_LD@$(CC) -DSTANDALONE $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) \
-o $@ $(srcdir)/crypt.c
vile-perl-api.pod: perl.xs
perl -lne 'print if s/^\s{1,2}#\s{0,1}//' $(srcdir)/perl.xs > $@
vile-perl-api.doc: vile-perl-api.pod
pod2text vile-perl-api.pod > $@
vile-perl-api.html: vile-perl-api.pod
pod2html vile-perl-api.pod > $@
vile-perl-api.man: vile-perl-api.pod
pod2man vile-perl-api.pod > $@
nebind.h \
nefkeys.h \
neexec.h \
nefunc.h \
neproto.h \
nename.h : cmdtbl $(MKTBLS)
$(MKTBLS) $(srcdir)/cmdtbl
nefsms.h \
nevars.h \
nemode.h: modetbl $(MKTBLS)
$(MKTBLS) $(srcdir)/modetbl
$(MKTBLS): $(srcdir)/mktbls.c
@ECHO_LD@$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) \
-o $(MKTBLS) $(srcdir)/mktbls.c
check: $(TARGET)
@echo Sorry, no batch tests available.
INSTALL_PERL_DIRS = $(perldir)
INSTALL_PERL_FILES = \
$(perldir)/glob2re.pl \
$(perldir)/hgrep.pl \
$(perldir)/hilite.pl \
$(perldir)/manfilt.pl \
$(perldir)/search.pl \
$(perldir)/shell.pl \
$(perldir)/syntax.pl \
$(perldir)/tailf.pl \
$(perldir)/visit.pl
INSTALL_FILES = \
$(bindir)/$(TARGET) \
$(bindir)/vile-manfilt$x \
$(bindir)/vile-c-filt$x \
$(bindir)/vile-pas-filt$x \
$(bindir)/vile-crypt$x \
$(mandir)/$(TARGET).$(manext) \
$(datadir)/vile.hlp @EXTRA_INSTALL_FILES@
install: $(INSTALL_DIRS) \
$(INSTALL_FILES)
@echo 'Completed installation.'
install-perl : $(INSTALL_PERL_DIRS) $(INSTALL_PERL_FILES)
installdirs: $(INSTALL_DIRS)
uninstall:
-$(RM) $(INSTALL_FILES)
# The makefile is technically dependent upon the config.status file, but
# gmake gets overly ambitious and remakes the makefile too often.
makefile: makefile.in
if test ! -f config.status; then $(SHELL) ./configure; fi
$(SHELL) ./config.status
# defining this target, though technically (i think) correct, causes
# the make to fail on machines which don't have autoconf, i.e. most of them.
#configure: configure.in aclocal.m4
# autoconf
config.status: configure
$(SHELL) ./config.status --recheck
mostlyclean:
-$(RM) *.[oi] o$(TARGET) $(BUILTHDRS) $(BUILTSRCS) $(MKTBLS) \
core *~ *.BAK
clean: mostlyclean
-$(RM) $(ALL)
distclean: clean
-$(RM) makefile config.status config.cache config.log config.h
realclean: distclean
-$(RM) tags TAGS vile-perl-api.* pod2html-*
lint: $(BUILTHDRS)
$(LINT) $(CPPFLAGS) $(SRC) $(LIBS)
$(LINT) $(CPPFLAGS) mktbls.c
$(LINT) $(CPPFLAGS) c-filt.c
$(LINT) $(CPPFLAGS) pas-filt.c
$(LINT) $(CPPFLAGS) manfilt.c
tags:
ctags $(SRC) $(HDRS)
TAGS:
etags $(SRC) $(HDRS)
dotags:
dotags $(SRC) $(HDRS)
# this builds vile-N.Ndev.tar.gz, including all development files
devtarball: $(DEV_DISTFILES) /tmp/vilevers release_warnings
echo vile-`cat /tmp/vilevers` > .fname
rm -rf `cat .fname`
mkdir `cat .fname`
SRCDIR=. ;\
test $(srcdir) = "\@srcdir\@" && SRCDIR=$(srcdir) ;\
for file in $(DEV_DISTFILES); do \
ln $$SRCDIR/$$file `cat .fname` \
|| { echo copying $$file instead; cp -p $$file `cat .fname`; }; \
done
# tar -cf - `cat .fname` | gzip >`cat .fname`dev.tar.gz
gtar -czf `cat .fname`dev.tar.gz `cat .fname`
@echo Created `cat .fname`dev.tar.gz
rm -rf `cat .fname` .fname
# this builds vile-N.N.tar.gz, for general release
tarball: $(DISTFILES) /tmp/vilevers release_warnings
echo vile-`cat /tmp/vilevers` > .fname
rm -rf `cat .fname`
mkdir `cat .fname`
SRCDIR=. ;\
test $(srcdir) = "\@srcdir\@" && SRCDIR=$(srcdir) ;\
for file in $(DISTFILES); do \
ln $$SRCDIR/$$file `cat .fname` \
|| { echo copying $$file instead; cp -p $$file `cat .fname`; }; \
done
gtar -czf `cat .fname`.tar.gz `cat .fname`
@echo Created `cat .fname`.tar.gz
rm -rf `cat .fname` .fname
# this builds vileN.Nshar, for general release
bigsharball: $(DISTFILES) /tmp/vilevers release_warnings
vilevers=`cat /tmp/vilevers`; \
shar -spgf@foxharp.boston.ma.us -nvile$${vilevers} \
-o vile$${vilevers}shar README `ls $(DISTFILES) | \
sed '/^README$$/d'` ; \
mv vile$${vilevers}shar.01 vile$${vilevers}shar ; \
echo Created vile$${vilevers}shar
# shar args: add -a for archive headers, add -s pgf@site.net for "submitted-by"
multisharball: $(DISTFILES) /tmp/vilevers
[ -d shardir ] || mkdir shardir
vilevers=`cat /tmp/vilevers`; \
shar -x -a -spgf@foxharp.boston.ma.us -nvile$${vilevers} -L60 \
-o shardir/vileshar `ls $(DISTFILES)`
multicsharball: $(DISTFILES) /tmp/vilevers
[ -d cshardir ] || mkdir cshardir
vilevers=`cat /tmp/vilevers`; \
shar -p -nvile$${vilevers} -L60 -o cshardir/vileshar \
-C `ls $(DISTFILES)`
zipfile: $(DISTFILES) /tmp/vilevers
vilevers=`cat /tmp/vilevers | sed 's/\.//'`; \
zip -k vile$${vilevers}s.zip $(DISTFILES) ;\
echo Created vile$${vilevers}s.zip
# DOS builds...
DOSBINARIES = README README.PC vile.hlp vile.exe
binzip_djg: $(DOSBINARIES) go32.exe /tmp/vilevers
vilevers=`cat /tmp/vilevers | sed 's/\.//'`; \
zip -k vile$${vilevers}b.zip $(DOSBINARIES) go32.exe ;\
echo Created vile$${vilevers}b.zip
binzip_wat: $(DOSBINARIES) dos4gw.exe /tmp/vilevers
vilevers=`cat /tmp/vilevers | sed 's/\.//'`; \
zip -k vile$${vilevers}b.zip $(DOSBINARIES) dos4gw.exe ;\
echo Created vile$${vilevers}b.zip
patch: /tmp/vilevers
@orevlistrev=`rlog -h revlist | egrep head: | cut -f2 -d'.'` ;\
orevlistrev=1.`expr $$orevlistrev - 1` ;\
ovilevers=`cat /tmp/vilevers | cut -f2 -d'.'` ;\
ovilemajor=`cat /tmp/vilevers | cut -f1 -d'.'` ;\
ovilevers=$$ovilemajor.`expr $$ovilevers - 1` ;\
echo Previous version is $$ovilevers ;\
vilevers=`cat /tmp/vilevers` ;\
co -p$$orevlistrev revlist | \
while read file filerev ;\
do \
rcsdiff -c -u -r$$filerev $$file 2>/dev/null || true ;\
done >patch$$ovilevers-$$vilevers ;\
echo Created patch$$ovilevers-$$vilevers
dpatch:
co -p$(PATCH_AGAINST) revlist | \
while read file filerev ;\
do \
rcsdiff -c -u -r$$filerev $$file 2>/dev/null || true ;\
done >patchREL-CUR ;\
echo Created patchREL-CUR
/tmp/vilevers: ALWAYS
@expr "`egrep 'version\[\].*' edef.h`" : \
'.* \([0-9][0-9]*\.[0-9].*\)".*' >/tmp/vilevers
@echo Current version is `cat /tmp/vilevers`
release_warnings:
@echo
@echo 'Do you need to rebuild the revlist???? top comment is:'
@rlog revlist | sed -n -e '/date/,/---------/p' | \
sed -n '/date\|------------/!p' | sed -e 's/^/ /' -e 1q
@echo 'or maybe date the CHANGES file? it says:'
@sed -n -e '/Changes/s/^/ /p' -e '2q' CHANGES
@echo 'or maybe update the version info in edef.h? it contains:'
@sed -n -e '/.*decl_init.*version.*,/s// /p' edef.h
@echo 'how about the README? it contains:'
@sed -n -e '/version/s/^/ /p' -e '3q' README
@echo 'or in vile.hlp? it has:'
@sed -n -e '/.*Getting along with vile */s// /p' -e '5q' vile.hlp
@echo 'or in vmsbuild.com? it has:'
@sed -n -e '/Identification=/s/^.*Vile \([^"]*\)["]*/ \1/p' vmsbuild.com
@echo 'did you reset patchlev.h?'
@sed -n -e 's/^/ /' -e '/PATCH/p' patchlev.h
@echo -n "Hit return to continue..."
@read a
rcsdiffrw:
@-for x in `$(MAKE) -f makefile.in rw` ;\
do \
echo ;\
echo $$x ;\
echo ========= ;\
rcsdiff -u $$x ;\
done 2>&1 ;\
echo ;\
echo all done
# dump a list of the important files
list:
@ls $(DEV_DISTFILES)
devonlylist:
@ls $(DEVELOPER_ONLY)
# make a list of RCS revisions. don't include the revlist itself
nrevlist:
for f in `$(MAKE) -f makefile.in list | egrep -v revlist` ;\
do \
rev=`rlog -h $$f | egrep head: | cut -f2 -d' '` ;\
echo "$$f $$rev" ;\
done >/tmp/vile_revlist
mv /tmp/vile_revlist nrevlist
# dump a list of files that may have changed since last backup
rw:
@ls -l $(DEV_DISTFILES) |\
egrep '^[^l].w' | \
sed 's;.* ;;' # strip to last space
populate:
for file in $(DEV_DISTFILES); do \
test -f $$file || co $$file ;\
done
perl.c: $(srcdir)/perl.xs $(srcdir)/ptypemap
$(PERL) $(PERLLIB)/ExtUtils/xsubpp \
-typemap $(PERLLIB)/ExtUtils/typemap \
-typemap ptypemap \
$(srcdir)/perl.xs > $@
$(OBJ): estruct.h nemode.h edef.h neproto.h proto.h config.h
api.o: api.h
bind.o: nefunc.h btree.h
btree.o: btree.h
eval.o: nevars.h
exec.o: neexec.h nefunc.h
externs.o: nebind.h nename.h neproto.h nefunc.h
filec.o: dirstuff.h
glob.o: dirstuff.h
globals.o: nefunc.h
main.o: chgdfunc.h nevars.h
modes.o: chgdfunc.h nefsms.h
opers.o: nefunc.h
path.o: dirstuff.h
perl.o: api.h
random.o: nefunc.h
select.o: nefunc.h
spawn.o: nefunc.h
tags.o: btree.h
tcap.o: tcap.h
termio.o: nefunc.h
version.o: patchlev.h
word.o: nefunc.h
x11.o: nefunc.h
# dependency-rules for install/installdirs
$(bindir)/$(TARGET): $(TARGET)
$(INSTALL_PROGRAM) $(TARGET) $@
$(bindir)/vile-manfilt$x : vile-manfilt$x
$(INSTALL_PROGRAM) vile-manfilt$x $@
$(bindir)/vile-c-filt$x : vile-c-filt$x
$(INSTALL_PROGRAM) vile-c-filt$x $@
$(bindir)/vile-pas-filt$x : vile-pas-filt$x
$(INSTALL_PROGRAM) vile-pas-filt$x $@
$(bindir)/vile-crypt$x : vile-crypt$x
$(INSTALL_PROGRAM) vile-crypt$x $@
$(mandir)/vile.$(manext): $(srcdir)/vile.1
$(INSTALL_DATA) $(srcdir)/vile.1 $@
$(mandir)/xvile.$(manext): $(srcdir)/vile.1
$(INSTALL_DATA) $(srcdir)/vile.1 $@
$(datadir)/vile.hlp: $(srcdir)/vile.hlp
$(INSTALL_DATA) $(srcdir)/vile.hlp $@
$(perldir)/glob2re.pl: $(srcdir)/perl/glob2re.pl
$(INSTALL_DATA) $(srcdir)/perl/glob2re.pl $@
$(perldir)/hgrep.pl: $(srcdir)/perl/hgrep.pl
$(INSTALL_DATA) $(srcdir)/perl/hgrep.pl $@
$(perldir)/hilite.pl: $(srcdir)/perl/hilite.pl
$(INSTALL_DATA) $(srcdir)/perl/hilite.pl $@
$(perldir)/manfilt.pl: $(srcdir)/perl/manfilt.pl
$(INSTALL_DATA) $(srcdir)/perl/manfilt.pl $@
$(perldir)/search.pl: $(srcdir)/perl/search.pl
$(INSTALL_DATA) $(srcdir)/perl/search.pl $@
$(perldir)/shell.pl: $(srcdir)/perl/shell.pl
$(INSTALL_DATA) $(srcdir)/perl/shell.pl $@
$(perldir)/syntax.pl: $(srcdir)/perl/syntax.pl
$(INSTALL_DATA) $(srcdir)/perl/syntax.pl $@
$(perldir)/tailf.pl: $(srcdir)/perl/tailf.pl
$(INSTALL_DATA) $(srcdir)/perl/tailf.pl $@
$(perldir)/visit.pl: $(srcdir)/perl/visit.pl
$(INSTALL_DATA) $(srcdir)/perl/visit.pl $@
$(INSTALL_DIRS):
$(SHELL) ${srcdir}/mkdirs.sh $@
ALWAYS: