automatically include files in %doc only if they are not empty

Till Maas opensource at till.name
Fri Nov 28 10:14:29 UTC 2008


On Thu November 27 2008, Michael Schwendt wrote:
> On Thu, 27 Nov 2008 12:55:07 +0100, Till Maas wrote:

> > on a package I recently packaged for Fedora, there is an empty TODO file
> > included. Is there an easy way to mark this file in %files to be included
> > only if it is not empty? This would make it easier to not forget to add
> > the file in case it will be filed with some contents in a future release.
>
> %prep and %check : easy enough to add a bash conditional expression
> (e.g. which exits with failure if the file exists and has a size greater
> than zero -- or the opposite, a zero size, for files you want to exclude).

I would like to avoid breaking the build in this case. I hoped there was some 
macro, e.g. named exclude_empty, that would allow to exclude files only if 
they are empty. This is what I came up with:

%define exclude_empty() %(test -s %1 && echo %1)

It should then be used somehow like this:
%files
%doc %exclude_empty TODO

But it seems to always exclude the file.

Regards,
Till
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 827 bytes
Desc: This is a digitally signed message part.
URL: <http://listman.redhat.com/archives/fedora-devel-list/attachments/20081128/724b9370/attachment.sig>


More information about the fedora-devel-list mailing list