Quoting Chris Shoemaker <[EMAIL PROTECTED]>:

Sorry 'bout that.  I was rushing to commit before bedtime.  Let me see
if I understand the principles:

1) Any time the build depends on any BUILT_SOURCES, it's also
necessary to ensure that those sources are built before they're
used, typically by arrangement of SUBDIRS.

Yes.  A correllary is that any time the build depends on a .la file
it's also necessary to ensure that that .la file is built before
they're used.

2) ${top_srcdir} is for any non-built source file, while
${top_builddir} is for anything built, e.g. source or library.

Yes.  in this case gnc-version.h depends on gnc-svninfo.h, and the
latter could be in either srcdir OR builddir depending on whether
it's an SVN build or a tarball build.

3) ??? I don't understand the moving of #include "config.h".  It it
just style?

No.  config.h defines the configure state which is used in lots of
the other .h files.  You /ALWAYS/ have to #include config.h first
in order to make sure you have the proper definitions set before you
include anything else.

The fact that it /may/ work later is just lucky happenstance.  For
me, I was dying in libintl.h (included from i18n.h) but moving config.h
to the top fixed it..  Most likely because the HAVE_GETTEXT defines
were wrong when i18n.h was included (because config.h hadn't been).

-chris

-derek

--
      Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
      Member, MIT Student Information Processing Board  (SIPB)
      URL: http://web.mit.edu/warlord/    PP-ASEL-IA     N1NWH
      [EMAIL PROTECTED]                        PGP key available

_______________________________________________
gnucash-devel mailing list
[email protected]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

Reply via email to