For simple rpms (no sub packages), I use a "trick" like this, after the %install section:
Code:
# Grab a list of all of the files that we just installed
cd %{buildroot}
find . -type d | sed '1,2d;s/^\.//' > $RPM_BUILD_DIR/file.list.%{name}
%clean
[ %{buildroot} != "/" ] && rm -rf %{buildroot}
rm -f $RPM_BUILD_DIR/file.list.%{name}
%files -f ../file.list.%{name}
%defattr(-,root,root,-)
%doc AUTHORS ChangeLog COPYING INSTALL NEWS README TODO
For something more elegant, you have to specify manually the files, even using wildcards - anyway, the method above gives you the list, and that's the starting point.