File autogen.spec of Package autogen

#
# spec file for package autogen
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# 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 http://bugs.opensuse.org/
#


%define         libname libopts25
Name:           autogen
Version:        5.18.12
Release:        0
Summary:        Automated Text File Generator
License:        GPL-3.0+
Group:          Development/Tools/Building
Url:            https://www.gnu.org/software/autogen/
Source0:        https://ftp.gnu.org/gnu/autogen/rel%{version}/%{name}-%{version}.tar.xz
Source1:        https://ftp.gnu.org/gnu/autogen/rel%{version}/%{name}-%{version}.tar.xz.sig
Source2:        http://savannah.gnu.org/project/memberlist-gpgkeys.php?group=autogen&download=1#/%{name}.keyring
Patch1:         autogen-build_ldpath.patch
# PATCH-FIX-UPSTREAM -- https://savannah.gnu.org/support/index.php?109234 boo#1021353
Patch2:         autogen-catch-race-error.patch
# PATCH-FIX-UPSTREAM -- guile 2.2 support
Patch3:         autogen-guile-2.2.patch
BuildRequires:  fdupes
BuildRequires:  guile-devel
BuildRequires:  libtool
BuildRequires:  libxml2-devel
BuildRequires:  makeinfo
BuildRequires:  pkgconfig
BuildRequires:  xz
# Since shared library and devel package were split, we need to require
# libopts-devel untill all depending packages have fixed buildrequires
Requires:       libopts-devel
Requires(post): %{install_info_prereq}
Requires(preun): %{install_info_prereq}
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
AutoGen is a tool designed for generating program files that contain
repetitive text with varied substitutions.  Its goal is to simplify the
maintenance of programs that contain large amounts of repetitious text.
This is especially valuable if there are several blocks of such text that
must be kept synchronized in parallel tables.

%package -n %{libname}
Summary:        Shared library libopts
Group:          System/Libraries

%description -n %{libname}
AutoGen is a tool designed for generating program files that contain
repetitive text with varied substitutions.  Its goal is to simplify the
maintenance of programs that contain large amounts of repetitious text.
This is especially valuable if there are several blocks of such text that
must be kept synchronized in parallel tables.

This package contains shared library libopts

%package -n libopts-devel
Summary:        Development files for libopts
Group:          Development/Languages/C and C++
Requires:       %{libname} = %{version}-%{release}
Obsoletes:      %{libname}-devel < %{version}-%{release}

%description -n libopts-devel
AutoGen is a tool designed for generating program files that contain
repetitive text with varied substitutions.  Its goal is to simplify the
maintenance of programs that contain large amounts of repetitious text.
This is especially valuable if there are several blocks of such text that
must be kept synchronized in parallel tables.

This package contains devel files for libopts

%prep
%setup -q
%patch1
%patch2 -p1
%patch3 -p1

%build
%configure \
	--disable-static \
	--with-pic
make %{?_smp_mflags}

%install
%make_install
find %{buildroot} -type f -name "*.la" -delete -print
%fdupes -s %{buildroot}%{_datadir}

%check
make %{?_smp_mflags} check

%post
%install_info --info-dir=%{_infodir} %{_infodir}/autogen.info%{ext_info}

%preun
%install_info_delete --info-dir=%{_infodir} %{_infodir}/autogen.info%{ext_info}

%post -n %{libname} -p /sbin/ldconfig
%postun -n %{libname} -p /sbin/ldconfig

%files
%defattr(-, root, root)
%doc NEWS ChangeLog
%{_bindir}/autogen
%{_bindir}/autoopts-config
%{_bindir}/columns
%{_bindir}/getdefs
%{_bindir}/xml2ag
%{_libdir}/autogen
%{_mandir}/man1/*%{ext_man}
%{_infodir}/*%{ext_info}
%{_datadir}/autogen

%files -n %{libname}
%defattr(-,root,root)
%{_libdir}/libopts.so.*

%files -n libopts-devel
%defattr(-,root,root)
%{_libdir}/libopts.so
%{_includedir}/*
%{_mandir}/man3/*%{ext_man}
%{_datadir}/aclocal/*
%{_libdir}/pkgconfig/*.pc

%changelog