| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| README.txt | 2017-03-12 | 3.4 kB | |
| elvis-2.2_0.tar.gz | 2017-03-12 | 1.4 MB | |
| Totals: 2 Items | 1.4 MB | 4 |
#!/bin/sh
# USE INSTRUCTIONS:
# $ tar -xzf elvis-2.2_0.tar.gz
# $ sh /pathto/REAME.txt
# elvis may crash on some systems without this setting in sh environment
# $ export TERMCAP=/etc/termcap
# $ export ELVISGUI=termcap
# other (old) programs (not elvis) crash without something like this:
# $ export TERM=linux
# What is vi? Elvis is a vi(1) (visual ed) vi text editor variant (vim is another variant). "vi" is short for "visual ed(1)" (the 1 means see manpage for ed in section 1 of unix manual pages). vi as a visual editor means typical keyboard editing with ed(1) accessible to do complex editing jobs. (Elvis is by Steve Kirkendall in the 200's, a variant of vi(1) by Bill Joy that appeared in BSD, 1979)
# Elvis builds using autoconfig style build, however because it's a little
# older (also less hacked), the following would be done to build it on newer
# systems that "disobey older rules".
# the below is actually an excerpt from script 'build' found in
# https://sourceforge.net/projects/x-lfs-2010/files/build-0.1.11.tar.gz/download
# (however the below has addition for Apple Sierra OS that will be in 1.12)
dir="elvis-2.2_0"
case $dir in
elvis-2.2_0)
opt="$opt --prefix=/usr/local "
# this means if you don't have X11 libs installed, build without X11 support
# add these opts when running configure
! [ -f xfree86.done ] && ! [ -f xorg-server.done ] && \
opt="$opt --without-x --without-xft --without-gnome "
# if you have X11 with "freetype 2" you need something like this for (linux?)
# unsure i want x11 elvis or if i do to block ft, but easier to fix it
# unsure why last time around it didnt ask --with-x is newer likely
# this works only inside the "build script" mentioned above
# however you need to know $y for your system, linux place assumed below
# but doesn't matter if your not building X11 anyhow
# y="`which_p_base "^freetype-2.4.4"`"
# [ -d "$y" ]
# # ignored
# CFLAGS="$CFLAGS -I${y}/include/freetype2/"
# CPPFLAGS="$CPPFLAGS -I${y}/include/freetype2/"
# export CFLAGS CPPFLAGS
CFLAGS="$CFLAGS -I/usr/include/freetype2/"
CPPFLAGS="$CPPFLAGS -I/usr/include/freetype2/"
export CFLAGS CPPFLAGS
cd "$dir/"
# sierra's headers don't match elvis's C definition, the new compiler rejects
[ c"`uname -s`" = c"Darwin" ] && [ ! -f need.c.old ] && {
cp need.c need.c.old
cat << EOF | ed || true
r need.c
/NEED_MEMMOVE/
-1
.a
#undef NEED_MEMMOVE
.
wq need.c
EOF
}
# isn't replaceable by stdio.h getline. damn elvis wake up (old code)!
[ ! -f ref.c.old ] && {
cp ref.c ref.c.old
cat << EOF | ed || true
r ref.c
%s/getline/getline2/g
wq ref.c
EOF
}
# this lets any CFLAGS you set get into the Makefile as you'd hope
[ ! -f Makefile.in.old ] && {
cp Makefile.in Makefile.in.old
mv Makefile.in Makefile.in.tmp
cat Makefile.in.tmp | awk -v cf="$CFLAGS" '
/^CFLAGS=/{ print $0 " " cf ; next}{print} ' > Makefile.in
rm Makefile.in.tmp
}
cd guix11/
# a naming conflict i think elvis x11 is un-aware (newer)
# freetype now has FT_FILE -> FILE but elvis im pretty sure is unaware of it
for x in xdialog.h xdialog.c ; do
[ ! -f $x.old ] && {
cp $x $x.old
cat << EOF | ed || true
r $x
%s/FT_FILE/FT_FILE_2/g
wq $x
EOF
}
done
cd "$pwd/"
;;
esac
# set your CFLAGS, LDFLAGS, only if needed
# this should work for linux or Darwin / Sierra, given the above
sh ./configure $opt
make
make install
exit