Bläddra i källkod

Move other lone thirdparty files to thirdparty/misc

Also move Box2D ConvexDecomposition contrib code to
thirdparty/b2d_convexdecomp.
Rémi Verschelde 8 år sedan
förälder
incheckning
d4029aa51a

+ 1 - 1
core/SCsub

@@ -84,7 +84,7 @@ thirdparty_minizip_sources = [thirdparty_minizip_dir + file for file in thirdpar
 env.add_source_files(env.core_sources, thirdparty_minizip_sources)
 
 
-# Godot's own source
+# Godot's own sources
 env.add_source_files(env.core_sources, "*.cpp")
 
 

+ 9 - 0
drivers/convex_decomp/SCsub

@@ -4,4 +4,13 @@ Import('env')
 
 env.add_source_files(env.drivers_sources, "*.cpp")
 
+# Thirdparty dependencies
+thirdparty_dir = "#thirdparty/b2d_convexdecomp/"
+thirdparty_sources = [
+	"b2Polygon.cpp",
+	"b2Triangle.cpp",
+]
+thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
+env.add_source_files(env.drivers_sources, thirdparty_sources)
+
 Export('env')

+ 2 - 1
drivers/convex_decomp/b2d_decompose.cpp

@@ -28,7 +28,8 @@
 /* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.                */
 /*************************************************************************/
 #include "b2d_decompose.h"
-#include "b2Polygon.h"
+
+#include "thirdparty/b2d_convexdecomp/b2Polygon.h"
 
 namespace b2ConvexDecomp {
 

+ 10 - 1
modules/openssl/SCsub

@@ -677,7 +677,16 @@ if (env['builtin_openssl'] != 'no'):
 
 # Module sources
 env_openssl.add_source_files(env.modules_sources, "*.cpp")
-env_openssl.add_source_files(env.modules_sources, "*.c")
+
+
+# Other thirdparty dependencies
+thirdparty_misc_dir = "#thirdparty/misc/"
+thirdparty_misc_sources = [
+	"curl_hostcheck.c",
+]
+thirdparty_misc_sources = [thirdparty_misc_dir + file for file in thirdparty_misc_sources]
+env_openssl.add_source_files(env.modules_sources, thirdparty_misc_sources)
+
 
 # platform/uwp need to know openssl is available, pass to main env
 if "platform" in env and env["platform"] == "uwp":

+ 4 - 2
modules/openssl/stream_peer_openssl.h

@@ -30,17 +30,19 @@
 #ifndef STREAM_PEER_OPEN_SSL_H
 #define STREAM_PEER_OPEN_SSL_H
 
-#include "curl_hostcheck.h"
 #include "global_config.h"
 #include "io/stream_peer_ssl.h"
 #include "os/file_access.h"
-#include <stdio.h> // If you don't know what this is for stop reading now.
+
+#include "thirdparty/misc/curl_hostcheck.h"
 
 #include <openssl/bio.h> // BIO objects for I/O
 #include <openssl/err.h> // Error reporting
 #include <openssl/ssl.h> // SSL and SSL_CTX for SSL connections
 #include <openssl/x509v3.h>
 
+#include <stdio.h>
+
 class StreamPeerOpenSSL : public StreamPeerSSL {
 private:
 	static int _bio_create(BIO *b);

+ 2 - 1
modules/stb_vorbis/audio_stream_ogg_vorbis.cpp

@@ -30,7 +30,8 @@
 #include "audio_stream_ogg_vorbis.h"
 
 #include "os/file_access.h"
-#include "thirdparty/stb_vorbis/stb_vorbis.c"
+
+#include "thirdparty/misc/stb_vorbis.c"
 
 void AudioStreamPlaybackOGGVorbis::_mix_internal(AudioFrame *p_buffer, int p_frames) {
 

+ 1 - 1
modules/stb_vorbis/audio_stream_ogg_vorbis.h

@@ -34,7 +34,7 @@
 #include "servers/audio/audio_stream.h"
 
 #define STB_VORBIS_HEADER_ONLY
-#include "thirdparty/stb_vorbis/stb_vorbis.c"
+#include "thirdparty/misc/stb_vorbis.c"
 #undef STB_VORBIS_HEADER_ONLY
 
 class AudioStreamOGGVorbis;

+ 2 - 1
modules/theora/video_stream_theora.cpp

@@ -31,7 +31,8 @@
 
 #include "global_config.h"
 #include "os/os.h"
-#include "yuv2rgb.h"
+
+#include "thirdparty/misc/yuv2rgb.h"
 
 int VideoStreamPlaybackTheora::buffer_data() {
 

+ 2 - 1
modules/webm/video_stream_webm.cpp

@@ -32,12 +32,13 @@
 #include "OpusVorbisDecoder.hpp"
 #include "VPXDecoder.hpp"
 
-#include "../theora/yuv2rgb.h"
 #include "mkvparser/mkvparser.h"
 
 #include "global_config.h"
 #include "os/file_access.h"
 
+#include "thirdparty/misc/yuv2rgb.h"
+
 #include <string.h>
 
 class MkvReader : public mkvparser::IMkvReader {

+ 17 - 2
scene/SCsub

@@ -3,10 +3,23 @@
 Import('env')
 
 env.scene_sources = []
+
+
+# Thirdparty code
+thirdparty_dir = "#thirdparty/misc/"
+thirdparty_sources = [
+	# C sources
+	"mikktspace.c",
+]
+thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources]
+env.add_source_files(env.scene_sources, thirdparty_sources)
+
+
+# Godot's own sources
 env.add_source_files(env.scene_sources, "*.cpp")
 
-Export('env')
 
+# Chain load SCsubs
 SConscript('main/SCsub')
 SConscript('gui/SCsub')
 SConscript('3d/SCsub')
@@ -17,6 +30,8 @@ SConscript('resources/SCsub')
 SConscript('io/SCsub')
 
 
+# Build it all as a library
 lib = env.Library("scene", env.scene_sources)
-
 env.Prepend(LIBS=[lib])
+
+Export('env')

+ 0 - 1
scene/resources/SCsub

@@ -3,7 +3,6 @@
 Import('env')
 
 env.add_source_files(env.scene_sources, "*.cpp")
-env.add_source_files(env.scene_sources, "*.c")
 
 Export('env')
 

+ 0 - 1
scene/resources/dynamic_font_stb.cpp

@@ -33,7 +33,6 @@
 
 #define STB_TRUETYPE_IMPLEMENTATION
 #include "os/file_access.h"
-#include "stb_truetype.h"
 
 void DynamicFontData::lock() {
 

+ 2 - 1
scene/resources/dynamic_font_stb.h

@@ -34,7 +34,8 @@
 
 #include "font.h"
 #include "io/resource_loader.h"
-#include "stb_truetype.h"
+
+#include "thirdparty/misc/stb_truetype.h"
 
 class DynamicFontAtSize;
 class DynamicFont;

+ 2 - 1
scene/resources/surface_tool.h

@@ -30,9 +30,10 @@
 #ifndef SURFACE_TOOL_H
 #define SURFACE_TOOL_H
 
-#include "mikktspace.h"
 #include "scene/resources/mesh.h"
 
+#include "thirdparty/misc/mikktspace.h"
+
 class SurfaceTool : public Reference {
 
 	GDCLASS(SurfaceTool, Reference);

+ 36 - 1
thirdparty/README.md

@@ -1,6 +1,13 @@
 # Third party libraries
 
 
+## b2d_convexdecomp
+
+- Upstream: https://github.com/erincatto/Box2D (Contributions/Utilities/ConvexDecomposition)
+- Version: TBD
+- License: zlib
+
+
 ## certs
 
 - Upstream: ?
@@ -158,7 +165,9 @@ TODO: Properly sync with version 1.2.4 and document changes.
 
 ## misc
 
-Collection of single-file libraries used in Godot.
+Collection of single-file libraries used in Godot components.
+
+### core
 
 - `aes256.{cpp,h}`
   * Upstream: http://www.literatecode.com/aes256
@@ -198,6 +207,32 @@ Collection of single-file libraries used in Godot.
   * Version: TBD, class was renamed
   * License: MIT
 
+### modules
+
+- `curl_hostcheck.{c,h}`
+  * Upstream: https://curl.haxx.se/
+  * Version: ? (2013)
+  * License: MIT
+- `yuv2rgb.h`
+  * Upstream: http://wss.co.uk/pinknoise/yuv2rgb/ (to check)
+  * Version: ?
+  * License: BSD
+
+### scene
+
+- `mikktspace.{c,h}`
+  * Upstream: https://wiki.blender.org/index.php/Dev:Shading/Tangent_Space_Normal_Maps
+  * Version: 1.0
+  * License: zlib
+- `stb_truetype.h`
+  * Upstream: https://github.com/nothings/stb
+  * Version: 1.11
+  * License: Public Domain (Unlicense) or MIT
+- `stb_vorbis.c`
+  * Upstream: https://github.com/nothings/stb
+  * Version: 1.09
+  * License: Public Domain (Unlicense) or MIT
+
 
 ## openssl
 

+ 0 - 0
drivers/convex_decomp/b2Glue.h → thirdparty/b2d_convexdecomp/b2Glue.h


+ 0 - 0
drivers/convex_decomp/b2Polygon.cpp → thirdparty/b2d_convexdecomp/b2Polygon.cpp


+ 0 - 0
drivers/convex_decomp/b2Polygon.h → thirdparty/b2d_convexdecomp/b2Polygon.h


+ 0 - 0
drivers/convex_decomp/b2Triangle.cpp → thirdparty/b2d_convexdecomp/b2Triangle.cpp


+ 0 - 0
drivers/convex_decomp/b2Triangle.h → thirdparty/b2d_convexdecomp/b2Triangle.h


+ 0 - 0
modules/openssl/curl_hostcheck.c → thirdparty/misc/curl_hostcheck.c


+ 0 - 0
modules/openssl/curl_hostcheck.h → thirdparty/misc/curl_hostcheck.h


+ 0 - 0
scene/resources/mikktspace.c → thirdparty/misc/mikktspace.c


+ 0 - 0
scene/resources/mikktspace.h → thirdparty/misc/mikktspace.h


+ 0 - 0
scene/resources/stb_truetype.h → thirdparty/misc/stb_truetype.h


+ 0 - 0
thirdparty/stb_vorbis/stb_vorbis.c → thirdparty/misc/stb_vorbis.c


+ 0 - 0
modules/theora/yuv2rgb.h → thirdparty/misc/yuv2rgb.h