From a66b497f2b6d5e06012d9aee7a2b9286c8d40681 Mon Sep 17 00:00:00 2001 From: rdb Date: Mon, 12 Jun 2017 19:47:54 +0200 Subject: [PATCH] We no longer support GCC 4.6. Version 4.8+ is recommended. Ubuntu Precise users can install GCC 4.8 from the ppa:ubuntu-toolchain-r/test repository. CentOS 5/6 users can install devtoolset-2 or later. --- .travis.yml | 11 +++++++++-- dtool/src/dtoolbase/dtoolbase_cc.h | 4 ++-- makepanda/makepanda.py | 2 +- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index c8176d293b..7d8a3003b6 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,15 +2,22 @@ language: cpp sudo: false matrix: include: - - compiler: gcc - env: PYTHONV=python2.7 FLAGS=--optimize=4 - compiler: clang env: PYTHONV=python3 FLAGS=--installer - compiler: clang env: PYTHONV=python2.7 FLAGS=--override=STDFLOAT_DOUBLE=1 + - compiler: gcc + env: PYTHONV=python2.7 FLAGS=--optimize=4 + before_install: + - export CC=gcc-4.7 + - export CXX=g++-4.7 addons: apt: + sources: + - ubuntu-toolchain-r-test packages: + - gcc-4.7 + - g++-4.7 - bison - flex - libfreetype6-dev diff --git a/dtool/src/dtoolbase/dtoolbase_cc.h b/dtool/src/dtoolbase/dtoolbase_cc.h index cd6e76b4fe..f4fb89015c 100644 --- a/dtool/src/dtoolbase/dtoolbase_cc.h +++ b/dtool/src/dtoolbase/dtoolbase_cc.h @@ -176,7 +176,7 @@ template typename remove_reference::type &&move(T &&t) { # if __has_extension(cxx_deleted_functions) # define DELETED = delete # endif -#elif defined(__GNUC__) && (__cplusplus >= 201103L) // GCC +#elif defined(__GNUC__) // GCC // Starting at GCC 4.4 # if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) @@ -191,12 +191,12 @@ template typename remove_reference::type &&move(T &&t) { # define CONSTEXPR constexpr # define NOEXCEPT noexcept # define USE_MOVE_SEMANTICS -# define FINAL final # define MOVE(x) move(x) # endif // Starting at GCC 4.7 # if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7) +# define FINAL final # define OVERRIDE override # endif diff --git a/makepanda/makepanda.py b/makepanda/makepanda.py index 78779ca43b..a2df279c0d 100755 --- a/makepanda/makepanda.py +++ b/makepanda/makepanda.py @@ -1214,7 +1214,7 @@ def CompileCxx(obj,src,opts): if (COMPILER=="GCC"): if (src.endswith(".c")): cmd = GetCC() +' -fPIC -c -o ' + obj - else: cmd = GetCXX()+' -std=gnu++0x -ftemplate-depth-70 -fPIC -c -o ' + obj + else: cmd = GetCXX()+' -std=gnu++11 -ftemplate-depth-70 -fPIC -c -o ' + obj for (opt, dir) in INCDIRECTORIES: if (opt=="ALWAYS") or (opt in opts): cmd += ' -I' + BracketNameWithQuotes(dir) for (opt, dir) in FRAMEWORKDIRECTORIES: