Skip to content
  • Alex Bennée's avatar
    .travis.yml: basic compile and check recipes · fe863ab9
    Alex Bennée authored
    
    
    This adds a build matrix definition for travis-ci.org continuous
    integration service. It is usable on any public repository hosted on
    GitHub. Once you have created an account signed into Travis you can
    enable it on selected projects via travis-ci.org/profile. Alternatively
    you can configure the service hooks on GitHub via the repository
    Settings tab,then Service Hooks and selecting Travis.
    
    Once setup Travis will automatically test every push as well as any pull
    requests submitted to that repository.
    
    The build matrix is currently split by target architecture (see TARGETS
    environment variable) because a full build of QEMU can take some time.
    This way you get quick feedback for any obvious errors. The additional
    environment variables exist to allow additional builds to tweak the
    environment. These are:
    
    EXTRA_CONFIG - extra terms passed to configure
    EXTRA_PKGS - extra dev packages to install
    TEST_CMD - default "make check", can be overridden
    
    I've confined the additional stuff to x86/x86_64 for convenience.
    
    As Travis supports clang the main builds are done twice (once for gcc
    and once for clang). However clang is disabled for the debug/trace
    builds for the purposes of brevity.
    
    Other wrinkles:
    
     * The lttng user-space tracing back-end is disabled
       (it is currently horribly broken)
     * The ftrace back-end doesn't run "make check"
       (it requires a mounted debugfs to work)
     * There are two debug enabled build (with and without TCG interpreter)
    
    Signed-off-by: default avatarAlex Bennée <alex@bennee.com>
    Reviewed-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
    Signed-off-by: default avatarMichael Tokarev <mjt@tls.msk.ru>
    fe863ab9