Skip to content
  • Mike Hibler's avatar
    Improve the client-install. You can now do a "make client-install" from · 361ee691
    Mike Hibler authored
    the top level.  This will build all the necessary binaries and then install
    them.  This works on FBSD4 and RHL7.3.  It still doesn't work on FBSD5
    (newer compiler that no longer supports a style of use of _FUNCTION_ in the
    event lib) or RHL9 (event lib needs SSL lib which has a bad dependency
    on Kerberos).  Notes:
    
    - requires that elvin libraries be installed on nodes (they are) to build
      event agents, requires linuxthreads be installed on FBSD (it is now) to
      build imagezip (which is installed, but is not strictly necessary)
    
    - installed event-agents and other binaries are stripped
    
    - added a few missing files to the source tree for bsd (healthd.conf)
      and linux (healthd.conf, rc.local)
    
    - the only thing that doesn't get rebuilt in /usr/local/etc/emulab is
      healthd, I couldn't quickly find how it gets built
    
    - uses a scaled down version of libtb with no DB functions (since mysql
      isn't installed on nodes).  N.B. DO NOT DO A CLIENT INSTALL FROM YOUR
      REGULAR OBJ TREE OR ELSE YOU MAY WIND UP WITH A NEUTERED VERSION OF
      libtb.a!
    
    The build-as-well-as-install semantics are counter to the regular install
    targets, but this is what we gotta do for now.  Once the TB source builds
    under Linux and newer BSDs, we could undo this and just require that people
    do a regular "make" followed by "make client-install"  OTOH, there should
    be no reason to require installation of mysql and other server-side packages
    just to build clients (or make them sit through the compilation of assign),
    so maybe we will keep the client build special.
    361ee691