freebsd-dev/usr.bin/vi/Makefile
Satoshi Asami ff5fcc93d4 Remove tcl from /usr/src, according to prior agreement. BTW, tcl-8.0 *is*
a port so there is nothing to be done on that side now.

Approved by:	jkh
===
To: "Jordan K. Hubbard" <jkh@time.cdrom.com>
cc: Andreas Klemm <andreas@klemm.gtn.com>, current@freebsd.org
Subject: Re: Make this a relese coordinator decision (was Re: ports-current/packages-current discontinued)
From: David Greenman <dg@root.com>
Date: Sun, 03 Aug 1997 20:23:31 -0700

>decision is, I'll respect it.

   Another chance to architect people's principles...I can hardly wait. Seems
quite appropriate for a Sunday - I just need to get one of those collection
plates (and money envelopes) so I can profit, too. :-)
   Tcl stays in /usr/src for now, but it needs to be kept up to date; same
for perl. If Jordan doesn't have "setup" (written in tcl) ready for 3.0,
then tcl will be yanked prior to the 3.0 release (and made into a port).
   As for the ports tree only supporting the last FreeBSD release, this seems
sensible to me. The "ports" have always been a moving target between releases
and the problem is only going to get worse when we expand to supporting other
processor architectures. In any case, Satoshi is and always has been in charge
of the ports tree and whatever he wants to do with it (within reason :-)) is
his decision.
   Does this cover the issue completely? I admit to deleting messages in this
thread with unusual fervor (people have FAR too much time on their hands!).
There's a fair bit of reasoning behind the above, but since everyone is sick
of arguing about this, I'll spare you the analysis.

-DG

David Greenman
Core-team/Principal Architect, The FreeBSD Project
1998-09-05 12:25:55 +00:00

205 lines
5.8 KiB
Makefile

#
# $Id: Makefile,v 1.22 1998/06/09 04:07:20 imp Exp $
#
# This has most of the glue needed to compile tknvi and the perl hooks,
# but not all.
#
SRCDIR= ${.CURDIR}/../../contrib/nvi
.if defined(RELEASE_BUILD_FIXIT)
# When building `vi' for the fixit floppy, don't include any of the
# API stuff.
APISTUFF= ex_notcl.c ex_noperl.c
.else
#TCLINTERP= yes #we don't have it in the base tree
#TKNVI= yes #not ready, needs X11, tk, doesn't quite work yet
#PERLINTERP= yes #needs the perl5 v5.003 port
APISTUFF= ex_tcl.c ex_perl.c
# Any better ideas?
#PERL= /usr/local/bin/perl5.003
#CFLAGS+= -DHAVE_PERL_5_003_01 # If perl >= 5.03.01
.endif
CFLAGS+= -DGTAGS
#if using ncurses:
#CFLAGS+= -DSYSV_CURSES
VI= nvi
EX= nex
VIEW= nview
PROG= nvi
LINKS= ${BINDIR}/${VI} ${BINDIR}/${EX} ${BINDIR}/${VI} ${BINDIR}/${VIEW}
LINKS+= ${BINDIR}/${VI} ${BINDIR}/vi ${BINDIR}/${EX} ${BINDIR}/ex
LINKS+= ${BINDIR}/${VI} ${BINDIR}/view
MAN1= ${SRCDIR}/docs/USD.doc/vi.man/vi.1
MLINKS+=vi.1 ex.1 vi.1 view.1
MLINKS+=vi.1 nex.1 vi.1 nview.1 vi.1 nvi.1
CATALOGS= dutch english french german polish ru_SU.KOI8-R spanish swedish
NLLINKS= nl_NL
ENLINKS= en_AU en_CA en_GB en_US
FRLINKS= fr_BE fr_CA fr_CH fr_FR
DELINKS= de_AT de_CH de_DE
ESLINKS= es_ES
SVLINKS= sv_SE
PLLINKS= pl_PL
.PATH: ${SRCDIR}/common
.PATH: ${SRCDIR}/ex
.PATH: ${SRCDIR}/cl
.PATH: ${SRCDIR}/vi
CFLAGS+=-I${.CURDIR} -I${SRCDIR} -I${SRCDIR}/include
.if !defined(TKNVI)
DPADD+= ${LIBCURSES} ${LIBTERMCAP}
LDADD+= -lcurses -ltermcap
.endif
.if defined(TKNVI)
.PATH: ${SRCDIR}/tk
LDADD+= -L/usr/local/lib -L/usr/X11R6/lib -ltk41 -lX11
CFLAGS+= -I/usr/local/include -I/usr/X11R6/include
.endif
.if defined(TCLINTERP)
.PATH: ${SRCDIR}/tcl_api
DPADD+= ${LIBTCL} ${LIBM}
LDADD+= -ltcl -lm
CFLAGS+= -DHAVE_TCL_INTERP -I${DESTDIR}/usr/include/tcl
.endif
.if defined(PERLINTERP)
.PATH: ${SRCDIR}/perl_api
# Perl "knows" how to compile it's components. Ask it for details...
PERLLIB!= ${PERL} -MConfig -e 'print $$Config{privlib}'
PERLCPPFLAGS!= cd ${SRCDIR}/build; ${PERL} -MExtUtils::Embed -e 'ccflags;perl_inc'
PERLLIBS!= cd ${SRCDIR}/build; ${PERL} -MExtUtils::Embed -e 'ldopts'
PERLLDFLAGS!= cd ${SRCDIR}/build; ${PERL} -MExtUtils::Embed -e 'ccdlflags'
LDADD+= ${PERLLDFLAGS} ${PERLLIBS}
CFLAGS+= -DHAVE_PERL_INTERP ${PERLCPPFLAGS}
.endif
CLEANFILES+=${EX}
# Vi curses sources
.if !defined(TKNVI)
SRCS+= cl_bsd.c cl_funcs.c cl_main.c cl_read.c cl_screen.c cl_term.c
.endif
# Vi Tk sources
.if defined(TKNVI)
SRCS+= tk_funcs.c tk_main.c tk_read.c tk_screen.c tk_term.c tk_util.c
.endif
# Vi Tcl/Perl interpreter sources
.if defined(TCLINTERP) || defined(PERLINTERP)
SRCS+= api.c
.endif
.if defined(TCLINTERP)
SRCS+= tcl.c
.endif
.if defined(PERLINTERP)
# perl.c is generated
SRCS+= perl.c perlsfio.c
.endif
# General sources.
SRCS+= cut.c delete.c exf.c key.c line.c log.c main.c mark.c msg.c options.c \
options_f.c put.c screen.c search.c seq.c recover.c util.c
# Ex source.
SRCS+= ex.c ex_abbrev.c ex_append.c ex_args.c ex_argv.c ex_at.c ex_bang.c \
ex_cd.c ex_cmd.c ex_cscope.c ex_delete.c ex_display.c \
ex_edit.c ex_equal.c ex_file.c ex_filter.c ex_global.c \
ex_init.c ex_join.c ex_map.c ex_mark.c ex_mkexrc.c ex_move.c \
ex_open.c ex_preserve.c ex_print.c ex_put.c ex_quit.c \
ex_read.c ex_screen.c ex_script.c ex_set.c ex_shell.c \
ex_shift.c ex_source.c ex_stop.c ex_subst.c ex_tag.c \
ex_txt.c ex_undo.c ex_usage.c ex_util.c ex_version.c ex_visual.c \
ex_write.c ex_yank.c ex_z.c ${APISTUFF}
# Vi source.
SRCS+= getc.c v_at.c v_ch.c v_cmd.c v_delete.c v_ex.c v_increment.c v_init.c \
v_itxt.c v_left.c v_mark.c v_match.c v_paragraph.c v_put.c v_redraw.c \
v_replace.c v_right.c v_screen.c v_scroll.c v_search.c v_section.c \
v_sentence.c v_status.c v_txt.c v_ulcase.c v_undo.c \
v_util.c v_word.c v_xchar.c v_yank.c v_z.c v_zexit.c vi.c
# Vi screen source.
SRCS+= vs_line.c vs_msg.c vs_refresh.c vs_relative.c vs_smap.c vs_split.c
# Generate perl.c
.if defined(PERLINTERP)
perl.c: perl.xs typemap
echo "#define _PATH_PERLSCRIPTS \"/usr/share/vi/perl\"" > ${.TARGET}
$(PERL) $(PERLLIB)/ExtUtils/xsubpp -typemap \
$(PERLLIB)/ExtUtils/typemap $(SRCDIR)/perl_api/perl.xs >> ${.TARGET}
($(PERL) -ne 'print "sub $$1 {\$$curscr->$$1(\@_)}\n" \
if /newXS\("VI::([^":]*)"/;' $@ ; echo "1;") > VI.pm
CLEANFILES+= VI.pm perl.c
.endif
# unifdef has some *weird* exit codes, sigh! RTFM unifdef(1)...
ex_notcl.c: ex_tcl.c
-unifdef -UHAVE_TCL_INTERP ${SRCDIR}/ex/ex_tcl.c > ${.TARGET}
ex_noperl.c: ex_perl.c
-unifdef -UHAVE_PERL_INTERP ${SRCDIR}/ex/ex_perl.c > ${.TARGET}
CLEANFILES+= ex_notcl.c ex_noperl.c
afterinstall:
${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 444 \
${CATALOGS:S;^;${SRCDIR}/catalog/;} \
${DESTDIR}/usr/share/vi/catalog
for l in ${NLLINKS}; do \
ln -fs dutch ${DESTDIR}/usr/share/vi/catalog/$$l.ISO_8859-1; \
done
for l in ${ENLINKS}; do \
ln -fs english ${DESTDIR}/usr/share/vi/catalog/$$l.ISO_8859-1; \
done
ln -fs english ${DESTDIR}/usr/share/vi/catalog/us-ascii
for l in ${FRLINKS}; do \
ln -fs french ${DESTDIR}/usr/share/vi/catalog/$$l.ISO_8859-1; \
done
for l in ${DELINKS}; do \
ln -fs german ${DESTDIR}/usr/share/vi/catalog/$$l.ISO_8859-1; \
done
for l in ${ESLINKS}; do \
ln -fs spanish ${DESTDIR}/usr/share/vi/catalog/$$l.ISO_8859-1; \
done
for l in ${SVLINKS}; do \
ln -fs swedish ${DESTDIR}/usr/share/vi/catalog/$$l.ISO_8859-1; \
done
for l in ${PLLINKS}; do \
ln -fs polish ${DESTDIR}/usr/share/vi/catalog/$$l.ISO_8859-2; \
done
ln -fs ru_SU.KOI8-R ${DESTDIR}/usr/share/vi/catalog/ru_RU.KOI8-R
${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 444 \
${SRCDIR}/tcl_scripts/*.tcl \
${DESTDIR}/usr/share/vi/tcl
${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 444 \
${SRCDIR}/perl_scripts/*.pl \
${DESTDIR}/usr/share/vi/perl
.if defined(PERLINTERP)
${INSTALL} ${COPY} -o ${BINOWN} -g ${BINGRP} -m 444 VI.pm \
${DESTDIR}/usr/share/vi/perl
.endif
.include <bsd.prog.mk>