Name: ucblogo
Version: 6.0
Release: 27%{?dist}
Summary: An interpreter for the Logo programming language
License: GPLv2+
Source: ftp://ftp.cs.berkeley.edu/pub/ucblogo/ucblogo-%{version}.tar.gz
Source1: %{name}.desktop
Patch0: ucblogo-5.5-ospeed.patch
Patch1: ucblogo-6.0-wx.patch
Patch2: ucblogo-6.0-texi.patch
Patch3: ucblogo-6.0-inc.patch
# To upstream https://sourceforge.net/p/ucblogo/bugs/29/
Patch4: ucblogo-6.0-matherr.patch
# Patch 5 and 6 to upstream https://sourceforge.net/p/ucblogo/bugs/28/
Patch5: ucblogo-6.0-wx3.patch
Patch6: ucblogo-6.0-wxturtle.patch
# To upstream https://sourceforge.net/p/ucblogo/bugs/30/
Patch7: ucblogo-6.0-man.patch
URL: https://people.eecs.berkeley.edu/~bh/logo.html
BuildRequires: gcc
BuildRequires: gcc-c++
BuildRequires: texinfo
BuildRequires: texinfo-tex
BuildRequires: texi2html
BuildRequires: tetex-dvips
BuildRequires: ghostscript
BuildRequires: libbsd-devel
BuildRequires: libX11-devel
BuildRequires: libXt-devel
BuildRequires: libSM-devel
BuildRequires: libICE-devel
BuildRequires: ncurses-devel
BuildRequires: wxGTK3-devel
BuildRequires: ghostscript-tools-dvipdf
BuildRequires: desktop-file-utils
Requires(post): /sbin/install-info
Requires(preun): /sbin/install-info
Requires: hicolor-icon-theme
%description
Berkeley Logo (ucblogo) is an interpreter for the Logo programming
language. Logo is a computer programming language designed for use by
learners, including children. This dialect of Logo features
random-access arrays, variable number of inputs to user-defined
procedures, various error handling improvements, comments and
continuation lines, first-class instruction and expression templates,
and macros.
%package doc
Summary: Documentation for ucblogo
Requires: %{name} = %{version}-%{release}
BuildArch: noarch
%description doc
This package includes HTML and PDF documentation for ucblogo
and the Program Logic Manual (plm)
%prep
%setup -q
%patch0 -p1 -b .ospeed
%patch1 -p1 -b .wx
%patch2 -p1 -b .texiFix
%patch3 -p1 -b .inc
%patch4 -p1 -b .matherr
%patch5 -p1 -b .wx3
%patch6 -p1 -b .wxturtle
%patch7 -p1 -b .man
sed -i 's|everything|all|g' makefile*
# correct directories /usr/lib -> /usr/share and /usr/local -> /usr
sed -i 's|/local/lib/logo|/share/logo|g' *.c README
sed -i 's|/lib/logo|/share/logo|g' *.c makefile*
sed -i "s|/usr/local/bin/logo|%{_bindir}/logo|g" docs/html/usermanual_1.html
sed -i "s|/usr/local/bin/logo|%{_bindir}/logo|g" docs/ucblogo.info*
sed -i "s|/usr/local/bin/logo|%{_bindir}/logo|g" docs/usermanual.texi
sed -i "s|/usr/local/bin/logo|%{_bindir}/logo|g" README
sed -i "s|/usr/local/info|%{_datadir}/info|g" README
sed -i 's|.*mv .*||' docs/makefile
sed -i 's|.*rmdir .*||' docs/makefile
find -name 'CVS' | xargs rm -rf
find -name '.svn' | xargs rm -rf
%build
# build WX version
%configure --x-includes=%{_includedir} --x-libraries=%{_libdir} --with-x --wx-enable --wx-config_path=/usr/bin/wx-config-3.0
make %{_smp_mflags} logo
mv logo logo-wx
# build traditional version
make clean
%configure --x-includes=%{_includedir} --x-libraries=%{_libdir} --with-x
make %{_smp_mflags}
%install
#Note: makefile does not support DESTDIR
%makeinstall
install -m0755 logo-wx ${RPM_BUILD_ROOT}%{_bindir}
mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/info
mv -f ${RPM_BUILD_ROOT}%{_prefix}/info/* ${RPM_BUILD_ROOT}%{_datadir}/info
rm -fr ${RPM_BUILD_ROOT}%{_prefix}/info
rm -fr ${RPM_BUILD_ROOT}%{_datadir}/logo/docs
desktop-file-install --dir $RPM_BUILD_ROOT%{_datadir}/applications %{SOURCE1}
mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/256x256/apps
install -p -m 644 ucblogo.png \
$RPM_BUILD_ROOT%{_datadir}/icons/hicolor/256x256/apps
rm -f ${RPM_BUILD_ROOT}%{_bindir}/install-logo-mode
%post
/sbin/install-info %{_infodir}/ucblogo.info --entry="* UCBLogo: (ucblogo). Berkeley Logo User Manual." --section="Programming Languages" %{_infodir}/dir 2>/dev/null || :
%preun
if [ $1 = 0 ]; then
/sbin/install-info --delete %{_infodir}/ucblogo.info --entry="* UCBLogo: (ucblogo). Berkeley Logo User Manual." --section="Programming Languages" %{_infodir}/dir 2>/dev/null || :
fi
%files
%doc README changes.txt
%license gpl
%{_bindir}/*
%{_datadir}/logo
%{_infodir}/*
%{_mandir}/man1/logo*
%{_datadir}/applications/%{name}.desktop
%{_datadir}/icons/hicolor/256x256/apps/%{name}.png
%files doc
%doc docs/html docs/usermanual.pdf plm
%changelog
* Fri Sep 27 2019 Joshua Cogliati <jrincayc@yahoo.com> - 6.0-27
- Removing emacs mode and created separate doc package
* Fri Sep 13 2019 Joshua Cogliati <jrincayc@yahoo.com> - 6.0-26
- Updated to support wxGTK3, added man page and desktop file
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 6.0-25
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Fri Feb 09 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 6.0-24
- Escape macros in %%changelog
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 6.0-23
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 6.0-22
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 6.0-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Tue Nov 08 2016 Filipe Rosset <rosset.filipe@gmail.com> - 6.0-20
- Spec clean up + rebuilt
* Sat Jul 9 2016 Gérard Milmeister <gemi@bluewin.ch> - 6.0-19
- Fixed include problem
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 6.0-18
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.0-17
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 6.0-16
- Rebuilt for GCC 5 C++11 ABI change
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.0-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Tue Jul 1 2014 Matěj Cepl <mcepl@redhat.com> - 6.0-14
- Fix FTBFS (#992830) using patch by Dave Allan
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.0-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.0-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.0-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.0-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.0-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.0-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Mon Feb 7 2011 Gérard Milmeister <gemi@bluewin.ch> - 6.0-7
- rebuild for f14
- fixed manual building makefile
* Wed Jul 14 2010 Dan Horák <dan@danny.cz> - 6.0-6
- rebuilt against wxGTK-2.8.11-2
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Sat Nov 22 2008 Gerard Milmeister <gemi@bluewin.ch> - 6.0-2
- re-add emacs logo-mode from previous release as a separate package
* Thu Nov 20 2008 Gerard Milmeister <gemi@bluewin.ch> - 6.0-1
- new release 6.0
* Mon Feb 18 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 5.5-10
- Autorebuild for GCC 4.3
* Thu Feb 22 2007 Gerard Milmeister <gemi@bluewin.ch> - 5.5-9
- add patch for fixing ncurses problem
* Wed Feb 21 2007 Gerard Milmeister <gemi@bluewin.ch> - 5.5-8
- add fix to use cursesw instead of curses
* Wed Feb 21 2007 Gerard Milmeister <gemi@bluewin.ch> - 5.5-7
- replace BR libtermcap-devel by BR ncurses-devel
* Sun Feb 11 2007 Gerard Milmeister <gemi@bluewin.ch> - 5.5-6
- rebuild to use ncurses
* Mon Aug 28 2006 Gerard Milmeister <gemi@bluewin.ch> - 5.5-5
- Rebuild for FE6
* Thu Jun 29 2006 Gerard Milmeister <gemi@bluewin.ch> - 5.5-4
- added BR texi2html
- added BR libXt-devel
- added include and libs options for X11 to configure
* Sat Jun 3 2006 Gerard Milmeister <gemi@bluewin.ch> - 5.5-3
- added BuildReq: texinfo-tex
- make owned the directory %%{_datadir}/emacs/site-lisp/site-start.d
* Sun Aug 14 2005 Gerard Milmeister <gemi@bluewin.ch> - 5.5-2
- New Version 5.5
* Mon Mar 7 2005 Gerard Milmeister <gemi@bluewin.ch> - 5.4-1
- New Version 5.4
* Thu Feb 26 2004 Gerard Milmeister <gemi@bluewin.ch> - 0:5.3-0.fdr.2
- Install info files
- Install emacs site-start file
* Sun Oct 26 2003 Gerard Milmeister <gemi@bluewin.ch> - 0:5.3-0.fdr.1
- First Fedora release