summaryrefslogtreecommitdiffstats
path: root/source/ap/jove
diff options
context:
space:
mode:
Diffstat (limited to 'source/ap/jove')
-rwxr-xr-xsource/ap/jove/jove.SlackBuild95
-rw-r--r--source/ap/jove/jove.makefile.diff132
-rw-r--r--source/ap/jove/slack-desc19
3 files changed, 246 insertions, 0 deletions
diff --git a/source/ap/jove/jove.SlackBuild b/source/ap/jove/jove.SlackBuild
new file mode 100755
index 000000000..0fa524d05
--- /dev/null
+++ b/source/ap/jove/jove.SlackBuild
@@ -0,0 +1,95 @@
+#!/bin/sh
+
+# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+VERSION=4.16.0.70
+ARCH=${ARCH:-x86_64}
+BUILD=${BUILD:-2}
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-jove
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf jove$VERSION
+tar xvf $CWD/jove$VERSION.tar.?z* || exit 1
+cd jove$VERSION || exit 1
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+zcat $CWD/jove.makefile.diff.gz | patch -p1 --verbose --backup
+# More patching needed now:
+sed -i -e "s#/lib/jove#/lib${LIBDIRSUFFIX}/jove#" \
+ -e "s#^OPTFLAGS = .*#OPTFLAGS = $SLKCFLAGS#" Makefile
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG
+
+# Create jove-recover symlink
+( cd $PKG/usr/bin
+ ln -s ../lib${LIBDIRSUFFIX}/jove/recover jove-recover
+)
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" \
+ | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress man pages
+( cd $PKG/usr/man
+ rm man1/jovetool.1 man1/xjove.1
+ find . -type f -exec gzip -9 {} \;
+ for i in $( find . -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz ; rm $i
+ done
+)
+
+# Copy program documentation into the package
+mkdir -p $PKG/usr/doc/jove$VERSION
+cp -a \
+ README* $PKG/usr/doc/jove$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+# Build the package:
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/jove-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/ap/jove/jove.makefile.diff b/source/ap/jove/jove.makefile.diff
new file mode 100644
index 000000000..8bf2be4bc
--- /dev/null
+++ b/source/ap/jove/jove.makefile.diff
@@ -0,0 +1,132 @@
+--- jove4.16.0.70/Makefile 2005-09-30 19:14:41.000000000 -0300
++++ jove4.16.0.70.new/Makefile 2009-03-04 02:01:26.000000000 -0300
+@@ -21,13 +21,14 @@
+ # If they don't exist, this makefile will try to create the directories
+ # LIBDIR and SHAREDIR. All others must already exist.
+
+-JOVEHOME = /usr/local
++JOVEHOME = /usr
+ SHAREDIR = $(JOVEHOME)/lib/jove
+ LIBDIR = $(JOVEHOME)/lib/jove
+ BINDIR = $(JOVEHOME)/bin
+ XEXT=
+ MANDIR = $(JOVEHOME)/man/man$(MANEXT)
+ MANEXT = 1
++DESTDIR := ${DESTDIR}
+
+ # TMPDIR is where the tmp files get stored, usually /tmp, /var/tmp, or
+ # /usr/tmp. If you wish to be able to recover buffers after a system
+@@ -56,12 +57,12 @@
+ INSTALLFLAGS = # -g bin -o root
+
+ # to install executable files
+-XINSTALL=cp
++XINSTALL=/usr/bin/install -c -m 755 -D
+ #XINSTALL=/usr/ucb/install $(INSTALLFLAGS) -c -m 755 # -s
+ #CYGWIN32: XINSTALL=install $(INSTALLFLAGS) -c -m 755
+
+ # to install text files
+-TINSTALL=cp
++TINSTALL=/usr/bin/install -c -m 644 -D
+ #TINSTALL=/usr/ucb/install $(INSTALLFLAGS) -c -m 644
+ #CYGWIN32: TINSTALL=install $(INSTALLFLAGS) -c -m 644
+
+@@ -137,7 +138,7 @@
+ # Add -DUSE_EXIT if you're profiling or using purify (this causes Jove
+ # to exit using exit(), instead of _exit()).
+
+-SYSDEFS = -DBSDPOSIX_STDC
++SYSDEFS = -DSYSVR4 -D_XOPEN_SOURCE=500
+
+ # Select optimization level (flags passed to compiling and linking steps).
+ # On most systems: -g for debugging, -O for optimization.
+@@ -146,7 +147,7 @@
+ # On DEC OSF/1 and Digital UNIX VV4.0, add -std1 to enable ANSI C features
+ # and perhaps -g3 for more debugging info with optimization.
+
+-OPTFLAGS = -O
++OPTFLAGS := ${OPTFLAGS}
+
+ # For making dependencies under BSD systems
+ DEPENDFLAG = -M
+@@ -360,7 +361,7 @@
+ install: $(LIBDIR) $(SHAREDIR) \
+ $(TEACH-JOVE) $(CMDS.DOC) $(TERMSDIR)docs \
+ $(PORTSRVINST) $(RECOVER) $(JOVE) $(TEACHJOVE) $(MANUALS)
+- $(TINSTALL) doc/jove.rc $(JOVERC)
++ $(TINSTALL) doc/jove.rc $(DESTDIR)$(JOVERC)
+ @echo See the README about changes to /etc/rc or /etc/rc.local
+ @echo so that the system recovers jove files on reboot after a crash
+
+@@ -371,7 +372,7 @@
+ test -d $(SHAREDIR) || mkdir $(SHAREDIR)
+
+ $(TEACH-JOVE): doc/teach-jove
+- $(TINSTALL) doc/teach-jove $(TEACH-JOVE)
++ $(TINSTALL) doc/teach-jove $(DESTDIR)$(TEACH-JOVE)
+
+ doc/cmds.doc: doc/cmds.macros.nr doc/cmds.nr
+ $(NROFF) doc/cmds.macros.nr doc/cmds.nr > doc/cmds.doc
+@@ -383,25 +384,25 @@
+ ( cd doc; tbl intro.nr | $(TROFF) -ms - cmds.nr contents.nr $(TROFFPOST) >jove.man.ps )
+
+ $(CMDS.DOC): doc/cmds.doc
+- $(TINSTALL) doc/cmds.doc $(CMDS.DOC)
++ $(TINSTALL) doc/cmds.doc $(DESTDIR)$(CMDS.DOC)
+
+ $(JOVERC): doc/jove.rc
+- $(TINSTALL) doc/jove.rc $(JOVERC)
++ $(TINSTALL) doc/jove.rc $(DESTDIR)$(JOVERC)
+
+ $(TERMSDIR)docs: $(DOCTERMS)
+- $(TINSTALL) $(DOCTERMS) $(TERMSDIR)
++ $(TINSTALL) $(DOCTERMS) $(DESTDIR)$(TERMSDIR)
+
+ $(PORTSRV): portsrv$(XEXT)
+- $(XINSTALL) portsrv$(XEXT) $(PORTSRV)
++ $(XINSTALL) portsrv$(XEXT) $(DESTDIR)$(PORTSRV)
+
+ $(RECOVER): recover$(XEXT)
+- $(XINSTALL) recover$(XEXT) $(RECOVER)
++ $(XINSTALL) recover$(XEXT) $(DESTDIR)$(RECOVER)
+
+ $(JOVE): jjove$(XEXT)
+- $(XINSTALL) jjove$(XEXT) $(JOVE)
++ $(XINSTALL) jjove$(XEXT) $(DESTDIR)$(JOVE)
+
+ $(TEACHJOVE): teachjove$(XEXT)
+- $(XINSTALL) teachjove$(XEXT) $(TEACHJOVE)
++ $(XINSTALL) teachjove$(XEXT) $(DESTDIR)$(TEACHJOVE)
+
+ doc/jove.$(MANEXT): doc/jove.nr
+ sed -e 's;<TMPDIR>;$(TMPDIR);' \
+@@ -410,7 +411,7 @@
+ -e 's;<SHELL>;$(DFLTSHELL);' doc/jove.nr > doc/jove.$(MANEXT)
+
+ $(JOVEM): doc/jove.$(MANEXT)
+- $(TINSTALL) doc/jove.$(MANEXT) $(JOVEM)
++ $(TINSTALL) doc/jove.$(MANEXT) $(DESTDIR)$(JOVEM)
+
+ # doc/jove.doc is the formatted manpage (only needed by DOS)
+ # Building it should be like building $(JOVEM) except that we
+@@ -427,17 +428,17 @@
+ -e 's;<SHELL>;$(DFLTSHELL);' doc/teachjove.nr > doc/teachjove.$(MANEXT)
+
+ $(TEACHJOVEM): doc/teachjove.$(MANEXT)
+- $(TINSTALL) doc/teachjove.$(MANEXT) $(TEACHJOVEM)
++ $(TINSTALL) doc/teachjove.$(MANEXT) $(DESTDIR)$(TEACHJOVEM)
+
+ $(XJOVEM): doc/xjove.nr
+- $(TINSTALL) doc/xjove.nr $(XJOVEM)
++ $(TINSTALL) doc/xjove.nr $(DESTDIR)$(XJOVEM)
+
+ doc/jovetool.$(MANEXT): doc/jovetool.nr
+ sed -e 's;<MANDIR>;$(MANDIR);' \
+ -e 's;<MANEXT>;$(MANEXT);' doc/jovetool.nr > doc/jovetool.$(MANEXT)
+
+ $(JOVETOOLM): doc/jovetool.$(MANEXT)
+- $(TINSTALL) doc/jovetool.$(MANEXT) $(JOVETOOLM)
++ $(TINSTALL) doc/jovetool.$(MANEXT) $(DESTDIR)$(JOVETOOLM)
+
+ echo:
+ @echo $(C-FILES) $(HEADERS)
diff --git a/source/ap/jove/slack-desc b/source/ap/jove/slack-desc
new file mode 100644
index 000000000..ea95435ff
--- /dev/null
+++ b/source/ap/jove/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+jove: jove (Jonathan's Own Version of Emacs)
+jove:
+jove: A mostly Emacs compatible text editor, with man pages and the
+jove: 'teachjove' tutorial program. If you'd rather have the real thing,
+jove: the actual Emacs editor/environment is available in series 'E'.
+jove:
+jove: JOVE was written by Jonathan Payne.
+jove:
+jove:
+jove:
+jove: