diff options
author | John Fultz <jfultz@wolfram.com> | 2017-08-10 00:08:04 -0500 |
---|---|---|
committer | John Fultz <jfultz@wolfram.com> | 2017-08-10 02:33:13 -0500 |
commit | b3672501e03144a7ad56e6751694697a0d23e240 (patch) | |
tree | b3c68a8c7a1a224318f47f174eae2070564e3f03 | |
parent | 3bfacc90fb3152384e1a4ae8894265fc8d966a56 (diff) |
Add OS X builds to Travis-CI.
Also, add a bit of parallelization, do a few other cleanups
on the yml and .pro files. And push C++14 flags everywhere
into the build system.
-rw-r--r-- | .travis.yml | 50 | ||||
-rw-r--r-- | encodeleaves/encodeleaves.pro | 7 | ||||
-rwxr-xr-x | gaddagize/gaddagize.pro | 10 | ||||
-rwxr-xr-x | makegaddag/makegaddag.pro | 12 | ||||
-rw-r--r-- | makeminidawg/makeminidawg.pro | 12 | ||||
-rw-r--r-- | quacker/quacker.pro | 11 | ||||
-rw-r--r-- | quackle.pro | 8 | ||||
-rw-r--r-- | quackleio/iotest/iotest.pro | 6 | ||||
-rw-r--r-- | quackleio/quackleio.pro | 13 | ||||
-rw-r--r-- | test/test.pro | 11 |
10 files changed, 100 insertions, 40 deletions
diff --git a/.travis.yml b/.travis.yml index fe652b5..6a49677 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,33 +1,43 @@ language: cpp dist: trusty -compiler: - - gcc - - clang + +matrix: + include: + - os: linux + compiler: gcc + + - os: linux + compiler: clang + + - os: osx + +before_install: + - if [ $TRAVIS_OS_NAME = osx ]; then brew install qt; fi + - if [ $TRAVIS_OS_NAME = osx ]; then export PATH="/usr/local/opt/qt/bin:$PATH"; fi + - if [ $TRAVIS_OS_NAME = linux ]; then sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test; fi + - if [ $TRAVIS_OS_NAME = linux ]; then sudo apt-get update -qq; fi + install: - export QT_SELECT=5 -addons: - apt: - packages: - - gcc - - g++ - - clang - - qtbase5-dev - - qt5-qmake + - if [ $TRAVIS_OS_NAME = linux ]; then sudo apt-get install -qq g++-5; fi + - if [ $TRAVIS_OS_NAME = linux ]; then sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 90; fi + - if [ $TRAVIS_OS_NAME = linux ]; then sudo apt-get install qtbase5-dev; fi + script: - - qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make - - cd quackleio && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make + - qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make -j 2 + - cd quackleio && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make -j 2 - cd .. - - cd quacker && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make + - cd quacker && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make -j 2 - cd .. - - cd encodeleaves && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make + - cd encodeleaves && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make -j 2 - cd .. - - cd gaddagize && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make + - cd gaddagize && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make -j 2 - cd .. - - cd makegaddag && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make + - cd makegaddag && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make -j 2 - cd .. - - cd makeminidawg && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make + - cd makeminidawg && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make -j 2 - cd .. - - cd quackleio/iotest && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make + - cd quackleio/iotest && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make -j 2 - cd ../.. - - cd test && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make + - cd test && qmake -r "QMAKE_CXX=$CXX" "QMAKE_CC=$CC" && make -j 2 - cd .. diff --git a/encodeleaves/encodeleaves.pro b/encodeleaves/encodeleaves.pro index 559df28..bd8808e 100644 --- a/encodeleaves/encodeleaves.pro +++ b/encodeleaves/encodeleaves.pro @@ -5,8 +5,9 @@ INCLUDEPATH += . .. # enable/disable debug symbols # CONFIG += debug CONFIG += release +CONFIG -= debug -CONFIG += console +CONFIG += console c++14 CONFIG -= app_bundle debug { @@ -33,3 +34,7 @@ SOURCES += encodeleaves.cpp macx-g++ { QMAKE_CXXFLAGS += -fpermissive } + +linux { # old unixes/Qt distribs running around...most notably on Travis-CI + QMAKE_CXXFLAGS += -std=c++1y +} diff --git a/gaddagize/gaddagize.pro b/gaddagize/gaddagize.pro index 505c237..2915317 100755 --- a/gaddagize/gaddagize.pro +++ b/gaddagize/gaddagize.pro @@ -6,7 +6,7 @@ INCLUDEPATH += . .. # CONFIG += debug CONFIG += release -CONFIG += console +CONFIG += console c++14 CONFIG -= app_bundle debug { @@ -17,7 +17,9 @@ release { OBJECTS_DIR = obj/release } -QMAKE_CXXFLAGS:!win32-msvc2013 += -std=c++11 -Wno-unknown-warning-option -Wno-deprecated-register +!msvc { + QMAKE_CXXFLAGS += -Wno-unknown-warning-option -Wno-deprecated-register +} # Input SOURCES += gaddagize.cpp @@ -26,3 +28,7 @@ SOURCES += gaddagize.cpp macx-g++ { QMAKE_CXXFLAGS += -fpermissive } + +linux { # old unixes/Qt distribs running around...most notably on Travis-CI + QMAKE_CXXFLAGS += -std=c++1y +} diff --git a/makegaddag/makegaddag.pro b/makegaddag/makegaddag.pro index b439383..1691ff2 100755 --- a/makegaddag/makegaddag.pro +++ b/makegaddag/makegaddag.pro @@ -2,6 +2,7 @@ TEMPLATE = app DEPENDPATH += .. ../quackleio INCLUDEPATH += . .. CONFIG += release +CONFIG -= debug debug { OBJECTS_DIR = obj/debug @@ -18,7 +19,7 @@ MOC_DIR = moc # enable/disable debug symbols # CONFIG += debug -CONFIG += console +CONFIG += console c++14 CONFIG -= app_bundle win32:!win32-g++ { @@ -27,8 +28,9 @@ win32:!win32-g++ { LIBS += -lquackleio -lquackle } -QMAKE_CXXFLAGS += -std=c++11 -QMAKE_CXXFLAGS:!win32-msvc2013 += -Wno-unknown-warning-option -Wno-deprecated-register +!msvc { + QMAKE_CXXFLAGS += -Wno-unknown-warning-option -Wno-deprecated-register +} # Input SOURCES += makegaddag.cpp @@ -45,3 +47,7 @@ win32 { macx-g++ { QMAKE_CXXFLAGS += -fpermissive } + +linux { # old unixes/Qt distribs running around...most notably on Travis-CI + QMAKE_CXXFLAGS += -std=c++1y +} diff --git a/makeminidawg/makeminidawg.pro b/makeminidawg/makeminidawg.pro index 07e8afe..92511e9 100644 --- a/makeminidawg/makeminidawg.pro +++ b/makeminidawg/makeminidawg.pro @@ -5,8 +5,9 @@ INCLUDEPATH += . .. # enable/disable debug symbols # CONFIG += debug CONFIG += release +CONFIG -= debug -CONFIG += console +CONFIG += console c++14 CONFIG -= x11 CONFIG -= app_bundle @@ -26,8 +27,9 @@ win32:!win32-g++ { LIBS += -lquackleio -lquackle } -QMAKE_CXXFLAGS += -std=c++11 -QMAKE_CXXFLAGS:!win32-msvc2013 += -Wno-unknown-warning-option -Wno-deprecated-register +!msvc { + QMAKE_CXXFLAGS += -Wno-unknown-warning-option -Wno-deprecated-register +} # Input @@ -38,3 +40,7 @@ SOURCES += makeminidawgmain.cpp macx-g++ { QMAKE_CXXFLAGS += -fpermissive } + +linux { # old unixes/Qt distribs running around...most notably on Travis-CI + QMAKE_CXXFLAGS += -std=c++1y +} diff --git a/quacker/quacker.pro b/quacker/quacker.pro index e924e86..ae12c34 100644 --- a/quacker/quacker.pro +++ b/quacker/quacker.pro @@ -15,6 +15,8 @@ CONFIG += release #qmake messes up resulting Visual Studio project files. CONFIG -= debug +CONFIG += c++14 + debug { OBJECTS_DIR = obj/debug QMAKE_LIBDIR += ../lib/debug ../quackleio/lib/debug @@ -32,8 +34,9 @@ win32:!win32-g++ { } macx:LIBS += -framework CoreFoundation -QMAKE_CXXFLAGS += -std=c++11 -#QMAKE_CXXFLAGS:!win32-msvc2013 += -Wno-unknown-warning-option -Wno-deprecated-register +!msvc { + QMAKE_CXXFLAGS += -Wno-unknown-warning-option -Wno-deprecated-register +} # Input HEADERS += *.h @@ -71,3 +74,7 @@ macx-g++ { unix:!macx { QMAKE_CXXFLAGS += -Wno-unused-local-typedefs } + +linux { # old unixes/Qt distribs running around...most notably on Travis-CI + QMAKE_CXXFLAGS += -std=c++1y +} diff --git a/quackle.pro b/quackle.pro index 2c9a0c3..5631b6b 100644 --- a/quackle.pro +++ b/quackle.pro @@ -17,11 +17,9 @@ release { DESTDIR = lib/release } -QMAKE_CXXFLAGS += -std=c++11 - # enable/disable debug symbols #CONFIG += debug staticlib -CONFIG += release staticlib +CONFIG += release staticlib c++14 CONFIG -= x11 # Input @@ -38,3 +36,7 @@ macx { CONFIG += x86 QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.8 } + +linux { # old unixes/Qt distribs running around...most notably on Travis-CI + QMAKE_CXXFLAGS += -std=c++1y +} diff --git a/quackleio/iotest/iotest.pro b/quackleio/iotest/iotest.pro index c7e994f..9962dbc 100644 --- a/quackleio/iotest/iotest.pro +++ b/quackleio/iotest/iotest.pro @@ -5,6 +5,8 @@ INCLUDEPATH += . .. ../.. # enable/disable debug symbols #CONFIG += debug CONFIG += release +CONFIG += c++14 +CONFIG -= debug debug { OBJECTS_DIR = obj/debug @@ -30,3 +32,7 @@ SOURCES += iotest.cpp trademarkedboards.cpp macx-g++ { QMAKE_CXXFLAGS += -fpermissive } + +linux { # old unixes/Qt distribs running around...most notably on Travis-CI + QMAKE_CXXFLAGS += -std=c++1y +} diff --git a/quackleio/quackleio.pro b/quackleio/quackleio.pro index bd46a01..215e66b 100644 --- a/quackleio/quackleio.pro +++ b/quackleio/quackleio.pro @@ -17,11 +17,12 @@ MOC_DIR = moc # enable/disable debug symbols #CONFIG += debug staticlib -CONFIG += release staticlib +CONFIG += release staticlib c++14 CONFIG -= x11 -QMAKE_CXXFLAGS += -std=c++11 -#QMAKE_CXXFLAGS:!win32-msvc2013 += -Wno-unknown-warning-option -Wno-deprecated-register +!msvc { + QMAKE_CXXFLAGS += -Wno-unknown-warning-option -Wno-deprecated-register +} # Input HEADERS += *.h @@ -29,10 +30,14 @@ HEADERS += *.h SOURCES += *.cpp macx { - CONFIG += x86 + CONFIG += x86 QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.8 } unix:!macx { QMAKE_CXXFLAGS += -Wno-unused-local-typedefs } + +linux { # old unixes/Qt distribs running around...most notably on Travis-CI + QMAKE_CXXFLAGS += -std=c++1y +} diff --git a/test/test.pro b/test/test.pro index 4fbf69a..e244ff5 100644 --- a/test/test.pro +++ b/test/test.pro @@ -5,10 +5,11 @@ INCLUDEPATH += . .. # enable/disable debug symbols # CONFIG += debug -CONFIG += console +CONFIG += console c++14 CONFIG -= x11 CONFIG -= app_bundle CONFIG += release +CONFIG -= debug debug { OBJECTS_DIR = obj/debug @@ -26,7 +27,9 @@ win32:!win32-g++ { LIBS += -lquackleio -lquackle } -QMAKE_CXXFLAGS:!win32-msvc2013 += -std=c++11 -Wno-unknown-warning-option -Wno-deprecated-register +!msvc { + QMAKE_CXXFLAGS += -Wno-unknown-warning-option -Wno-deprecated-register +} # Input HEADERS += testharness.h trademarkedboards.h @@ -36,3 +39,7 @@ SOURCES += testharness.cpp testmain.cpp trademarkedboards.cpp macx-g++ { QMAKE_CXXFLAGS += -fpermissive } + +linux { # old unixes/Qt distribs running around...most notably on Travis-CI + QMAKE_CXXFLAGS += -std=c++1y +} |