autogen/autogen.spec

146 lines
4.7 KiB
RPMSpec
Raw Normal View History

#
# 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
# PATCH-FIX-UPSTREAM -- https://sourceforge.net/p/autogen/bugs/182/
Patch4: autogen-reproducible-tar.patch
# PATCH-FIX-OPENSUSE
Patch5: autogen-constant-timeout.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
%patch4 -p1
%patch5 -p1
%build
%configure \
--disable-static \
--with-pic
make %{?_smp_mflags}
%install
export MAN_PAGE_DATE=$(date -u -r ChangeLog -I)
%make_install
find %{buildroot} -type f -name "*.la" -delete -print
%fdupes -s %{buildroot}%{_datadir}
Accepting request 239432 from home:Andreas_Schwab:Factory - Update to 5.18.3 * ATTRIBUTE_FORMAT_ARG is a configured attribute that wraps __attribute__((__format_arg__(n))) procedure declaration attributes. To configure it, the ag_macros.m4 has a new macroo, AG_COMPILE_FORMAT_ARG (which is a compile only test probe). * Auto-edit Guile headers that depend upon configure values most especially: noreturn but check for "ptrdiff_t" in our configure too, so that Guile does not create its own duplicate definition. * Abort from the failing function so that stack traces are useful * The libopts m4 configure code must configure the libopts/Makefile * Happy 2014 New Year * make sure library option handling code does nothing when the library is just trying to get information about an option. * Only apply texi2mdoc when it is needed. * The aoGetsText() emitted i18n helper function needs its argument to have the "format_arg" attribute. * documentation clarifications * properly create generated main procedures from user supplied code. * ChangeLog files have been removed from GIT sources (though still obtainable with tagged checkouts). * LIBGUILE_PATH is not needed and its derivation is wrong on where binaries and libraries have different prefixes. * fixed char casting issue that shows in UTF-8 files * fixed installation error for str2init * fixed failure handling in the usage template * fix broken flag values for auto-supported options * various tweaks to make Coverity happy. * allow the fatal error message functions to be tagged "noreturn" and incorporate sysnoreturn.h technology into AutoGen. OBS-URL: https://build.opensuse.org/request/show/239432 OBS-URL: https://build.opensuse.org/package/show/Base:System/autogen?expand=0&rev=27
2014-07-03 16:56:01 +02:00
%check
make %{?_smp_mflags} check
Accepting request 239432 from home:Andreas_Schwab:Factory - Update to 5.18.3 * ATTRIBUTE_FORMAT_ARG is a configured attribute that wraps __attribute__((__format_arg__(n))) procedure declaration attributes. To configure it, the ag_macros.m4 has a new macroo, AG_COMPILE_FORMAT_ARG (which is a compile only test probe). * Auto-edit Guile headers that depend upon configure values most especially: noreturn but check for "ptrdiff_t" in our configure too, so that Guile does not create its own duplicate definition. * Abort from the failing function so that stack traces are useful * The libopts m4 configure code must configure the libopts/Makefile * Happy 2014 New Year * make sure library option handling code does nothing when the library is just trying to get information about an option. * Only apply texi2mdoc when it is needed. * The aoGetsText() emitted i18n helper function needs its argument to have the "format_arg" attribute. * documentation clarifications * properly create generated main procedures from user supplied code. * ChangeLog files have been removed from GIT sources (though still obtainable with tagged checkouts). * LIBGUILE_PATH is not needed and its derivation is wrong on where binaries and libraries have different prefixes. * fixed char casting issue that shows in UTF-8 files * fixed installation error for str2init * fixed failure handling in the usage template * fix broken flag values for auto-supported options * various tweaks to make Coverity happy. * allow the fatal error message functions to be tagged "noreturn" and incorporate sysnoreturn.h technology into AutoGen. OBS-URL: https://build.opensuse.org/request/show/239432 OBS-URL: https://build.opensuse.org/package/show/Base:System/autogen?expand=0&rev=27
2014-07-03 16:56:01 +02:00
%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