iproute2/iproute2-doc.spec

114 lines
3.6 KiB
RPMSpec
Raw Normal View History

#
# spec file for package iproute2-doc
#
# 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/
#
Name: iproute2-doc
Version: 4.12
Release: 0
%define rversion 4.12.0
Summary: Documentation to iproute2
License: GPL-2.0+
Group: Documentation/Other
Url: http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2
Source: http://kernel.org/pub/linux/utils/net/iproute2/iproute2-%rversion.tar.xz
Source2: http://kernel.org/pub/linux/utils/net/iproute2/iproute2-%rversion.tar.sign
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: bison
BuildRequires: db-devel
BuildRequires: flex
BuildRequires: pkgconfig >= 0.21
BuildRequires: sgmltool
BuildRequires: texlive
BuildRequires: texlive-amsfonts
BuildRequires: texlive-cm-super
BuildRequires: texlive-dvips
BuildRequires: texlive-ec
BuildRequires: texlive-latex
BuildRequires: tex(english.ldf)
BuildRequires: tex(fancyvrb.sty)
BuildRequires: tex(float.sty)
BuildRequires: tex(fullpage.sty)
%define with_xt 1
%if 0%{?with_xt}
BuildRequires: pkgconfig(libmnl)
BuildRequires: pkgconfig(xtables) >= 1.4.11
%endif
Accepting request 518382 from home:mkubecek:branches:security:netfilter First of all, I would like to apologize for this submit request, if it was up to me, I would never send it. I strongly believe it's package maintainer's job to decide how a package should be organized, what should the specfile look like, how should patches be named and what format to use etc. That's why I really dislike the idea of pushing package maintainer to accept someone else's preferences. I've been forced to submit it but you shouldn't feel obliged to accept it unless you really like it. Except for some minor differences, this is a cleanup I did for SLE15 iproute2 package submission. In order to effectively maintain the package throughout the SLE15 lifetime (planned to be 13+ years), I'm using a git repository to prepare, handle and track patches and prefer to have them in uniform format with annotations similar to ones we use in openSUSE/SLE kernel packages. While this workflow proved beneficial for SLE11 and SLE12 maintenance in last few years, I don't think it's worth the extra work for Factory package with only has few patches which are either permanent or only stay there for relatively short time. Also, with random one-time contributors to Factory package, it would be even more difficult to keep the package cleaned up. The problem is that we have so-called "Factory first" policy. In theory, this should mean no features or bugfixes should be added to SLE packages unless they are also in the respective Factory package (and preferrably also upstream) or at least submitted there. This idea sounds reasonable but the SLE15 review team interprets the policy in rather different way: they want even the contents Factory and SLE15 packages in OBS to look (almost) the same and enforce that by declining submissions that differ from Factory in non-trivial way. For six weeks I tried to appeal to common sense and explain that those two packages only differ in "metadata coding style" and that if SLE and openSUSE packages are maintained by different people, there is no need for one of them to adopt the other's preferences (and that the packages will start to differ soon anyway). They were adamant and in the end, they made it absolutely clear that there is no way the SLE15 submission can be accepted unless I at least submit my cleanup to Factory devel project. They didn't say it has to be accepted, though, so here it is but it's completely up to you if you want it or not. Once again, I'm sorry about dragging you into this, I wanted to avoid it but I ran out of options. Summary of the changes: - patches are regenerated using git - patches are annotated the way we use in kernel packages (the annotations make more sense for upstream backports but we currently don't have any in Factory) - one patch (iproute2-HZ.diff) is split into two - Patch* lines are moved out of the rest of tags for easier orientation - conditionally applied patches are moved to the end of the series - all patches are applied in both specfiles so that both builds use the same source tree OBS-URL: https://build.opensuse.org/request/show/518382 OBS-URL: https://build.opensuse.org/package/show/security:netfilter/iproute2?expand=0&rev=144
2017-08-23 23:59:19 +02:00
Patch1: adjust-installation-directories-for-openSUSE-SLE.patch
Patch2: use-sysconf-_SC_CLK_TCK-if-HZ-undefined.patch
Patch3: add-explicit-typecast-to-avoid-gcc-warning.patch
Patch4: xfrm-support-displaying-transformations-used-for-Mob.patch
Patch5: man-fix-documentation-references-in-manual-pages.patch
Patch6: split-link-and-compile-steps-for-binaries.patch
Patch7: examples-fix-bashisms-in-example-script.patch
Patch101: doc-revert-PDF-creation.patch
Patch102: Revert-emp-fix-warning-on-deprecated-bison-directive.patch
%description
This package contains the PDF documentation from iproute2,
as well as examples and other outdated files.
%prep
%setup -qn iproute2-%rversion
%patch1 -p1
Accepting request 518382 from home:mkubecek:branches:security:netfilter First of all, I would like to apologize for this submit request, if it was up to me, I would never send it. I strongly believe it's package maintainer's job to decide how a package should be organized, what should the specfile look like, how should patches be named and what format to use etc. That's why I really dislike the idea of pushing package maintainer to accept someone else's preferences. I've been forced to submit it but you shouldn't feel obliged to accept it unless you really like it. Except for some minor differences, this is a cleanup I did for SLE15 iproute2 package submission. In order to effectively maintain the package throughout the SLE15 lifetime (planned to be 13+ years), I'm using a git repository to prepare, handle and track patches and prefer to have them in uniform format with annotations similar to ones we use in openSUSE/SLE kernel packages. While this workflow proved beneficial for SLE11 and SLE12 maintenance in last few years, I don't think it's worth the extra work for Factory package with only has few patches which are either permanent or only stay there for relatively short time. Also, with random one-time contributors to Factory package, it would be even more difficult to keep the package cleaned up. The problem is that we have so-called "Factory first" policy. In theory, this should mean no features or bugfixes should be added to SLE packages unless they are also in the respective Factory package (and preferrably also upstream) or at least submitted there. This idea sounds reasonable but the SLE15 review team interprets the policy in rather different way: they want even the contents Factory and SLE15 packages in OBS to look (almost) the same and enforce that by declining submissions that differ from Factory in non-trivial way. For six weeks I tried to appeal to common sense and explain that those two packages only differ in "metadata coding style" and that if SLE and openSUSE packages are maintained by different people, there is no need for one of them to adopt the other's preferences (and that the packages will start to differ soon anyway). They were adamant and in the end, they made it absolutely clear that there is no way the SLE15 submission can be accepted unless I at least submit my cleanup to Factory devel project. They didn't say it has to be accepted, though, so here it is but it's completely up to you if you want it or not. Once again, I'm sorry about dragging you into this, I wanted to avoid it but I ran out of options. Summary of the changes: - patches are regenerated using git - patches are annotated the way we use in kernel packages (the annotations make more sense for upstream backports but we currently don't have any in Factory) - one patch (iproute2-HZ.diff) is split into two - Patch* lines are moved out of the rest of tags for easier orientation - conditionally applied patches are moved to the end of the series - all patches are applied in both specfiles so that both builds use the same source tree OBS-URL: https://build.opensuse.org/request/show/518382 OBS-URL: https://build.opensuse.org/package/show/security:netfilter/iproute2?expand=0&rev=144
2017-08-23 23:59:19 +02:00
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%if 0%{?sles_version} == 11 || (0%{?suse_version} && 0%{?suse_version} <= 1220)
%patch101 -p1
%endif
%if 0%{?sles_version} == 11
%patch102 -p1
%endif
find . -name *.orig -delete
%build
# build with -fPIC. For details see
# https://bugzilla.novell.com/show_bug.cgi?id=388021
xt_libdir="$(pkg-config xtables --variable=xtlibdir)";
xt_cflags="$(pkg-config xtables --cflags)";
make %{?_smp_mflags} LIBDIR="%_libdir" CCOPTS="-D_GNU_SOURCE %optflags -Wstrict-prototypes -Wno-error -fPIC -DXT_LIB_DIR=\\\"$xt_libdir\\\" $xt_cflags"
cd doc
make pdf
%install
make install DESTDIR="%buildroot" LIBDIR="%_libdir" \
MODDESTDIR="$b/%_libdir/tc" DOCDIR="%_docdir/iproute2"
mkdir -p "%buildroot/%_docdir/iproute2";
cp -an ip/{ifcfg,routef,routel} doc/*.pdf "%buildroot/%_docdir/iproute2/"
t="$$"
mkdir "$t"
mv "%buildroot/%_docdir" "$t/"
rm -rf "%buildroot"/*
mkdir -p "%buildroot/%_docdir"
mv "$t/packages"/* "%buildroot/%_docdir"
rm -rf "$t"
%files
%defattr(-,root,root)
%_docdir/iproute2
%changelog