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

Reply via email to