Blame bison.spec

Bernhard M. Wiedemann b550b8
#
Bernhard M. Wiedemann b550b8
# spec file for package bison
Bernhard M. Wiedemann b550b8
#
Bernhard M. Wiedemann 401bc2
# Copyright (c) 2019 SUSE LLC
Bernhard M. Wiedemann b550b8
#
Bernhard M. Wiedemann b550b8
# All modifications and additions to the file contributed by third parties
Bernhard M. Wiedemann b550b8
# remain the property of their copyright owners, unless otherwise agreed
Bernhard M. Wiedemann b550b8
# upon. The license for this file, and modifications and additions to the
Bernhard M. Wiedemann b550b8
# file, is the same license as for the pristine package itself (unless the
Bernhard M. Wiedemann b550b8
# license for the pristine package is not an Open Source License, in which
Bernhard M. Wiedemann b550b8
# case the license is the MIT License). An "Open Source License" is a
Bernhard M. Wiedemann b550b8
# license that conforms to the Open Source Definition (Version 1.9)
Bernhard M. Wiedemann b550b8
# published by the Open Source Initiative.
Bernhard M. Wiedemann b550b8
Bernhard M. Wiedemann b550b8
# Please submit bugfixes or comments via https://bugs.opensuse.org/
Bernhard M. Wiedemann b550b8
#
Bernhard M. Wiedemann b550b8
Bernhard M. Wiedemann b550b8
Bernhard M. Wiedemann b550b8
Name:           bison
Bernhard M. Wiedemann 401bc2
Version:        3.5
Bernhard M. Wiedemann b550b8
Release:        0
Bernhard M. Wiedemann b550b8
Summary:        The GNU Parser Generator
Bernhard M. Wiedemann b550b8
License:        GPL-3.0-or-later
Bernhard M. Wiedemann b550b8
Group:          Development/Languages/C and C++
Bernhard M. Wiedemann 401bc2
URL:            https://www.gnu.org/software/bison/bison.html
Bernhard M. Wiedemann b550b8
Source0:        ftp://ftp.gnu.org/gnu/bison/bison-%{version}.tar.xz
Bernhard M. Wiedemann b550b8
Source1:        ftp://ftp.gnu.org/gnu/bison/bison-%{version}.tar.xz.sig
Bernhard M. Wiedemann b550b8
Source2:        %{name}.keyring
Bernhard M. Wiedemann b550b8
Source3:        baselibs.conf
Bernhard M. Wiedemann b550b8
BuildRequires:  flex
Bernhard M. Wiedemann b550b8
BuildRequires:  gcc-c++
Bernhard M. Wiedemann b550b8
Requires:       m4
Bernhard M. Wiedemann b550b8
Requires(post): %{install_info_prereq}
Bernhard M. Wiedemann b550b8
Requires(preun): %{install_info_prereq}
Bernhard M. Wiedemann b550b8
Bernhard M. Wiedemann b550b8
%description
Bernhard M. Wiedemann b550b8
Bison is a parser generator similar to yacc(1).
Bernhard M. Wiedemann b550b8
Bernhard M. Wiedemann b550b8
%lang_package
Bernhard M. Wiedemann b550b8
Bernhard M. Wiedemann b550b8
%prep
Bernhard M. Wiedemann 401bc2
%autosetup
Bernhard M. Wiedemann b550b8
Bernhard M. Wiedemann b550b8
%build
Bernhard M. Wiedemann b550b8
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects
Bernhard M. Wiedemann b550b8
%configure \
Bernhard M. Wiedemann b550b8
  --disable-silent-rules \
Bernhard M. Wiedemann b550b8
  --disable-rpath \
Bernhard M. Wiedemann b550b8
  --enable-nls \
Bernhard M. Wiedemann b550b8
  --docdir=%{_docdir}/%{name} \
Bernhard M. Wiedemann b550b8
  gl_cv_func_printf_directive_n=yes \
Bernhard M. Wiedemann b550b8
  gl_cv_func_printf_infinite_long_double=yes
Bernhard M. Wiedemann b550b8
%if 0%{?do_profiling}
Bernhard M. Wiedemann b550b8
  make %{?_smp_mflags} CFLAGS="%{optflags} %{cflags_profile_generate}" V=1
Bernhard M. Wiedemann b550b8
  # non-parallel profiling for reproducible results https://bugzilla.opensuse.org/show_bug.cgi?id=1040589
Bernhard M. Wiedemann b550b8
  make --jobs=1 CFLAGS="%{optflags}" check
Bernhard M. Wiedemann b550b8
  make %{?_smp_mflags} clean
Bernhard M. Wiedemann b550b8
  make %{?_smp_mflags} CFLAGS="%{optflags} %{cflags_profile_feedback}" V=1
Bernhard M. Wiedemann b550b8
%else
Bernhard M. Wiedemann b550b8
  make %{?_smp_mflags} CFLAGS="%{optflags}"
Bernhard M. Wiedemann b550b8
%endif
Bernhard M. Wiedemann b550b8
Bernhard M. Wiedemann b550b8
%check
Bernhard M. Wiedemann b550b8
# Tests dont work reliably in parallel
Bernhard M. Wiedemann b550b8
make --jobs=1 check
Bernhard M. Wiedemann b550b8
Bernhard M. Wiedemann b550b8
%install
Bernhard M. Wiedemann b550b8
%make_install
Bernhard M. Wiedemann b550b8
%find_lang %{name} --all-name
Bernhard M. Wiedemann b550b8
Bernhard M. Wiedemann b550b8
%post
Bernhard M. Wiedemann b550b8
%install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz
Bernhard M. Wiedemann b550b8
Bernhard M. Wiedemann b550b8
%preun
Bernhard M. Wiedemann b550b8
%install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz
Bernhard M. Wiedemann b550b8
Bernhard M. Wiedemann b550b8
%files lang -f %{name}.lang
Bernhard M. Wiedemann b550b8
Bernhard M. Wiedemann b550b8
%files
Bernhard M. Wiedemann b550b8
%{_docdir}/%{name}
Bernhard M. Wiedemann b550b8
%dir %{_datadir}/aclocal
Bernhard M. Wiedemann b550b8
%{_bindir}/bison
Bernhard M. Wiedemann b550b8
%{_bindir}/yacc
Bernhard M. Wiedemann b550b8
%{_libdir}/liby.a
Bernhard M. Wiedemann b550b8
%{_datadir}/bison
Bernhard M. Wiedemann b550b8
%dir %{_datadir}/aclocal
Bernhard M. Wiedemann b550b8
%{_datadir}/aclocal/bison-i18n.m4
Bernhard M. Wiedemann b550b8
%{_infodir}/bison.info*.gz
Bernhard M. Wiedemann b550b8
%{_mandir}/man1/bison.1%{?ext_man}
Bernhard M. Wiedemann b550b8
%{_mandir}/man1/yacc.1%{?ext_man}
Bernhard M. Wiedemann b550b8
Bernhard M. Wiedemann b550b8
%changelog