2016-10-09 23:36:17 +02:00
|
|
|
# Third party libraries
|
|
|
|
|
2019-08-05 11:48:54 +02:00
|
|
|
Please keep categories (`##` level) listed alphabetically and matching their
|
|
|
|
respective folder names. Use two empty lines to separate categories for
|
|
|
|
readability.
|
|
|
|
|
2019-04-11 17:30:12 +02:00
|
|
|
|
2021-11-23 22:16:03 +01:00
|
|
|
## amd-fsr
|
|
|
|
|
2022-04-01 09:24:56 +02:00
|
|
|
- Upstream: https://github.com/GPUOpen-Effects/FidelityFX-FSR
|
|
|
|
- Version: 1.0.2 (a21ffb8f6c13233ba336352bdff293894c706575, 2021)
|
|
|
|
- License: MIT
|
2021-11-23 22:16:03 +01:00
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
|
|
|
- `ffx_a.h` and `ffx_fsr1.h` from `ffx-fsr`
|
|
|
|
- `license.txt`
|
|
|
|
|
|
|
|
|
2023-09-22 23:38:02 +02:00
|
|
|
## amd-fsr2
|
|
|
|
|
|
|
|
- Upstream: https://github.com/GPUOpen-Effects/FidelityFX-FSR2
|
|
|
|
- Version: 2.2.1 (1680d1edd5c034f88ebbbb793d8b88f8842cf804, 2023)
|
|
|
|
- License: MIT
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
|
|
|
- `ffx_*.cpp` and `ffx_*.h` from `src/ffx-fsr2-api`
|
|
|
|
- `shaders` folder from `src/ffx-fsr2-api` with `ffx_*.hlsl` files excluded
|
|
|
|
- `LICENSE.txt`
|
|
|
|
|
|
|
|
Apply `patches` to add the new options required by Godot and general compilation fixes.
|
|
|
|
|
|
|
|
|
2021-11-12 13:49:49 +01:00
|
|
|
## angle
|
|
|
|
|
|
|
|
- Upstream: https://chromium.googlesource.com/angle/angle/
|
|
|
|
- Version: git (chromium/5907, 430a4f559cbc2bcd5d026e8b36ee46ddd80e9651, 2023)
|
|
|
|
- License: BSD-3-Clause
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
|
|
|
- `include/*`
|
|
|
|
- `LICENSE`
|
|
|
|
|
|
|
|
|
2022-12-20 19:54:01 +01:00
|
|
|
## astcenc
|
|
|
|
|
|
|
|
- Upstream: https://github.com/ARM-software/astc-encoder
|
2023-05-11 14:28:49 +02:00
|
|
|
- Version: 4.4.0 (5a5b5a1ef60dd47c27c28c66c118d22c40e3197e, 2023)
|
2022-12-20 19:54:01 +01:00
|
|
|
- License: Apache 2.0
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
|
|
|
- `astcenc_*` and `astcenc.h` files from `Source`
|
|
|
|
- `LICENSE.txt`
|
|
|
|
|
|
|
|
|
2019-09-27 09:05:04 +02:00
|
|
|
## basis_universal
|
|
|
|
|
|
|
|
- Upstream: https://github.com/BinomialLLC/basis_universal
|
2023-05-11 14:39:12 +02:00
|
|
|
- Version: 1.16.4 (900e40fb5d2502927360fe2f31762bdbb624455f, 2023)
|
2019-09-27 09:05:04 +02:00
|
|
|
- License: Apache 2.0
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2021-05-07 17:00:41 +02:00
|
|
|
- `encoder/` and `transcoder/` folders
|
2019-09-27 09:05:04 +02:00
|
|
|
- `LICENSE`
|
|
|
|
|
2023-05-11 14:39:12 +02:00
|
|
|
Applied upstream PR https://github.com/BinomialLLC/basis_universal/pull/344 to
|
|
|
|
fix build with our own copy of zstd (patch in `patches`).
|
|
|
|
|
2019-09-27 09:05:04 +02:00
|
|
|
|
2022-03-16 14:58:35 +01:00
|
|
|
## brotli
|
|
|
|
|
|
|
|
- Upstream: https://github.com/google/brotli
|
2023-05-22 15:05:48 +02:00
|
|
|
- Version: git (ed1995b6bda19244070ab5d331111f16f67c8054, 2023)
|
2022-03-16 14:58:35 +01:00
|
|
|
- License: MIT
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2023-05-22 15:05:48 +02:00
|
|
|
- `common/`, `dec/` and `include/` folders from `c/`,
|
|
|
|
minus the `dictionary.bin*` files
|
2022-03-16 14:58:35 +01:00
|
|
|
- `LICENSE`
|
|
|
|
|
|
|
|
|
2017-02-09 00:07:44 +01:00
|
|
|
## certs
|
|
|
|
|
2021-08-11 14:13:31 +02:00
|
|
|
- Upstream: Mozilla, via https://github.com/bagder/ca-bundle
|
2023-06-07 01:29:01 +02:00
|
|
|
- Version: git (3aaca635bad074a0ce5c15fa8aa0dff47f5c639a, 2023)
|
2018-01-22 11:11:51 +01:00
|
|
|
- License: MPL 2.0
|
2017-02-09 00:07:44 +01:00
|
|
|
|
|
|
|
|
2023-08-17 18:32:30 +02:00
|
|
|
## clipper2
|
|
|
|
|
|
|
|
- Upstream: https://github.com/AngusJohnson/Clipper2
|
|
|
|
- Version: 1.2.2 (756c5079aacab5837e812a143c59dc48a09f22e7, 2023)
|
|
|
|
- License: Boost Software License 1.0
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
|
|
|
- `CPP/Clipper2Lib` folder
|
|
|
|
- `LICENSE`
|
|
|
|
|
|
|
|
|
2018-08-22 04:56:04 +02:00
|
|
|
## cvtt
|
|
|
|
|
2022-01-18 13:39:55 +01:00
|
|
|
- Upstream: https://github.com/elasota/ConvectionKernels
|
2022-11-23 18:59:14 +01:00
|
|
|
- Version: git (350416daa4e98f1c17ffc273b134d0120a2ef230, 2022)
|
2018-08-22 04:56:04 +02:00
|
|
|
- License: MIT
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2022-01-18 13:39:55 +01:00
|
|
|
- all .cpp, .h, and .txt files except the folders MakeTables and etc2packer.
|
2018-08-22 04:56:04 +02:00
|
|
|
|
2023-02-22 21:57:24 +01:00
|
|
|
Changes related to BC6H packing and unpacking made upstream in
|
|
|
|
https://github.com/elasota/cvtt/commit/2e4b6b2747aec11f4cc6dd09ef43fa8ce769f6e2
|
|
|
|
have been removed as they caused massive quality regressions. Apply the patches
|
|
|
|
in the `patches/` folder when syncing on newer upstream commits.
|
|
|
|
|
2018-08-22 04:56:04 +02:00
|
|
|
|
2020-07-20 18:35:34 +02:00
|
|
|
## doctest
|
2021-01-08 11:17:36 +01:00
|
|
|
|
2020-07-20 18:35:34 +02:00
|
|
|
- Upstream: https://github.com/onqtam/doctest
|
2023-05-11 14:22:41 +02:00
|
|
|
- Version: 2.4.11 (ae7a13539fb71f270b87eb2e874fbac80bc8dda2, 2023)
|
2020-07-20 18:35:34 +02:00
|
|
|
- License: MIT
|
|
|
|
|
2022-05-17 16:25:53 +02:00
|
|
|
Files extracted from upstream source:
|
|
|
|
|
|
|
|
- `doctest/doctest.h` as `doctest.h`
|
|
|
|
- `LICENSE.txt`
|
2020-07-20 18:35:34 +02:00
|
|
|
|
2021-01-08 11:17:36 +01:00
|
|
|
|
2021-05-20 12:49:33 +02:00
|
|
|
## embree
|
2021-04-20 18:38:09 +02:00
|
|
|
|
2021-05-20 12:49:33 +02:00
|
|
|
- Upstream: https://github.com/embree/embree
|
2022-11-24 15:45:59 +01:00
|
|
|
- Version: 3.13.5 (698442324ccddd11725fb8875275dc1384f7fb40, 2022)
|
2021-04-20 18:38:09 +02:00
|
|
|
- License: Apache 2.0
|
|
|
|
|
|
|
|
Files extracted from upstream:
|
|
|
|
|
|
|
|
- All cpp files listed in `modules/raycast/godot_update_embree.py`
|
|
|
|
- All header files in the directories listed in `modules/raycast/godot_update_embree.py`
|
|
|
|
|
2020-06-16 20:34:48 +02:00
|
|
|
The `modules/raycast/godot_update_embree.py` script can be used to pull the
|
2021-05-20 12:49:33 +02:00
|
|
|
relevant files from the latest Embree release and apply some automatic changes.
|
2021-04-20 18:38:09 +02:00
|
|
|
|
|
|
|
Some changes have been made in order to remove exceptions and fix minor build errors.
|
|
|
|
They are marked with `// -- GODOT start --` and `// -- GODOT end --`
|
|
|
|
comments. Apply the patches in the `patches/` folder when syncing on newer upstream
|
|
|
|
commits.
|
|
|
|
|
|
|
|
|
2016-10-10 19:50:51 +02:00
|
|
|
## enet
|
|
|
|
|
|
|
|
- Upstream: http://enet.bespin.org
|
2023-07-19 09:46:53 +02:00
|
|
|
- Version: git (ea4607a90dbfbcf4da2669ea998585253d8e70b1, 2023)
|
2016-10-10 19:50:51 +02:00
|
|
|
- License: MIT
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2017-03-08 21:13:03 +01:00
|
|
|
- all .c files in the main directory (except unix.c win32.c)
|
|
|
|
- the include/enet/ folder as enet/ (except unix.h win32.h)
|
2016-10-10 19:50:51 +02:00
|
|
|
- LICENSE file
|
|
|
|
|
2017-03-08 21:13:03 +01:00
|
|
|
Important: enet.h, host.c, protocol.c have been slightly modified
|
2021-01-08 12:01:40 +01:00
|
|
|
to be usable by Godot's socket implementation and allow IPv6 and DTLS.
|
2020-04-21 12:26:42 +02:00
|
|
|
Apply the patches in the `patches/` folder when syncing on newer upstream
|
2020-01-05 19:05:42 +01:00
|
|
|
commits.
|
|
|
|
|
2021-01-08 12:01:40 +01:00
|
|
|
Three files (godot.cpp, enet/godot.h, enet/godot_ext.h) have been added to provide
|
2017-03-08 21:13:03 +01:00
|
|
|
enet socket implementation using Godot classes.
|
2020-01-05 19:05:42 +01:00
|
|
|
|
2017-03-23 13:27:41 +01:00
|
|
|
It is still possible to build against a system wide ENet but doing so
|
2020-04-21 12:26:42 +02:00
|
|
|
will limit its functionality to IPv4 only.
|
2016-10-10 19:50:51 +02:00
|
|
|
|
|
|
|
|
2021-04-07 07:05:56 +02:00
|
|
|
## etcpak
|
2017-04-26 17:49:08 +02:00
|
|
|
|
2021-04-07 07:05:56 +02:00
|
|
|
- Upstream: https://github.com/wolfpld/etcpak
|
2022-06-29 14:22:56 +02:00
|
|
|
- Version: 1.0 (153f0e04a18b93c277684b577365210adcf8e11c, 2022)
|
2021-04-07 07:05:56 +02:00
|
|
|
- License: BSD-3-Clause
|
2017-04-26 17:49:08 +02:00
|
|
|
|
2021-04-07 07:05:56 +02:00
|
|
|
Files extracted from upstream source:
|
2017-04-26 17:49:08 +02:00
|
|
|
|
2021-04-14 16:45:14 +02:00
|
|
|
- Only the files relevant for compression (i.e. `Process*.cpp` and their deps):
|
|
|
|
```
|
|
|
|
Dither.{cpp,hpp} ForceInline.hpp Math.hpp ProcessCommon.hpp ProcessRGB.{cpp,hpp}
|
|
|
|
ProcessDxtc.{cpp,hpp} Tables.{cpp,hpp} Vector.hpp
|
|
|
|
```
|
2021-04-07 07:05:56 +02:00
|
|
|
- `AUTHORS.txt` and `LICENSE.txt`
|
2018-06-07 10:46:05 +02:00
|
|
|
|
2021-04-15 14:02:45 +02:00
|
|
|
|
2017-02-09 00:07:44 +01:00
|
|
|
## fonts
|
|
|
|
|
2022-03-25 09:54:32 +01:00
|
|
|
- `DroidSans*.woff2`:
|
2021-01-08 13:23:02 +01:00
|
|
|
* Upstream: https://android.googlesource.com/platform/frameworks/base/+/master/data/fonts/
|
|
|
|
* Version: ? (pre-2014 commit when DroidSansJapanese.ttf was obsoleted)
|
|
|
|
* License: Apache 2.0
|
2023-09-04 20:15:53 +02:00
|
|
|
- `JetBrainsMono_Regular.woff2`:
|
|
|
|
* Upstream: https://github.com/JetBrains/JetBrainsMono
|
|
|
|
* Version: 2.304 (cd5227bd1f61dff3bbd6c814ceaf7ffd95e947d9, 2023)
|
|
|
|
* License: OFL-1.1
|
|
|
|
- `NotoNaskhArabicUI*.woff2`:
|
|
|
|
* Upstream: https://github.com/notofonts/arabic
|
|
|
|
* Version: 2.014 (133ccaebf922ca080a7eef22998611ac3c242df9, 2022)
|
|
|
|
* License: OFL-1.1
|
|
|
|
- `NotoSans*.woff2`:
|
|
|
|
* Upstream: https://github.com/notofonts/latin-greek-cyrillic
|
|
|
|
* Version: 2.012 (9ea0c8d37bff0c0067b03777f40aa04f2bf78f99, 2023)
|
|
|
|
* License: OFL-1.1
|
|
|
|
- `NotoSansBengali*.woff2`:
|
|
|
|
* Upstream: https://github.com/notofonts/bengali
|
|
|
|
* Version: 2.003 (020a5701f6fc6a363d5eccbae45e37714c0ad686, 2022)
|
|
|
|
* License: OFL-1.1
|
|
|
|
- `NotoSansDevanagari*.woff2`:
|
|
|
|
* Upstream: https://github.com/notofonts/devanagari
|
|
|
|
* Version: 2.004 (f8f27e49da0ec9e5e38ecf3628671f05b24dd955, 2023)
|
|
|
|
* License: OFL-1.1
|
|
|
|
- `NotoSansGeorgian*.woff2`:
|
|
|
|
* Upstream: https://github.com/notofonts/georgian
|
|
|
|
* Version: 2.002 (243ec9aa1d4ec58cc42120d30faac1a102fbfeb9, 2022)
|
|
|
|
* License: OFL-1.1
|
|
|
|
- `NotoSansHebrew*.woff2`:
|
|
|
|
* Upstream: https://github.com/notofonts/hebrew
|
|
|
|
* Version: 2.003 (caa7ab0614fb5b37cc003d9bf3d7d3e765331110, 2022)
|
|
|
|
* License: OFL-1.1
|
|
|
|
- `NotoSansMalayalam*.woff2`:
|
|
|
|
* Upstream: https://github.com/notofonts/malayalam
|
|
|
|
* Version: 2.104 (0fd65e553a6af3dc1c09ed39dfe8933e01c17b32, 2023)
|
|
|
|
* License: OFL-1.1
|
|
|
|
- `NotoSansOriya*.woff2`:
|
|
|
|
* Upstream: https://github.com/notofonts/oriya
|
|
|
|
* Version: 2.005 (9377f242b247df12d0bf4cecd93b9c4b18036fbd, 2023)
|
|
|
|
* License: OFL-1.1
|
|
|
|
- `NotoSansSinhala*.woff2`:
|
|
|
|
* Upstream: https://github.com/notofonts/sinhala
|
|
|
|
* Version: 2.006 (66e5a2ed9797e575222d6e7c5b3710c7bf68be79, 2022)
|
|
|
|
* License: OFL-1.1
|
|
|
|
- `NotoSansTamil*.woff2`:
|
|
|
|
* Upstream: https://github.com/notofonts/tamil
|
|
|
|
* Version: 2.004 (f34a08d1ae3fa810581f63410296d971bdcd62dc, 2023)
|
|
|
|
* License: OFL-1.1
|
|
|
|
- `NotoSansTelugu*.woff2`:
|
|
|
|
* Upstream: https://github.com/notofonts/telugu
|
|
|
|
* Version: 2.004 (68a6a8170cba5b2e9b45029ef36994961e8f614c, 2023)
|
|
|
|
* License: OFL-1.1
|
|
|
|
- `NotoSansThai*.woff2`:
|
|
|
|
* Upstream: https://github.com/notofonts/thai
|
|
|
|
* Version: 2.001 (09af528011390f35abf15cf86068dae208f512c4, 2022)
|
|
|
|
* License: OFL-1.1
|
2022-03-25 09:54:32 +01:00
|
|
|
- `OpenSans_SemiBold.woff2`:
|
2020-06-16 20:34:48 +02:00
|
|
|
* Upstream: https://fonts.google.com/specimen/Open+Sans
|
|
|
|
* Version: 1.10 (downloaded from Google Fonts in February 2021)
|
|
|
|
* License: Apache 2.0
|
2023-09-04 20:15:53 +02:00
|
|
|
- All fonts are converted from the unhinted `.ttf` sources using `https://github.com/google/woff2` tool.
|
|
|
|
- Comment: Use UI font variant if available, because it has tight vertical metrics and good for UI.
|
2017-02-09 00:07:44 +01:00
|
|
|
|
2020-02-13 23:55:19 +01:00
|
|
|
|
2016-10-14 21:57:43 +02:00
|
|
|
## freetype
|
|
|
|
|
|
|
|
- Upstream: https://www.freetype.org
|
2023-08-29 10:38:24 +02:00
|
|
|
- Version: 2.13.2 (920c5502cc3ddda88f6c7d85ee834ac611bb11cc, 2023)
|
2016-10-14 21:57:43 +02:00
|
|
|
- License: FreeType License (BSD-like)
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2022-05-17 22:31:05 +02:00
|
|
|
- `src/` folder, minus the `dlg` and `tools` subfolders
|
|
|
|
* These files can be removed: `.dat`, `.diff`, `.mk`, `.rc`, `README*`
|
2023-08-29 10:38:24 +02:00
|
|
|
* In `src/gzip/`, keep only `ftgzip.c`
|
2022-05-17 22:31:05 +02:00
|
|
|
- `include/` folder, minus the `dlg` subfolder
|
2022-01-13 08:37:24 +01:00
|
|
|
- `LICENSE.TXT` and `docs/FTL.TXT`
|
2016-10-14 21:57:43 +02:00
|
|
|
|
|
|
|
|
2022-11-07 14:12:21 +01:00
|
|
|
## glad
|
|
|
|
|
|
|
|
- Upstream: https://github.com/Dav1dde/glad
|
2023-05-22 15:22:34 +02:00
|
|
|
- Version: 2.0.4 (d08b1aa01f8fe57498f04d47b5fa8c48725be877, 2023)
|
2022-11-07 14:12:21 +01:00
|
|
|
- License: CC0 1.0 and Apache 2.0
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
- `LICENSE`
|
|
|
|
|
|
|
|
Files generated from [upstream web instance](https://gen.glad.sh/):
|
2021-11-12 13:49:49 +01:00
|
|
|
- `EGL/eglplatform.h`
|
2022-11-07 14:12:21 +01:00
|
|
|
- `KHR/khrplatform.h`
|
2021-11-12 13:49:49 +01:00
|
|
|
- `egl.c`
|
|
|
|
- `glad/egl.h`
|
2022-11-07 14:12:21 +01:00
|
|
|
- `gl.c`
|
|
|
|
- `glad/gl.h`
|
2022-11-12 21:46:16 +01:00
|
|
|
- `glx.c`
|
|
|
|
- `glad/glx.h`
|
2022-11-07 14:12:21 +01:00
|
|
|
|
2023-05-22 15:22:34 +02:00
|
|
|
See the permalinks in `glad/gl.h` and `glad/glx.h` to regenrate the files with
|
|
|
|
a new version of the web instance.
|
|
|
|
|
2021-11-12 13:49:49 +01:00
|
|
|
Some changes have been made in order to allow loading OpenGL and OpenGLES APIs at the same time.
|
|
|
|
See the patches in the `patches` directory.
|
|
|
|
|
2022-11-07 14:12:21 +01:00
|
|
|
|
2019-06-22 18:34:26 +02:00
|
|
|
## glslang
|
|
|
|
|
|
|
|
- Upstream: https://github.com/KhronosGroup/glslang
|
2023-09-01 11:11:12 +02:00
|
|
|
- Version: sdk-1.3.261.1 (76b52ebf77833908dc4c0dd6c70a9c357ac720bd, 2023)
|
2019-06-22 18:34:26 +02:00
|
|
|
- License: glslang
|
|
|
|
|
2020-03-09 09:35:55 +01:00
|
|
|
Version should be kept in sync with the one of the used Vulkan SDK (see `vulkan`
|
2023-09-01 11:11:12 +02:00
|
|
|
section).
|
2022-01-12 12:28:43 +01:00
|
|
|
|
2020-03-09 09:35:55 +01:00
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2022-02-11 18:41:59 +01:00
|
|
|
- `glslang` (except `glslang/HLSL` and `glslang/ExtensionHeaders`),
|
2023-09-01 11:11:12 +02:00
|
|
|
`OGLCompilersDLL`, `SPIRV`
|
|
|
|
* Remove C interface code: `CInterface` folders, files matching `"*_c[_\.]*"`
|
2020-10-15 12:04:10 +02:00
|
|
|
- Run `cmake . && make` and copy generated `include/glslang/build_info.h`
|
|
|
|
to `glslang/build_info.h`
|
2020-03-09 09:35:55 +01:00
|
|
|
- `LICENSE.txt`
|
2021-09-22 12:40:17 +02:00
|
|
|
- Unnecessary files like `CMakeLists.txt`, `*.m4` and `updateGrammar` removed.
|
2020-03-09 09:35:55 +01:00
|
|
|
|
2021-01-08 13:23:02 +01:00
|
|
|
|
|
|
|
## graphite
|
2020-08-11 11:10:23 +02:00
|
|
|
|
|
|
|
- Upstream: https://github.com/silnrsi/graphite
|
2022-12-13 10:05:26 +01:00
|
|
|
- Version: 1.3.14 (27572742003b93dc53dc02c01c237b72c6c25f54, 2022)
|
|
|
|
- License: MIT
|
2020-08-11 11:10:23 +02:00
|
|
|
|
|
|
|
Files extracted from upstream source:
|
2021-01-08 13:23:02 +01:00
|
|
|
|
2020-08-11 11:10:23 +02:00
|
|
|
- the `include` folder
|
2021-11-19 12:22:48 +01:00
|
|
|
- the `src` folder (minus `CMakeLists.txt` and `files.mk`)
|
|
|
|
- `COPYING`
|
2020-08-11 11:10:23 +02:00
|
|
|
|
2021-01-08 13:23:02 +01:00
|
|
|
|
|
|
|
## harfbuzz
|
2020-08-11 11:10:23 +02:00
|
|
|
|
|
|
|
- Upstream: https://github.com/harfbuzz/harfbuzz
|
2023-09-05 07:27:29 +02:00
|
|
|
- Version: 8.1.1 (1d665c2b521512cdd56964138fc601debd1f1177, 2023)
|
2021-01-08 13:23:02 +01:00
|
|
|
- License: MIT
|
2020-08-11 11:10:23 +02:00
|
|
|
|
|
|
|
Files extracted from upstream source:
|
2021-01-08 13:23:02 +01:00
|
|
|
|
2021-09-19 22:31:36 +02:00
|
|
|
- `AUTHORS`, `COPYING`, `THANKS`
|
2023-02-13 10:44:33 +01:00
|
|
|
- from the `src` folder, recursively
|
|
|
|
- all the `*.c`, `*.cc`, `*.h`, `*.hh` files
|
2023-07-09 23:51:41 +02:00
|
|
|
- _except_ `main.cc`, `harfbuzz*.cc`, `failing-alloc.c`, `test*.cc`, `hb-wasm*.*`
|
2020-08-11 11:10:23 +02:00
|
|
|
|
2021-01-08 13:23:02 +01:00
|
|
|
|
|
|
|
## icu4c
|
2020-08-11 11:10:23 +02:00
|
|
|
|
|
|
|
- Upstream: https://github.com/unicode-org/icu
|
2023-07-10 10:37:51 +02:00
|
|
|
- Version: 73.2 (680f521746a3bd6a86f25f25ee50a62d88b489cf, 2023)
|
2020-08-11 11:10:23 +02:00
|
|
|
- License: Unicode
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
2021-01-08 13:23:02 +01:00
|
|
|
|
2020-08-11 11:10:23 +02:00
|
|
|
- the `common` folder
|
2021-11-12 09:12:37 +01:00
|
|
|
- `scriptset.*`, `ucln_in.*`, `uspoof.cpp"` and `uspoof_impl.cpp` from the `i18n` folder
|
|
|
|
- `uspoof.h` from the `i18n/unicode` folder
|
2021-04-22 14:08:59 +02:00
|
|
|
- `LICENSE`
|
2020-08-11 11:10:23 +02:00
|
|
|
|
|
|
|
Files generated from upstream source:
|
2021-01-08 13:23:02 +01:00
|
|
|
|
2023-05-23 02:05:01 +02:00
|
|
|
- the `icudt73l.dat` built with the provided `godot_data.json` config file (see
|
2021-01-08 13:23:02 +01:00
|
|
|
https://github.com/unicode-org/icu/blob/master/docs/userguide/icu_data/buildtool.md
|
2021-10-28 08:15:28 +02:00
|
|
|
for instructions).
|
|
|
|
|
2023-07-10 10:37:51 +02:00
|
|
|
- Step 1: Download and extract both `icu4c-{version}-src.tgz` and `icu4c-{version}-data.zip` (replace `data` subfolder from the main source archive).
|
|
|
|
- Step 2: Build ICU with default options - `./runConfigureICU {PLATFORM} && make`.
|
|
|
|
- Step 3: Reconfigure ICU with custom data config - `ICU_DATA_FILTER_FILE={GODOT_SOURCE}/thirdparty/icu4c/godot_data.json ./runConfigureICU {PLATFORM} --with-data-packaging=common`.
|
|
|
|
- Step 4: Delete `data/out` folder and rebuild data - `cd data && rm -rf ./out && make`.
|
|
|
|
- Step 5: Copy `source/data/out/icudt73l.dat` to the `{GODOT_SOURCE}/thirdparty/icu4c/icudt73l.dat`.
|
2021-01-08 13:23:02 +01:00
|
|
|
|
2019-08-05 11:48:54 +02:00
|
|
|
|
2016-10-10 00:03:33 +02:00
|
|
|
## jpeg-compressor
|
|
|
|
|
|
|
|
- Upstream: https://github.com/richgel999/jpeg-compressor
|
2020-05-18 14:22:37 +02:00
|
|
|
- Version: 2.00 (aeb7d3b463aa8228b87a28013c15ee50a7e6fcf3, 2020)
|
2021-01-08 13:23:02 +01:00
|
|
|
- License: Public domain or MIT
|
2016-10-10 00:03:33 +02:00
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2020-04-21 11:30:48 +02:00
|
|
|
- `jpgd*.{c,h}`
|
Implement Running Godot as Movie Writer
* Allows running the game in "movie writer" mode.
* It ensures entirely stable framerate, so your run can be saved stable and with proper sound (which is impossible if your CPU/GPU can't sustain doing this in real-time).
* If disabling vsync, it can save movies faster than the game is run, but if you want to control the interaction it can get difficult.
* Implements a simple, default MJPEG writer.
This new features has two main use cases, which have high demand:
* Saving game videos in high quality and ensuring the frame rate is *completely* stable, always.
* Using Godot as a tool to make movies and animations (which is ideal if you want interaction, or creating them procedurally. No other software is as good for this).
**Note**: This feature **IS NOT** for capturing real-time footage. Use something like OBS, SimpleScreenRecorder or FRAPS to achieve that, as they do a much better job at intercepting the compositor than Godot can probably do using Vulkan or OpenGL natively. If your game runs near real-time when capturing, you can still use this feature but it will play no sound (sound will be saved directly).
Usage:
$ godot --write-movie movie.avi [scene_file.tscn]
Missing:
* Options for configuring video writing via GLOBAL_DEF
* UI Menu for launching with this mode from the editor.
* Add to list of command line options.
* Add a feature tag to override configurations when movie writing (fantastic for saving videos with highest quality settings).
2022-06-17 00:55:19 +02:00
|
|
|
- `jpge*.{c,h}`
|
2016-10-10 00:03:33 +02:00
|
|
|
|
|
|
|
|
2023-04-28 18:26:01 +02:00
|
|
|
## libktx
|
|
|
|
|
|
|
|
- Upstream: https://github.com/KhronosGroup/KTX-Software
|
|
|
|
- Version: 4.1.0 (d7255fe73cd53b856731ceb9f2c279181d0dbbca, 2023)
|
|
|
|
- License: Apache-2.0
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
|
|
|
- `LICENSE.md`
|
|
|
|
- `include/*`
|
|
|
|
- `lib/dfdutils/{LICENSES/Apache-2.0.txt,KHR,*.c,*.h,*.inl}`
|
2023-08-19 16:49:08 +02:00
|
|
|
- `lib/{basis_sgd.h,basis_transcode.cpp,checkheader.c,filestream.*,formatsize.h,gl_format.h,hashlist.c,ktxint.h,memstream.*,swap.c,texture*,uthash.h,vk_format.h,vkformat_enum.h}`
|
2023-04-28 18:26:01 +02:00
|
|
|
- `utils/unused.h`
|
|
|
|
- `other_include/KHR/*`
|
2023-08-19 16:49:08 +02:00
|
|
|
|
|
|
|
Some Godot-specific changes are applied via `godot.patch`.
|
2023-04-28 18:26:01 +02:00
|
|
|
|
|
|
|
|
2016-10-12 20:37:38 +02:00
|
|
|
## libogg
|
|
|
|
|
|
|
|
- Upstream: https://www.xiph.org/ogg
|
2021-11-19 12:32:07 +01:00
|
|
|
- Version: 1.3.5 (e1774cd77f471443541596e09078e78fdc342e4f, 2021)
|
2016-10-12 20:37:38 +02:00
|
|
|
- License: BSD-3-Clause
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2019-10-31 23:30:36 +01:00
|
|
|
- `src/*.{c,h}`
|
2021-11-19 12:32:07 +01:00
|
|
|
- `include/ogg/*.h` in `ogg/` (run `configure` to generate `config_types.h`)
|
|
|
|
- `COPYING`
|
2016-10-12 20:37:38 +02:00
|
|
|
|
|
|
|
|
2016-10-09 23:36:17 +02:00
|
|
|
## libpng
|
|
|
|
|
|
|
|
- Upstream: http://libpng.org/pub/png/libpng.html
|
2023-08-04 15:40:27 +02:00
|
|
|
- Version: 1.6.40 (f135775ad4e5d4408d2e12ffcc71bb36e6b48551, 2023)
|
2016-10-09 23:36:17 +02:00
|
|
|
- License: libpng/zlib
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2016-10-14 18:58:24 +02:00
|
|
|
- all .c and .h files of the main directory, except from
|
|
|
|
`example.c` and `pngtest.c`
|
2023-06-16 13:20:59 +02:00
|
|
|
- `arm/`, `intel/` and `powerpc/` folders
|
2016-10-14 18:58:24 +02:00
|
|
|
- `scripts/pnglibconf.h.prebuilt` as `pnglibconf.h`
|
2018-07-28 10:56:24 +02:00
|
|
|
- `LICENSE`
|
2016-10-11 20:44:26 +02:00
|
|
|
|
|
|
|
|
2017-08-27 12:16:36 +02:00
|
|
|
## libtheora
|
|
|
|
|
|
|
|
- Upstream: https://www.theora.org
|
2022-09-28 02:18:11 +02:00
|
|
|
- Version: git (7180717276af1ebc7da15c83162d6c5d6203aabf, 2020)
|
2017-08-27 12:16:36 +02:00
|
|
|
- License: BSD-3-Clause
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2022-09-28 02:18:11 +02:00
|
|
|
- all .c, .h in lib/, except arm/ and c64x/ folders
|
2017-08-27 12:16:36 +02:00
|
|
|
- all .h files in include/theora/ as theora/
|
|
|
|
- COPYING and LICENSE
|
|
|
|
|
|
|
|
|
2016-10-12 20:37:38 +02:00
|
|
|
## libvorbis
|
|
|
|
|
|
|
|
- Upstream: https://www.xiph.org/vorbis
|
2021-11-19 14:08:06 +01:00
|
|
|
- Version: 1.3.7 (0657aee69dec8508a0011f47f3b69d7538e9d262, 2020)
|
2016-10-12 20:37:38 +02:00
|
|
|
- License: BSD-3-Clause
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2021-11-19 14:08:06 +01:00
|
|
|
- `lib/*` except from: `lookups.pl`, `Makefile.*`
|
|
|
|
- `include/vorbis/*.h` as `vorbis/`
|
|
|
|
- `COPYING`
|
2016-10-12 20:37:38 +02:00
|
|
|
|
|
|
|
|
2016-10-11 23:35:58 +02:00
|
|
|
## libwebp
|
|
|
|
|
|
|
|
- Upstream: https://chromium.googlesource.com/webm/libwebp/
|
2023-09-14 20:56:42 +02:00
|
|
|
- Version: 1.3.2 (ca332209cb5567c9b249c86788cb2dbf8847e760, 2023)
|
2016-10-11 23:35:58 +02:00
|
|
|
- License: BSD-3-Clause
|
|
|
|
|
2016-10-14 21:57:43 +02:00
|
|
|
Files extracted from upstream source:
|
2016-10-11 23:35:58 +02:00
|
|
|
|
2022-08-23 16:47:48 +02:00
|
|
|
- `src/` and `sharpyuv/` except from: `.am`, `.rc` and `.in` files
|
2021-11-19 13:54:40 +01:00
|
|
|
- `AUTHORS`, `COPYING`, `PATENTS`
|
2016-10-11 23:35:58 +02:00
|
|
|
|
2023-04-06 23:31:20 +02:00
|
|
|
Patch `godot-node-debug-fix.patch` workarounds shadowing of godot's Node class in the MSVC debugger.
|
|
|
|
|
2016-10-11 23:35:58 +02:00
|
|
|
|
2018-06-07 10:46:05 +02:00
|
|
|
## mbedtls
|
2018-02-08 19:04:43 +01:00
|
|
|
|
2022-07-18 14:48:00 +02:00
|
|
|
- Upstream: https://github.com/Mbed-TLS/mbedtls
|
2023-08-04 18:09:03 +02:00
|
|
|
- Version: 2.28.4 (aeb97a18913a86f051afab11b2c92c6be0c2eb83, 2023)
|
2018-02-08 19:04:43 +01:00
|
|
|
- License: Apache 2.0
|
|
|
|
|
2020-07-02 15:13:55 +02:00
|
|
|
File extracted from upstream release tarball:
|
2020-01-26 18:06:09 +01:00
|
|
|
|
2021-12-21 12:54:05 +01:00
|
|
|
- All `*.h` from `include/mbedtls/` to `thirdparty/mbedtls/include/mbedtls/` except `config_psa.h` and `psa_util.h`.
|
|
|
|
- All `*.c` and `*.h` from `library/` to `thirdparty/mbedtls/library/` except those starting with `psa_*`.
|
2022-07-18 14:48:00 +02:00
|
|
|
- The `LICENSE` file.
|
2023-09-07 15:01:59 +02:00
|
|
|
- Applied the patch in `patches/windows-arm64-hardclock.diff`.
|
2023-09-07 10:59:26 +02:00
|
|
|
Applied the patch in `aesni-no-arm-intrinsics.patch` to fix MSVC ARM build.
|
2021-07-20 12:32:46 +02:00
|
|
|
- Added 2 files `godot_core_mbedtls_platform.c` and `godot_core_mbedtls_config.h`
|
|
|
|
providing configuration for light bundling with core.
|
2023-04-11 15:39:07 +02:00
|
|
|
- Added the file `godot_module_mbedtls_config.h` to customize the build configuration when bundling the full library.
|
2019-04-11 17:30:12 +02:00
|
|
|
|
2020-12-17 19:56:59 +01:00
|
|
|
|
2020-12-12 13:06:59 +01:00
|
|
|
## meshoptimizer
|
|
|
|
|
|
|
|
- Upstream: https://github.com/zeux/meshoptimizer
|
2022-12-22 16:22:33 +01:00
|
|
|
- Version: git (4a287848fd664ae1c3fc8e5e008560534ceeb526, 2022)
|
2020-12-12 13:06:59 +01:00
|
|
|
- License: MIT
|
|
|
|
|
2021-01-08 13:23:02 +01:00
|
|
|
Files extracted from upstream repository:
|
|
|
|
|
2020-12-17 19:56:59 +01:00
|
|
|
- All files in `src/`.
|
2021-01-08 13:23:02 +01:00
|
|
|
- `LICENSE.md`.
|
|
|
|
|
2021-04-10 07:44:36 +02:00
|
|
|
An [experimental upstream feature](https://github.com/zeux/meshoptimizer/tree/simplify-attr),
|
2021-12-29 02:06:12 +01:00
|
|
|
has been backported. On top of that, it was modified to report only distance error metrics
|
2021-09-07 17:44:50 +02:00
|
|
|
instead of a combination of distance and attribute errors. Patches for both changes can be
|
|
|
|
found in the `patches` directory.
|
2021-04-10 07:44:36 +02:00
|
|
|
|
2020-12-17 19:56:59 +01:00
|
|
|
|
2021-11-30 18:02:42 +01:00
|
|
|
## minimp3
|
|
|
|
|
|
|
|
- Upstream: https://github.com/lieff/minimp3
|
|
|
|
- Version: git (afb604c06bc8beb145fecd42c0ceb5bda8795144, 2021)
|
|
|
|
- License: CC0 1.0
|
|
|
|
|
|
|
|
Files extracted from upstream repository:
|
|
|
|
|
|
|
|
- `minimp3.h`
|
|
|
|
- `minimp3_ex.h`
|
|
|
|
- `LICENSE`
|
|
|
|
|
2022-09-28 16:43:09 +02:00
|
|
|
Some changes have been made in order to fix Windows on ARM build errors, and
|
|
|
|
to solve some MSVC warnings. See the patches in the `patches` directory.
|
2022-08-26 11:55:23 +02:00
|
|
|
|
2021-11-30 18:02:42 +01:00
|
|
|
|
2018-05-11 02:00:16 +02:00
|
|
|
## miniupnpc
|
|
|
|
|
2021-03-14 12:07:28 +01:00
|
|
|
- Upstream: https://github.com/miniupnp/miniupnp
|
2023-08-07 17:50:40 +02:00
|
|
|
- Version: 2.2.5 (58837ef586278d18cbebee50be758835ed4be79a, 2023)
|
2018-05-11 02:00:16 +02:00
|
|
|
- License: BSD-3-Clause
|
|
|
|
|
2019-11-12 09:06:31 +01:00
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2021-11-19 12:00:37 +01:00
|
|
|
- Copy `miniupnpc/src` and `miniupnpc/include` to `thirdparty/miniupnpc`
|
2021-03-14 12:07:28 +01:00
|
|
|
- Remove the following test or sample files:
|
2021-11-19 12:00:37 +01:00
|
|
|
`listdevices.c minihttptestserver.c miniupnpcmodule.c upnpc.c upnperrors.* test*`
|
2021-03-14 12:07:28 +01:00
|
|
|
- `LICENSE`
|
2019-06-30 17:31:51 +02:00
|
|
|
|
2021-11-19 12:00:37 +01:00
|
|
|
The only modified file is `src/miniupnpcstrings.h`, which was created for Godot
|
|
|
|
(it is usually autogenerated by cmake). Bump the version number for miniupnpc in
|
|
|
|
that file when upgrading.
|
2021-03-24 12:53:43 +01:00
|
|
|
|
2018-06-07 10:46:05 +02:00
|
|
|
|
2017-04-28 18:29:15 +02:00
|
|
|
## minizip
|
|
|
|
|
2022-03-31 14:14:05 +02:00
|
|
|
- Upstream: https://www.zlib.net
|
2023-08-29 11:02:34 +02:00
|
|
|
- Version: 1.3 (zlib contrib, 2023)
|
2017-04-28 18:29:15 +02:00
|
|
|
- License: zlib
|
|
|
|
|
|
|
|
Files extracted from the upstream source:
|
|
|
|
|
2022-11-30 15:16:31 +01:00
|
|
|
- From `contrib/minizip`:
|
|
|
|
`{crypt.h,ioapi.{c,h},unzip.{c,h},zip.{c,h}}`
|
|
|
|
`MiniZip64_info.txt`
|
2017-04-28 18:29:15 +02:00
|
|
|
|
|
|
|
Important: Some files have Godot-made changes for use in core/io.
|
2017-08-18 23:20:22 +02:00
|
|
|
They are marked with `/* GODOT start */` and `/* GODOT end */`
|
2022-03-31 14:14:05 +02:00
|
|
|
comments and a patch is provided in the `patches` folder.
|
2017-04-28 18:29:15 +02:00
|
|
|
|
|
|
|
|
|
|
|
## misc
|
|
|
|
|
2017-04-28 19:28:21 +02:00
|
|
|
Collection of single-file libraries used in Godot components.
|
|
|
|
|
2019-07-02 03:06:52 +02:00
|
|
|
- `clipper.{cpp,hpp}`
|
2018-06-07 10:46:05 +02:00
|
|
|
* Upstream: https://sourceforge.net/projects/polyclipping
|
2020-05-01 10:48:15 +02:00
|
|
|
* Version: 6.4.2 (2017) + Godot changes (added optional exceptions handling)
|
2018-06-07 10:46:05 +02:00
|
|
|
* License: BSL-1.0
|
2020-03-28 13:29:29 +01:00
|
|
|
- `cubemap_coeffs.h`
|
|
|
|
* Upstream: https://research.activision.com/publications/archives/fast-filtering-of-reflection-probes
|
2020-05-01 10:48:15 +02:00
|
|
|
File coeffs_const_8.txt (retrieved April 2020)
|
2020-03-28 13:29:29 +01:00
|
|
|
* License: MIT
|
2017-04-28 18:29:15 +02:00
|
|
|
- `fastlz.{c,h}`
|
2018-01-13 14:44:16 +01:00
|
|
|
* Upstream: https://github.com/ariya/FastLZ
|
2020-04-30 14:24:03 +02:00
|
|
|
* Version: 0.5.0 (4f20f54d46f5a6dd4fae4def134933369b7602d2, 2020)
|
2017-04-28 18:29:15 +02:00
|
|
|
* License: MIT
|
|
|
|
- `hq2x.{cpp,h}`
|
|
|
|
* Upstream: https://github.com/brunexgeek/hqx
|
|
|
|
* Version: TBD, file structure differs
|
|
|
|
* License: Apache 2.0
|
2021-01-08 13:23:02 +01:00
|
|
|
- `ifaddrs-android.{cc,h}`
|
|
|
|
* Upstream: https://chromium.googlesource.com/external/webrtc/stable/talk/+/master/base/ifaddrs-android.h
|
|
|
|
* Version: git (5976650443d68ccfadf1dea24999ee459dd2819d, 2013)
|
|
|
|
* License: BSD-3-Clause
|
|
|
|
- `mikktspace.{c,h}`
|
|
|
|
* Upstream: https://archive.blender.org/wiki/index.php/Dev:Shading/Tangent_Space_Normal_Maps/
|
|
|
|
* Version: 1.0 (2011)
|
|
|
|
* License: zlib
|
2022-03-20 14:53:45 +01:00
|
|
|
- `FastNoiseLite.h}`
|
|
|
|
* Upstream: https://github.com/Auburn/FastNoiseLite
|
|
|
|
* Version: git (6be3d6bf7fb408de341285f9ee8a29b67fd953f1, 2022) + custom changes
|
|
|
|
* License: MIT
|
2022-04-18 20:29:29 +02:00
|
|
|
- `ok_color.h`
|
|
|
|
* Upstream: https://github.com/bottosson/bottosson.github.io/blob/master/misc/ok_color.h
|
|
|
|
* Version: git (d69831edb90ffdcd08b7e64da3c5405acd48ad2c, 2022)
|
|
|
|
* License: MIT
|
|
|
|
* Modifications: License included in header.
|
|
|
|
- `ok_color_shader.h`
|
|
|
|
* https://www.shadertoy.com/view/7sK3D1
|
|
|
|
* Version: 2021-09-13
|
|
|
|
* License: MIT
|
2017-04-28 18:29:15 +02:00
|
|
|
- `pcg.{cpp,h}`
|
|
|
|
* Upstream: http://www.pcg-random.org
|
2017-11-28 16:18:22 +01:00
|
|
|
* Version: minimal C implementation, http://www.pcg-random.org/download.html
|
2017-04-28 18:29:15 +02:00
|
|
|
* License: Apache 2.0
|
2021-01-12 19:45:31 +01:00
|
|
|
- `polypartition.{cpp,h}`
|
|
|
|
* Upstream: https://github.com/ivanfratric/polypartition (`src/polypartition.{cpp,h}`)
|
|
|
|
* Version: git (7bdffb428b2b19ad1c43aa44c714dcc104177e84, 2021)
|
|
|
|
* Modifications: Change from STL to Godot types (see provided patch).
|
|
|
|
* License: MIT
|
2020-05-11 14:36:46 +02:00
|
|
|
- `r128.h`
|
|
|
|
* Upstream: https://github.com/fahickman/r128
|
2021-01-08 13:41:05 +01:00
|
|
|
* Version: 1.4.4 (cf2e88fc3e7d7dfe99189686f914874cd0bda15e, 2020)
|
2021-01-08 13:23:02 +01:00
|
|
|
* License: Public Domain or Unlicense
|
Split thirdparty smaz.c out of compressed_translation.cpp
Code comes from https://github.com/antirez/smaz/blob/150e125cbae2e8fd20dd332432776ce13395d4d4/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 19:00:11 +02:00
|
|
|
- `smaz.{c,h}`
|
|
|
|
* Upstream: https://github.com/antirez/smaz
|
2021-01-08 13:23:02 +01:00
|
|
|
* Version: git (2f625846a775501fb69456567409a8b12f10ea25, 2012)
|
2018-01-13 14:44:16 +01:00
|
|
|
* License: BSD-3-Clause
|
Split thirdparty smaz.c out of compressed_translation.cpp
Code comes from https://github.com/antirez/smaz/blob/150e125cbae2e8fd20dd332432776ce13395d4d4/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 19:00:11 +02:00
|
|
|
* Modifications: use `const char*` instead of `char*` for input string
|
2021-05-25 02:25:11 +02:00
|
|
|
- `smolv.h`
|
|
|
|
* Upstream: https://github.com/aras-p/smol-v
|
|
|
|
* Version: git (4b52c165c13763051a18e80ffbc2ee436314ceb2, 2020)
|
|
|
|
* License: Public Domain or MIT
|
2020-05-11 14:36:46 +02:00
|
|
|
- `stb_rect_pack.h`
|
|
|
|
* Upstream: https://github.com/nothings/stb
|
2022-02-24 13:15:41 +01:00
|
|
|
* Version: 1.01 (af1a5bc352164740c1cc1354942b1c6b72eacb8a, 2021)
|
2021-01-08 13:23:02 +01:00
|
|
|
* License: Public Domain or Unlicense or MIT
|
2017-04-28 19:28:21 +02:00
|
|
|
- `yuv2rgb.h`
|
|
|
|
* Upstream: http://wss.co.uk/pinknoise/yuv2rgb/ (to check)
|
|
|
|
* Version: ?
|
|
|
|
* License: BSD
|
|
|
|
|
2017-12-15 08:04:51 +01:00
|
|
|
|
2020-12-27 14:30:33 +01:00
|
|
|
## msdfgen
|
|
|
|
|
|
|
|
- Upstream: https://github.com/Chlumsky/msdfgen
|
2023-06-07 15:36:35 +02:00
|
|
|
- Version: 1.10 (64a91eec3ca3787e6f78b4c99fcd3052ad3e37c0, 2021)
|
2020-12-27 14:30:33 +01:00
|
|
|
- License: MIT
|
|
|
|
|
|
|
|
Files extracted from the upstream source:
|
|
|
|
|
|
|
|
- `msdfgen.h`
|
|
|
|
- Files in `core/` folder.
|
2023-06-07 15:36:35 +02:00
|
|
|
- `LICENSE.txt`
|
2020-12-27 14:30:33 +01:00
|
|
|
|
2021-12-08 08:31:06 +01:00
|
|
|
|
2023-01-15 10:42:49 +01:00
|
|
|
## nvapi
|
|
|
|
|
|
|
|
- Upstream: http://download.nvidia.com/XFree86/nvapi-open-source-sdk
|
|
|
|
- Version: R525
|
|
|
|
- License: MIT
|
|
|
|
|
|
|
|
- `nvapi_minimal.h` was created by using `nvapi.h` from upstream and removing unnecessary code.
|
|
|
|
|
|
|
|
|
2021-12-08 08:31:06 +01:00
|
|
|
## openxr
|
|
|
|
|
|
|
|
- Upstream: https://github.com/KhronosGroup/OpenXR-SDK
|
2023-07-11 09:13:16 +02:00
|
|
|
- Version: 1.0.28 (f5beb0131f1bea8701ace744d1b50df9049bf331, 2023)
|
2021-12-08 08:31:06 +01:00
|
|
|
- License: Apache 2.0
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
|
|
|
- include/
|
|
|
|
- src/common/
|
|
|
|
- src/loader/
|
|
|
|
- src/*.{c,h}
|
|
|
|
- src/external/jsoncpp/include/
|
|
|
|
- src/external/jsoncpp/src/lib_json/
|
|
|
|
- LICENSE and COPYING.adoc
|
|
|
|
|
|
|
|
Exclude:
|
|
|
|
|
|
|
|
- src/external/android-jni-wrappers and src/external/jnipp (not used yet)
|
|
|
|
- All CMake stuff: cmake/, CMakeLists.txt and *.cmake
|
|
|
|
- All Gradle stuff: *gradle*, AndroidManifest.xml
|
2023-07-11 09:13:16 +02:00
|
|
|
- All following files (and their .license files): *.{def,expsym,in,json,map,pom,rc,txt}
|
|
|
|
- All dotfiles
|
2021-12-08 08:31:06 +01:00
|
|
|
|
|
|
|
|
2017-08-07 17:13:15 +02:00
|
|
|
## pcre2
|
|
|
|
|
2019-07-11 10:27:11 +02:00
|
|
|
- Upstream: http://www.pcre.org
|
2022-12-23 11:32:48 +01:00
|
|
|
- Version: 10.42 (52c08847921a324c804cabf2814549f50bce1265, 2022)
|
2017-08-07 17:13:15 +02:00
|
|
|
- License: BSD-3-Clause
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2018-05-24 08:13:24 +02:00
|
|
|
- Files listed in the file NON-AUTOTOOLS-BUILD steps 1-4
|
2019-03-04 14:25:49 +01:00
|
|
|
- All .h files in src/ apart from pcre2posix.h
|
2018-05-24 08:13:24 +02:00
|
|
|
- src/pcre2_jit_match.c
|
|
|
|
- src/pcre2_jit_misc.c
|
2021-01-08 14:10:32 +01:00
|
|
|
- src/sljit/
|
2018-05-24 08:13:24 +02:00
|
|
|
- AUTHORS and LICENCE
|
2016-10-12 20:37:38 +02:00
|
|
|
|
2022-05-18 11:41:00 +02:00
|
|
|
A sljit patch from upstream was backported to fix macOS < 11.0 compilation
|
|
|
|
in 10.40, it can be found in the `patches` folder.
|
|
|
|
|
2017-11-19 00:24:31 +01:00
|
|
|
|
2017-09-13 19:24:43 +02:00
|
|
|
## recastnavigation
|
2017-02-28 13:10:29 +01:00
|
|
|
|
|
|
|
- Upstream: https://github.com/recastnavigation/recastnavigation
|
2023-05-22 14:47:42 +02:00
|
|
|
- Version: 1.6.0 (6dc1667f580357e8a2154c28b7867bea7e8ad3a7, 2023)
|
2017-09-13 19:24:43 +02:00
|
|
|
- License: zlib
|
2016-10-11 20:44:26 +02:00
|
|
|
|
2018-01-13 14:44:16 +01:00
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2020-04-30 15:16:13 +02:00
|
|
|
- `Recast/` folder without `CMakeLists.txt`
|
2018-01-13 14:44:16 +01:00
|
|
|
- License.txt
|
|
|
|
|
2017-11-19 00:24:31 +01:00
|
|
|
|
2020-05-01 10:48:15 +02:00
|
|
|
## rvo2
|
2020-01-10 12:22:34 +01:00
|
|
|
|
2023-01-10 07:14:16 +01:00
|
|
|
For 2D in `rvo2_2d` folder
|
|
|
|
|
|
|
|
- Upstream: https://github.com/snape/RVO2
|
2023-06-29 12:50:49 +02:00
|
|
|
- Version: git (f7c5380235f6c9ac8d19cbf71fc94e2d4758b0a3, 2021)
|
2023-01-10 07:14:16 +01:00
|
|
|
- License: Apache 2.0
|
|
|
|
|
|
|
|
For 3D in `rvo2_3d` folder
|
|
|
|
|
2021-01-08 13:23:02 +01:00
|
|
|
- Upstream: https://github.com/snape/RVO2-3D
|
2023-06-29 12:50:49 +02:00
|
|
|
- Version: git (bfc048670a4e85066e86a1f923d8ea92e3add3b2, 2021)
|
2020-01-10 12:22:34 +01:00
|
|
|
- License: Apache 2.0
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2023-01-10 07:14:16 +01:00
|
|
|
- All .cpp and .h files in the `src/` folder except for Export.h and RVO.h
|
2020-01-10 12:22:34 +01:00
|
|
|
- LICENSE
|
|
|
|
|
2023-01-10 07:14:16 +01:00
|
|
|
Important: Nearly all files have Godot-made changes and renames
|
|
|
|
to make the 2D and 3D rvo libraries compatible with each other
|
|
|
|
and solve conflicts and also enrich the feature set originally
|
|
|
|
proposed by these libraries and better integrate them with Godot.
|
2020-02-10 15:24:00 +01:00
|
|
|
|
2020-01-10 12:22:34 +01:00
|
|
|
|
2021-01-08 13:23:02 +01:00
|
|
|
## spirv-reflect
|
|
|
|
|
|
|
|
- Upstream: https://github.com/KhronosGroup/SPIRV-Reflect
|
2023-09-01 11:11:12 +02:00
|
|
|
- Version: sdk-1.3.261.1 (d7e316e7d592d16ac58f1fe39b1df7babfe65c0d, 2023)
|
2021-01-08 13:23:02 +01:00
|
|
|
- License: Apache 2.0
|
|
|
|
|
2023-09-01 11:11:12 +02:00
|
|
|
Version should be kept in sync with the one of the used Vulkan SDK (see `vulkan`
|
|
|
|
section).
|
2021-09-22 12:40:17 +02:00
|
|
|
|
2021-01-08 13:23:02 +01:00
|
|
|
Files extracted from upstream source:
|
|
|
|
|
|
|
|
- `spirv_reflect.{c,h}`
|
|
|
|
- `include` folder
|
2021-01-08 14:17:49 +01:00
|
|
|
- `LICENSE`
|
2021-01-08 13:23:02 +01:00
|
|
|
|
2021-07-09 21:48:28 +02:00
|
|
|
Some downstream changes have been made and are identified by
|
|
|
|
`// -- GODOT begin --` and `// -- GODOT end --` comments.
|
2022-10-31 13:47:11 +01:00
|
|
|
They can be reapplied using the patches included in the `patches`
|
2021-07-09 21:48:28 +02:00
|
|
|
folder.
|
|
|
|
|
2021-01-08 13:23:02 +01:00
|
|
|
|
2016-10-13 21:48:06 +02:00
|
|
|
## squish
|
|
|
|
|
2016-10-13 21:52:16 +02:00
|
|
|
- Upstream: https://sourceforge.net/projects/libsquish
|
2021-01-08 13:23:02 +01:00
|
|
|
- Version: 1.15 (r104, 2017)
|
2016-10-13 21:48:06 +02:00
|
|
|
- License: MIT
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
|
|
|
- all .cpp, .h and .inl files
|
|
|
|
|
2017-11-19 00:24:31 +01:00
|
|
|
Important: Some files have Godot-made changes.
|
|
|
|
They are marked with `// -- GODOT start --` and `// -- GODOT end --`
|
|
|
|
comments and a patch is provided in the squish/ folder.
|
|
|
|
|
2016-10-13 21:48:06 +02:00
|
|
|
|
2017-05-27 13:41:18 +02:00
|
|
|
## tinyexr
|
|
|
|
|
|
|
|
- Upstream: https://github.com/syoyo/tinyexr
|
2023-06-07 15:33:34 +02:00
|
|
|
- Version: 1.0.5 (3627ab3060592468d49547b4cdf5353e9e2b50dc, 2023)
|
2017-05-27 13:41:18 +02:00
|
|
|
- License: BSD-3-Clause
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
|
|
|
- `tinyexr.{cc,h}`
|
|
|
|
|
2021-11-19 11:17:49 +01:00
|
|
|
The `tinyexr.cc` file was modified to include `zlib.h` which we provide,
|
|
|
|
instead of `miniz.h` as an external dependency.
|
|
|
|
|
2017-05-27 13:41:18 +02:00
|
|
|
|
2022-01-13 13:54:19 +01:00
|
|
|
## thorvg
|
|
|
|
|
2023-05-11 17:39:50 +02:00
|
|
|
- Upstream: https://github.com/thorvg/thorvg
|
2023-09-29 14:58:36 +02:00
|
|
|
- Version: 0.11.0 (12260198d12719ea20939b68492accfc155d9ff5, 2023)
|
2022-01-13 13:54:19 +01:00
|
|
|
- License: MIT
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
|
|
|
See `thorvg/update-thorvg.sh` for extraction instructions. Set the version
|
|
|
|
number and run the script.
|
|
|
|
|
|
|
|
|
2019-04-11 17:30:12 +02:00
|
|
|
## vhacd
|
|
|
|
|
|
|
|
- Upstream: https://github.com/kmammou/v-hacd
|
2021-11-19 12:22:48 +01:00
|
|
|
- Version: git (1a49edf29c69039df15286181f2f27e17ceb9aef, 2020)
|
2019-04-11 17:30:12 +02:00
|
|
|
- License: BSD-3-Clause
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
|
|
|
- From `src/VHACD_Lib/`: `inc`, `public` and `src`
|
|
|
|
- `LICENSE`
|
|
|
|
|
2019-04-11 17:48:49 +02:00
|
|
|
Some downstream changes have been made and are identified by
|
|
|
|
`// -- GODOT start --` and `// -- GODOT end --` comments.
|
|
|
|
They can be reapplied using the patches included in the `vhacd`
|
|
|
|
folder.
|
|
|
|
|
2019-04-11 17:30:12 +02:00
|
|
|
|
2021-08-12 13:24:54 +02:00
|
|
|
## volk
|
|
|
|
|
|
|
|
- Upstream: https://github.com/zeux/volk
|
2023-09-01 11:11:12 +02:00
|
|
|
- Version: sdk-1.3.261.1 (c1fc502109e539078d53c90ee1da9f32abbb0054, 2023)
|
2021-08-12 13:24:54 +02:00
|
|
|
- License: MIT
|
|
|
|
|
2021-09-22 12:40:17 +02:00
|
|
|
Unless there is a specific reason to package a more recent version, please stick
|
|
|
|
to tagged releases. All Vulkan libraries and headers should be kept in sync so:
|
|
|
|
|
|
|
|
- Update Vulkan SDK components to the matching tag (see "vulkan").
|
|
|
|
- Update glslang (see "glslang").
|
|
|
|
- Update spirv-reflect (see "spirv-reflect").
|
|
|
|
|
2021-08-12 13:24:54 +02:00
|
|
|
Files extracted from upstream source:
|
|
|
|
|
|
|
|
- `volk.h`, `volk.c`
|
|
|
|
- `LICENSE.md`
|
|
|
|
|
|
|
|
|
2019-08-05 11:48:54 +02:00
|
|
|
## vulkan
|
|
|
|
|
2021-08-12 13:24:54 +02:00
|
|
|
- Upstream: https://github.com/KhronosGroup/Vulkan-Headers
|
2023-09-01 11:11:12 +02:00
|
|
|
- Version: sdk-1.3.261.1 (85c2334e92e215cce34e8e0ed8b2dce4700f4a50, 2023)
|
2019-08-05 11:48:54 +02:00
|
|
|
- License: Apache 2.0
|
|
|
|
|
2021-09-22 12:40:17 +02:00
|
|
|
The vendored version should be kept in sync with volk, see above.
|
2019-08-05 11:48:54 +02:00
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2021-08-12 13:24:54 +02:00
|
|
|
- `include/`
|
2023-09-01 11:11:12 +02:00
|
|
|
- `LICENSE.md`
|
2019-08-05 11:48:54 +02:00
|
|
|
|
2020-03-09 09:29:14 +01:00
|
|
|
`vk_enum_string_helper.h` is taken from the matching `Vulkan-ValidationLayers`
|
2023-06-06 07:19:51 +02:00
|
|
|
SDK release: https://github.com/KhronosGroup/Vulkan-ValidationLayers/blob/main/layers/vulkan/generated/vk_enum_string_helper.h
|
2020-02-11 14:01:43 +01:00
|
|
|
|
|
|
|
`vk_mem_alloc.h` is taken from https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator
|
2023-09-01 11:11:12 +02:00
|
|
|
Version: git (e88fff957b94f4b541ccac67a4290f07e52aa610), as advised by upstream:
|
|
|
|
https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator/issues/318
|
2021-08-13 00:02:20 +02:00
|
|
|
`vk_mem_alloc.cpp` is a Godot file and should be preserved on updates.
|
2020-02-11 14:01:43 +01:00
|
|
|
|
2022-02-24 12:47:34 +01:00
|
|
|
Patches in the `patches` directory should be re-applied after updates.
|
2020-03-09 15:23:42 +01:00
|
|
|
|
2019-08-05 11:48:54 +02:00
|
|
|
|
2019-07-20 20:47:07 +02:00
|
|
|
## wslay
|
|
|
|
|
|
|
|
- Upstream: https://github.com/tatsuhiro-t/wslay
|
2023-05-22 14:42:26 +02:00
|
|
|
- Version: 1.1.1+git (0e7d106ff89ad6638090fd811a9b2e4c5dda8d40, 2022)
|
2019-07-20 20:47:07 +02:00
|
|
|
- License: MIT
|
|
|
|
|
|
|
|
File extracted from upstream release tarball:
|
|
|
|
|
2021-11-19 13:28:01 +01:00
|
|
|
- Run `cmake .` to generate `config.h` and `wslayver.h`.
|
|
|
|
Contents might need tweaking for Godot, review diff.
|
|
|
|
- All `*.c` and `*.h` files from `lib/`
|
|
|
|
- All `*.h` in `lib/includes/wslay/` as `wslay/`
|
|
|
|
- `wslay/wslay.h` has a small Godot addition to fix MSVC build.
|
|
|
|
See `patches/msvcfix.diff`
|
|
|
|
- `COPYING`
|
2019-07-20 20:47:07 +02:00
|
|
|
|
|
|
|
|
2019-04-19 12:03:12 +02:00
|
|
|
## xatlas
|
|
|
|
|
|
|
|
- Upstream: https://github.com/jpcy/xatlas
|
2023-05-22 14:42:26 +02:00
|
|
|
- Version: git (f700c7790aaa030e794b52ba7791a05c085faf0c, 2022)
|
2019-04-19 12:03:12 +02:00
|
|
|
- License: MIT
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2021-11-19 12:58:56 +01:00
|
|
|
- `source/xatlas/xatlas.{cpp,h}`
|
2019-12-22 11:23:44 +01:00
|
|
|
- `LICENSE`
|
2019-04-19 12:03:12 +02:00
|
|
|
|
|
|
|
|
2016-10-14 18:58:24 +02:00
|
|
|
## zlib
|
|
|
|
|
2022-03-31 14:14:05 +02:00
|
|
|
- Upstream: https://www.zlib.net
|
2023-08-29 11:02:34 +02:00
|
|
|
- Version: 1.3 (2023)
|
2016-10-14 18:58:24 +02:00
|
|
|
- License: zlib
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2023-08-29 11:02:34 +02:00
|
|
|
- All `*.c` and `*.h` files, minus `infback.c`
|
2022-11-30 15:16:31 +01:00
|
|
|
- `LICENSE`
|
2017-06-09 03:43:56 +02:00
|
|
|
|
2017-08-27 12:05:17 +02:00
|
|
|
|
2017-06-09 03:43:56 +02:00
|
|
|
## zstd
|
|
|
|
|
|
|
|
- Upstream: https://github.com/facebook/zstd
|
2023-05-22 14:32:14 +02:00
|
|
|
- Version: 1.5.5 (63779c798237346c2b245c546c40b72a5a5913fe, 2023)
|
2017-06-09 03:43:56 +02:00
|
|
|
- License: BSD-3-Clause
|
|
|
|
|
|
|
|
Files extracted from upstream source:
|
|
|
|
|
2021-11-19 12:54:45 +01:00
|
|
|
- `lib/{common/,compress/,decompress/,zstd.h,zstd_errors.h}`
|
|
|
|
- `LICENSE`
|