From 9f044cb422c1fc9ad79278092445f612342abb59 Mon Sep 17 00:00:00 2001 From: Aaron Carlisle Date: Sat, 27 May 2017 15:34:55 -0400 Subject: Remove MinGW support The Issue ======= For a long time now MinGW has been unsupported and unmaintained and at this point, it looks like something that we should just leave behind and move on. Why Remove ========== One of the big motivations for MinGW back in the day is that it was free compared to MSVC which was licensed based. However, now that this is no longer true we have basically stopped updating the need CMake files. Along with the CMake files, there are several patches to the extern libs needed to make this work. For example, see: https://developer.blender.org/diffusion/B/browse/master/extern/carve/patches/mingw_w64.patch If we wanted to keep MinGW then we would need to make more custom patches to the external libs and this is not something our platform maintainers are willing to do. For example, here is the patches needed to build python: https://github.com/Alexpux/MINGW-packages/tree/master/mingw-w64-python3 Fixes T51301 Differential Revision: https://developer.blender.org/D2648 --- extern/carve/include/carve/win32.h | 4 +--- extern/carve/patches/mingw.patch | 15 --------------- extern/carve/patches/mingw_w64.patch | 13 ------------- extern/carve/patches/series | 1 - extern/carve/patches/win32.patch | 2 +- 5 files changed, 2 insertions(+), 33 deletions(-) delete mode 100644 extern/carve/patches/mingw.patch delete mode 100644 extern/carve/patches/mingw_w64.patch (limited to 'extern') diff --git a/extern/carve/include/carve/win32.h b/extern/carve/include/carve/win32.h index 81b2ea4d6fa..78a101e6f98 100755 --- a/extern/carve/include/carve/win32.h +++ b/extern/carve/include/carve/win32.h @@ -8,11 +8,9 @@ #include #include -#if !defined(__MINGW32__) inline int strcasecmp(const char *a, const char *b) { return _stricmp(a,b); } -#endif inline void srandom(unsigned long input) { srand(input); @@ -34,7 +32,7 @@ typedef unsigned long uintptr_t; # if _MSC_VER < 1600 // stdint.h is not available before VS2010 -#if defined(_WIN32) && !defined(__MINGW32__) +#if defined(_WIN32) /* The __intXX are built-in types of the visual complier! So we don't need to include anything else here. This typedefs should be in sync with types from MEM_sys_types.h */ diff --git a/extern/carve/patches/mingw.patch b/extern/carve/patches/mingw.patch deleted file mode 100644 index c237edf18e9..00000000000 --- a/extern/carve/patches/mingw.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -r 525472fb477a include/carve/win32.h ---- a/include/carve/win32.h Sun Jan 15 23:07:40 2012 -0500 -+++ b/include/carve/win32.h Wed Jan 18 00:40:10 2012 +0600 -@@ -8,9 +8,11 @@ - #include - #include - -+#if !defined(__MINGW32__) - inline int strcasecmp(const char *a, const char *b) { - return _stricmp(a,b); - } -+#endif - - inline void srandom(unsigned long input) { - srand(input); diff --git a/extern/carve/patches/mingw_w64.patch b/extern/carve/patches/mingw_w64.patch deleted file mode 100644 index 26a30be84c3..00000000000 --- a/extern/carve/patches/mingw_w64.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: bundle.sh -=================================================================== ---- bundle.sh (revision 45912) -+++ bundle.sh (working copy) -@@ -114,7 +114,7 @@ - if env['WITH_BF_BOOST']: - if env['OURPLATFORM'] not in ('win32-vc', 'win64-vc'): - # Boost is setting as preferred collections library in the Carve code when using MSVC compiler -- if env['OURPLATFORM'] != 'win32-mingw': -+ if env['OURPLATFORM'] not in ('win32-mingw', 'win64-mingw'): - defs.append('HAVE_BOOST_UNORDERED_COLLECTIONS') - - defs.append('CARVE_SYSTEM_BOOST') diff --git a/extern/carve/patches/series b/extern/carve/patches/series index b7e97d68c4c..c5c5fd766b8 100644 --- a/extern/carve/patches/series +++ b/extern/carve/patches/series @@ -1,7 +1,6 @@ includes.patch win32.patch mesh_iterator.patch -mingw.patch gcc46.patch clang_is_heap_fix.patch strict_flags.patch diff --git a/extern/carve/patches/win32.patch b/extern/carve/patches/win32.patch index 680bceb2421..1a5f9650532 100644 --- a/extern/carve/patches/win32.patch +++ b/extern/carve/patches/win32.patch @@ -8,7 +8,7 @@ diff -r e82d852e4fb0 include/carve/win32.h -typedef char int8_t; -typedef short int16_t; -typedef long int32_t; -+#if defined(_WIN32) && !defined(__MINGW32__) ++#if defined(_WIN32) +/* The __intXX are built-in types of the visual complier! So we don't + need to include anything else here. + This typedefs should be in sync with types from MEM_sys_types.h */ -- cgit v1.2.3