Files in the directory excep some included as doc

Adam Williamson awilliam at redhat.com
Wed Feb 25 18:44:47 UTC 2009


On Wed, 2009-02-25 at 04:31 +0100, Kevin Kofler wrote:
> Pierre-Yves wrote:
> > %{_datadir}/R/library/%{packname}/
> > 
> > %doc %{_datadir}/R/library/%{packname}/doc
> > %doc %{_datadir}/R/library/%{packname}/DESCRIPTION
> > %doc %{_datadir}/R/library/%{packname}/html
> > %doc %{_datadir}/R/library/%{packname}/late
> 
> You need to use %dir and list the non-doc stuff, e.g.:
> %dir %{_datadir}/R/library/%{packname}/
> %{_datadir}/R/library/%{packname}/foo
> %{_datadir}/R/library/%{packname}/bar
> %{_datadir}/R/library/%{packname}/baz
> %doc %{_datadir}/R/library/%{packname}/doc
> %doc %{_datadir}/R/library/%{packname}/DESCRIPTION
> %doc %{_datadir}/R/library/%{packname}/html
> %doc %{_datadir}/R/library/%{packname}/late
> 
> Using patterns can help:
> %{_datadir}/R/library/%{packname}/[^dDhl]*
> will pick up most of the non-doc files. :-)

That's really an ugly way of doing things, though, and this situation is
more or less the reason %exclude exists - it's just the %doc wrinkle
that doesn't appear to have been considered (apparently, %exclude only
helps in the "I want these 5,000 files in THIS package, except just one
in this OTHER sub-package" situation). When you have a directory with
really hundreds and hundreds, or even thousands, of files in it, and you
just want to handle *one* of them differently, doing it by manually
specifying all the non-exception packages in some way is really pretty
silly, and there should be a more elegant way to handle it.

Of course, I'd still like to know if these doc files actually have to be
in this particular directory, otherwise you could just delete them from
the directory at the end of %install, and install them as docs in the
standard doc dir in the usual way instead.
-- 
Adam Williamson
Fedora QA Community Monkey
IRC: adamw | Fedora Talk: adamwill AT fedoraproject DOT org
http://www.happyassassin.net




More information about the fedora-devel-list mailing list