foma/foma.spec
Tomáš Chvátal da419a4a19 - Update to version 0.9.18+git20200221.5e5521e bsc#1160265:
* Ignore dylibs
  * Removed dependency on six
  * Bugfixes for Python
  * Added Python 3 port of foma2js.perl
  * Better py3 compatibility
  * Add test for apply_down().
  * Get apply_up() working.
  * Add simple Python tests.
  * Port FST.encode() to use correct types for Python 3.
  * Add Python six 1.11.0 module.
  * Added TextWrangler codeless language modules.
  * add object files and many temp files to .gitignore
  * remove SVN_REV var in Makefile
- Remove upstream merged patch:
  * foma-fix-sizeof.patch

OBS-URL: https://build.opensuse.org/package/show/LibreOffice:Factory/foma?expand=0&rev=11
2020-03-02 12:10:34 +00:00

96 lines
3.0 KiB
RPMSpec

#
# spec file for package foma
#
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define libname libfoma0
Name: foma
Version: 0.9.18+git20200221.5e5521e
Release: 0
Summary: Finite-state compiler and C library
License: Apache-2.0
URL: https://fomafst.github.io/
# Source must be from git tarball has different license than git, no idea why
Source0: foma-%{version}.tar.xz
Patch0: foma-harden-build.patch
BuildRequires: bison
BuildRequires: flex
BuildRequires: ncurses-devel
BuildRequires: pkgconfig
BuildRequires: readline-devel
BuildRequires: pkgconfig(zlib)
%description
Foma is a compiler, programming language, and C library for constructing
finite-state automata and transducers for various uses. It has specific
support for many natural language processing applications such as producing
morphological analyzers. Although NLP applications are probably the main
use of foma, it is sufficiently generic to use for a large number of purposes.
%package -n %{libname}
Summary: Finite-state C library
%description -n %{libname}
The library contains efficient implementations of all classical
automata/transducer algorithms: determinization, minimization,
epsilon-removal, composition, boolean operations. Also, more
advanced construction methods are available: context restriction,
quotients, first-order regular logic, transducers from replacement
rules, etc.
%package devel
Summary: Finite-state C library development files and headers
Requires: %{libname} = %{version}
%description devel
Finite-state C library development files and headers for %{name}.
%prep
%setup -q -n %{name}-%{version}/%{name}
%patch0 -p2
sed -i '/^CFLAGS/c\CFLAGS = %{optflags} -fcommon -Wl,--as-needed -D_GNU_SOURCE -std=c99 -fvisibility=hidden -fPIC' Makefile
sed -i '/^LDFLAGS/c\LDFLAGS = -lreadline -lz -lreadline -fpic' Makefile
sed -i '/^FLOOKUPLDFLAGS/c\FLOOKUPLDFLAGS = libfoma.a -lz -fpic' Makefile
%build
# hand written Makefile that gets to be quite PITA
%make_build -j1
%install
%make_install \
prefix=%{buildroot}%{_prefix} \
libdir=%{buildroot}%{_libdir}
rm -rf %{buildroot}%{_libdir}/*.a
%post -n %{libname} -p /sbin/ldconfig
%postun -n %{libname} -p /sbin/ldconfig
%files
%{_bindir}/cgflookup
%{_bindir}/flookup
%{_bindir}/foma
%files devel
%{_includedir}/fomalib.h
%{_includedir}/fomalibconf.h
%{_libdir}/libfoma.so
%files -n %{libname}
%license COPYING
%{_libdir}/libfoma.so.*
%changelog