summaryrefslogtreecommitdiff
path: root/community/ucblogo
diff options
context:
space:
mode:
Diffstat (limited to 'community/ucblogo')
-rw-r--r--community/ucblogo/PKGBUILD46
-rw-r--r--community/ucblogo/logo.sh7
-rw-r--r--community/ucblogo/ucblogo-6.0-no-texinfo.patch12
-rw-r--r--community/ucblogo/ucblogo-6.0-no-wxWidgets.patch52
4 files changed, 117 insertions, 0 deletions
diff --git a/community/ucblogo/PKGBUILD b/community/ucblogo/PKGBUILD
new file mode 100644
index 000000000..8be6e3ce8
--- /dev/null
+++ b/community/ucblogo/PKGBUILD
@@ -0,0 +1,46 @@
+# $Id: PKGBUILD 95120 2013-08-05 21:00:30Z arodseth $
+# Maintainer: Alexander Rødseth <rodseth@gmail.com>
+# Contributor: chiku <chirantan DOT mitra AT gmail DOT com>
+
+pkgname=ucblogo
+pkgver=6.0
+pkgrel=5
+pkgdesc='Portable interpreter for the Logo programming language'
+url='http://www.cs.berkeley.edu/~bh/logo.html'
+arch=('x86_64' 'i686')
+license=('GPL')
+depends=('libx11' 'ncurses' 'bash' 'libsm')
+source=("http://www.cs.berkeley.edu/~bh/downloads/$pkgname.tar.gz"
+ "$pkgname-$pkgver-no-wxWidgets.patch"
+ "$pkgname-$pkgver-no-texinfo.patch"
+ 'logo.sh')
+sha256sums=('c659e989e9284efc0f904ebd7de24b559c2d7434a98bb9c92c23e6c11b49cef3'
+ 'e360ac71ac785fa8b00b89ff0c5bf8ed738114013143245d3bc0e62eb7d0333d'
+ 'e83fb9d656a9064685cde5ebc0ee36242ac848228380b0567fe683901435707c'
+ '3dcf0a5472acda2343ff7d4942ff6589149929a50af92b0994fbb0520d2a3849')
+
+prepare() {
+ patch -Np1 -i "$pkgname-$pkgver-no-wxWidgets.patch"
+ patch -Np1 -i "$pkgname-$pkgver-no-texinfo.patch"
+}
+
+build() {
+ cd "$pkgname-$pkgver"
+
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ # csls/CVS interferes with make
+ rm -r "$srcdir/$pkgname-$pkgver/csls/CVS"
+ make prefix="$pkgdir/usr" INFODIR="$pkgdir/usr/share/info" install
+ mv "$pkgdir/usr/bin/logo" "$pkgdir/usr/bin/logo.elf"
+ install -Dm755 "$srcdir/logo.sh" "$pkgdir/usr/bin/logo"
+ install -d "$pkgdir/usr/share/doc"
+ mv "$pkgdir/usr/lib/logo/docs" "$pkgdir/usr/share/doc/$pkgname"
+ rm "$pkgdir/usr/share/doc/$pkgname/usermanual.ps"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/ucblogo/logo.sh b/community/ucblogo/logo.sh
new file mode 100644
index 000000000..4f80180c0
--- /dev/null
+++ b/community/ucblogo/logo.sh
@@ -0,0 +1,7 @@
+#!/bin/sh
+export LOGOLIB=/usr/lib/logo/logolib
+if [[ -f "$1" ]]; then
+ cat "$1" | /usr/bin/logo.elf "$*" | head -n-2
+else
+ /usr/bin/logo.elf "$@"
+fi
diff --git a/community/ucblogo/ucblogo-6.0-no-texinfo.patch b/community/ucblogo/ucblogo-6.0-no-texinfo.patch
new file mode 100644
index 000000000..eaf983603
--- /dev/null
+++ b/community/ucblogo/ucblogo-6.0-no-texinfo.patch
@@ -0,0 +1,12 @@
+diff -ENwbur ucblogo-6.0-no-wxWidgets/docs/makefile ucblogo-6.0-no-texinfo/docs/makefile
+--- src/ucblogo-6.0/docs/makefile 2013-03-19 07:18:52.000000000 +0530
++++ src/ucblogo-6.0-b/docs/makefile 2013-03-21 06:21:03.000000000 +0530
+@@ -30,7 +30,7 @@
+ ship:
+ -rm -f *.{aux,cp,cps,dvi,fn,ky,log,pg,toc,tp,vr}
+
+-install: all
++install:
+ for d in $(INFODIR) $(DOCSDIR) $(HTMLDIR); do [ -d $$d ] || mkdir -p $$d || exit 1; done
+ -cp -f *.info* $(INFODIR)/.
+ -cp -f html/*.html $(HTMLDIR)/.
diff --git a/community/ucblogo/ucblogo-6.0-no-wxWidgets.patch b/community/ucblogo/ucblogo-6.0-no-wxWidgets.patch
new file mode 100644
index 000000000..164895392
--- /dev/null
+++ b/community/ucblogo/ucblogo-6.0-no-wxWidgets.patch
@@ -0,0 +1,52 @@
+diff -ENwbur ucblogo-6.0/config.h ucblogo-6.0-no-wxWidgets/config.h
+--- src/ucblogo-6.0/config.h 2007-11-27 00:42:40.000000000 +0530
++++ src/ucblogo-6.0-b/config.h 2013-03-19 07:19:15.000000000 +0530
+@@ -74,4 +74,4 @@
+ /* #undef HAVE_LIBTERMLIB */
+
+ /* Define if you have the wx library. */
+-#define HAVE_WX 1
++/* #undef HAVE_WX */
+Binary files ucblogo-6.0/logo and ucblogo-6.0-no-wxWidgets/logo differ
+diff -ENwbur ucblogo-6.0/makefile ucblogo-6.0-no-wxWidgets/makefile
+--- src/ucblogo-6.0/makefile 2008-09-14 02:51:18.000000000 +0530
++++ src/ucblogo-6.0-b/makefile 2013-03-19 07:25:44.000000000 +0530
+@@ -1,23 +1,23 @@
+ CC = gcc
+-CFLAGS = -g -O -DHAVE_WX -O0
++CFLAGS = -g -O2
+ CXX = g++
+-CXXFLAGS = -g -DHAVE_WX -I/usr/local/lib/wx/include/gtk2-ansi-release-static-2.8 -I/usr/local/include/wx-2.8 -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D__WXGTK__ -pthread
+ LDFLAGS =
+-LIBS = -lbsd -lm -L/usr/local/lib -pthread /usr/local/lib/libwx_gtk2_richtext-2.8.a /usr/local/lib/libwx_gtk2_aui-2.8.a /usr/local/lib/libwx_gtk2_xrc-2.8.a /usr/local/lib/libwx_gtk2_qa-2.8.a /usr/local/lib/libwx_gtk2_html-2.8.a /usr/local/lib/libwx_gtk2_adv-2.8.a /usr/local/lib/libwx_gtk2_core-2.8.a /usr/local/lib/libwx_base_xml-2.8.a /usr/local/lib/libwx_base_net-2.8.a /usr/local/lib/libwx_base-2.8.a -pthread -L/lib -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0 -lXinerama -lXxf86vm -lSM -lpng -ljpeg -ltiff -lexpat -lz -ldl -lm -ltermcap -lX11
++LIBS = -lSM -lICE -lm -lcurses -lX11
+ prefix = /usr/local
+ BINDIR = $(prefix)/bin
+ LIBLOC = $(prefix)/lib/logo
+-LINKER = $(CXX)
++LINKER = $(CC)
++
+
+ # LIBLOC = `pwd`
+
+ OBJS = coms.o error.o eval.o files.o graphics.o init.o intern.o \
+ libloc.o lists.o logodata.o main.o math.o mem.o paren.o parse.o \
+- print.o wrksp.o nographics.o svn.o wxMain.o wxTerminal.o wxTurtleGraphics.o TextEditor.o wxterm.o
++ print.o wrksp.o nographics.o svn.o term.o xgraphics.o
+
+ SRCS = coms.c error.c eval.c files.c graphics.c init.c intern.c \
+ libloc.c lists.c logodata.c main.c math.c mem.c paren.c parse.c \
+- print.c wrksp.c nographics.c wxMain.cpp wxTerminal.cpp wxTurtleGraphics.cpp TextEditor.cpp wxterm.c
++ print.c wrksp.c nographics.c term.c xgraphics.c
+
+ HDRS = globals.h logo.h xgraphics.h
+
+@@ -70,7 +70,7 @@
+ # cd emacs; $(MAKE) ship
+ cd docs; $(MAKE) ship
+
+-install: all
++install:
+ for d in $(BINDIR) $(LIBLOC) $(LIBLOC)/logolib $(LIBLOC)/helpfiles $(LIBLOC)/csls; do [ -d $$d ] || mkdir -p $$d || exit 1; done
+ cp logo $(BINDIR)/.
+ cp -f logolib/* $(LIBLOC)/logolib/.