Differences between revisions 2 and 3
Revision 2 as of 2013-01-29 17:13:02
Size: 3364
Comment:
Revision 3 as of 2013-01-29 17:16:12
Size: 3275
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
Line 4: Line 3:
  calls build/buildcheck.sh which checks autoconf and autoheader
       
and copies libtool stuff
  calls build/buildcheck.sh which checks autoconf and autoheader and copies libtool stuff
Line 13: Line 11:
  // I suspect it somehow calls this tool to process build.conf:
    
~/trunk/build/generator/gen_make.py
  // I suspect it somehow calls this tool to process build.conf: ~/trunk/build/generator/gen_make.py
Line 24: Line 20:
       it also offers interactive useage service -- when is that used?
       this looks like it's manipulated from the outside somewhere?                                               
       It also offers interactive useage service -- when is that used?
       This looks like it's manipulated from the outside somewhere?
Line 40: Line 36:
   TESTING TARGETS (2 -- libsvn_test only -- should this go with the
    
others?)
   TESTING TARGETS (2 -- libsvn_test only -- should this go with the others?)
Line 56: Line 51:
   [__ALL_TESTS__] (this appears to be part of the above but does not
    
look in place?)
   [__ALL_TESTS__] (this appears to be part of the above but does not look in place?)
Line 87: Line 81:
  Check for header files
    
typedefs, structures, and compiler characteristics
    
and some other stuffs
  Check for header files-- typedefs, structures, and compiler characteristics and some other stuffs
Line 93: Line 85:
  AC_SUBST([libsvn_auth_gnome_keyring_LDFLAGS])
   lots of LDFLAGS for almost everything
  AC_SUBST([libsvn_auth_gnome_keyring_LDFLAGS]) -- lots of LDFLAGS for almost everything

autogen.sh

  calls build/buildcheck.sh which checks autoconf and autoheader and copies libtool stuff
  sets up  libtool services
  checks for python
  calls gen-make.py build.conf
  produces configure

gen-make.py

  // I suspect it somehow calls this tool to process build.conf: ~/trunk/build/generator/gen_make.py
  main(fname, gentype, verfname=None,
       skip_depends=0, other_options=None):

       computes the header dependencies (not sure what this means)
       write the (above obtained?) sqlite headers
       offer debug output if --debug is defined

   useage_exit & class Options:
       It also offers interactive useage service -- when is that used?
       This looks like it's manipulated from the outside somewhere?                 
       It calls it's own main?

build.conf -- defines a lot of things used by the python scripts

   [options] section, not sure what this syntax does, stuff gets
             assigned to undefined variables %-)
   Build target definition list by target
   Constructed Headers (not sure what that means?)
   Testing Targets
   External targets (no build needed)
   Targets for i18n support
   TARGETS FOR SWIG SUPPORT
   JavaHL targets
   C++HL targets
   TESTING TARGETS (2 -- libsvn_test only -- should this go with the others?)
   Tests for libsvn_fs_base
   Tests for libsvn_fs_fs
   Tests for libsvn_fs
   Tests for libsvn_repos
   Tests for libsvn_subr
   Tests for libsvn_delta
   Tests for libsvn_client
   Tests for libsvn_diff
   Tests for libsvn_ra
   Tests for libsvn_ra_local
   Tests for libsvn_wc
   libsvn_delta API cmdline programs that should be rehomed
   EXTERNAL TARGETS (NO BUILD NEEDED) (again???)

   [__ALL_TESTS__] (this appears to be part of the above but does not look in place?)
   Contrib and tools

configure.ac

  set up AUTOCONF
  look for programs(compiler etc)
  Libraries, for which we may have source to build
    (apr, gssapi and so on)
  Libtool stuff
  trang
  doxygen
  Check for trang.
  Check for doxygen
  Check for libraries
    Expat
    Berkeley DB
  Mac OS specific features
  APR_HAS_DSO
  D-Bus (required for support for KWallet)
  GPG Agent
  GNOME Keyring
  Ev2 experimental features
  I18n
  Some commented out code: AH_BOTTOM([
  GETTEXT_CODESET:Used to simulate makefile conditionals
  libmagic
  KWallet
  plaintext passwords
  Build and install rules
  Check for header files-- typedefs, structures, and compiler characteristics and some other stuffs
  Process some configuration options
     AC_ARG_WITH(
        ssl,openssl,debug...
  AC_SUBST([libsvn_auth_gnome_keyring_LDFLAGS]) -- lots of LDFLAGS for almost everything
  compose help & options for ./configure
  Scripting and Bindings languages
    Python: Used for testsuite, and bindings
    The minimum version for the JVM runtime
    Perl
    Ruby
    Swig
  decide whether we want to link against the RA/FS libraries
  JavaHL
  Miscellaneous bits
    (CPPFLAGS),
    BSD Makefile stuff
    Detection complete - output and run config.status

    Ensure that SWIG is checked after reconfiguration.
  Print final messages to user

(more to come)

Build System Map2 (last edited 2013-02-08 12:10:05 by GabrielaGibson)