Sophie

Sophie

distrib > Mageia > 7 > i586 > by-pkgid > d2287ac28003660c96d73178d0ac12c9 > files > 3

hugs98-2006.09-14.mga7.src.rpm

%define hugs_ver plus-Sep2006

Name:		hugs98
Version:	2006.09
Release:	%mkrel 14
Summary:	Haskell Interpreter

Group:		Development/Other
License:	BSD
URL:		http://www.haskell.org/hugs
Source0:	http://cvs.haskell.org/Hugs/downloads/2006-09/%{name}-%{hugs_ver}.tar.gz
Source1:	make_bootlib
Patch0:		hugs98-gnu.patch

BuildRequires:	docbook-utils
BuildRequires:	pkgconfig(freeglut)
BuildRequires:	pkgconfig(gl)
BuildRequires:	pkgconfig(glu)
BuildRequires:	pkgconfig(ice)
BuildRequires:	pkgconfig(sm)
BuildRequires:	pkgconfig(x11)
BuildRequires:	pkgconfig(xi)
BuildRequires:	pkgconfig(xmu)
BuildRequires:	pkgconfig(xt)
BuildRequires:	readline-devel
BuildRequires:	pkgconfig(xproto)
BuildRequires:	pkgconfig(openal)
BuildRequires:	pkgconfig(freealut)
%ifnarch aarch64
# for execstack
BuildRequires:	prelink
%endif
Requires(pre):	update-alternatives

%description
Hugs 98 is a functional programming system based on Haskell 98, the de
facto standard for non-strict functional programming languages. Hugs
98 provides an almost complete implementation of Haskell 98.


%package openal
Summary:	OpenAL package for Hugs98
Group:		Development/Other
Requires:	%{name} = %{version}

%description openal
OpenAL package for Hugs98.


%package alut
Summary:	ALUT package for Hugs98
Group:		Development/Other
Requires:	%{name} = %{version}
Requires:	%{name}-openal = %{version}

%description alut
ALUT package for Hugs98.


%package x11
Summary:	X11 package for Hugs98
Group:		Development/Other
Requires:	%{name} = %{version}

%description x11
X11 package for Hugs98.


%package opengl
Summary:	OpenGL package for Hugs98
Group:		Development/Other
Requires:	%{name} = %{version}

%description opengl
OpenGL package for Hugs98.


%package glut
Summary:	GLUT package for Hugs98
Group:		Development/Other
Requires:	%{name} = %{version}
Requires:	%{name}-opengl = %{version}

%description glut
GLUT package for Hugs98.


%package hgl
Summary:	Haskell Graphics Library for Hugs98
Group:		Development/Other
Requires:	%{name} = %{version}
Requires:	%{name}-x11 = %{version}

%description hgl
Haskell Graphics Library for Hugs98.


%package demos
Summary:	Demo files for Hugs98
Group:		Development/Other
Requires:	%{name} = %{version}
Requires:	%{name}-glut = %{version}
Requires:	%{name}-hgl = %{version}

%description demos
Demo files for Hugs98.


%prep
%setup -q -n %{name}-%{hugs_ver}
cp -f %{SOURCE1} libraries/tools/
chmod +x libraries/tools/make_bootlib
# add undefined struct
%patch0 -p1 -b .gnu
# use inline keyword
sed -i 's|extern inline|inline|' packages/base/include/HsBase.h packages/network/include/HsNet.h packages/unix/include/HsUnix.h hsc2hs/Main.hs
# libalut needs libopenal
sed -i 's|ALUT_LIBS="$ac_cv_search_alutExit"|ALUT_LIBS="$ac_cv_search_alutExit -lopenal"|' packages/ALUT/configure
# this is to avoid network lookup of the DTD
sed -i 's|\"http://www.oasis-open.org.*\"||' docs/users_guide/users_guide.xml

# fix build on aarch64
for d in $(find . -name "config.sub"); do
  cp -af %{_rpmconfigdir}/config.{guess,sub} $(dirname $d)
done

%build
%define __global_ldflags ""
%configure2_5x --with-pthreads --enable-char-encoding=locale
%make_build


%install
%make_install install_all_but_docs
make -C docs DESTDIR=%{buildroot} install_man

%ifnarch aarch64
execstack -s %{buildroot}%{_bindir}/{hugs,runhugs,ffihugs}
%endif

find %{buildroot} -name '*.so' -exec chmod 0755 '{}' ';'

mv %{buildroot}%{_libdir}/hugs/demos installed-demos
rm installed-demos/Makefile.in

mv %{buildroot}%{_datadir}/hsc2hs-*/* %{buildroot}%{_libdir}/hugs/programs/hsc2hs

sed -i "s|^bindir.*|bindir=\"%{_bindir}\"|
        s|^libdir.*|libdir=\"%{_libdir}/hugs/programs/hsc2hs|
        s|^datadir.*|datadir=\"%{_libdir}/hugs/programs/hsc2hs\"|" \
    %{buildroot}%{_libdir}/hugs/programs/hsc2hs/Paths_hsc2hs.hs



%files
%doc License
%doc Readme
%doc Credits
%doc docs/ffi-notes.txt
%doc docs/server.html
%doc docs/libraries-notes.txt
%doc docs/users_guide/users_guide
%{_bindir}/*
%{_libdir}/hugs
%exclude %{_libdir}/hugs/packages/OpenAL
%exclude %{_libdir}/hugs/packages/ALUT
%exclude %{_libdir}/hugs/packages/X11
%exclude %{_libdir}/hugs/packages/OpenGL
%exclude %{_libdir}/hugs/packages/GLUT
%exclude %{_libdir}/hugs/packages/HGL
%{_mandir}/man*/*


%files demos
%doc installed-demos/*


%files openal
%{_libdir}/hugs/packages/OpenAL


%files alut
%{_libdir}/hugs/packages/ALUT


%files x11
%{_libdir}/hugs/packages/X11


%files opengl
%{_libdir}/hugs/packages/OpenGL


%files glut
%{_libdir}/hugs/packages/GLUT


%files hgl
%{_libdir}/hugs/packages/HGL


%post
update-alternatives --install %{_bindir}/runhaskell runhaskell \
  %{_bindir}/runhugs 100
update-alternatives --install %{_bindir}/hsc2hs hsc2hs \
  %{_bindir}/hsc2hs-hugs 100
update-alternatives --install %{_bindir}/cpphs cpphs \
  %{_bindir}/cpphs-hugs 100


%preun
if [ "$1" = 0 ]; then
  update-alternatives --remove runhaskell %{_bindir}/runhugs
  update-alternatives --remove hsc2hs     %{_bindir}/hsc2hs-hugs
  update-alternatives --remove cpphs      %{_bindir}/cpphs-hugs
fi




%changelog
* Sun Sep 23 2018 umeabot <umeabot> 2006.09-14.mga7
  (not released yet)
+ Revision: 1298223
- Mageia 7 Mass Rebuild

* Tue Jul 17 2018 wally <wally> 2006.09-13.mga7
+ Revision: 1244042
- build without prelink/execstack on aarch64

* Thu Jun 21 2018 wally <wally> 2006.09-12.mga7
+ Revision: 1238695
- build with fixed openjade
- fix build on aarch64
+ kekepower <kekepower>
- Use new make macros

* Tue Jan 02 2018 wally <wally> 2006.09-10.mga7
+ Revision: 1189441
- rebuild for new readline

* Mon Feb 15 2016 umeabot <umeabot> 2006.09-9.mga6
+ Revision: 960631
- Mageia 6 Mass Rebuild

* Thu Oct 29 2015 tv <tv> 2006.09-8.mga6
+ Revision: 896524
- build fixes from FC

* Wed Oct 15 2014 umeabot <umeabot> 2006.09-7.mga5
+ Revision: 749025
- Second Mageia 5 Mass Rebuild

* Sun Sep 28 2014 alexl <alexl> 2006.09-6.mga5
+ Revision: 731099
- fixed requires-on-release
- added missing requires(pre): update-alternatives

* Tue Sep 16 2014 umeabot <umeabot> 2006.09-5.mga5
+ Revision: 680205
- Mageia 5 Mass Rebuild

* Tue Apr 08 2014 alexl <alexl> 2006.09-4.mga5
+ Revision: 612900
- move autoconf
- use configure2_5x macros instead of configure
- use make macros and makeinstall_std macros

* Tue Apr 08 2014 alexl <alexl> 2006.09-3.mga5
+ Revision: 612823
- merge with Fedora
- add make_bootlib
+ steletch <steletch>
- imported package hugs98


* Mon Dec 17 2007 Thierry Vignaud <tvignaud@mandriva.com> 20060920-2mdv2008.1
+ Revision: 126883
- kill re-definition of %%buildroot on Pixel's request


* Mon Mar 05 2007 Olivier Thauvin <nanardon@mandriva.org> 20060920-2mdv2007.0
+ Revision: 132843
- Provides haskell-compiler && haskell-interactive

* Sun Jan 14 2007 Olivier Thauvin <nanardon@mandriva.org> 20060920-1mdv2007.1
+ Revision: 108737
- buildrequires
- buildrequirement
- Sep, 2006 version

* Tue Aug 22 2006 Olivier Thauvin <nanardon@mandriva.org> 20021120-6mdv2007.0
+ Revision: 56938
- kill hardcode packager tag
- fix patch
- add patch0: fix lvalue assigment
- rebuild
- Import hugs98

* Mon May 01 2006 Stefan van der Eijk <stefan@eijk.nu> 20021120-5mdk
- %%mkrel
- rebuild for sparc

* Fri Jan 21 2005 Per Øyvind Karlsen <peroyvind@linux-mandrake.com> 20021120-4mdk
- rebuild for new readline
- cosmetics