[cppad] Fix more rpmlint messages and more explination for others that are not fixed.
Bradley M. Bell
bradbell at fedoraproject.org
Thu Jan 20 17:17:31 UTC 2011
commit 0a074d3b5427e8b6132c6f3a12794008926996a3
Author: Brad Bell <bradbell at seanet.com>
Date: Thu Jan 20 09:16:48 2011 -0800
Fix more rpmlint messages and more explination for others that are not fixed.
cppad.spec | 62 ++++++++++++++++++++++++++++++++++++++---------------------
1 files changed, 40 insertions(+), 22 deletions(-)
---
diff --git a/cppad.spec b/cppad.spec
index 7873ef3..83318ac 100644
--- a/cppad.spec
+++ b/cppad.spec
@@ -3,13 +3,17 @@
# cppad.spec: spelling-error Sumary(en_US) devel:
# Although not in the en_US dictionary, 'devel' is understood by Fedora users.
#
-# cppad.spec: rpm-buildroot-usage:
-# RPM_BUILD_ROOT is used to test includes from installed directory.
+# cppad.spec: rpm-buildroot-usage
+# The %%prep section of this spec file contains a reference to %%buildroot.
+# This is used to read (not write) information in %%buildroot%%includdir
+# (using g++ -I %%buildroot%%includedir ). Thus it is not a violation of
+# http://fedoraproject.org/wiki/Packaging:Guidelines#
+# Scriplets_are_only_allowed_to_write_in_certain_directories
#
# cppad-20110101.2.gpl.tgz: strange-permission 0444L
# The premissions are for readonly, which seems fine in this case.
#
-# %{_docdir}/%{name}-%{version}/pmathmlcss.xsl: file-not-utf8:
+# %%{_docdir}/%%{name}-%%{version}/pmathmlcss.xsl: file-not-utf8:
# The file pmathmlcss.xsl is the standard presentation MathML style sheet.
# Except for white space and a comment at the top, it is identical to
# http://www.w3.org/Math/XSL/pmathmlcss.xsl
@@ -19,8 +23,8 @@
Name: cppad
Version: 20110101.2
-Release: 2%{?dist}
-Summary: C++ Algorithmic Differentiation (AD), %{name}-devel and %{name}-doc.
+Release: 3%{?dist}
+Summary: C++ Algorithmic Differentiation (AD), %{name}-devel and %{name}-doc
Group: Development/Libraries
License: GPLv2
@@ -45,7 +49,7 @@ Algorithmic Differentiation (often referred to as Automatic Differentiation.)
Given a C++ algorithm that computes function values, %{name} generates an
algorithm that computes its derivative values. A brief introduction to
Algorithmic Differentiation (AD) can be found at
- http://en.wikipedia.org/wiki/Automatic_differentiation
+ http://en.wikipedia.org/wiki/Automatic_differentiation
See the package %{name}-doc for documentation of this version of %{name}.
# ----------------------------------------------------------------------------
@@ -55,10 +59,10 @@ Group: XML documentation for %{name}-devel
%description doc
The %{name}-doc package installs the XML documentation for %{name}-devel in
- %{_docdir}/%{name}-%{version}
+ %{_docdir}/%{name}-%{version}
Links to an HTML version of the %{name} documentation, for the most recent
version of %{name}, can be found at the web site
- http://www.coin-or.org/CppAD/
+ http://www.coin-or.org/CppAD/
In addition, printable versions of the documentation,
as a single web page, in both HTML and XML, can be found at that web site.
@@ -66,18 +70,23 @@ as a single web page, in both HTML and XML, can be found at that web site.
%prep
%setup -q
-# CppAD tests the distribution before installing it. The rpm system can
-# test after a mock installation. Thus, we should remove the distribution copy
-# of the include file directory from the search path. We must skip
-# speed/src/makefile.in because we build its library before the install.
+# Patches 2 and 3 should not be necessary when %%{version} > 20110101.2.
+# 1. CppAD tests the distribution before installing it. The rpm system can
+# test after a mock installation. Thus, we should test the installed copy
+# instead of the distribution copy of the include files. We must skip
+# speed/src/makefile.in because it builds a library (that is not installed).
+# 2. Change the location where pkgconfig/cppad.pc is installed.
+# 3. Remove the duplicate copy of the test results from the rpm output.
+includedir=%{buildroot}%{_includedir}
for file in `find . -name 'makefile.in'`
do
- if ! (echo $file | grep 'speed/src/makefile.in' > /dev/null)
- then
- sed -i "$file" \
- -e "s|-I\$(top_srcdir)\([^/]\)|-I$RPM_BUILD_ROOT/usr/include\1|" \
- -e 's|^pkgconfigdir *=.*|pkgconfigdir = $(datadir)/pkgconfig|'
- fi
+ if ! (echo $file | grep 'speed/src/makefile.in' > /dev/null)
+ then
+ sed -i "$file" \
+ -e "s|-I\$(top_srcdir)\([^/]\)|-I$includedir\1|" \
+ -e 's|^pkgconfigdir *=.*|pkgconfigdir = $(datadir)/pkgconfig|' \
+ -e '/^[\t ]*cat test.log *$/d'
+ fi
done
@@ -102,8 +111,8 @@ sed -i.stamp example/example.cpp -f example.sed
make %{?_smp_mflags}
%install
-rm -rf $RPM_BUILD_ROOT
-make install DESTDIR=$RPM_BUILD_ROOT
+rm -rf %{buildroot}
+make install DESTDIR=%{buildroot}
%check
# make test uses a shell script to run make test is a list of subdirectories
@@ -112,7 +121,7 @@ make test
%clean
# cleanup
-rm -rf $RPM_BUILD_ROOT
+rm -rf %{buildroot}
%files devel
%defattr(-,root,root,-)
@@ -126,6 +135,15 @@ rm -rf $RPM_BUILD_ROOT
# ----------------------------------------------------------------------------
%changelog
+* Tue Jan 19 2011 Brad Bell <bradbell at seanet dot com> - 20110101.2-3
+- Remove duplicate test results from build.log
+- Improve comments before patching top level makefile.in.
+- Fix rpmlint warnings about %%{_docdir}, %%{name}, and %%{version} in comments.
+- Fix rpmlint warning by changing tabs to spaces.
+- Fix rpmlint wrning by removing dot at end of Summary.
+- Change RPM_BUILD_ROOT to _builddir.
+- Improve comments (at top) about know rpmlint warnings.
+
* Tue Jan 18 2011 Brad Bell <bradbell at seanet dot com> - 20110101.2-2
- Fix rpmlint error, libdir-macro-in-noarch-package by moving the pkg-config
- file cppad.pc from %%_libdir to %%_datadir.
@@ -268,7 +286,7 @@ rm -rf $RPM_BUILD_ROOT
- Use %%{?dist} in Release entry.
- Use %%(%%{__id_u} -n) in BuildRoot entry.
- Use noarch in BuildArch entry.
-- Move -rf $RPM_BUILD_ROOT from prep entry to install entry.
+- Move -rf RPM_BUILD_ROOT from prep entry to install entry.
- Use macros where possible.
* Sat Dec 08 2007 Brad Bell <bradbell at seanet dot com> 20071208-1
More information about the scm-commits
mailing list