diff options
author | Tony Theodore <tonyt@logyst.com> | 2016-05-01 07:40:08 (GMT) |
---|---|---|
committer | Tony Theodore <tonyt@logyst.com> | 2016-05-01 07:40:08 (GMT) |
commit | d8f1d36d71519e868b218aae3774c773ec89c199 (patch) | |
tree | 409c6fc2cef356fba42a3a53d7dca472cf6cf0cd /plugins | |
parent | e6d7f5284ee0547ad274f9cdda8d1c01e630bef8 (diff) | |
parent | 970fa1e6176bbfded601b5bd0d2716a233e49247 (diff) | |
download | mxe-d8f1d36d71519e868b218aae3774c773ec89c199.zip mxe-d8f1d36d71519e868b218aae3774c773ec89c199.tar.gz mxe-d8f1d36d71519e868b218aae3774c773ec89c199.tar.bz2 |
Merge pull request #1317 from tehnick/gcc6-plugin
Add gcc6 plugin
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/gcc5/gcc5-overlay.mk | 1 | ||||
-rw-r--r-- | plugins/gcc6/README.md | 67 | ||||
-rw-r--r-- | plugins/gcc6/gcc6-overlay.mk | 25 |
3 files changed, 93 insertions, 0 deletions
diff --git a/plugins/gcc5/gcc5-overlay.mk b/plugins/gcc5/gcc5-overlay.mk index 3da3171..894952b 100644 --- a/plugins/gcc5/gcc5-overlay.mk +++ b/plugins/gcc5/gcc5-overlay.mk @@ -16,6 +16,7 @@ $(PKG)_CHECKSUM := 8ceebbf4d9a81afa2b4449113cee4b7cb14a687d7a549a963deb5e2a41458 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := http://isl.gforge.inria.fr/$($(PKG)_FILE) +$(PKG)_URL_2 := ftp://gcc.gnu.org/pub/gcc/infrastructure/$($(PKG)_FILE) PKG := gcc $(PKG)_VERSION := 5.3.0 diff --git a/plugins/gcc6/README.md b/plugins/gcc6/README.md new file mode 100644 index 0000000..9cbd7cd --- /dev/null +++ b/plugins/gcc6/README.md @@ -0,0 +1,67 @@ +# Notes about GCC version 6.1.0 and later + +GCC 6.1 is released with a number of major changes +[[1](https://gcc.gnu.org/ml/gcc-announce/2016/msg00000.html)] +[[2](https://gcc.gnu.org/gcc-6/changes.html)] +. The most notable change is: +> The `C++` frontend now defaults to `C++14` standard instead of `C++98` it has +> been defaulting to previously, for compiling older `C++` code that might +> require either explicitly compiling with selected older `C++` standards, +> or might require some code adjustment, see +> [[3](http://gcc.gnu.org/gcc-6/porting_to.html)] +> for details. + +So it is expected that some of MXE packages will fails to build from source +(FTBFS) with default GCC 6.x options. As a workaround we may add `-std=gnu++11` +or `-std=gnu++98` into `CXXFLAGS` for building problematic packages. And this +will not affect the builds with older versions of GCC. + +For example, in autotools based projects: +``` +... +$(PKG)_CXXFLAGS := -std=gnu++11 +... + cd '$(1)' && \ + CXXFLAGS="$($(PKG)_CXXFLAGS)" \ + ./configure \ +... +``` + +Just after adding this plugin (gcc6) some packages were FTBFS. For now, these +packages might be already fixed by upstream developers, by additional patches +or using above mentioned workaround. See the table below for details. If some +MXE packages or your personal projects are still FTBFS you may look how other +packages were fixed and use similar approach. + +| package | target | fixed in commit | +| ------------------ | -------------------- | ---------------------------------------------------- | +| boost | all | [7ca2bce](https://github.com/mxe/mxe/commit/7ca2bce) | +| cgal | all | - | +| dcmtk | all | - | +| fdk-aac | all | - | +| flann | all | - | +| freeimage | all | - | +| glib | all | [58c2c96](https://github.com/mxe/mxe/commit/58c2c96) | +| gtkimageview | all | - | +| gtkmm2 | all | - | +| gtkmm3 | all | - | +| itk | all | - | +| jsoncpp | all | [0bc73f7](https://github.com/mxe/mxe/commit/0bc73f7) | +| json_spirit | all | - | +| libical | all | - | +| librsvg | all | - | +| libxml++ | all | - | +| log4cxx | all | - | +| opencv | all | - | +| ossim | all | - | +| qt | all | [5aac1c3](https://github.com/mxe/mxe/commit/5aac1c3) | +| qt3d | all | - | +| sdl_sound | all | - | +| smpeg | all | [57cb6bb](https://github.com/mxe/mxe/commit/57cb6bb) | +| smpeg2 | all | [1a42cbc](https://github.com/mxe/mxe/commit/1a42cbc) | +| ucl | all | - | +| vtk | all | - | +| vtk6 | all | - | +| wxwidgets | all | - | +| ... | ... | ... | + diff --git a/plugins/gcc6/gcc6-overlay.mk b/plugins/gcc6/gcc6-overlay.mk new file mode 100644 index 0000000..5ca9207 --- /dev/null +++ b/plugins/gcc6/gcc6-overlay.mk @@ -0,0 +1,25 @@ +# This file is part of MXE. +# See index.html for further information. + +# override relevant cloog, isl, and gcc variables changed in: +# https://github.com/mxe/mxe/pull/965 +# +# simply expanded variables (*_SUBDIR, *_FILE, etc.) need to be set + +PKG := cloog +$(PKG)_TARGETS := $(MXE_TARGETS) + +PKG := isl +$(PKG)_VERSION := 0.16.1 +$(PKG)_CHECKSUM := 412538bb65c799ac98e17e8cfcdacbb257a57362acfaaff254b0fcae970126d2 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2 +$(PKG)_URL := http://isl.gforge.inria.fr/$($(PKG)_FILE) +$(PKG)_URL_2 := ftp://gcc.gnu.org/pub/gcc/infrastructure/$($(PKG)_FILE) + +PKG := gcc +$(PKG)_VERSION := 6.1.0 +$(PKG)_CHECKSUM := 09c4c85cabebb971b1de732a0219609f93fc0af5f86f6e437fd8d7f832f1a351 +$(PKG)_SUBDIR := gcc-$($(PKG)_VERSION) +$(PKG)_FILE := gcc-$($(PKG)_VERSION).tar.bz2 +$(PKG)_URL := http://ftp.gnu.org/pub/gnu/gcc/gcc-$($(PKG)_VERSION)/$($(PKG)_FILE) |