From 170127a93e92b06790c10c0c609e1fffec3acb08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=ADn=20Lucas=20Golini?= Date: Sat, 26 Jul 2014 20:54:09 -0300 Subject: [PATCH] Cleaned some warnings from android build. --- include/eepp/version.hpp | 3 + projects/android-project/jni/Android.mk | 178 +++++++++--------- projects/android-project/jni/Application.mk | 27 ++- .../res/drawable-xhdpi/ic_launcher.png | Bin 0 -> 20914 bytes .../res/drawable-xxhdpi/ic_launcher.png | Bin 0 -> 40792 bytes src/eepp/core/version.cpp | 4 + src/eepp/graphics/renderer/renderergles2.cpp | 8 +- src/eepp/network/http.cpp | 2 +- src/eepp/system/log.cpp | 5 +- src/eepp/ui/tools/textureatlasnew.cpp | 2 +- src/eepp/window/backend/SDL2/wminfo.cpp | 4 +- src/eepp/window/window.cpp | 1 + 12 files changed, 119 insertions(+), 115 deletions(-) create mode 100644 projects/android-project/res/drawable-xhdpi/ic_launcher.png create mode 100644 projects/android-project/res/drawable-xxhdpi/ic_launcher.png diff --git a/include/eepp/version.hpp b/include/eepp/version.hpp index b80322d49..9d2077c69 100644 --- a/include/eepp/version.hpp +++ b/include/eepp/version.hpp @@ -42,6 +42,9 @@ class EE_API Version { /** @return The version codename */ static std::string GetCodename(); + + /** @return The build time of the library */ + static std::string GetBuildTime(); }; } diff --git a/projects/android-project/jni/Android.mk b/projects/android-project/jni/Android.mk index 6a84b5098..70f6c7b70 100644 --- a/projects/android-project/jni/Android.mk +++ b/projects/android-project/jni/Android.mk @@ -1,12 +1,12 @@ -LOCAL_PATH := $(call my-dir) -MY_PATH := $(LOCAL_PATH)/../../../src/eepp -INC_PATH := $(LOCAL_PATH)/../../../include -BASE_PATH := $(LOCAL_PATH)/../../../src +LOCAL_PATH := $(call my-dir) +MY_PATH := $(LOCAL_PATH)/../../../src/eepp +INC_PATH := $(LOCAL_PATH)/../../../include +BASE_PATH := $(LOCAL_PATH)/../../../src -MY_SDL_PATH := $(MY_PATH)/helper/SDL2 -MY_SDL_MAIN_PATH := helper/SDL2/src/main/android/*.c +MY_SDL_PATH := $(MY_PATH)/helper/SDL2 +MY_SDL_MAIN_PATH := helper/SDL2/src/main/android/*.c -MY_C_INCLUDES := \ +MY_C_INCLUDES := \ $(MY_PATH)/helper/openal-soft/include/ \ $(MY_PATH)/helper/freetype2/include \ $(MY_SDL_PATH)/include \ @@ -16,34 +16,33 @@ MY_C_INCLUDES := \ $(MY_PATH)/helper/stb_vorbis \ $(INC_PATH)/eepp/helper/chipmunk -MY_C_FLAGS := -Wl,--undefined=Java_org_libsdl_app_SDLActivity_nativeInit \ - -DANDROID \ - -DANDROID_NDK \ - -DDISABLE_IMPORTGL \ - -Wall \ - -Wno-unknown-pragmas \ - $(EE_GLES_VERSION) \ - -DEE_NO_SNDFILE \ - -D$(EE_SDL_VERSION) \ - -I$(INC_PATH) \ - -I$(BASE_PATH) +MY_C_FLAGS := \ + -Wl,--undefined=Java_org_libsdl_app_SDLActivity_nativeInit \ + -DANDROID \ + -DANDROID_NDK \ + -DDISABLE_IMPORTGL \ + -Wall \ + -Wno-unknown-pragmas \ + $(EE_GLES_VERSION) \ + -DEE_NO_SNDFILE \ + -D$(EE_SDL_VERSION) \ + -I$(INC_PATH) \ + -I$(BASE_PATH) -MY_LDLIBS := $(APP_LDLIBS) +MY_LDLIBS := $(APP_LDLIBS) include $(call all-subdir-makefiles) #*************** EEPP *************** include $(CLEAR_VARS) -LOCAL_PATH := $(MY_PATH) +LOCAL_PATH := $(MY_PATH) -LOCAL_MODULE := eepp +LOCAL_MODULE := eepp -LOCAL_LDLIBS := $(MY_LDLIBS) +LOCAL_CFLAGS := $(MY_C_FLAGS) -LOCAL_CFLAGS := $(MY_C_FLAGS) - -CODE_SRCS := \ +CODE_SRCS := \ helper/SOIL2/src/SOIL2/*.c \ helper/stb_vorbis/*.c \ helper/zlib/*.c \ @@ -54,13 +53,14 @@ CODE_SRCS := \ system/*.cpp \ system/platform/posix/*.cpp \ network/*.cpp \ + network/ssl/*.cpp \ + network/ssl/backend/openssl/*.cpp \ network/platform/unix/*.cpp \ core/*.cpp \ math/*.cpp \ audio/*.cpp \ window/*.cpp \ window/backend/SDL2/*.cpp \ - window/backend/allegro5/*.cpp \ window/platform/null/*.cpp \ graphics/*.cpp \ graphics/renderer/*.cpp \ @@ -69,13 +69,13 @@ CODE_SRCS := \ ui/*.cpp \ ui/tools/*.cpp \ gaming/*.cpp \ - gaming/mapeditor/*.cpp \ - -LOCAL_C_INCLUDES := $(MY_C_INCLUDES) + gaming/mapeditor/*.cpp -LOCAL_SRC_FILES := $(foreach F, $(CODE_SRCS), $(addprefix $(dir $(F)),$(notdir $(wildcard $(LOCAL_PATH)/$(F))))) +LOCAL_C_INCLUDES := $(MY_C_INCLUDES) -LOCAL_STATIC_LIBRARIES := openal SDL2 chipmunk freetype +LOCAL_SRC_FILES := $(foreach F, $(CODE_SRCS), $(addprefix $(dir $(F)),$(notdir $(wildcard $(LOCAL_PATH)/$(F))))) + +LOCAL_STATIC_LIBRARIES := openal SDL2 chipmunk freetype include $(BUILD_STATIC_LIBRARY) #*************** EEPP *************** @@ -83,25 +83,24 @@ include $(BUILD_STATIC_LIBRARY) #*************** CHIPMUNK *************** include $(CLEAR_VARS) -LOCAL_PATH := $(MY_PATH) +LOCAL_PATH := $(MY_PATH) -LOCAL_MODULE := chipmunk +LOCAL_MODULE := chipmunk -LOCAL_CFLAGS := -DANDROID_NDK \ - -DDISABLE_IMPORTGL \ - -std=gnu99 \ - -Wall \ - -Wno-unknown-pragmas +LOCAL_CFLAGS := \ + -DANDROID_NDK \ + -DDISABLE_IMPORTGL \ + -std=gnu99 \ + -Wall \ + -Wno-unknown-pragmas -CHIPMUNK_SRCS := \ +CHIPMUNK_SRCS := \ helper/chipmunk/*.c \ - helper/chipmunk/constraints/*.c \ + helper/chipmunk/constraints/*.c -LOCAL_C_INCLUDES := $(MY_C_INCLUDES) +LOCAL_C_INCLUDES := $(MY_C_INCLUDES) -LOCAL_SRC_FILES := $(foreach F, $(CHIPMUNK_SRCS), $(addprefix $(dir $(F)),$(notdir $(wildcard $(LOCAL_PATH)/$(F))))) - -LOCAL_LDLIBS := -lm +LOCAL_SRC_FILES := $(foreach F, $(CHIPMUNK_SRCS), $(addprefix $(dir $(F)),$(notdir $(wildcard $(LOCAL_PATH)/$(F))))) include $(BUILD_STATIC_LIBRARY) #*************** CHIPMUNK *************** @@ -109,16 +108,16 @@ include $(BUILD_STATIC_LIBRARY) #*************** FREETYPE *************** include $(CLEAR_VARS) -LOCAL_PATH := $(MY_PATH)/helper/freetype2 +LOCAL_PATH := $(MY_PATH)/helper/freetype2 -LOCAL_MODULE := freetype +LOCAL_MODULE := freetype -APP_SUBDIRS := $(patsubst $(LOCAL_PATH)/%, %, $(shell find $(LOCAL_PATH)/src -type d)) +APP_SUBDIRS := $(patsubst $(LOCAL_PATH)/%, %, $(shell find $(LOCAL_PATH)/src -type d)) -LOCAL_C_INCLUDES := $(foreach D, $(APP_SUBDIRS), $(LOCAL_PATH)/$(D)) $(LOCAL_PATH)/include -LOCAL_CFLAGS := -Os -DFT2_BUILD_LIBRARY +LOCAL_C_INCLUDES := $(foreach D, $(APP_SUBDIRS), $(LOCAL_PATH)/$(D)) $(LOCAL_PATH)/include +LOCAL_CFLAGS := -Os -DFT2_BUILD_LIBRARY -LOCAL_SRC_FILES += $(foreach F, $(APP_SUBDIRS), $(addprefix $(F)/,$(notdir $(wildcard $(LOCAL_PATH)/$(F)/*.c)))) +LOCAL_SRC_FILES += $(foreach F, $(APP_SUBDIRS), $(addprefix $(F)/,$(notdir $(wildcard $(LOCAL_PATH)/$(F)/*.c)))) include $(BUILD_STATIC_LIBRARY) #*************** FREETYPE *************** @@ -126,17 +125,15 @@ include $(BUILD_STATIC_LIBRARY) #*************** OPENAL ***************** include $(CLEAR_VARS) -LOCAL_PATH := $(MY_PATH)/helper/openal-soft +LOCAL_PATH := $(MY_PATH)/helper/openal-soft -LOCAL_MODULE := openal +LOCAL_MODULE := openal -LOCAL_CFLAGS := -O3 -DHAVE_CONFIG_H -DAL_ALEXT_PROTOTYPES -DHAVE_OPENSL +LOCAL_CFLAGS := -O3 -DHAVE_CONFIG_H -DAL_ALEXT_PROTOTYPES -DHAVE_OPENSL -LOCAL_C_INCLUDES := $(LOCAL_PATH)/ \ - $(LOCAL_PATH)/include \ - $(LOCAL_PATH)/OpenAL32/Include +LOCAL_C_INCLUDES := $(LOCAL_PATH)/ $(LOCAL_PATH)/include $(LOCAL_PATH)/OpenAL32/Include -LOCAL_SRC_FILES := \ +LOCAL_SRC_FILES := \ $(subst $(LOCAL_PATH)/,, \ $(wildcard $(LOCAL_PATH)/OpenAL32/*.c) \ $(wildcard $(LOCAL_PATH)/Alc/AL*.c) \ @@ -153,7 +150,7 @@ LOCAL_SRC_FILES := \ $(LOCAL_PATH)/Alc/backends/null.c \ $(wildcard $(LOCAL_PATH)/src/video/android/*.c)) -LOCAL_LDLIBS := -llog -lOpenSLES +LOCAL_LDLIBS := -llog -lOpenSLES include $(BUILD_SHARED_LIBRARY) #*************** OPENAL ***************** @@ -161,16 +158,15 @@ include $(BUILD_SHARED_LIBRARY) #**************** SDL 2 *************** include $(CLEAR_VARS) -LOCAL_PATH := $(MY_SDL_PATH) +LOCAL_PATH := $(MY_SDL_PATH) -LOCAL_MODULE := SDL2 +LOCAL_MODULE := SDL2 -LOCAL_C_INCLUDES := $(LOCAL_PATH)/include +LOCAL_C_INCLUDES := $(LOCAL_PATH)/include -LOCAL_CFLAGS := -D__ANDROID__ -DANDROID -DGL_GLEXT_PROTOTYPES \ - $(EE_GLES_VERSION) +LOCAL_CFLAGS := -D__ANDROID__ -DANDROID -DGL_GLEXT_PROTOTYPES $(EE_GLES_VERSION) -LOCAL_SRC_FILES := \ +LOCAL_SRC_FILES := \ $(subst $(LOCAL_PATH)/,, \ $(wildcard $(LOCAL_PATH)/src/*.c) \ $(wildcard $(LOCAL_PATH)/src/audio/*.c) \ @@ -180,6 +176,7 @@ LOCAL_SRC_FILES := \ $(LOCAL_PATH)/src/atomic/SDL_spinlock.c.arm \ $(wildcard $(LOCAL_PATH)/src/core/android/*.c) \ $(wildcard $(LOCAL_PATH)/src/cpuinfo/*.c) \ + $(wildcard $(LOCAL_PATH)/src/dynapi/*.c) \ $(wildcard $(LOCAL_PATH)/src/events/*.c) \ $(wildcard $(LOCAL_PATH)/src/file/*.c) \ $(wildcard $(LOCAL_PATH)/src/haptic/*.c) \ @@ -198,9 +195,8 @@ LOCAL_SRC_FILES := \ $(wildcard $(LOCAL_PATH)/src/timer/*.c) \ $(wildcard $(LOCAL_PATH)/src/timer/unix/*.c) \ $(wildcard $(LOCAL_PATH)/src/video/*.c) \ - $(wildcard $(LOCAL_PATH)/src/video/android/*.c)) - -LOCAL_LDLIBS := $(EE_GLES_LINK) -ldl -llog -landroid + $(wildcard $(LOCAL_PATH)/src/video/android/*.c) \ + $(wildcard $(LOCAL_PATH)/src/test/*.c)) include $(BUILD_STATIC_LIBRARY) #**************** SDL 2 *************** @@ -208,23 +204,23 @@ include $(BUILD_STATIC_LIBRARY) #************* empty_window ************* include $(CLEAR_VARS) -LOCAL_PATH := $(MY_PATH) +LOCAL_PATH := $(MY_PATH) -LOCAL_MODULE := empty_window +LOCAL_MODULE := empty_window -LOCAL_LDLIBS := $(MY_LDLIBS) +LOCAL_LDLIBS := $(MY_LDLIBS) -LOCAL_CFLAGS := $(MY_C_FLAGS) +LOCAL_CFLAGS := $(MY_C_FLAGS) -LOCAL_C_INCLUDES := $(MY_C_INCLUDES) +LOCAL_C_INCLUDES := $(MY_C_INCLUDES) -CORE_SRCS := \ +CORE_SRCS := \ $(MY_SDL_MAIN_PATH) \ ../examples/empty_window/*.cpp -LOCAL_SRC_FILES := $(foreach F, $(CORE_SRCS), $(addprefix $(dir $(F)),$(notdir $(wildcard $(LOCAL_PATH)/$(F))))) +LOCAL_SRC_FILES := $(foreach F, $(CORE_SRCS), $(addprefix $(dir $(F)),$(notdir $(wildcard $(LOCAL_PATH)/$(F))))) -LOCAL_STATIC_LIBRARIES := eepp +LOCAL_STATIC_LIBRARIES := eepp include $(BUILD_SHARED_LIBRARY) #************ empty_window ************ @@ -232,23 +228,23 @@ include $(BUILD_SHARED_LIBRARY) #************* external_shader ************* include $(CLEAR_VARS) -LOCAL_PATH := $(MY_PATH) +LOCAL_PATH := $(MY_PATH) -LOCAL_MODULE := external_shader +LOCAL_MODULE := external_shader -LOCAL_LDLIBS := $(MY_LDLIBS) +LOCAL_LDLIBS := $(MY_LDLIBS) -LOCAL_CFLAGS := $(MY_C_FLAGS) +LOCAL_CFLAGS := $(MY_C_FLAGS) -LOCAL_C_INCLUDES := $(MY_C_INCLUDES) +LOCAL_C_INCLUDES := $(MY_C_INCLUDES) -CORE_SRCS := \ +CORE_SRCS := \ $(MY_SDL_MAIN_PATH) \ ../examples/external_shader/*.cpp -LOCAL_SRC_FILES := $(foreach F, $(CORE_SRCS), $(addprefix $(dir $(F)),$(notdir $(wildcard $(LOCAL_PATH)/$(F))))) +LOCAL_SRC_FILES := $(foreach F, $(CORE_SRCS), $(addprefix $(dir $(F)),$(notdir $(wildcard $(LOCAL_PATH)/$(F))))) -LOCAL_STATIC_LIBRARIES := eepp +LOCAL_STATIC_LIBRARIES := eepp include $(BUILD_SHARED_LIBRARY) #************ external_shader ************ @@ -256,23 +252,23 @@ include $(BUILD_SHARED_LIBRARY) #************* full_test ************* include $(CLEAR_VARS) -LOCAL_PATH := $(MY_PATH) +LOCAL_PATH := $(MY_PATH) -LOCAL_MODULE := main +LOCAL_MODULE := main -LOCAL_LDLIBS := $(MY_LDLIBS) +LOCAL_LDLIBS := $(MY_LDLIBS) -LOCAL_CFLAGS := $(MY_C_FLAGS) +LOCAL_CFLAGS := $(MY_C_FLAGS) -LOCAL_C_INCLUDES := $(MY_C_INCLUDES) +LOCAL_C_INCLUDES := $(MY_C_INCLUDES) -CORE_SRCS := \ +CORE_SRCS := \ $(MY_SDL_MAIN_PATH) \ ../test/*.cpp -LOCAL_SRC_FILES := $(foreach F, $(CORE_SRCS), $(addprefix $(dir $(F)),$(notdir $(wildcard $(LOCAL_PATH)/$(F))))) +LOCAL_SRC_FILES := $(foreach F, $(CORE_SRCS), $(addprefix $(dir $(F)),$(notdir $(wildcard $(LOCAL_PATH)/$(F))))) -LOCAL_STATIC_LIBRARIES := eepp +LOCAL_STATIC_LIBRARIES := eepp include $(BUILD_SHARED_LIBRARY) #************ full_test ************ diff --git a/projects/android-project/jni/Application.mk b/projects/android-project/jni/Application.mk index 0dfd22b24..6246e88fb 100644 --- a/projects/android-project/jni/Application.mk +++ b/projects/android-project/jni/Application.mk @@ -1,24 +1,23 @@ -APP_PROJECT_PATH := $(call my-dir)/.. +APP_PROJECT_PATH := $(call my-dir)/.. -EE_SDL_VERSION := EE_SDL_VERSION_2 +EE_SDL_VERSION := EE_SDL_VERSION_2 -EE_GLES_VERSION := -DEE_GLES2 -DSOIL_GLES2 -DSDL_GLES2 -DEE_GLES1 -DSOIL_GLES1 -DSDL_GLES1 -EE_GLES_LINK := -lGLESv2 -lGLESv1_CM +EE_GLES_VERSION := -DEE_GLES2 -DSOIL_GLES2 -DSDL_GLES2 -DEE_GLES1 -DSOIL_GLES1 -DSDL_GLES1 +EE_GLES_LINK := -lGLESv2 -lGLESv1_CM -APP_STL := stlport_static +APP_STL := stlport_static -APP_LDLIBS := -llog $(EE_GLES_LINK) -lm -lz -lOpenSLES -lEGL -landroid +APP_LDLIBS := -llog $(EE_GLES_LINK) -lm -lz -lOpenSLES -lEGL -landroid #Debug Build -#APP_CFLAGS := -g -DDEBUG -DEE_DEBUG -#APP_OPTIM :=debug +#APP_CFLAGS := -g -DDEBUG -DEE_DEBUG +#APP_OPTIM := debug #Release Build -APP_CFLAGS := -fno-strict-aliasing -O3 -s -DNDEBUG -ffast-math +APP_CFLAGS := -fno-strict-aliasing -O3 -s -DNDEBUG -ffast-math -APP_PLATFORM := android-10 -APP_MODULES := main -APP_ABI := armeabi-v7a x86 +APP_PLATFORM := android-10 +APP_MODULES := main +APP_ABI := armeabi-v7a -APP_CPPFLAGS += -Wno-error=format-security -APP_CFLAGS += -Wno-error=format-security +NDK_TOOLCHAIN_VERSION := 4.8 diff --git a/projects/android-project/res/drawable-xhdpi/ic_launcher.png b/projects/android-project/res/drawable-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..e9a354720bdba05348cde5b5d6c80f4a0a6c7075 GIT binary patch literal 20914 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
    }@u3D)S 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 Z{}1^a`tQy>c;)~A002ovPDHLkV1jl0!1n+E literal 0 HcmV?d00001 diff --git a/projects/android-project/res/drawable-xxhdpi/ic_launcher.png b/projects/android-project/res/drawable-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..f23bbff513a5f2561edc86d1bb3604d6f892633f GIT binary patch literal 40792 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 literal 0 HcmV?d00001 diff --git a/src/eepp/core/version.cpp b/src/eepp/core/version.cpp index c6af797f2..133ee7dd4 100644 --- a/src/eepp/core/version.cpp +++ b/src/eepp/core/version.cpp @@ -23,4 +23,8 @@ std::string Version::GetCodename() { return std::string( EEPP_CODENAME ); } +std::string Version::GetBuildTime() { + return std::string( __DATE__ ) + " " + std::string( __TIME__ ); +} + } diff --git a/src/eepp/graphics/renderer/renderergles2.cpp b/src/eepp/graphics/renderer/renderergles2.cpp index c01ff9a50..72afe30ac 100644 --- a/src/eepp/graphics/renderer/renderergles2.cpp +++ b/src/eepp/graphics/renderer/renderergles2.cpp @@ -303,11 +303,11 @@ void RendererGLES2::Enable( unsigned int cap ) { { mPointSpriteEnabled = 1; - cGL::Enable( GL_VERTEX_PROGRAM_POINT_SIZE ); + //cGL::Enable( GL_VERTEX_PROGRAM_POINT_SIZE ); SetShader( EEGLES2_SHADER_POINTSPRITE ); - break; + return; } } @@ -351,11 +351,11 @@ void RendererGLES2::Disable ( unsigned int cap ) { { mPointSpriteEnabled = 0; - cGL::Disable( GL_VERTEX_PROGRAM_POINT_SIZE ); + //cGL::Disable( GL_VERTEX_PROGRAM_POINT_SIZE ); SetShader( EEGLES2_SHADER_BASE ); - break; + return; } } diff --git a/src/eepp/network/http.cpp b/src/eepp/network/http.cpp index d3965c011..45e04a343 100644 --- a/src/eepp/network/http.cpp +++ b/src/eepp/network/http.cpp @@ -164,7 +164,7 @@ void Http::Response::Parse(const std::string& data) { } // Extract the status code from the first line - int status; + int status = InvalidResponse; if (in >> status) { mStatus = static_cast(status); diff --git a/src/eepp/system/log.cpp b/src/eepp/system/log.cpp index c30de4726..3caff59a2 100755 --- a/src/eepp/system/log.cpp +++ b/src/eepp/system/log.cpp @@ -3,7 +3,6 @@ #if EE_PLATFORM == EE_PLATFORM_ANDROID #include - #define ANDROID_LOGI(...) __android_log_print(ANDROID_LOG_INFO , "eepp", __VA_ARGS__) #endif #if defined( EE_COMPILER_MSVC ) @@ -64,7 +63,7 @@ void Log::Write( std::string Text, const bool& newLine ) { if ( mConsoleOutput ) { #if EE_PLATFORM == EE_PLATFORM_ANDROID - ANDROID_LOGI( Text.c_str() ); + __android_log_print( ANDROID_LOG_INFO, "eepp", "%s", Text.c_str() ); #elif defined( EE_COMPILER_MSVC ) OutputDebugString( Text.c_str() ); #else @@ -122,7 +121,7 @@ void Log::Writef( const char* format, ... ) { if ( mConsoleOutput ) { #if EE_PLATFORM == EE_PLATFORM_ANDROID - ANDROID_LOGI( tstr.c_str() ); + __android_log_print( ANDROID_LOG_INFO, "eepp", "%s", tstr.c_str() ); #elif defined( EE_COMPILER_MSVC ) OutputDebugString( tstr.c_str() ); #else diff --git a/src/eepp/ui/tools/textureatlasnew.cpp b/src/eepp/ui/tools/textureatlasnew.cpp index 82bb062fb..9812ffda2 100644 --- a/src/eepp/ui/tools/textureatlasnew.cpp +++ b/src/eepp/ui/tools/textureatlasnew.cpp @@ -121,7 +121,7 @@ void TextureAtlasNew::TextureAtlasSave( const UIEvent * Event ) { std::string FPath( CDL->GetFullPath() ); if ( !FileSystem::IsDirectory( FPath ) ) { - Int32 w,h,b; + Int32 w = 0, h = 0, b; bool Res1 = String::FromString( w, mComboWidth->Text() ); bool Res2 = String::FromString( h, mComboHeight->Text() ); b = static_cast( mPixelSpace->Value() ); diff --git a/src/eepp/window/backend/SDL2/wminfo.cpp b/src/eepp/window/backend/SDL2/wminfo.cpp index 74f0290a3..319382f07 100644 --- a/src/eepp/window/backend/SDL2/wminfo.cpp +++ b/src/eepp/window/backend/SDL2/wminfo.cpp @@ -33,7 +33,10 @@ X11Window WMInfo::GetWindow() { #endif eeWindowHandle WMInfo::GetWindowHandler() { +#if EE_PLATFORM == EE_PLATFORM_WIN || defined( EE_X11_PLATFORM ) || EE_PLATFORM == EE_PLATFORM_MACOSX SDL_SysWMinfo * info = static_cast ( mWMInfo ); +#endif + #if EE_PLATFORM == EE_PLATFORM_WIN return info->info.win.window; #elif defined( EE_X11_PLATFORM ) @@ -45,7 +48,6 @@ eeWindowHandle WMInfo::GetWindowHandler() { #endif } - }}}} #endif diff --git a/src/eepp/window/window.cpp b/src/eepp/window/window.cpp index d1d7de06e..7f52cacb0 100644 --- a/src/eepp/window/window.cpp +++ b/src/eepp/window/window.cpp @@ -378,6 +378,7 @@ void Window::SendVideoResizeCb() { void Window::LogSuccessfulInit(const std::string& BackendName , const std::string&ProcessPath ) { std::string msg( "Engine Initialized Succesfully.\n\tVersion: " + Version::GetVersionName() + " (codename: \"" + Version::GetCodename() + "\")" + + "\n\tBuild time: " + Version::GetBuildTime() + "\n\tOS: " + Sys::GetOSName() + "\n\tArch: " + Sys::GetOSArchitecture() + "\n\tCPU Cores: " + String::ToStr( Sys::GetCPUCount() ) +