packaging, directory ownership, %files

Mike Bonnet mikeb at redhat.com
Mon Apr 13 17:26:37 UTC 2009


Carl Byington wrote:
> I want a spec file with something like:
> 
> %files devel-doc
> %defattr(-,root,root,-)
> %{_datadir}/doc/%{name}-%{version}/devel/
> 
> %files doc
> %defattr(-,root,root,-)
> %{_datadir}/doc/%{name}-%{version}/
> 
> 
> 
> Where 
> doc/%{name}-%{version} contains end user documentation, and 
> doc/%{name}-%{version}/devel contains developer documentation, mainly
> doxygen generated html.
> 
> However, that seems to put the developer documentation into the -doc
> subpackage in addition to the -devel-doc subpackage. Is there a way to
> do this so that we have a single doc/%{name}-%{version} directory owned
> by the -doc subpackage, and it contains doc/%{name}-%{version}/devel
> owned by the -devel-doc subpackage (which of course depends on the -doc
> subpackage)?

Referencing a directory in the %files section automatically adds all 
files under that directory to the package.  Putting %dir in front of the 
directory allows you to own the directory but not recursively add its 
contents.

You probably want something like:

%files doc
%defattr(-,root,root,-)
%dir %{_datadir}/doc/%{name}-%{version}/
%{_datadir}/doc/%{name}-%{version}/file1
%{_datadir}/doc/%{name}-%{version}/file2
...




More information about the devel mailing list