NEWS for upcoming release
[ACE_TAO.git] / .travis.yml
blobf840f89d7d9f511f0c3e7245dfb236f5665411ab
1 sudo: false
2 group: travis_latest
3 language: cpp
4 os:
5   - linux
7 compiler:
8   - gcc
10 env:
11   matrix:
12     - FUZZ=1
13     - CORBAEMICRO=1 ACEFORTAO=0 TAO=1
14     - CORBAECOMPACT=1 ACEFORTAO=0 TAO=1
15     - ACEFORTAO=1 TAO=1
16     - ACETESTS=1 ACEFORTAO=0 ACE=1 TAO=0
17     - USES_WCHAR=1 TAO=1
18     - VERSIONED=1 TAO=1
19     - ACETESTS=1 FACE=1 ACE=1 TAO=0
20   global:
21     - ACE_ROOT=$TRAVIS_BUILD_DIR/ACE
22     - TAO_ROOT=$TRAVIS_BUILD_DIR/TAO
23     - MPC_ROOT=$TRAVIS_BUILD_DIR/MPC
24     - LD_LIBRARY_PATH=$ACE_ROOT/lib:$LD_LIBRARY_PATH
25     - COMPILER=g++-7
27 matrix:
28   include:
29     - compiler: clang
30       addons:
31         apt:
32           sources:
33             - ubuntu-toolchain-r-test
34             - llvm-toolchain-trusty-5.0
35           packages:
36             - libxerces-c-dev
37             - libssl-dev
38             - clang++-5.0
39       env: COMPILER=clang++-5.0 VERSIONED=1 TAO=1 ACETESTS=1
40     - os: osx
41       env: COMPILER=clang++ VERSIONED=1 TAO=1 ACETESTS=1
43 addons:
44   apt:
45     sources:
46       - ubuntu-toolchain-r-test
47     packages:
48       - libssl-dev
49       - libxerces-c-dev
50       - g++-7
52 before_install:
53   - git clone --depth 1 git://github.com/DOCGroup/MPC.git
55 branches:
56   only:
57     - master
59 before_script:
60   - export
61   - if [ "$TRAVIS_OS_NAME" == "linux" ]; then echo -e "#include \"ace/config-linux.h\"" >> $ACE_ROOT/ace/config.h; fi
62   - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then echo -e "#include \"ace/config-macosx.h\"" >> $ACE_ROOT/ace/config.h; fi
63   - echo -e "workspace {\n" >> $TRAVIS_BUILD_DIR/travis.mwc
64   - if [ "$TAO" == "1" ]; then echo -e "\$(TAO_ROOT)/TAO_ACE.mwc\n\$(TAO_ROOT)/tests/Hello\n" >> $TRAVIS_BUILD_DIR/travis.mwc; fi
65   - if [ "$ACE" == "1" ]; then echo -e "\$(ACE_ROOT)/ace/ace.mwc\n" >> $TRAVIS_BUILD_DIR/travis.mwc; fi
66   - if [ "$ACETESTS" == "1" ]; then echo -e "\$(ACE_ROOT)/tests\n" >> $TRAVIS_BUILD_DIR/travis.mwc; fi
67   - echo -e "}\n" >> $TRAVIS_BUILD_DIR/travis.mwc
68   - if [ "$FACE" == "1" ]; then echo -e "#define ACE_FACE_SAFETY_BASE" >> $ACE_ROOT/ace/config.h; fi
69   - if [ "$CORBAEMICRO" == "1" ]; then echo -e "corba_e_micro=1" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU; fi
70   - if [ "$CORBAEMICRO" == "1" ]; then echo -e "corba_e_micro=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
71   - if [ "$CORBAECOMPACT" == "1" ]; then echo -e "corba_e_compact=1" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU; fi
72   - if [ "$CORBAECOMPACT" == "1" ]; then echo -e "corba_e_compact=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
73   - if [ "$ACEFORTAO" == "1" ]; then echo -e "ace_for_tao=1" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU; fi
74   - if [ "$ACEFORTAO" == "1" ]; then echo -e "ace_for_tao=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
75   - if [ "$CCMLW" == "1" ]; then echo -e "ccm_lw=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
76   - if [ "$CCMNOEVENT" == "1" ]; then echo -e "ccm_noevent=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
77   - if [ "$USES_WCHAR" == "1" ]; then echo -e "uses_wchar=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
78   - if [ "$VERSIONED" == "1" ]; then echo -e "versioned_namespace=1" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
79   - if [ "$TRAVIS_OS_NAME" == "linux" ]; then echo -e "xerces3=1\nssl=1\n" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU; fi
80   - echo -e "inline=0\nipv6=1\n" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU
81   - if [ "$TRAVIS_OS_NAME" == "linux" ]; then echo -e "xerces3=1\nssl=1\n" >> $ACE_ROOT/bin/MakeProjectCreator/config/default.features; fi
82   - echo -e "TAO/tests/Hello/run_test.pl" >> $TAO_ROOT/bin/travis-ci.lst
83   - if [ "$CXX" == "g++" ]; then echo -e "c++11=1\n" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU; fi
84   - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then echo -e "include \$(ACE_ROOT)/include/makeinclude/platform_macosx.GNU" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU; fi
85   - if [ "$TRAVIS_OS_NAME" == "linux" ]; then
86       if [ "$CXX" == "g++" ]; then
87         echo -e "include \$(ACE_ROOT)/include/makeinclude/platform_linux.GNU" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU;
88       else
89         echo -e "include \$(ACE_ROOT)/include/makeinclude/platform_linux_clang.GNU" >> $ACE_ROOT/include/makeinclude/platform_macros.GNU;
90       fi
91     fi
92   - cat $TRAVIS_BUILD_DIR/travis.mwc
93   - cat $ACE_ROOT/bin/MakeProjectCreator/config/default.features
94   - cat $ACE_ROOT/ace/config.h
95   - cat $ACE_ROOT/include/makeinclude/platform_macros.GNU
96   - if [[ "${COMPILER}" != "" ]]; then export CXX=${COMPILER}; fi
98 script:
99   - if [ "$FUZZ" == "1" ]; then exec perl $ACE_ROOT/bin/fuzz.pl; fi
100   - perl $ACE_ROOT/bin/mwc.pl -type gnuace -workers 2 travis.mwc
101   - make -j 6
102   - perl $ACE_ROOT/bin/auto_run_tests.pl -l $TAO_ROOT/bin/travis-ci.lst