diff options
Diffstat (limited to 'platform/server')
-rw-r--r-- | platform/server/SCsub | 8 | ||||
-rw-r--r-- | platform/server/detect.py | 125 | ||||
-rw-r--r-- | platform/server/godot_server.cpp | 2 | ||||
-rw-r--r-- | platform/server/os_server.cpp | 20 | ||||
-rw-r--r-- | platform/server/os_server.h | 4 | ||||
-rw-r--r-- | platform/server/platform_config.h | 2 |
6 files changed, 102 insertions, 59 deletions
diff --git a/platform/server/SCsub b/platform/server/SCsub index 3dda6b4395..30195bb908 100644 --- a/platform/server/SCsub +++ b/platform/server/SCsub @@ -1,8 +1,10 @@ +#!/usr/bin/env python + Import('env') -common_server=[\ - "os_server.cpp",\ +common_server = [\ + "os_server.cpp",\ ] -env.Program('#bin/godot_server',['godot_server.cpp']+common_server) +env.Program('#bin/godot_server', ['godot_server.cpp'] + common_server) diff --git a/platform/server/detect.py b/platform/server/detect.py index e6fab2043b..8bc85f342d 100644 --- a/platform/server/detect.py +++ b/platform/server/detect.py @@ -4,77 +4,116 @@ import sys def is_active(): - return True + return True + def get_name(): - return "Server" + return "Server" def can_build(): - if (os.name!="posix"): - return False + if (os.name != "posix"): + return False + + return True # enabled - return True # enabled def get_opts(): - return [ - ('use_llvm','Use llvm compiler','no'), - ('force_32_bits','Force 32 bits binary','no') - ] + return [ + ('use_llvm', 'Use llvm compiler', 'no'), + ('force_32_bits', 'Force 32 bits binary', 'no') + ] -def get_flags(): - return [ - ('builtin_zlib', 'no'), - ] +def get_flags(): + return [ + ] def configure(env): - env.Append(CPPPATH=['#platform/server']) - if (env["use_llvm"]=="yes"): - env["CC"]="clang" - env["CXX"]="clang++" - env["LD"]="clang++" - if (env["colored"]=="yes"): - if sys.stdout.isatty(): - env.Append(CXXFLAGS=["-fcolor-diagnostics"]) + env.Append(CPPPATH=['#platform/server']) + if (env["use_llvm"] == "yes"): + env["CC"] = "clang" + env["CXX"] = "clang++" + env["LD"] = "clang++" + + is64 = sys.maxsize > 2**32 + + if (env["bits"] == "default"): + if (is64): + env["bits"] = "64" + else: + env["bits"] = "32" + + # if (env["tools"]=="no"): + # #no tools suffix + # env['OBJSUFFIX'] = ".nt"+env['OBJSUFFIX'] + # env['LIBSUFFIX'] = ".nt"+env['LIBSUFFIX'] + + if (env["target"] == "release"): + + env.Append(CCFLAGS=['-O2', '-ffast-math', '-fomit-frame-pointer']) + + elif (env["target"] == "release_debug"): + + env.Append(CCFLAGS=['-O2', '-ffast-math', '-DDEBUG_ENABLED']) + + elif (env["target"] == "debug"): + + env.Append(CCFLAGS=['-g2', '-Wall', '-DDEBUG_ENABLED', '-DDEBUG_MEMORY_ENABLED']) + + + # Shared libraries, when requested + + if (env['builtin_openssl'] == 'no'): + env.ParseConfig('pkg-config openssl --cflags --libs') - is64=sys.maxsize > 2**32 + if (env['builtin_libwebp'] == 'no'): + env.ParseConfig('pkg-config libwebp --cflags --libs') - if (env["bits"]=="default"): - if (is64): - env["bits"]="64" - else: - env["bits"]="32" + if (env['builtin_freetype'] == 'no'): + env.ParseConfig('pkg-config freetype2 --cflags --libs') + if (env['builtin_libpng'] == 'no'): + env.ParseConfig('pkg-config libpng --cflags --libs') - #if (env["tools"]=="no"): - # #no tools suffix - # env['OBJSUFFIX'] = ".nt"+env['OBJSUFFIX'] - # env['LIBSUFFIX'] = ".nt"+env['LIBSUFFIX'] + if (env['builtin_enet'] == 'no'): + env.ParseConfig('pkg-config libenet --cflags --libs') + if (env['builtin_squish'] == 'no' and env["tools"] == "yes"): + env.ParseConfig('pkg-config libsquish --cflags --libs') - if (env["target"]=="release"): + # Sound and video libraries + # Keep the order as it triggers chained dependencies (ogg needed by others, etc.) - env.Append(CCFLAGS=['-O2','-ffast-math','-fomit-frame-pointer']) + if (env['builtin_libtheora'] == 'no'): + env['builtin_libogg'] = 'no' # Needed to link against system libtheora + env['builtin_libvorbis'] = 'no' # Needed to link against system libtheora + env.ParseConfig('pkg-config theora theoradec --cflags --libs') - elif (env["target"]=="release_debug"): + if (env['builtin_libvpx'] == 'no'): + env.ParseConfig('pkg-config vpx --cflags --libs') - env.Append(CCFLAGS=['-O2','-ffast-math','-DDEBUG_ENABLED']) + if (env['builtin_libvorbis'] == 'no'): + env['builtin_libogg'] = 'no' # Needed to link against system libvorbis + env.ParseConfig('pkg-config vorbis vorbisfile --cflags --libs') - elif (env["target"]=="debug"): + if (env['builtin_opus'] == 'no'): + env['builtin_libogg'] = 'no' # Needed to link against system opus + env.ParseConfig('pkg-config opus opusfile --cflags --libs') - env.Append(CCFLAGS=['-g2', '-Wall','-DDEBUG_ENABLED','-DDEBUG_MEMORY_ENABLED']) + if (env['builtin_libogg'] == 'no'): + env.ParseConfig('pkg-config ogg --cflags --libs') - env.Append(CPPFLAGS=['-DSERVER_ENABLED','-DUNIX_ENABLED']) - env.Append(LIBS=['pthread','z']) #TODO detect linux/BSD! - if (env["CXX"]=="clang++"): - env.Append(CPPFLAGS=['-DTYPED_METHOD_BIND']) - env["CC"]="clang" - env["LD"]="clang++" + env.Append(CPPFLAGS=['-DSERVER_ENABLED', '-DUNIX_ENABLED']) + env.Append(LIBS=['pthread', 'z']) # TODO detect linux/BSD! + if (env["CXX"] == "clang++"): + env.Append(CPPFLAGS=['-DTYPED_METHOD_BIND']) + env["CC"] = "clang" + env["LD"] = "clang++" diff --git a/platform/server/godot_server.cpp b/platform/server/godot_server.cpp index 1c55c03bd7..37e73d663d 100644 --- a/platform/server/godot_server.cpp +++ b/platform/server/godot_server.cpp @@ -5,7 +5,7 @@ /* GODOT ENGINE */ /* http://www.godotengine.org */ /*************************************************************************/ -/* Copyright (c) 2007-2016 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/server/os_server.cpp b/platform/server/os_server.cpp index 5404980ff3..6b91a5ce77 100644 --- a/platform/server/os_server.cpp +++ b/platform/server/os_server.cpp @@ -5,7 +5,7 @@ /* GODOT ENGINE */ /* http://www.godotengine.org */ /*************************************************************************/ -/* Copyright (c) 2007-2016 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -26,8 +26,8 @@ /* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */ /* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ /*************************************************************************/ -#include "servers/visual/visual_server_raster.h" -#include "servers/visual/rasterizer_dummy.h" +//#include "servers/visual/visual_server_raster.h" +//#include "servers/visual/rasterizer_dummy.h" #include "os_server.h" #include <stdio.h> #include <stdlib.h> @@ -57,9 +57,9 @@ void OS_Server::initialize(const VideoMode& p_desired,int p_video_driver,int p_a current_videomode=p_desired; main_loop=NULL; - rasterizer = memnew( RasterizerDummy ); + //rasterizer = memnew( RasterizerDummy ); - visual_server = memnew( VisualServerRaster(rasterizer) ); + //visual_server = memnew( VisualServerRaster(rasterizer) ); AudioDriverManagerSW::get_driver(p_audio_driver)->set_singleton(); @@ -103,9 +103,11 @@ void OS_Server::finalize() { spatial_sound_2d_server->finish(); memdelete(spatial_sound_2d_server); - //if (debugger_connection_console) { -// memdelete(debugger_connection_console); -//} + /* + if (debugger_connection_console) { + memdelete(debugger_connection_console); + } + */ memdelete(sample_manager); @@ -114,7 +116,7 @@ void OS_Server::finalize() { visual_server->finish(); memdelete(visual_server); - memdelete(rasterizer); + //memdelete(rasterizer); physics_server->finish(); memdelete(physics_server); diff --git a/platform/server/os_server.h b/platform/server/os_server.h index 2081d5f2f4..f7fe586b1b 100644 --- a/platform/server/os_server.h +++ b/platform/server/os_server.h @@ -5,7 +5,7 @@ /* GODOT ENGINE */ /* http://www.godotengine.org */ /*************************************************************************/ -/* Copyright (c) 2007-2016 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -51,7 +51,7 @@ class OS_Server : public OS_Unix { - Rasterizer *rasterizer; + //Rasterizer *rasterizer; VisualServer *visual_server; VideoMode current_videomode; List<String> args; diff --git a/platform/server/platform_config.h b/platform/server/platform_config.h index 143f16c1fa..cdef185ff0 100644 --- a/platform/server/platform_config.h +++ b/platform/server/platform_config.h @@ -5,7 +5,7 @@ /* GODOT ENGINE */ /* http://www.godotengine.org */ /*************************************************************************/ -/* Copyright (c) 2007-2016 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ |