summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--3rdParty/Boost/03_boost_silence_VS2015_compat_warning.diff13
-rw-r--r--3rdParty/Boost/src/boost/config/compiler/visualc.hpp2
-rw-r--r--3rdParty/LibIDN/01_libidn_VS2015_64bit_fixes.diff36
-rw-r--r--3rdParty/LibIDN/SConscript4
-rwxr-xr-x[-rw-r--r--]3rdParty/LibIDN/src/stringprep.c9
-rw-r--r--3rdParty/LibIDN/stubs/win32/stdbool/stdbool.h (renamed from 3rdParty/LibIDN/stubs/win32/stdbool.h)0
6 files changed, 60 insertions, 4 deletions
diff --git a/3rdParty/Boost/03_boost_silence_VS2015_compat_warning.diff b/3rdParty/Boost/03_boost_silence_VS2015_compat_warning.diff
new file mode 100644
index 0000000..7cbfbdd
--- /dev/null
+++ b/3rdParty/Boost/03_boost_silence_VS2015_compat_warning.diff
@@ -0,0 +1,13 @@
+diff --git a/3rdParty/Boost/src/boost/config/compiler/visualc.hpp b/3rdParty/Boost/src/boost/config/compiler/visualc.hpp
+index 842f086..3c0fbce 100644
+--- a/3rdParty/Boost/src/boost/config/compiler/visualc.hpp
++++ b/3rdParty/Boost/src/boost/config/compiler/visualc.hpp
+@@ -253,7 +253,7 @@
+
+ //
+ // last known and checked version is 18.00.20827.3 (VC12 RC, aka 2013 RC):
+-#if (_MSC_VER > 1800 && _MSC_FULL_VER > 180020827)
++#if (_MSC_VER > 1900)
+ # if defined(BOOST_ASSERT_CONFIG)
+ # error "Unknown compiler version - please run the configure tests and report the results"
+ # else
diff --git a/3rdParty/Boost/src/boost/config/compiler/visualc.hpp b/3rdParty/Boost/src/boost/config/compiler/visualc.hpp
index 842f086..3c0fbce 100644
--- a/3rdParty/Boost/src/boost/config/compiler/visualc.hpp
+++ b/3rdParty/Boost/src/boost/config/compiler/visualc.hpp
@@ -247,16 +247,16 @@
# define BOOST_COMPILER_VERSION _MSC_VER
# endif
# endif
# define BOOST_COMPILER "Microsoft Visual C++ version " BOOST_STRINGIZE(BOOST_COMPILER_VERSION)
#endif
//
// last known and checked version is 18.00.20827.3 (VC12 RC, aka 2013 RC):
-#if (_MSC_VER > 1800 && _MSC_FULL_VER > 180020827)
+#if (_MSC_VER > 1900)
# if defined(BOOST_ASSERT_CONFIG)
# error "Unknown compiler version - please run the configure tests and report the results"
# else
# pragma message("Unknown compiler version - please run the configure tests and report the results")
# endif
#endif
diff --git a/3rdParty/LibIDN/01_libidn_VS2015_64bit_fixes.diff b/3rdParty/LibIDN/01_libidn_VS2015_64bit_fixes.diff
new file mode 100644
index 0000000..0d864bc
--- /dev/null
+++ b/3rdParty/LibIDN/01_libidn_VS2015_64bit_fixes.diff
@@ -0,0 +1,36 @@
+diff --git a/3rdParty/LibIDN/src/stringprep.c b/3rdParty/LibIDN/src/stringprep.c
+old mode 100644
+new mode 100755
+index 8ff28e6..19bf0d9
+--- a/3rdParty/LibIDN/src/stringprep.c
++++ b/3rdParty/LibIDN/src/stringprep.c
+@@ -33,6 +33,7 @@
+
+ #include <stdlib.h>
+ #include <string.h>
++#include <assert.h>
+
+ #include "stringprep.h"
+
+@@ -372,7 +373,7 @@ stringprep (char *in,
+ int rc;
+ char *utf8 = NULL;
+ uint32_t *ucs4 = NULL;
+- size_t ucs4len, maxucs4len, adducs4len = 50;
++ size_t ucs4len = SIZE_MAX, maxucs4len = SIZE_MAX, adducs4len = 50;
+
+ do
+ {
+@@ -380,8 +381,10 @@ stringprep (char *in,
+
+ free (ucs4);
+ ucs4 = stringprep_utf8_to_ucs4 (in, -1, &ucs4len);
+- if (ucs4 == NULL)
+- return STRINGPREP_ICONV_ERROR;
++ if (ucs4 == NULL) {
++ return STRINGPREP_ICONV_ERROR;
++ }
++ assert(ucs4len != SIZE_MAX);
+ maxucs4len = ucs4len + adducs4len;
+ newp = realloc (ucs4, maxucs4len * sizeof (uint32_t));
+ if (!newp)
diff --git a/3rdParty/LibIDN/SConscript b/3rdParty/LibIDN/SConscript
index cfe189b..e3ed839 100644
--- a/3rdParty/LibIDN/SConscript
+++ b/3rdParty/LibIDN/SConscript
@@ -13,18 +13,20 @@ if env.get("LIBIDN_BUNDLED", False) :
"CPPDEFINES": ["LIBIDN_STATIC"],
}
if os.path.basename(env["CC"]) in ("clang", "gcc") :
env["LIBIDN_FLAGS"].update({"CPPFLAGS": ["-isystem" "3rdParty/LibIDN/src"]})
else :
env["LIBIDN_FLAGS"].update({"CPPPATH": [Dir("src")]})
if env["PLATFORM"] == "win32" :
env["LIBIDN_FLAGS"]["CPPPATH"] += [Dir("stubs/win32")]
+ if float(env["MSVC_VERSION"]) < 14:
+ env["LIBIDN_FLAGS"]["CPPPATH"] += [Dir("stubs/win32/stdbool")]
if env["MSVC_VERSION"][:3] == "9.0" :
env["LIBIDN_FLAGS"]["CPPPATH"] += [Dir("stubs/win32/VC2008")]
################################################################################
# Build
################################################################################
if env["SCONS_STAGE"] == "build" :
myenv = env.Clone()
@@ -46,18 +48,20 @@ if env.get("LIBIDN_BUNDLED", False) :
else :
print "Error: Cannot find strncasecmp() or strnicmp()"
Exit(1)
conf.Finish()
myenv.Append(CPPDEFINES = ["LIBIDN_STATIC", "HAVE_CONFIG_H"])
myenv.Append(CPPPATH = ["src", "stubs", "src/gl"])
if myenv["PLATFORM"] == "win32" :
myenv.Append(CPPPATH = "stubs/win32")
+ if float(env["MSVC_VERSION"]) < 14:
+ myenv.Append(CPPPATH = "stubs/win32/stdbool")
if myenv["MSVC_VERSION"][:3] == "9.0" :
myenv.Append(CPPPATH = "stubs/win32/VC2008")
env["LIBIDN_OBJECTS"] = myenv.SwiftenObject([
"src/stringprep.c",
"src/profiles.c",
"src/rfc3454.c",
"src/punycode.c",
"src/idna.c",
diff --git a/3rdParty/LibIDN/src/stringprep.c b/3rdParty/LibIDN/src/stringprep.c
index 8ff28e6..19bf0d9 100644..100755
--- a/3rdParty/LibIDN/src/stringprep.c
+++ b/3rdParty/LibIDN/src/stringprep.c
@@ -27,18 +27,19 @@
the GNU Lesser General Public License along with this program. If
not, see <http://www.gnu.org/licenses/>. */
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
#include <stdlib.h>
#include <string.h>
+#include <assert.h>
#include "stringprep.h"
static ssize_t
stringprep_find_character_in_table (uint32_t ucs4,
const Stringprep_table_element * table)
{
ssize_t i;
@@ -366,28 +367,30 @@ stringprep_4zi (uint32_t * ucs4, size_t maxucs4len,
int
stringprep (char *in,
size_t maxlen,
Stringprep_profile_flags flags,
const Stringprep_profile * profile)
{
int rc;
char *utf8 = NULL;
uint32_t *ucs4 = NULL;
- size_t ucs4len, maxucs4len, adducs4len = 50;
+ size_t ucs4len = SIZE_MAX, maxucs4len = SIZE_MAX, adducs4len = 50;
do
{
uint32_t *newp;
free (ucs4);
ucs4 = stringprep_utf8_to_ucs4 (in, -1, &ucs4len);
- if (ucs4 == NULL)
- return STRINGPREP_ICONV_ERROR;
+ if (ucs4 == NULL) {
+ return STRINGPREP_ICONV_ERROR;
+ }
+ assert(ucs4len != SIZE_MAX);
maxucs4len = ucs4len + adducs4len;
newp = realloc (ucs4, maxucs4len * sizeof (uint32_t));
if (!newp)
{
free (ucs4);
return STRINGPREP_MALLOC_ERROR;
}
ucs4 = newp;
diff --git a/3rdParty/LibIDN/stubs/win32/stdbool.h b/3rdParty/LibIDN/stubs/win32/stdbool/stdbool.h
index c789c92..c789c92 100644
--- a/3rdParty/LibIDN/stubs/win32/stdbool.h
+++ b/3rdParty/LibIDN/stubs/win32/stdbool/stdbool.h