summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Fultz <jfultz@wolfram.com>2017-08-10 00:08:04 -0500
committerJohn Fultz <jfultz@wolfram.com>2017-08-10 02:33:13 -0500
commitb3672501e03144a7ad56e6751694697a0d23e240 (patch)
treeb3c68a8c7a1a224318f47f174eae2070564e3f03
parent3bfacc90fb3152384e1a4ae8894265fc8d966a56 (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.yml50
-rw-r--r--encodeleaves/encodeleaves.pro7
-rwxr-xr-xgaddagize/gaddagize.pro10
-rwxr-xr-xmakegaddag/makegaddag.pro12
-rw-r--r--makeminidawg/makeminidawg.pro12
-rw-r--r--quacker/quacker.pro11
-rw-r--r--quackle.pro8
-rw-r--r--quackleio/iotest/iotest.pro6
-rw-r--r--quackleio/quackleio.pro13
-rw-r--r--test/test.pro11
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
+}