Hi,
I was notified some time ago that sylfilter is FTBFS in Fedora Rawhide. So, I was looking
at the build log, and I got this:
.....
+ /usr/lib/rpm/check-rpaths
*******************************************************************************
*
* WARNING: 'check-rpaths' detected a broken RPATH OR RUNPATH and will cause
* 'rpmbuild' to fail. To ignore these errors, you can set the
* '$QA_RPATHS' environment variable which is a bitmask allowing the
* values below. The current value of QA_RPATHS is 0x0000.
*
* 0x0001 ... standard RPATHs (e.g. /usr/lib); such RPATHs are a minor
* issue but are introducing redundant searchpaths without
* providing a benefit. They can also cause errors in multilib
* environments.
* 0x0002 ... invalid RPATHs; these are RPATHs which are neither absolute
* nor relative filenames and can therefore be a SECURITY risk
* 0x0004 ... insecure RPATHs; these are relative RPATHs which are a
* SECURITY risk
* 0x0008 ... the special '$ORIGIN' RPATHs are appearing after other
* RPATHs; this is just a minor issue but usually unwanted
* 0x0010 ... the RPATH is empty; there is no reason for such RPATHs
* and they cause unneeded work while loading libraries
* 0x0020 ... an RPATH references '..' of an absolute path; this will break
* the functionality when the path before '..' is a symlink
*
*
* Examples:
* - to ignore standard and empty RPATHs, execute 'rpmbuild' like
* $ QA_RPATHS=$(( 0x0001|0x0010 )) rpmbuild my-package.src.rpm
* - to check existing files, set $RPM_BUILD_ROOT and execute check-rpaths like
* $ RPM_BUILD_ROOT=<top-dir> /usr/lib/rpm/check-rpaths
*
*******************************************************************************
ERROR 0001: file '/usr/bin/sylfilter' contains a standard '/usr/lib64'
in [/usr/lib64]
error: Bad exit status from /var/tmp/rpm-tmp.7eMoLS (%install)
RPM build errors:
Bad exit status from /var/tmp/rpm-tmp.7eMoLS (%install)
Child return code was: 1
......
So, it appears that there is a standard /usr/lib64? But is it being set directly by the
spec file? How do I unset it? Any suggestions?
Many thanks!
Btw, here is the spec file:
### for Fedora ###
Name: sylfilter
Summary: A generic message filter library and command-line tools
Version: 0.8
Release: 10%{?dist}
License: BSD
URL:
http://sylpheed.sraoss.jp/sylfilter/
Source0:
http://sylpheed.sraoss.jp/sylfilter/src/sylfilter-%{version}.tar.gz
BuildRequires: sqlite-devel
BuildRequires: glib2-devel
BuildRequires: sylpheed-devel
%package devel
Summary: Development files for sylfilter
Requires: sylfilter%{?_isa} = %{version}-%{release}
Requires: sqlite-devel
Requires: glib2-devel
%description
This is SylFilter, a generic message filter library, and some command-line tools
that provide a Bayesian filter which is very popular as a spam filtering
algorithm.
SylFilter is also internationalized and can be applied to any languages.
The SylFilter library provides simple but powerful C APIs and can be used from
C programs.
SylFilter can be used as a command-line tool inside a junk filter mail program
similar to major tools such as bogofilter and bsfilter etc.
For further details, see
http://sylpheed.sraoss.jp/sylfilter/
%description devel
Development files for sylfilter
%prep
%setup -q
%build
%configure --disable-rpath --with-libsylph=sylpheed --with-libsylph-dir=/usr
--disable-static
%{make_build}
%install
%{make_install}
rm %{buildroot}%{_libdir}/*.la
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%doc README
%{_bindir}/sylfilter
%{_libdir}/libsylfilter.*
%{_libdir}/libsylfilter.so.*
%license COPYING
%files devel
%{_libdir}/libsylfilter.so
%{_includedir}/sylfilter