On 09/21/2011 02:24 PM, Andrew Schulman wrote:
In the current gnulib, when I extract and try to build argp and
argp-version-etc, the build fails with
.libs/version-etc.o: In function `version_etc_arn':
/home/admin/dev/cygwin/libargp/libargp-20110921/gllib/version-etc.c:84:
undefined reference to `_version_etc_copyright'
The only module that provides the missing constant is version-etc-fsf, so it
seems that version-etc should depend on version-etc-fsf. The patch below
fixes the problem.
Thanks for the patch, but I'm not sure if I want to apply it. We have
several modules that are intentionally missing dependencies (error is
one that comes to mind, which intentionally omits a dependency on
progname), where the idea is that making the dependency explicit pulls
in too much for some users, and that the missing symbols can be easily
supplied in an alternate manner rather than requiring use of the other
gnulib module.
The idea here is that you should use version-etc-fsf if you want FSF
copyrights, and if you don't want FSF copyrights, then use version-etc
and provide your own version_etc_copyright() function that uses your
copyrights.
That is, the dependency is in the reverse direction, and we don't want
to make it circular. Yes, you could also use './gnulib-tool
--avoid=version-etc-fsf version-etc' as a means of breaking the
dependency if it were present, instead of the current situation of
version-etc needing external help, but I'm not sure if it is worth the
change.
--
Eric Blake ebl...@redhat.com +1-801-349-2682
Libvirt virtualization library http://libvirt.org