Blob Blame History Raw
Name:           irstlm
Version:        6.00.05
Release:        11%{?dist}
Summary:        Statistical language model tool

License:        LGPLv2+
URL:            http://hlt-mt.fbk.eu/technologies/irstlm
Source0:        https://github.com/irstlm-team/%{name}/archive/v%{version}.tar.gz
# Fix a case of violating the ANSI strict aliasing rules.
# https://sourceforge.net/tracker/?func=detail&aid=3608176&group_id=183064&atid=903742
Patch0:         %{name}-alias.patch
# Update configure.ac.  Sent upstream 24 Oct 2013.
Patch1:         %{name}-configure.patch

BuildRequires:  gcc-c++
BuildRequires:  libtool
BuildRequires:  perl-generators
BuildRequires:  tex(latex)
BuildRequires:  tex(epsf.sty)
BuildRequires:  tex(framed.sty)
BuildRequires:  tex(fullpage.sty)
BuildRequires:  tex(version.sty)
BuildRequires:  zlib-devel
BuildRequires: make

# date and rm are invoked at runtime
Requires:       coreutils

%description
Irstlm is a tool for the estimation, representation, and computation of
statistical language models.

%package devel
Summary:        Headers and libraries for building with %{name}
Requires:       %{name}%{?_isa} = %{version}-%{release}

%description devel
The headers and libraries needed to build applications that use %{name}.

%package tools
Summary:        Programs and scripts that use the %{name} library
Requires:       %{name}%{?_isa} = %{version}-%{release}

%description tools
Programs and scripts that use the %{name} library.

%prep
%setup -q
%patch0
%patch1

# Fix executable bits
find src -type f -perm /0111 | xargs chmod a-x
chmod a+x scripts/rm-start-end.sh scripts/wrapper

# Do not compile static binaries, or monkey with the include path or warnings
sed -i 's, -static -isystem/usr/include -W -Wall,,' src/Makefile.am

# Upstream doesn't ship the actual configure script
autoreconf -fi

# The release number file contains the wrong number, and is in the wrong dir
echo %{version} > RELEASE.tex

# Fix a buffer overflow in 6.00.05 (already fixed in upstream git)
sed -i.orig 's/\(i<=LMTMAXLEV\)+1/\1/' src/lmtable.cpp
touch -r src/lmtable.cpp.orig src/lmtable.cpp
rm -f src/lmtable.cpp.orig

%build
%configure --enable-shared --disable-static --enable-interpolatedsearch \
  --enable-doc --enable-cxx0

# Get rid of undesirable hardcoded rpaths; workaround libtool reordering
# -Wl,--as-needed after all the libraries.
sed -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
    -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \
    -e 's|CC="\(g..\)"|CC="\1 -Wl,--as-needed"|' \
    -i libtool

make %{?_smp_mflags}

%install
mkdir -p %{buildroot}%{_bindir}
make install DESTDIR=%{buildroot}

# Move the header files into their own directory to avoid name clashes
mkdir -p %{buildroot}%{_includedir}/%{name}
mv %{buildroot}%{_includedir}/*.h %{buildroot}%{_includedir}/%{name}

# We don't want libtool archives
rm -f %{buildroot}%{_libdir}/*.la

# We will install the documentation our own way
rm -fr %{buildroot}%{_prefix}/doc

%ldconfig_scriptlets

%files
%doc README.md
%license Copyright LICENSE
%{_libdir}/lib%{name}.so.*

%files devel
%{_includedir}/%{name}/
%{_libdir}/lib%{name}.so

%files tools
%doc doc/irstlm-manual.pdf
%{_bindir}/*

%changelog
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 6.00.05-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild

* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 6.00.05-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 6.00.05-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild

* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 6.00.05-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 6.00.05-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 6.00.05-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 6.00.05-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild

* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 6.00.05-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild

* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 6.00.05-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 6.00.05-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Fri Jan  8 2016 Jerry James <loganjerry@gmail.com> - 6.00.05-1
- New upstream version
- Update URLs
- Disable caching support; code has bitrotted

* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.80.08-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild

* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 5.80.08-2
- Rebuilt for GCC 5 C++11 ABI change

* Fri Mar 13 2015 Jerry James <loganjerry@gmail.com> - 5.80.08-1
- New upstream release

* Tue Jan 27 2015 Jerry James <loganjerry@gmail.com> - 5.80.07-1
- New upstream release
- Build and install the manual

* Tue Sep  9 2014 Jerry James <loganjerry@gmail.com> - 5.80.06-1
- New upstream release
- Drop unused BRs
- Drop upstream patches
- Fix license handling

* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.80.03-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild

* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.80.03-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

* Tue May 27 2014 Jerry James <loganjerry@gmail.com> - 5.80.03-4
- Update project URL

* Fri May 23 2014 Petr Machata <pmachata@redhat.com> - 5.80.03-3
- Rebuild for boost 1.55.0

* Wed Oct 23 2013 Jerry James <loganjerry@gmail.com> - 5.80.03-2
- Add -configure patch to update autotools input

* Wed Jul 17 2013 Jerry James <loganjerry@gmail.com> - 5.80.03-1
- Initial RPM