On 07/17/2014 05:21 PM, Burton, Ross wrote:
On 17 July 2014 08:58, Ming Liu <ming....@windriver.com> wrote:
Some "once only" variants are being defined instead of standard autoconf
macros, for instance, AC_CHECK_HEADERS_ONCE like AC_CHECK_HEADERS. The
advantage is that the check for each of the headers will be put only once
into the 'configure' file, therefore it keeps the size down. But there
is also a drawback that the checks then will turn to be statically inserted
to the configure and cannot be conditionalized any more. It will
definitely break the dependencies chosen as internally included.
I'm confused as to why this breaks anything, and if it does break
gettext then it's not embedded-specific but an upstream bug in the
configure script, surely. Can you explain what the problem is?
Yes, I'd like to explain it a little more.
AC_CHECK_HEADERS_ONCE will statically add some code to 'configure' file
to force checking headers no matter it's in a condition or not. For example:
......
if test "$gl_cv_libxml_use_included" != yes; then
......
AC_CHECK_HEADERS_ONCE([somehead.h])
......
fi
will always check somehead.h even gl_cv_libxml_use_included equal to
'yes', then there will be a problem if we want to choose some
dependency, for instance, libxml2, to be internally included, that means
not refer to any headers or libraries in system, but oppositely,
AC_CHECK_HEADERS_ONCE will pull in the header that it's supposed to
check, and that would break the dependency we intended to set.
//Ming Liu
Ross
--
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core