Commit Graph

451 Commits

Author SHA1 Message Date
Fabio Alessandrelli 629783f3aa Always verify peer certificate in lws.
Behavior is defined by SSL flags passed via the context.

Simplified port of the patch submitted and accepted in lws master branch
(PR 1215)
2018-04-03 19:25:24 +02:00
Fabio Alessandrelli 262cb262eb Bump libwebsockets to version 2.4.2 2018-04-03 19:25:24 +02:00
Rémi Verschelde cbb4fe45d0
Merge pull request #17035 from Chaosus/fixleaks
Fix memory leaks
2018-03-03 15:06:34 +01:00
Chaosus 7c0da76402 Fix 3 memory leaks 2018-03-03 09:11:26 +03:00
Fabio Alessandrelli 982fa59126 Remove unneeded and problematic minilex.c from lws.
We don't need it, it's used upstream to test the lexical parser
2018-03-01 16:43:42 +01:00
Fabio Alessandrelli ea7af81460 Fix lws compilation on FreeBSD, same as OSX
This error is actually fixed upstream, waiting for a new release
2018-02-28 18:09:43 +01:00
Rémi Verschelde 294af5617a Update CA certificates to latest Mozilla bundle
Copied from an up-to-date Fedora 27 install (ca-certificates-2018.2.22-1.0.fc27).
2018-02-16 17:58:43 +01:00
Fabio Alessandrelli 6fcc8b7e1f Deleting OpenSSL module and library 2018-02-14 01:26:34 +01:00
Fabio Alessandrelli 308b03b377 Small change to lws `mbedtls_wrapper` to fix OSX build.
Checks for OSX in thirdparty/lws/mbedtls_wrapper/include/platform/ssl_port.h
to include stdlib.h instead of malloc.h.

The bug is fixed upstream in master via LWS_HAVE_MALLOC_H,
but not in the 2.4.1 branch (as the file structure has, one again,
changed).
2018-02-14 01:26:23 +01:00
Fabio Alessandrelli 34b9fc3022 lws module now uses mbedtls as OpenSSL replacement 2018-02-14 01:26:23 +01:00
Fabio Alessandrelli b33d10ccdf Add mbedTLS lib. Version 2.7.0, license Apache 2.0 2018-02-14 01:26:23 +01:00
Fabio Alessandrelli fa33e0f62d Add libwebsockets as thirdparty library.
License is LGPLv2.1 + static linking exception, version is 2.4.1
2018-02-05 16:11:41 +01:00
Rémi Verschelde a294c99400 Copyright: Add license info for bullet and Mozilla CA certs 2018-01-22 11:11:51 +01:00
Rémi Verschelde af9c2f8b9c COPYRIGHT: Update with recently added thirdparty libraries
Also various updates to thirdparty/README.md.
2018-01-13 14:44:53 +01:00
Rémi Verschelde e12c89e8c9 bullet: Streamline bundling, remove extraneous src/ folder
Document version and how to extract sources in thirdparty/README.md.
Drop unnecessary CMake and Premake files.
Simplify SCsub, drop unused one.
2018-01-13 14:08:45 +01:00
Rémi Verschelde 53c65ae761 zstd: Update to pristine 1.3.3 2018-01-13 13:50:59 +01:00
Rémi Verschelde 76e5b048d0 tinyexr: Update to pristine commit e385dad (security update) 2018-01-13 13:46:03 +01:00
Rémi Verschelde 00abb1f201 openssl: Update to pristine 1.0.2n (security update) 2018-01-13 13:39:08 +01:00
Rémi Verschelde de0b31edd5 libogg: Update to pristine version 1.3.3 2018-01-13 13:00:44 +01:00
Orkun e021097c80 Fix #12220: Add Decompress Bc5 to Squish
This Commit fixes the corrupted file preview described in #12220.
Added DecompressColourBc5 function to squish.
2017-12-16 15:38:36 +01:00
Hugo Locurcio 979c451d07
Update Hack font to version 3.000 2017-12-15 10:25:12 +01:00
bruvzg f55162ac1d
Fixes thekla atlas mingw-w64 build 2017-12-15 09:04:51 +02:00
bruvzg f8303ec6fb
Adds `macports_clang` build flag to build using clang-5.0 form MacPorts (with OpenMP support). 2017-12-14 16:44:45 +02:00
volzhs 043103fe6a Update libwebp to 0.6.1
* lossless performance and compression improvements + a new 'cruncher' mode (-m 6 -q 100)
* ARM performance improvements with clang (15-20% w/ndk r15c)
* webp-js: emscripten/webassembly based javascript decoder
* miscellaneous bug & build fixes
2017-12-12 02:55:47 +09:00
Hein-Pieter van Braam bf05309af7 Import thekla_atlas
As requested by reduz, an import of thekla_atlas into thirdparty/
2017-12-08 15:47:15 +01:00
Rémi Verschelde 0036019e67 tinyexr: Update to current upstream master branch 2017-12-05 22:00:53 +01:00
Rémi Verschelde c2b8856f2d Revert "Fix MinGW-w64 build of TinyEXR for old toolchains"
This reverts commit 37f5e1dcd9.
2017-12-05 21:59:05 +01:00
Indah Sylvia 7f68960be5 glad: Sync with upstream 0.1.16a0 2017-11-30 14:38:34 +07:00
Martin Lindhe efe2558519 fix some typos 2017-11-28 16:18:22 +01:00
Rémi Verschelde e9d1d648cd libpng: Cosmetic update to upstream 1.6.34
No code change in the part we are using, it only affected contrib code.
[ci skip]
2017-10-29 17:06:48 +01:00
Ferenc Arn f3436a841a Add an option to use zstd's recently introduced long range matching (off by default). 2017-10-27 12:26:13 -04:00
Indah Sylvia 8bdb494032 updated libpng to version 1.6.33 (September 28, 2017) 2017-10-12 14:38:30 +07:00
volzhs dfc717c458 Update freetype to 2.8.1 2017-10-10 01:33:39 +09:00
Daniel J. Ramirez 52c0550dd7 Changed Mononoki font to Hack font 2017-09-17 13:55:48 -05:00
Rémi Verschelde 8c08f2380d Merge pull request #11253 from djrm/pr_better_docs
Improved editor docs
2017-09-14 12:06:36 +02:00
Daniel J. Ramirez b17c801ee8 Changed source font to Mononoki. 2017-09-14 01:13:30 -05:00
Rémi Verschelde a5e907b830 Copyright: Document recastnavigation 2017-09-13 20:56:23 +02:00
Saracen 92e77d5ff2 Recast integration. 2017-09-04 21:41:57 +01:00
volzhs a4a4f6dada Replace editor font to NotoSans for Latin, Arabic, Hebrew, Thai 2017-08-31 21:49:48 +09:00
volzhs f031b111dd Update source code pro font to 2.030 2017-08-31 21:31:46 +09:00
Rémi Verschelde 0cee288c11 Merge pull request #10148 from leezh/pcre2
Replacement of internal RegEx with PCRE2
2017-08-31 11:56:19 +02:00
Rémi Verschelde 3acf6857d9 nanosvg: Document in COPYRIGHT.txt and thirdparty README.md 2017-08-27 13:32:23 +02:00
Rémi Verschelde ec6a9617bb Copyright: Add etc2comp and small fixes 2017-08-27 12:16:36 +02:00
Rémi Verschelde c3ab9eb590 zstd: Update to upstream version 1.3.1
It is now dual-licensed BSD-3-Clause and GPL-2.0, we use the former.
The PATENTS file is no longer applicable \o/

Also add zstd to COPYRIGHT.txt
2017-08-27 12:05:39 +02:00
Rémi Verschelde 560fc0f199 stb: Update to upstream stb_truetype 1.17 and stb_vorbis 1.11
Also fix documented OpenSSL version, it was updated to 1.0.2l in
67305d1b0a.
2017-08-27 11:40:26 +02:00
Rémi Verschelde ee1d0179c5 libpng: Update to upstream version 1.6.32
Fixes security vulnerability in our 1.6.31rc01 snapshot.
2017-08-27 11:37:42 +02:00
Zher Huei Lee e3e2f06324 Replacement of internal RegEx with PCRE2
The pattern and replacement matching behaviour has been changed purely
due to the nature of switching to a standards-compliant library.

One mistake in the previous behaviour was that named groups didn't have
a number. This has been corrected.

As names are actually just an alias of numbered groups,
RegExMatch::get_name_dict() is now get_names() and is a dict
referring to the group number it represents.

Duplicate names are enabled and the with the first matching instance
used.

Due the lack of a suitable equivalent in PCRE2, RegExMatch::expand() was
removed.
2017-08-19 19:29:14 +08:00
Rémi Verschelde 53fffa12f1 minizip: Reapply Godot-specific changes for seek support
I have not assessed whether they are still all relevant.
2017-08-18 23:26:41 +02:00
George Marques 2c1764d5a9
zstd: Update to upstream version 1.3.0 2017-07-22 18:46:05 -03:00
Rémi Verschelde 492999a33b libpng: Update to upstream version 1.6.31rc01
Fixes various issues with 1.6.30, especially ARM build.
Supersedes change in #9722.
2017-07-22 18:42:20 +02:00
Rémi Verschelde b1ca62af52 libpng: Update to upstream version 1.6.30 2017-07-14 22:36:01 +02:00
volzhs 0f8cc0fa5b Update freetype to 2.8 2017-06-25 10:41:12 +09:00
Rémi Verschelde 0a87979d2e glad: Sync with upstream 0.1.14a0 2017-06-14 20:15:37 +02:00
Juan Linietsky a8e845a474 Merge pull request #8548 from tagcup/etc2comp
Add ETC1/ETC2 compression support though etc2comp.
2017-06-13 19:17:13 -03:00
Ferenc Arn f177c15347 Add zstd compression support.
zstd has much better compression speed and ratio, and better decompression speed than currently available methods.
Also set zstd as the default compression method for Compression as well as FileAccessCompressed functions.
2017-06-08 23:48:14 -05:00
Ferenc Arn 6a9c990da7 Add ETC1/ETC2 compression support though etc2comp.
Remove rg-etc1 code. Also updated travis to use ubuntu 14.04.

Fixes #8457.
2017-05-31 18:59:00 -05:00
Rémi Verschelde 47e0e530a9 opus: Update to upstream version 1.1.5 2017-05-28 21:15:14 +02:00
Rémi Verschelde 67305d1b0a openssl: Sync with upstream 1.0.2l 2017-05-27 19:08:07 +02:00
Rémi Verschelde 996f1ae29e openssl: Reapply necessary UWP changes from patch 2017-05-27 19:08:07 +02:00
Rémi Verschelde 022541d917 openssl: Document update process and delete unused files 2017-05-27 15:22:49 +02:00
Rémi Verschelde ce8bf1592a TinyEXR: Document licensing and copyright 2017-05-27 13:41:18 +02:00
Rémi Verschelde d4029aa51a Move other lone thirdparty files to thirdparty/misc
Also move Box2D ConvexDecomposition contrib code to
thirdparty/b2d_convexdecomp.
2017-04-28 21:19:25 +02:00
Rémi Verschelde c5f830d6b9 Split thirdparty smaz.c out of compressed_translation.cpp
Code comes from 150e125cba/smaz.c

With a small modification to match Godot expectations:
```
diff --git a/thirdparty/core/smaz.c b/thirdparty/core/smaz.c
index 9b1ebc2..555dfea 100644
--- a/thirdparty/core/smaz.c
+++ b/thirdparty/core/smaz.c
@@ -14,7 +14,7 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
 #include <string.h>

 /* Our compression codebook, used for compression */
-static char *Smaz_cb[241] = {
+static const char *Smaz_cb[241] = {
 "\002s,\266", "\003had\232\002leW", "\003on \216", "", "\001yS",
 "\002ma\255\002li\227", "\003or \260", "", "\002ll\230\003s t\277",
 "\004fromg\002mel", "", "\003its\332", "\001z\333", "\003ingF", "\001>\336",
@@ -89,7 +89,7 @@ static char *Smaz_rcb[254] = {
 "e, ", " it", "whi", " ma", "ge", "x", "e c", "men", ".com"
 };

-int smaz_compress(char *in, int inlen, char *out, int outlen) {
+int smaz_compress(const char *in, int inlen, char *out, int outlen) {
     unsigned int h1,h2,h3=0;
     int verblen = 0, _outlen = outlen;
     char verb[256], *_out = out;
@@ -167,7 +167,7 @@ out:
     return out-_out;
 }

-int smaz_decompress(char *in, int inlen, char *out, int outlen) {
+int smaz_decompress(const char *in, int inlen, char *out, int outlen) {
     unsigned char *c = (unsigned char*) in;
     char *_out = out;
     int _outlen = outlen;
@@ -192,7 +192,7 @@ int smaz_decompress(char *in, int inlen, char *out, int outlen) {
             inlen -= 2+len;
         } else {
             /* Codebook entry */
-            char *s = Smaz_rcb[*c];
+            const char *s = Smaz_rcb[*c];
             int len = strlen(s);

             if (outlen < len) return _outlen+1;
diff --git a/thirdparty/core/smaz.h b/thirdparty/core/smaz.h
index a547d89..a9d8a33 100644
--- a/thirdparty/core/smaz.h
+++ b/thirdparty/core/smaz.h
@@ -14,7 +14,7 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
 #ifndef _SMAZ_H
 #define _SMAZ_H

-int smaz_compress(char *in, int inlen, char *out, int outlen);
-int smaz_decompress(char *in, int inlen, char *out, int outlen);
+int smaz_compress(const char *in, int inlen, char *out, int outlen);
+int smaz_decompress(const char *in, int inlen, char *out, int outlen);

 #endif
```
2017-04-28 21:19:24 +02:00
Rémi Verschelde 2398eb6ed4 Move core thirdparty files to thirdparty/{minizip,misc} 2017-04-28 21:19:23 +02:00
Rémi Verschelde dd8655aac9 opus: Update to upstream version 1.1.4 2017-04-09 15:17:58 +02:00
Rémi Verschelde fa2d5b91dc squish: Update to upstream version 1.15
Also fix clang-format pre-commit hook to ignore thirdparty files.
2017-04-09 15:03:39 +02:00
Fabio Alessandrelli 0450e6539e ENet code cleanup and changes from review. 2017-03-24 02:30:11 +01:00
Fabio Alessandrelli ed075c4c80 Cleanup unused ENet files and updated thirdparty README 2017-03-24 02:30:11 +01:00
volzhs 6de3defe72 Update libwebp to 0.6.0 2017-02-17 23:49:40 +09:00
Rémi Verschelde b87a232668 Reorder the folders in tools to prepare moving tools/editor
- `certs` and `editor_fonts` go to `thirdparty`
- `dist` and `scripts` go to a new `misc` folder
- `collada` and `doc` go to `tools/editor`

The next step will be to rename `tools/editor` to `editor` directly,
but this will be done at the right time to avoid breaking too many PRs.
2017-02-09 00:08:27 +01:00
Rémi Verschelde 6a3dae5be9 zlib: Update to upstream version 1.2.11 2017-01-16 17:58:34 +01:00
Rémi Verschelde 41821ba11d Remove libmpcdec bundled lib, no longer used
Musepack support was removed in 857c50db70.
2017-01-11 22:40:51 +01:00
Rémi Verschelde c2310b41fa opus: Update to upstream opusfile 0.8
Had missed it in the previous commit as the upstream website is outdated.
2017-01-08 21:33:37 +01:00
Rémi Verschelde 2a38a5eaa8 Remove bundled glew, obsoleted by glad
Also make Haiku load the glad header for GLES3 too,
though I haven't test it.
2017-01-06 22:56:51 +01:00
Rémi Verschelde 12d1fc7a18 glad: Update to upstream 0.1.13a0
Upstreams the workaround we had to use for OSX.
2017-01-06 22:51:15 +01:00
Rémi Verschelde 9845bdde8d opus: Update to upstream libopus 1.1.3 2017-01-05 23:28:02 +01:00
Rémi Verschelde 2ca0337f5f zlib: Update to upstream 1.2.10 2017-01-05 23:27:59 +01:00
Rémi Verschelde a0141fa823 libpng: Update to upstream 1.6.28
Fixes a NULL pointer dereference bug (CVE-2016-10087).
2017-01-05 22:27:53 +01:00
volzhs e04c7e11ec Update libwebp to 0.5.2 2016-12-24 00:46:09 +09:00
Błażej Szczygieł 79f09b3f15 WebM: Fix crash when there is no audio stream
Sync with libsimplewebm-git: 05cfdc2
2016-12-01 12:00:17 +01:00
Rémi Verschelde be4eff1d8b Merge pull request #7019 from vnen/rename-winrt-uwp
Rename WinRT platform to UWP
2016-11-06 12:03:10 +01:00
Rémi Verschelde 611a94e3a6 opus: Move public headers to match system install 2016-11-03 21:18:23 +01:00
George Marques 411faaa6f4
Rename remaining WinRT references to UWP 2016-11-03 14:51:08 -02:00
Rémi Verschelde 7504a85e5a libpng: Update to upstream 1.6.26 2016-11-02 23:25:39 +01:00
Błażej Szczygieł 5268443fdf Add libvpx thirdparty library
Only necessary files
2016-10-19 13:34:28 +02:00
Błażej Szczygieł 2d77a6f5d3 Add libsimplewebm and libwebm thirdparty libraries 2016-10-17 19:22:33 +02:00
Rémi Verschelde edbc0c0d0b freetype: Make it a module and split thirdparty library
Comment out the weird workaround for building on Windows at it might
not be needed anymore. Testing needed to confirm.
2016-10-15 18:10:17 +02:00
Rémi Verschelde cbf52606f4 zlib: Split thirdparty files, simplify scons option 2016-10-15 12:20:47 +02:00
Rémi Verschelde 36738ddda4 glew: Split thirdparty files and isolate env
Not fully happy about the way this one interacts with the various
platforms. Maybe the platform_config.h should be generated by the
SCsub instead of passing a define just to know where is the header.
2016-10-15 12:01:28 +02:00
Rémi Verschelde 249836e530 squish: Update to upstream 1.14
Sources are untouched, tarball from https://sourceforge.net/projects/libsquish
2016-10-15 12:01:28 +02:00
Rémi Verschelde 8311a78df5 squish: Move to a module and split thirdparty lib 2016-10-15 12:01:28 +02:00
Rémi Verschelde 8981ff8a84 rtaudio: Split thirdparty files 2016-10-15 12:01:25 +02:00
Rémi Verschelde 5c12c9e69b mpc: Move to a module and split thirdparty libmpcdec 2016-10-15 11:50:42 +02:00
Rémi Verschelde cfcc8a20e8 theora: Move to a module and split thirdparty lib
Same rationale as the previous commits.
2016-10-15 11:50:41 +02:00
Rémi Verschelde 422196759f openssl: Move to a module and split thirdparty lib
Same rationale as the previous commits.
2016-10-15 11:50:41 +02:00
Rémi Verschelde d9a291f641 ogg/vorbis/opus: Make them modules and unbundle thirdparty libs
Took the opportunity to undo the Godot changed made to the
opus source. The opus module should eventually be built in its
own environment to avoid polluting others with too many include
dirs and defines.

TODO: Fix the platform/ stuff for opus.
2016-10-15 11:50:40 +02:00
Rémi Verschelde ee3cf211c6 webp: Make it a module and unbundle libwebp thirdparty files
Note that there are two Godot-specific changes made to libwebp
for the javascript/HTML5 platform. They are documented in the
README.md.
2016-10-15 11:50:39 +02:00
Rémi Verschelde b1e8889d96 dds/etc1/pbm/pvr: Make those modules and split thirdparty files
They are not particularly packaged in Linux distros so we do not
facilitate unbundling via SCons. There could be done if/when there
is interest.

Also s/pnm/pbm/, long-lived typo :)
2016-10-15 11:50:39 +02:00
Rémi Verschelde c31ad71f10 enet: Split enet thirdparty files and allow unbundling
Building against shared libraries only implemented for Linux X11 so far.
TODO: Document Godot's modifications of upstream enet.
2016-10-15 11:50:39 +02:00
Rémi Verschelde 16ba665db6 jpg: Make it a module and split jpgd thirdparty files
Similar rationale as in previous commit.
2016-10-15 11:50:39 +02:00
Rémi Verschelde 5fef84a135 png: Split library to thirdparty dir and allow unbundling
Uses the new structure agreed upon in #6157, but the thirdparty/ folder
does not behave following a logic similar to that of modules/ yet.

The png driver can't be moved to a module as discussed in #6157, as it's
required by core together with a few other ImageLoader implementations
(see drivers/register_driver_types.cpp:register_core_driver_types())

Dropped the possibility to disable PNG support, it's a core component
of Godot.
2016-10-15 11:50:39 +02:00