diff --git a/.travis.yml b/.travis.yml index 68008293e..5f5dfba44 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,44 +1,43 @@ -# Copyright (C) -# -# This file is free software; as a special exception the author gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the -# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +sudo: required +dist: trusty language: cpp +compiler: + - clang git: depth: 1 -branches: - only: - - master - -compiler: - - clang - - gcc ## Uncomment when we are up to full c++11 standards. - before_install: - - sudo add-apt-repository ppa:kalakris/cmake -y - - sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y - - sudo add-apt-repository 'deb http://llvm.org/apt/precise/ llvm-toolchain-precise-3.7 main' - - wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add - - - sudo apt-get update -qq - - sudo apt-get install clang-3.7 - - sudo apt-get install libace-dev - - sudo apt-get install libncurses5-dev - - sudo apt-get install build-essential autoconf libtool make cmake git-core patch wget links zip unzip unrar - - sudo apt-get install openssl libssl-dev mysql-server mysql-client libmysqlclient15-dev libmysql++-dev libreadline6-dev zlib1g-dev libbz2-dev - - if [ "$CXX" = "clang++" ]; then sudo apt-get install -qq libstdc++-4.8-dev; fi - - if [ "$CXX" = "clang++" ]; then export CXX="clang++-3.7" CC="clang-3.7"; fi - - if [ "$CXX" = "g++" ]; then sudo apt-get install -qq g++-4.8; fi - - if [ "$CXX" = "g++" ]; then export CXX="g++-4.8" CC="gcc-4.8"; fi - + - sudo apt-get -qq install build-essential libtool make cmake cmake-data openssl + - sudo apt-get -qq install libssl-dev libmysqlclient-dev libmysql++-dev libreadline6-dev zlib1g-dev libbz2-dev + - sudo apt-get -qq install libboost1.55-dev libboost-thread1.55-dev libboost-filesystem1.55-dev libboost-system1.55-dev libboost-program-options1.55-dev libboost-iostreams1.55-dev libboost-regex1.55-dev + - sudo apt-get -qq install mysql-server + - git config user.email "travis@build.bot" && git config user.name "Travis CI" + - git tag -a -m "Travis build" init + +install: + - mysql -uroot -e 'create database test_mysql;' + - mkdir bin + - cd bin + - cmake ../ -DWITH_WARNINGS=1 -DWITH_COREDEBUG=0 -DUSE_COREPCH=1 -DUSE_SCRIPTPCH=1 -DTOOLS=1 -DSCRIPTS="dynamic" -DSERVERS=1 -DNOJEM=1 -DWITH_DYNAMIC_LINKING=1 -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS="-Werror" -DCMAKE_CXX_FLAGS="-Werror" -DCMAKE_INSTALL_PREFIX=check_install + - cd .. + - chmod +x contrib/check_updates.sh + script: - - mkdir build - - cd build - - cmake ../ -DSCRIPTS=1 -DTOOLS=1 - - make -j8 \ No newline at end of file + - $CXX --version + - mysql -uroot < sql/create/create_mysql.sql + - mysql -utrinity -ptrinity auth < sql/base/auth_database.sql + - ./contrib/check_updates.sh auth 6.x auth + - mysql -utrinity -ptrinity characters < sql/base/characters_database.sql + - ./contrib/check_updates.sh characters 6.x characters + - mysql -utrinity -ptrinity world < sql/base/dev/world_database.sql + - mysql -utrinity -ptrinity hotfixes < sql/base/dev/hotfixes_database.sql + - cat sql/updates/world/6.x/*.sql | mysql -utrinity -ptrinity world + - cat sql/updates/hotfixes/6.x/*.sql | mysql -utrinity -ptrinity hotfixes + - mysql -uroot < sql/create/drop_mysql.sql + - cd bin + - make -j 8 -k && make install + - cd check_install/bin + - ./bnetserver --version + - ./worldserver --version