Sophie

Sophie

distrib > Fedora > 16 > x86_64 > by-pkgid > 0723aa1ede83345783ec575b51e602a6 > files > 4

polyml-5.4.1-1.fc16.src.rpm

Name:           polyml
Version:        5.4.1
Release:        1%{?dist}
Summary:        Poly/ML compiler and runtime system

Group:          Development/Languages
License:        LGPLv2+
URL:            http://www.polyml.org
Source0:        http://downloads.sourceforge.net/polyml/polyml.%{version}.tar.gz
# 2011-02-03 snapshot of http://www.polyml.org/docs/.
Source1:        polyml-docs.tar.xz
# This patch has not yet been sent upstream.  The shipped configure script
# looks in -lrt for sem_wait, and concludes that we don't have it.  We do,
# but it is in -lpthread.
Patch0:         polyml-sem-wait.patch

# The standard solution to kill the libtool-induced RPATH is to edit the
# libtool script to kill it.  However, that causes problems for us as we need
# to run polyimport at build time.  With the standard approach, it cannot find
# its libraries.
#
# A clean solution would involve upstream changing their Makefiles.  We use
# the unclean solution instead: go with the flow, then strip the RPATHs out
# of the binaries at the end.
BuildRequires:  chrpath
BuildRequires:  gmp-devel
BuildRequires:  lesstif-devel
BuildRequires:  libX11-devel
BuildRequires:  libXext-devel
BuildRequires:  libXt-devel
Requires:       polyml-libs%{?_isa} = %{version}-%{release}

# FIXME: Fix --with-portable build on other arches
# list of supported arches from configure.ac
ExclusiveArch: %{arm} %{ix86} x86_64 ia64 sparc sparcv9 ppc

%description
Poly/ML is a full implementation of Standard ML available as
open-source.  This release supports the ML97 version of the language
and the Standard Basis Library.

%package doc
Summary:        Poly/ML documentation
Group:          Development/Languages
Requires:       polyml = %{version}-%{release}
BuildArch:      noarch

%description doc
Documentation for Poly/ML.

%package libs
Summary:        Poly/ML runtime libraries
Group:          System Environment/Libraries

%description libs
Runtime libraries for Poly/ML.

%prep
%setup -q -n polyml.%{version}
%setup -q -T -D -a 1 -n polyml.%{version}
%patch0

%build
# Some hand-coded assembler is included.  Because it does not contain an
# explicit section marker stating that the stack section does not need the
# executable bit, gas assumes that it does.  The linker then propagates the
# execstack flag into the executables, which is bad news for people running
# SELinux.  The execstack flag is not really needed, so we go through the
# contortions below to keep it off.
%configure --disable-static \
%ifnarch %{arm} %{ix86} x86_64 ia64 sparc sparcv9 ppc
  --with-portable \
%endif
  CFLAGS="${RPM_OPT_FLAGS} -fno-strict-aliasing -Wa,--noexecstack" \
  CXXFLAGS="${RPM_OPT_FLAGS} -fno-strict-aliasing -Wa,--noexecstack" \
  CCASFLAGS="-Wa,--noexecstack" LDFLAGS="-Wl,-z,noexecstack"
make %{?_smp_mflags}
chrpath -d .libs/poly
chrpath -d .libs/polyimport

%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la

%clean
rm -rf $RPM_BUILD_ROOT

%post libs -p /sbin/ldconfig

%postun libs -p /sbin/ldconfig

%files
%defattr(-,root,root,-)
%doc TODO.txt
%{_bindir}/poly
%{_bindir}/polyimport
%{_libdir}/libpolymain.a
%{_libdir}/libpolyml.so
%{_mandir}/man1/poly.1*
%{_mandir}/man1/polyimport.1*

%files doc
%defattr(-,root,root,-)
%doc docs index.html images

%files libs
%defattr(-,root,root,-)
%doc COPYING
%{_libdir}/libpolyml.so.*

%changelog
* Mon Aug  8 2011 Jerry James <loganjerry@gmail.com> - 5.4.1-1
- New upstream release

* Fri Apr 29 2011 Dan Horák <dan[at]danny.cz> - 5.4-3
- updated the supported arch list

* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Thu Feb  3 2011 Jerry James <loganjerry@gmail.com> - 5.4-1
- Update to 5.4
- Update the -doc files.
- Enable building the portable (non-native) version on unsupported arches.
- Get rid of the execstack flag; prevents running on SELinux-enabled systems.
- Kill RPATH in the executables.
- Add a BR on gmp-devel.
- Add the -sem-wait patch.

* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.2.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild

* Mon Jun 15 2009 Gerard Milmeister <gemi@bluewin.ch> - 5.2.1-1
- new release 5.2.1

* Sun Oct 19 2008 Gerard Milmeister <gemi@bluewin.ch> - 5.2-1
- new release 5.2

* Mon Feb 18 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 5.1-4
- Autorebuild for GCC 4.3

* Wed Jan  2 2008 Gerard Milmeister <gemi@bluewin.ch> - 5.1-3
- Exclude arch ppc64

* Wed Jan  2 2008 Gerard Milmeister <gemi@bluewin.ch> - 5.1-1
- new release 5.1

* Tue Mar 27 2007 Gerard Milmeister <gemi@bluewin.ch> - 5.0-2
- spec file fixes

* Mon Feb 12 2007 Gerard Milmeister <gemi@bluewin.ch> - 5.0-1
- new version 5.0