commit:     42b838d65c9698afa3176c15dbed24397c30c42a
Author:     José María Alonso Josa <nimiux <AT> gentoo <DOT> org>
AuthorDate: Tue May 24 11:25:34 2016 +0000
Commit:     José María Alonso <nimiux <AT> gentoo <DOT> org>
CommitDate: Tue May 24 11:25:34 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=42b838d6

dev-lang/ucblogo: Bump to version 6.0

Fixes bug #471972

Package-Manager: portage-2.2.28

 dev-lang/ucblogo/Manifest                          |   1 +
 dev-lang/ucblogo/files/ucblogo-6.0-destdir.patch   |  63 +++++++++++++
 .../ucblogo/files/ucblogo-6.0-no-libtermcap.patch  | 102 +++++++++++++++++++++
 dev-lang/ucblogo/files/ucblogo-6.0-texi.patch      |  48 ++++++++++
 dev-lang/ucblogo/files/ucblogo-6.0-wx.patch        |  71 ++++++++++++++
 dev-lang/ucblogo/ucblogo-6.0.ebuild                |  49 ++++++++++
 6 files changed, 334 insertions(+)

diff --git a/dev-lang/ucblogo/Manifest b/dev-lang/ucblogo/Manifest
index 0e9ed58..8069b9a 100644
--- a/dev-lang/ucblogo/Manifest
+++ b/dev-lang/ucblogo/Manifest
@@ -1 +1,2 @@
 DIST ucblogo-5.5.tar.gz 1290273 SHA256 
a2922e065113274dd701ba3b03448134cceb047f3d6cadbe5322e23061e2ff9d SHA512 
cd1f74cc7402d9e0905a41ad6a2e98cbe508cf5fd838afd46f3f6cb3d15453cf0d44c9f97c8dfe2925f3d973909abba1196cd9abfc95cd1e05d5482e7788ec4c
 WHIRLPOOL 
1403926522fa5aca8ca1d83e10f4cc473f40c5597b45404c443f859691c2bd51e67a1ecbdd75031b896ebba730c634e7c4c63a0e36782cad4ea801fe30f077ad
+DIST ucblogo-6.0.tar.gz 6694879 SHA256 
c659e989e9284efc0f904ebd7de24b559c2d7434a98bb9c92c23e6c11b49cef3 SHA512 
7ca0313d9ea8680a282757df52263b4eb165e46c1368b6693b2d10dbf53cbe4b63849c4233145768553cf999c0b642de95639083d156aede6edecbc93d072c10
 WHIRLPOOL 
1f57a2df7be9d6480715a0ec1aa0e86a70e7724bcb46e162ff8419db1ecdd677d0b46868abeabef2fe2250a92924f0446671b3d26840e02dd618c203c469c508

diff --git a/dev-lang/ucblogo/files/ucblogo-6.0-destdir.patch 
b/dev-lang/ucblogo/files/ucblogo-6.0-destdir.patch
new file mode 100644
index 0000000..107c577
--- /dev/null
+++ b/dev-lang/ucblogo/files/ucblogo-6.0-destdir.patch
@@ -0,0 +1,63 @@
+diff -Nuar a/docs/makefile b/docs/makefile
+--- a/docs/makefile    2008-08-19 21:56:59.000000000 +0200
++++ b/docs/makefile    2015-05-18 11:18:00.349956599 +0200
+@@ -1,6 +1,6 @@
+ BUILDIR             = `pwd`
+ INFODIR             = $(prefix)/info
+-DOCSDIR             = $(LIBLOC)/docs
++DOCSDIR             = $(prefix)/doc
+ HTMLDIR             = $(DOCSDIR)/html
+ 
+ all: usermanual.ps usermanual.pdf html/usermanual_1.html ucblogo.info
+@@ -31,10 +31,10 @@
+       -rm -f *.{aux,cp,cps,dvi,fn,ky,log,pg,toc,tp,vr}
+ 
+ install: all
+-      for d in $(INFODIR) $(DOCSDIR) $(HTMLDIR); do [ -d $$d ] || mkdir -p 
$$d || exit 1; done
+-      -cp -f *.info* $(INFODIR)/.
+-      -cp -f html/*.html $(HTMLDIR)/.
+-      -cp -f usermanual.ps $(DOCSDIR)/.
+-      -cp -f usermanual.pdf $(DOCSDIR)/.
+-      -cp -f usermanual.texi $(DOCSDIR)/.
+-      -cp -f ../usermanual $(DOCSDIR)/.
++      for d in $(INFODIR) $(DOCSDIR) $(HTMLDIR); do [ -d $(DESTDIR)$$d ] || 
mkdir -p $(DESTDIR)$$d || exit 1; done
++      -cp -f *.info* $(DESTDIR)$(INFODIR)/.
++      -cp -f html/*.html $(DESTDIR)$(HTMLDIR)/.
++      -cp -f usermanual.ps $(DESTDIR)$(DOCSDIR)/.
++      -cp -f usermanual.pdf $(DESTDIR)$(DOCSDIR)/.
++      -cp -f usermanual.texi $(DESTDIR)$(DOCSDIR)/.
++      -cp -f ../usermanual $(DESTDIR)$(DOCSDIR)/.
+diff -Nuar a/makefile.in b/makefile.in
+--- a/makefile.in      2008-09-14 01:27:17.000000000 +0200
++++ b/makefile.in      2015-05-18 11:45:43.649947257 +0200
+@@ -1,7 +1,7 @@
+ CC    = @CC@
+ CFLAGS        = @CFLAGS@ @CPPFLAGS@ @X_CFLAGS@ -O0 -DUSE_OLD_TTY
+ CXX     = g++
+-CXXFLAGS = -g @CXXFLAGS@
++CXXFLAGS = @CXXFLAGS@
+ LDFLAGS       = @LDFLAGS@
+ LIBS  = @X_PRE_LIBS@ @X_LIBS@ @LIBS@ @X_EXTRA_LIBS@
+ prefix = @prefix@
+@@ -70,14 +70,14 @@
+ #     cd emacs; $(MAKE) ship
+       cd docs; $(MAKE) ship
+ 
+-install: all
+-      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/.
+-      cp -f helpfiles/* $(LIBLOC)/helpfiles/.
+-      cp -f csls/* $(LIBLOC)/csls/.
++install: everything
++      for d in $(BINDIR) $(LIBLOC) $(LIBLOC)/logolib $(LIBLOC)/helpfiles 
$(LIBLOC)/csls; do [ -d $(DESTDIR)$$d ] || mkdir -p $(DESTDIR)$$d || exit 1; 
done
++      cp logo $(DESTDIR)$(BINDIR)/.
++      cp -f logolib/* $(DESTDIR)$(LIBLOC)/logolib/.
++      cp -f helpfiles/* $(DESTDIR)$(LIBLOC)/helpfiles/.
++      cp -f csls/* $(DESTDIR)$(LIBLOC)/csls/.
+ #     (cd emacs; prefix=$(prefix) LIBLOC=$(LIBLOC) BINDIR=$(BINDIR) $(MAKE) 
install)
+-      (cd docs; prefix=$(prefix) LIBLOC=$(LIBLOC) BINDIR=$(BINDIR) $(MAKE) 
install)
++      (cd docs; prefix=/usr/share DESTDIR=$(DESTDIR) $(MAKE) install)
+ #     prefix=$(prefix); LIBLOC=$(LIBLOC); BINDIR=$(BINDIR); export prefix 
LIBLOC BINDIR; cd emacs; $(MAKE) install
+ 
+ logo-mode: 

diff --git a/dev-lang/ucblogo/files/ucblogo-6.0-no-libtermcap.patch 
b/dev-lang/ucblogo/files/ucblogo-6.0-no-libtermcap.patch
new file mode 100644
index 0000000..6d69539
--- /dev/null
+++ b/dev-lang/ucblogo/files/ucblogo-6.0-no-libtermcap.patch
@@ -0,0 +1,102 @@
+diff -Nuar a/configure b/configure
+--- a/configure        2008-06-09 02:02:30.000000000 +0200
++++ b/configure        2015-05-18 11:53:26.179944658 +0200
+@@ -1379,47 +1379,6 @@
+ 
+ 
+ tcap=no
+-echo $ac_n "checking for -ltermcap""... $ac_c" 1>&6
+-ac_lib_var=`echo termcap'_'tgetstr | tr './+\055' '__p_'`
+-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
+-else
+-  ac_save_LIBS="$LIBS"
+-LIBS="-ltermcap  $LIBS"
+-cat > conftest.$ac_ext <<EOF
+-#line 1337 "configure"
+-#include "confdefs.h"
+-/* Override any gcc2 internal prototype to avoid an error.  */
+-/* We use char because int might match the return type of a gcc2
+-    builtin and then its argument prototype would still apply.  */
+-char tgetstr();
+-
+-int main() { return 0; }
+-int t() {
+-tgetstr()
+-; return 0; }
+-EOF
+-if { (eval echo configure:1349: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; 
then
+-  rm -rf conftest*
+-  eval "ac_cv_lib_$ac_lib_var=yes"
+-else
+-  rm -rf conftest*
+-  eval "ac_cv_lib_$ac_lib_var=no"
+-fi
+-rm -f conftest*
+-LIBS="$ac_save_LIBS"
+-
+-fi
+-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
+-  cat >> confdefs.h <<\EOF
+-#define HAVE_LIBTERMCAP 1
+-EOF
+- LIBS="$LIBS -ltermcap" tcap=yes
+-else
+-  echo "$ac_t""no" 1>&6
+-fi
+-
+ if test $tcap = no; then
+    echo $ac_n "checking for -ltermlib""... $ac_c" 1>&6
+ ac_lib_var=`echo termlib'_'tgetstr | tr './+\055' '__p_'`
+diff -Nuar a/configure-gtk b/configure-gtk
+--- a/configure-gtk    2008-06-09 02:10:14.000000000 +0200
++++ b/configure-gtk    2015-05-18 11:53:38.889944587 +0200
+@@ -1379,47 +1379,6 @@
+ 
+ 
+ tcap=no
+-echo $ac_n "checking for -ltermcap""... $ac_c" 1>&6
+-ac_lib_var=`echo termcap'_'tgetstr | tr './+\055' '__p_'`
+-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
+-else
+-  ac_save_LIBS="$LIBS"
+-LIBS="-ltermcap  $LIBS"
+-cat > conftest.$ac_ext <<EOF
+-#line 1337 "configure"
+-#include "confdefs.h"
+-/* Override any gcc2 internal prototype to avoid an error.  */
+-/* We use char because int might match the return type of a gcc2
+-    builtin and then its argument prototype would still apply.  */
+-char tgetstr();
+-
+-int main() { return 0; }
+-int t() {
+-tgetstr()
+-; return 0; }
+-EOF
+-if { (eval echo configure:1349: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; 
then
+-  rm -rf conftest*
+-  eval "ac_cv_lib_$ac_lib_var=yes"
+-else
+-  rm -rf conftest*
+-  eval "ac_cv_lib_$ac_lib_var=no"
+-fi
+-rm -f conftest*
+-LIBS="$ac_save_LIBS"
+-
+-fi
+-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
+-  cat >> confdefs.h <<\EOF
+-#define HAVE_LIBTERMCAP 1
+-EOF
+- LIBS="$LIBS -ltermcap" tcap=yes
+-else
+-  echo "$ac_t""no" 1>&6
+-fi
+-
+ if test $tcap = no; then
+    echo $ac_n "checking for -ltermlib""... $ac_c" 1>&6
+ ac_lib_var=`echo termlib'_'tgetstr | tr './+\055' '__p_'`

diff --git a/dev-lang/ucblogo/files/ucblogo-6.0-texi.patch 
b/dev-lang/ucblogo/files/ucblogo-6.0-texi.patch
new file mode 100644
index 0000000..02c9df0
--- /dev/null
+++ b/dev-lang/ucblogo/files/ucblogo-6.0-texi.patch
@@ -0,0 +1,48 @@
+diff -Nuar a/docs/usermanual.texi b/docs/usermanual.texi
+--- a/docs/usermanual.texi     2008-09-03 22:20:15.000000000 +0200
++++ b/docs/usermanual.texi     2015-05-18 09:51:18.419985819 +0200
+@@ -371,7 +371,7 @@
+ list, one word per argument; the buried variable @code{COMMAND.LINE} contains
+ that list of arguments, or the empty list if there are none.  On my Linux
+ system, if the first line of an executable shell script is
+-@w{@t{#!/usr/local/bin/logo -}} (note the hyphen) then the script can be given
++@w{@t{#!/usr/bin/logo -}} (note the hyphen) then the script can be given
+ command line arguments and they all end up in @code{:COMMAND.LINE} along with
+ the script's path.  Experiment.
+ 
+@@ -479,7 +479,7 @@
+ comment.  Unix users can therefore write a file containing Logo commands,
+ starting with the line
+ @example
+-#! /usr/local/bin/logo
++#! /usr/bin/logo
+ @end example
+ (or wherever your Logo executable lives) and the file will be executable
+ directly from the shell.
+@@ -2875,7 +2875,7 @@
+ 
+ 
+ @node  AND, OR, LOGICAL OPERATIONS, LOGICAL OPERATIONS
+-@unnumberedsubsec and
++@unnumberedsec and
+ @cindex and
+ 
+ @example
+@@ -6766,7 +6766,7 @@
+ @end menu
+ 
+ @node dMACRO, dDEFMACRO, MACROS, MACROS
+-@unnumberedsubsec .macro
++@unnumberedsec .macro
+ @cindex .macro
+ @cindex .defmacro
+ 
+@@ -7128,7 +7128,7 @@
+ 
+ @node ALLOWGETSET, BUTTONACT, SPECIAL VARIABLES, SPECIAL VARIABLES
+ @comment  node-name,  next,  previous,  up
+-@unnumberedsubsec allowgetset
++@unnumberedsec allowgetset
+ @cindex allowgetset
+ 
+ @example

diff --git a/dev-lang/ucblogo/files/ucblogo-6.0-wx.patch 
b/dev-lang/ucblogo/files/ucblogo-6.0-wx.patch
new file mode 100644
index 0000000..9e81a4c
--- /dev/null
+++ b/dev-lang/ucblogo/files/ucblogo-6.0-wx.patch
@@ -0,0 +1,71 @@
+diff -Nuar a/wxTerminal.cpp b/wxTerminal.cpp
+--- a/wxTerminal.cpp   2008-09-14 06:57:09.000000000 +0200
++++ b/wxTerminal.cpp   2015-05-18 09:27:38.559993795 +0200
+@@ -938,7 +938,7 @@
+   //dc.GetTextExtent("(", &dummy, ch);
+ 
+   int descent, extlead; 
+-  dc.GetTextExtent("M", cw, ch, &descent, &extlead);
++  dc.GetTextExtent(wxString("M", wxConvUTF8, wxSTRING_MAXLEN), cw, ch, 
&descent, &extlead);
+   //for the tails of g's and y's, if needed.
+ #ifdef __WXMSW__
+     *ch += descent + extlead + 1;
+@@ -2202,8 +2202,8 @@
+   lpos.offset = 0;
+   wxterm_charpos pos_1 = line_of(lpos);
+   
+-    fprintf(stderr, "WXTERMINAL STATS: \n  width: %d, height: %d, \n cw: %d, 
ch: %d \n x_max: %d, y_max: %d \n cursor_x: %d, cursor_y: %d \n last_logo_x : 
%d, last_logo_y: %d \ncurr_charpos buf %d offset %d  \ncurr_line buf %d offset 
%d\n", m_width, m_height, m_charWidth, m_charHeight, x_max, y_max,cursor_x, 
cursor_y, last_logo_x, last_logo_y,(int)curr_char_pos.buf, 
curr_char_pos.offset, (int)curr_line_pos.buf, curr_line_pos.offset);
+-    fprintf(stderr, "WXTERMINAL CHARACTER BUFFER\n###############\n");
++    //fprintf(stderr, "WXTERMINAL STATS: \n  width: %d, height: %d, \n cw: 
%d, ch: %d \n x_max: %d, y_max: %d \n cursor_x: %d, cursor_y: %d \n last_logo_x 
: %d, last_logo_y: %d \ncurr_charpos buf %d offset %d  \ncurr_line buf %d 
offset %d\n", m_width, m_height, m_charWidth, m_charHeight, x_max, 
y_max,cursor_x, cursor_y, last_logo_x, last_logo_y,(int)curr_char_pos.buf, 
curr_char_pos.offset, (int)curr_line_pos.buf, curr_line_pos.offset);
++    //fprintf(stderr, "WXTERMINAL CHARACTER BUFFER\n###############\n");
+   while(char_of(pos_1) != '\0') {
+     if(char_of(pos_1) == '\n') {
+       fprintf(stderr, "\\n\n");
+@@ -2218,7 +2218,7 @@
+     fprintf(stderr, "\n#############\n");
+     fprintf(stderr, "WXTERMINAL LINE BUFFER\n##############\n");
+   for(int i = 0; i <= y_max; i++) {
+-    fprintf(stderr, "LINE %d: buf: %d, offset: %d, len: %d\n", 
i,(int)line_of(lpos).buf, line_of(lpos).offset, line_of(lpos).line_length);
++    //fprintf(stderr, "LINE %d: buf: %d, offset: %d, len: %d\n", 
i,(int)line_of(lpos).buf, line_of(lpos).offset, line_of(lpos).line_length);
+     inc_linepos(lpos);
+   }
+     fprintf(stderr, "\n#############\n\n");
+diff -Nuar a/wxTurtleGraphics.cpp b/wxTurtleGraphics.cpp
+--- a/wxTurtleGraphics.cpp     2008-09-14 01:23:42.000000000 +0200
++++ b/wxTurtleGraphics.cpp     2015-05-18 09:29:13.949993259 +0200
+@@ -558,7 +558,7 @@
+ extern "C" void wx_get_label_size(int *w, int *h) {
+     /* returns size in pixels; converted to turtle steps in wxterm.c */
+   int descent, extlead;
+-  m_memDC->GetTextExtent("M", w, h, &descent, &extlead);  
++  m_memDC->GetTextExtent(wxString("M", wxConvUTF8, wxSTRING_MAXLEN), w, h, 
&descent, &extlead);  
+ }
+ 
+ extern "C" void wx_adjust_label_height() {
+@@ -573,7 +573,7 @@
+     label_font.SetPointSize(font_size);
+ 
+     m_memDC->SetFont(label_font);     
+-    m_memDC->GetTextExtent("M", &cw, &ch, &descent, &extlead);
++    m_memDC->GetTextExtent(wxString("M", wxConvUTF8, wxSTRING_MAXLEN), &cw, 
&ch, &descent, &extlead);
+ 
+     //now... first figure out whether we undershot or overshot...
+     //this determines which direction to change the size
+@@ -592,7 +592,7 @@
+           }
+           if (expected == 100) break;
+           m_memDC->SetFont(tmp_font); 
+-          m_memDC->GetTextExtent("M", &cw, &tmp_height, &descent, &extlead);
++          m_memDC->GetTextExtent(wxString("M", wxConvUTF8, wxSTRING_MAXLEN), 
&cw, &tmp_height, &descent, &extlead);
+ 
+           if(tmp_height >= px_height) break;
+ 
+@@ -611,7 +611,7 @@
+           }
+           if (expected == 2) break;
+           m_memDC->SetFont(tmp_font); 
+-          m_memDC->GetTextExtent("M", &cw, &tmp_height, &descent, &extlead);
++          m_memDC->GetTextExtent(wxString("M", wxConvUTF8, wxSTRING_MAXLEN), 
&cw, &tmp_height, &descent, &extlead);
+ 
+           if(tmp_height <= px_height) break;
+ 

diff --git a/dev-lang/ucblogo/ucblogo-6.0.ebuild 
b/dev-lang/ucblogo/ucblogo-6.0.ebuild
new file mode 100644
index 0000000..1752374
--- /dev/null
+++ b/dev-lang/ucblogo/ucblogo-6.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils elisp-common flag-o-matic wxwidgets
+
+DESCRIPTION="a reflective, functional programming language"
+HOMEPAGE="https://www.cs.berkeley.edu/~bh/logo.html";
+SRC_URI="ftp://ftp.cs.berkeley.edu/pub/${PN}/${P}.tar.gz";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="X"
+
+DEPEND="dev-libs/libbsd
+       virtual/tex-base
+       virtual/texi2dvi
+       app-text/texi2html
+       X? ( x11-libs/wxGTK:2.8[X] )"
+
+src_prepare() {
+       epatch "${FILESDIR}"/${P}-wx.patch
+       epatch "${FILESDIR}"/${P}-no-libtermcap.patch
+       epatch "${FILESDIR}"/${P}-texi.patch
+       epatch "${FILESDIR}"/${P}-destdir.patch
+
+       WX_GTK_VER=2.8 need-wxwidgets unicode
+       sed -i -e "s_/usr/local/bin/wx-config_${WX_CONFIG}_g" configure-gtk || 
die
+       sed -i -e 's_--host=gtk__g' configure-gtk || die
+       sed -i -e "s_/lib/logo_/lib/${P}_" makefile.in || die
+       sed -i -e "/doc$/s_\$_/${P}_" docs/makefile || die
+
+       rm -rf csls/CVS || die
+}
+
+src_configure() {
+       local confsuffix
+
+       use X && confsuffix="-gtk"
+       "./configure${confsuffix}" --prefix=/usr $(use_with X x) || die
+}
+
+src_compile() {
+       strip-flags
+       emake CC="$(tc-getCC)" everything
+}

Reply via email to