Compile fixes for WinRT UWP
This commit is contained in:
@@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
<set name="LIME_CAIRO" value="1" />
|
<set name="LIME_CAIRO" value="1" />
|
||||||
<set name="LIME_CURL" value="1" unless="emscripten" />
|
<set name="LIME_CURL" value="1" unless="emscripten" />
|
||||||
<set name="LIME_EFSW" value="1" if="windows || mac || linux" />
|
<set name="LIME_EFSW" value="1" if="windows || mac || linux" unless="winrt" />
|
||||||
<set name="LIME_JPEG" value="1" />
|
<set name="LIME_JPEG" value="1" />
|
||||||
<!-- <set name="LIME_FAUDIO" value="1" /> -->
|
<!-- <set name="LIME_FAUDIO" value="1" /> -->
|
||||||
<set name="LIME_FREETYPE" value="1" />
|
<set name="LIME_FREETYPE" value="1" />
|
||||||
@@ -18,11 +18,11 @@
|
|||||||
<!-- <set name="LIME_HASHLINK" value="1" if="windows || mac || linux" /> -->
|
<!-- <set name="LIME_HASHLINK" value="1" if="windows || mac || linux" /> -->
|
||||||
<set name="LIME_HASHLINK" value="1" if="hashlink" />
|
<set name="LIME_HASHLINK" value="1" if="hashlink" />
|
||||||
<set name="LIME_LZMA" value="1" />
|
<set name="LIME_LZMA" value="1" />
|
||||||
<set name="LIME_MBEDTLS" value="1" unless="emscripten" />
|
<set name="LIME_MBEDTLS" value="1" unless="emscripten || winrt" />
|
||||||
<!-- <set name="LIME_NEKO" value="1" if="linux" /> -->
|
<!-- <set name="LIME_NEKO" value="1" if="linux" /> -->
|
||||||
<set name="LIME_OGG" value="1" />
|
<set name="LIME_OGG" value="1" />
|
||||||
<set name="LIME_OPENALSOFT" value="1" if="windows || linux || android" unless="static_link" />
|
<set name="LIME_OPENALSOFT" value="1" if="windows || linux || android" unless="static_link" />
|
||||||
<set name="LIME_MOJOAL" value="1" if="switch || static_link || mojoal" />
|
<set name="LIME_MOJOAL" value="1" if="switch || static_link || winrt || mojoal" />
|
||||||
<unset name="LIME_OPENALSOFT" if="LIME_MOJOAL" />
|
<unset name="LIME_OPENALSOFT" if="LIME_MOJOAL" />
|
||||||
<set name="LIME_OPENAL" value="1" if="mac || iphone || emscripten || tvos" />
|
<set name="LIME_OPENAL" value="1" if="mac || iphone || emscripten || tvos" />
|
||||||
<set name="LIME_OPENAL" value="1" if="LIME_OPENALSOFT" />
|
<set name="LIME_OPENAL" value="1" if="LIME_OPENALSOFT" />
|
||||||
@@ -34,7 +34,8 @@
|
|||||||
<!-- <set name="LIME_SDL_ANGLE" value="1" if="windows" unless="static_link" /> -->
|
<!-- <set name="LIME_SDL_ANGLE" value="1" if="windows" unless="static_link" /> -->
|
||||||
<set name="LIME_SDL_ANGLE" value="1" if="windows LIME_SDL_ANGLE" unless="static_link" />
|
<set name="LIME_SDL_ANGLE" value="1" if="windows LIME_SDL_ANGLE" unless="static_link" />
|
||||||
<set name="LIME_SDL_ANGLE" value="1" if="windows angle" unless="static_link" />
|
<set name="LIME_SDL_ANGLE" value="1" if="windows angle" unless="static_link" />
|
||||||
<set name="LIME_TINYFILEDIALOGS" value="1" if="windows || mac || linux" />
|
<set name="LIME_SDL_ANGLE" value="1" if="winrt" unless="static_link" />
|
||||||
|
<set name="LIME_TINYFILEDIALOGS" value="1" if="windows || mac || linux" unless="winrt" />
|
||||||
<set name="LIME_VORBIS" value="1" />
|
<set name="LIME_VORBIS" value="1" />
|
||||||
<!-- <set name="LIME_VPX" value="1" />
|
<!-- <set name="LIME_VPX" value="1" />
|
||||||
<set name="LIME_WEBM" value="1" /> -->
|
<set name="LIME_WEBM" value="1" /> -->
|
||||||
@@ -227,12 +228,14 @@
|
|||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section if="rpi">
|
<section if="rpi">
|
||||||
|
|
||||||
<compilerflag value="-I/opt/vc/include"/>
|
<compilerflag value="-I/opt/vc/include"/>
|
||||||
<compilerflag value="-I/opt/vc/include/interface/vcos/pthreads"/>
|
<compilerflag value="-I/opt/vc/include/interface/vcos/pthreads"/>
|
||||||
<compilerflag value="-I/opt/vc/include/interface/vmcs_host/linux"/>
|
<compilerflag value="-I/opt/vc/include/interface/vmcs_host/linux"/>
|
||||||
<compilerflag value="-lbrcmGLESv2" />
|
<compilerflag value="-lbrcmGLESv2" />
|
||||||
<compilerflag value="-lbrcmEGL" />
|
<compilerflag value="-lbrcmEGL" />
|
||||||
<compilerflag value="-Wl,--no-undefined -lm -L/opt/vc/lib -lbcm_host -ldl -lpthread -lrt" />
|
<compilerflag value="-Wl,--no-undefined -lm -L/opt/vc/lib -lbcm_host -ldl -lpthread -lrt" />
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<compilerflag value="-DLIME_SDL" />
|
<compilerflag value="-DLIME_SDL" />
|
||||||
@@ -394,7 +397,12 @@
|
|||||||
<lib name="wldap32.lib" />
|
<lib name="wldap32.lib" />
|
||||||
<lib name="shell32.lib" />
|
<lib name="shell32.lib" />
|
||||||
<lib name="comdlg32.lib" />
|
<lib name="comdlg32.lib" />
|
||||||
<lib name="comsuppw.lib" />
|
<lib name="comsuppw.lib" unless="winrt" />
|
||||||
|
|
||||||
|
<lib name="D3D11.lib" if="winrt" />
|
||||||
|
<lib name="RuntimeObject.lib" if="winrt" />
|
||||||
|
<lib name="Xinput.lib" if="winrt" />
|
||||||
|
<lib name="DXGI.lib" if="winrt" />
|
||||||
|
|
||||||
<lib name="-libpath:${HLPATH}" if="LIME_HASHLINK" />
|
<lib name="-libpath:${HLPATH}" if="LIME_HASHLINK" />
|
||||||
<lib name="libhl.lib" if="LIME_HASHLINK" />
|
<lib name="libhl.lib" if="LIME_HASHLINK" />
|
||||||
|
|||||||
@@ -42,13 +42,13 @@ namespace lime {
|
|||||||
static std::wstring* GetPlatformName ();
|
static std::wstring* GetPlatformName ();
|
||||||
static std::wstring* GetPlatformVersion ();
|
static std::wstring* GetPlatformVersion ();
|
||||||
static double GetTimer ();
|
static double GetTimer ();
|
||||||
#ifdef HX_WINDOWS
|
#if defined(HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
static int GetWindowsConsoleMode (int handleType);
|
static int GetWindowsConsoleMode (int handleType);
|
||||||
#endif
|
#endif
|
||||||
static void OpenFile (const char* path);
|
static void OpenFile (const char* path);
|
||||||
static void OpenURL (const char* url, const char* target);
|
static void OpenURL (const char* url, const char* target);
|
||||||
static bool SetAllowScreenTimeout (bool allow);
|
static bool SetAllowScreenTimeout (bool allow);
|
||||||
#ifdef HX_WINDOWS
|
#if defined(HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
static bool SetWindowsConsoleMode (int handleType, int mode);
|
static bool SetWindowsConsoleMode (int handleType, int mode);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
Submodule project/lib/freetype updated: e3d968b0bd...9f30656631
Submodule project/lib/sdl updated: 2d67dc5e46...c0b93d9994
@@ -2927,7 +2927,7 @@ namespace lime {
|
|||||||
|
|
||||||
int lime_system_get_windows_console_mode (int handleType) {
|
int lime_system_get_windows_console_mode (int handleType) {
|
||||||
|
|
||||||
#ifdef HX_WINDOWS
|
#if defined (HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
return System::GetWindowsConsoleMode (handleType);
|
return System::GetWindowsConsoleMode (handleType);
|
||||||
#else
|
#else
|
||||||
return 0;
|
return 0;
|
||||||
@@ -2938,7 +2938,7 @@ namespace lime {
|
|||||||
|
|
||||||
HL_PRIM int hl_lime_system_get_windows_console_mode (int handleType) {
|
HL_PRIM int hl_lime_system_get_windows_console_mode (int handleType) {
|
||||||
|
|
||||||
#ifdef HX_WINDOWS
|
#if defined (HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
return System::GetWindowsConsoleMode (handleType);
|
return System::GetWindowsConsoleMode (handleType);
|
||||||
#else
|
#else
|
||||||
return 0;
|
return 0;
|
||||||
@@ -2999,7 +2999,7 @@ namespace lime {
|
|||||||
|
|
||||||
bool lime_system_set_windows_console_mode (int handleType, int mode) {
|
bool lime_system_set_windows_console_mode (int handleType, int mode) {
|
||||||
|
|
||||||
#ifdef HX_WINDOWS
|
#if defined (HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
return System::SetWindowsConsoleMode (handleType, mode);
|
return System::SetWindowsConsoleMode (handleType, mode);
|
||||||
#else
|
#else
|
||||||
return false;
|
return false;
|
||||||
@@ -3010,7 +3010,7 @@ namespace lime {
|
|||||||
|
|
||||||
HL_PRIM bool hl_lime_system_set_windows_console_mode (int handleType, int mode) {
|
HL_PRIM bool hl_lime_system_set_windows_console_mode (int handleType, int mode) {
|
||||||
|
|
||||||
#ifdef HX_WINDOWS
|
#if defined (HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
return System::SetWindowsConsoleMode (handleType, mode);
|
return System::SetWindowsConsoleMode (handleType, mode);
|
||||||
#else
|
#else
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -133,8 +133,8 @@ namespace lime {
|
|||||||
|
|
||||||
#if defined (HX_WINRT)
|
#if defined (HX_WINRT)
|
||||||
|
|
||||||
Windows::Storage::StorageFolder folder = Windows::Storage::KnownFolders::HomeGroup;
|
Windows::Storage::StorageFolder^ folder = Windows::Storage::KnownFolders::HomeGroup;
|
||||||
result = new std::wstring (folder->Begin ());
|
result = new std::wstring (folder->Path->Data ());
|
||||||
|
|
||||||
#elif defined (HX_WINDOWS)
|
#elif defined (HX_WINDOWS)
|
||||||
|
|
||||||
@@ -170,8 +170,8 @@ namespace lime {
|
|||||||
|
|
||||||
#if defined (HX_WINRT)
|
#if defined (HX_WINRT)
|
||||||
|
|
||||||
Windows::Storage::StorageFolder folder = Windows::Storage::KnownFolders::DocumentsLibrary;
|
Windows::Storage::StorageFolder^ folder = Windows::Storage::KnownFolders::DocumentsLibrary;
|
||||||
result = std::wstring (folder->Begin ());
|
result = new std::wstring (folder->Path->Data ());
|
||||||
|
|
||||||
#elif defined (HX_WINDOWS)
|
#elif defined (HX_WINDOWS)
|
||||||
|
|
||||||
@@ -248,8 +248,8 @@ namespace lime {
|
|||||||
|
|
||||||
#if defined (HX_WINRT)
|
#if defined (HX_WINRT)
|
||||||
|
|
||||||
Windows::Storage::StorageFolder folder = Windows::Storage::ApplicationData::Current->RoamingFolder;
|
Windows::Storage::StorageFolder^ folder = Windows::Storage::ApplicationData::Current->RoamingFolder;
|
||||||
result = new std::wstring (folder->Begin ());
|
result = new std::wstring (folder->Path->Data ());
|
||||||
|
|
||||||
#elif defined (HX_WINDOWS)
|
#elif defined (HX_WINDOWS)
|
||||||
|
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ namespace lime {
|
|||||||
if (flags & WINDOW_FLAG_ALWAYS_ON_TOP) sdlWindowFlags |= SDL_WINDOW_ALWAYS_ON_TOP;
|
if (flags & WINDOW_FLAG_ALWAYS_ON_TOP) sdlWindowFlags |= SDL_WINDOW_ALWAYS_ON_TOP;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined (HX_WINDOWS) && defined (NATIVE_TOOLKIT_SDL_ANGLE)
|
#if defined (HX_WINDOWS) && defined (NATIVE_TOOLKIT_SDL_ANGLE) && !defined (HX_WINRT)
|
||||||
OSVERSIONINFOEXW osvi = { sizeof (osvi), 0, 0, 0, 0, {0}, 0, 0 };
|
OSVERSIONINFOEXW osvi = { sizeof (osvi), 0, 0, 0, 0, {0}, 0, 0 };
|
||||||
DWORDLONG const dwlConditionMask = VerSetConditionMask (VerSetConditionMask (VerSetConditionMask (0, VER_MAJORVERSION, VER_GREATER_EQUAL), VER_MINORVERSION, VER_GREATER_EQUAL), VER_SERVICEPACKMAJOR, VER_GREATER_EQUAL);
|
DWORDLONG const dwlConditionMask = VerSetConditionMask (VerSetConditionMask (VerSetConditionMask (0, VER_MAJORVERSION, VER_GREATER_EQUAL), VER_MINORVERSION, VER_GREATER_EQUAL), VER_SERVICEPACKMAJOR, VER_GREATER_EQUAL);
|
||||||
osvi.dwMajorVersion = HIBYTE (_WIN32_WINNT_VISTA);
|
osvi.dwMajorVersion = HIBYTE (_WIN32_WINNT_VISTA);
|
||||||
@@ -164,7 +164,7 @@ namespace lime {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HX_WINDOWS
|
#if defined (HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
|
|
||||||
HINSTANCE handle = ::GetModuleHandle (nullptr);
|
HINSTANCE handle = ::GetModuleHandle (nullptr);
|
||||||
HICON icon = ::LoadIcon (handle, MAKEINTRESOURCE (1));
|
HICON icon = ::LoadIcon (handle, MAKEINTRESOURCE (1));
|
||||||
@@ -309,7 +309,7 @@ namespace lime {
|
|||||||
|
|
||||||
void SDLWindow::Alert (const char* message, const char* title) {
|
void SDLWindow::Alert (const char* message, const char* title) {
|
||||||
|
|
||||||
#ifdef HX_WINDOWS
|
#if defined (HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
|
|
||||||
int count = 0;
|
int count = 0;
|
||||||
int speed = 0;
|
int speed = 0;
|
||||||
|
|||||||
@@ -5311,6 +5311,9 @@ namespace lime {
|
|||||||
|
|
||||||
#ifdef NATIVE_TOOLKIT_SDL_ANGLE
|
#ifdef NATIVE_TOOLKIT_SDL_ANGLE
|
||||||
|
|
||||||
|
#ifdef HX_WINRT
|
||||||
|
return true;
|
||||||
|
#else
|
||||||
OpenGLBindings::eglHandle = LoadLibraryW (L"libegl.dll");
|
OpenGLBindings::eglHandle = LoadLibraryW (L"libegl.dll");
|
||||||
|
|
||||||
if (!OpenGLBindings::eglHandle) {
|
if (!OpenGLBindings::eglHandle) {
|
||||||
@@ -5319,6 +5322,7 @@ namespace lime {
|
|||||||
return result;
|
return result;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ namespace lime {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifdef HX_WINDOWS
|
#if defined (HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
std::wstring* GetWMIValue (BSTR query, BSTR field) {
|
std::wstring* GetWMIValue (BSTR query, BSTR field) {
|
||||||
|
|
||||||
HRESULT hres = 0;
|
HRESULT hres = 0;
|
||||||
@@ -139,7 +139,7 @@ namespace lime {
|
|||||||
|
|
||||||
std::wstring* System::GetDeviceModel () {
|
std::wstring* System::GetDeviceModel () {
|
||||||
|
|
||||||
#ifdef HX_WINDOWS
|
#if defined (HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
return GetWMIValue (bstr_t ("SELECT * FROM Win32_ComputerSystemProduct"), L"Version");
|
return GetWMIValue (bstr_t ("SELECT * FROM Win32_ComputerSystemProduct"), L"Version");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -150,7 +150,7 @@ namespace lime {
|
|||||||
|
|
||||||
std::wstring* System::GetDeviceVendor () {
|
std::wstring* System::GetDeviceVendor () {
|
||||||
|
|
||||||
#ifdef HX_WINDOWS
|
#if defined (HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
return GetWMIValue (bstr_t ("SELECT * FROM Win32_ComputerSystemProduct"), L"Vendor");
|
return GetWMIValue (bstr_t ("SELECT * FROM Win32_ComputerSystemProduct"), L"Vendor");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -161,7 +161,7 @@ namespace lime {
|
|||||||
|
|
||||||
std::wstring* System::GetPlatformLabel () {
|
std::wstring* System::GetPlatformLabel () {
|
||||||
|
|
||||||
#ifdef HX_WINDOWS
|
#if defined (HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
return GetWMIValue (bstr_t ("SELECT * FROM Win32_OperatingSystem"), L"Caption");
|
return GetWMIValue (bstr_t ("SELECT * FROM Win32_OperatingSystem"), L"Caption");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -179,7 +179,7 @@ namespace lime {
|
|||||||
|
|
||||||
std::wstring* System::GetPlatformVersion () {
|
std::wstring* System::GetPlatformVersion () {
|
||||||
|
|
||||||
#ifdef HX_WINDOWS
|
#if defined (HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
return GetWMIValue (bstr_t ("SELECT * FROM Win32_OperatingSystem"), L"Version");
|
return GetWMIValue (bstr_t ("SELECT * FROM Win32_OperatingSystem"), L"Version");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -188,7 +188,7 @@ namespace lime {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifdef HX_WINDOWS
|
#if defined (HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
int System::GetWindowsConsoleMode (int handleType) {
|
int System::GetWindowsConsoleMode (int handleType) {
|
||||||
|
|
||||||
HANDLE handle = GetStdHandle ((DWORD)handleType);
|
HANDLE handle = GetStdHandle ((DWORD)handleType);
|
||||||
@@ -206,7 +206,7 @@ namespace lime {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#ifdef HX_WINDOWS
|
#if defined (HX_WINDOWS) && !defined (HX_WINRT)
|
||||||
bool System::SetWindowsConsoleMode (int handleType, int mode) {
|
bool System::SetWindowsConsoleMode (int handleType, int mode) {
|
||||||
|
|
||||||
HANDLE handle = GetStdHandle ((DWORD)handleType);
|
HANDLE handle = GetStdHandle ((DWORD)handleType);
|
||||||
|
|||||||
@@ -16,6 +16,10 @@
|
|||||||
#include FT_OUTLINE_H
|
#include FT_OUTLINE_H
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef GetGlyphIndices
|
||||||
|
#undef GetGlyphIndices
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
// from http://stackoverflow.com/questions/2948308/how-do-i-read-utf-8-characters-via-a-pointer
|
// from http://stackoverflow.com/questions/2948308/how-do-i-read-utf-8-characters-via-a-pointer
|
||||||
#define IS_IN_RANGE(c, f, l) (((c) >= (f)) && ((c) <= (l)))
|
#define IS_IN_RANGE(c, f, l) (((c) >= (f)) && ((c) <= (l)))
|
||||||
@@ -240,17 +244,17 @@ namespace {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int outline_cubic_to (FVecPtr ctl1, FVecPtr ctl2, FVecPtr to, void *user) {
|
int outline_cubic_to (FVecPtr control1, FVecPtr control2, FVecPtr to, void *user) {
|
||||||
|
|
||||||
glyph *g = static_cast<glyph*> (user);
|
glyph *g = static_cast<glyph*> (user);
|
||||||
|
|
||||||
g->pts.push_back (PT_CUBIC);
|
g->pts.push_back (PT_CUBIC);
|
||||||
g->pts.push_back (ctl1->x - g->x);
|
g->pts.push_back (control1->x - g->x);
|
||||||
g->pts.push_back (ctl1->y - g->y);
|
g->pts.push_back (control1->y - g->y);
|
||||||
g->pts.push_back (ctl2->x - ctl1->x);
|
g->pts.push_back (control2->x - control1->x);
|
||||||
g->pts.push_back (ctl2->y - ctl1->y);
|
g->pts.push_back (control2->y - control1->y);
|
||||||
g->pts.push_back (to->x - ctl2->x);
|
g->pts.push_back (to->x - control2->x);
|
||||||
g->pts.push_back (to->y - ctl2->y);
|
g->pts.push_back (to->y - control2->y);
|
||||||
|
|
||||||
g->x = to->x;
|
g->x = to->x;
|
||||||
g->y = to->y;
|
g->y = to->y;
|
||||||
|
|||||||
@@ -1719,6 +1719,11 @@ class CommandLineTools {
|
|||||||
targetFlags.set ("uwp", "");
|
targetFlags.set ("uwp", "");
|
||||||
targetFlags.set ("winjs", "");
|
targetFlags.set ("winjs", "");
|
||||||
|
|
||||||
|
case "winrt":
|
||||||
|
|
||||||
|
target = Platform.WINDOWS;
|
||||||
|
targetFlags.set ("winrt", "");
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
|
||||||
target = cast targetName.toLowerCase ();
|
target = cast targetName.toLowerCase ();
|
||||||
|
|||||||
@@ -519,7 +519,7 @@ class PlatformSetup {
|
|||||||
|
|
||||||
setupElectron ();
|
setupElectron ();
|
||||||
|
|
||||||
case "windows":
|
case "windows", "winrt":
|
||||||
|
|
||||||
if (PlatformHelper.hostPlatform == Platform.WINDOWS) {
|
if (PlatformHelper.hostPlatform == Platform.WINDOWS) {
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user