First round of changes to make the macOS 64 build work

meow-7.2.2
callum@lindenlab.com 2017-02-24 15:44:36 -08:00
parent bff83a7f41
commit 08940da90e
3 changed files with 33 additions and 24 deletions

View File

@ -93,6 +93,9 @@ if (DARWIN)
LINK_FLAGS "-exported_symbols_list ${CMAKE_CURRENT_SOURCE_DIR}/../base/media_plugin_base.exp"
)
## turns on C++11 using Cmake
target_compile_features(media_plugin_cef PRIVATE cxx_range_for)
add_custom_command(TARGET media_plugin_cef
POST_BUILD COMMAND ${CMAKE_INSTALL_NAME_TOOL} -change "@executable_path/Chromium Embedded Framework"
"@executable_path/../../../../Frameworks/Chromium Embedded Framework.framework/Chromium Embedded Framework"

View File

@ -41,7 +41,6 @@
#include "dullahan.h"
//#include "volume_catcher.h"
////////////////////////////////////////////////////////////////////////////////
//
class MediaPluginCEF :
@ -839,23 +838,23 @@ void MediaPluginCEF::keyEvent(dullahan::EKeyEvent key_event, int key, dullahan::
{
#if LL_DARWIN
if (!native_key_data.has("event_type") ||
!native_key_data.has("event_modifiers") ||
!native_key_data.has("event_keycode") ||
!native_key_data.has("event_isrepeat"))
return;
// if (!native_key_data.has("event_type") ||
// !native_key_data.has("event_modifiers") ||
// !native_key_data.has("event_keycode") ||
// !native_key_data.has("event_isrepeat"))
// return;
uint32_t eventType = native_key_data["event_type"].asInteger();
if (!eventType)
return;
uint32_t eventModifiers = native_key_data["event_modifiers"].asInteger();
uint32_t eventKeycode = native_key_data["event_keycode"].asInteger();
char eventChars = static_cast<char>(native_key_data["event_chars"].isUndefined() ? 0 : native_key_data["event_chars"].asInteger());
char eventUChars = static_cast<char>(native_key_data["event_umodchars"].isUndefined() ? 0 : native_key_data["event_umodchars"].asInteger());
bool eventIsRepeat = native_key_data["event_isrepeat"].asBoolean();
// uint32_t eventType = native_key_data["event_type"].asInteger();
// if (!eventType)
// return;
// uint32_t eventModifiers = native_key_data["event_modifiers"].asInteger();
// uint32_t eventKeycode = native_key_data["event_keycode"].asInteger();
// char eventChars = static_cast<char>(native_key_data["event_chars"].isUndefined() ? 0 : native_key_data["event_chars"].asInteger());
// char eventUChars = static_cast<char>(native_key_data["event_umodchars"].isUndefined() ? 0 : native_key_data["event_umodchars"].asInteger());
// bool eventIsRepeat = native_key_data["event_isrepeat"].asBoolean();
mCEFLib->keyboardEventOSX(eventType, eventModifiers, (eventChars) ? &eventChars : NULL,
(eventUChars) ? &eventUChars : NULL, eventIsRepeat, eventKeycode);
// mCEFLib->keyboardEventOSX(eventType, eventModifiers, (eventChars) ? &eventChars : NULL,
// (eventUChars) ? &eventUChars : NULL, eventIsRepeat, eventKeycode);
#elif LL_WINDOWS
U32 msg = ll_U32_from_sd(native_key_data["msg"]);
@ -871,15 +870,15 @@ void MediaPluginCEF::unicodeInput(const std::string &utf8str, dullahan::EKeyboar
#if LL_DARWIN
//mCEFLib->keyPress(utf8str[0], true);
//mCEFLib->keyboardEvent(dullahan::KE_KEY_DOWN, (uint32_t)(utf8str[0]), 0, dullahan::KM_MODIFIER_NONE, 0, 0, 0);
if (!native_key_data.has("event_chars") || !native_key_data.has("event_umodchars") ||
!native_key_data.has("event_keycode") || !native_key_data.has("event_modifiers"))
return;
uint32_t unicodeChar = native_key_data["event_chars"].asInteger();
uint32_t unmodifiedChar = native_key_data["event_umodchars"].asInteger();
uint32_t keyCode = native_key_data["event_keycode"].asInteger();
uint32_t rawmodifiers = native_key_data["event_modifiers"].asInteger();
// if (!native_key_data.has("event_chars") || !native_key_data.has("event_umodchars") ||
// !native_key_data.has("event_keycode") || !native_key_data.has("event_modifiers"))
// return;
// uint32_t unicodeChar = native_key_data["event_chars"].asInteger();
// uint32_t unmodifiedChar = native_key_data["event_umodchars"].asInteger();
// uint32_t keyCode = native_key_data["event_keycode"].asInteger();
// uint32_t rawmodifiers = native_key_data["event_modifiers"].asInteger();
mCEFLib->injectUnicodeText(unicodeChar, unmodifiedChar, keyCode, rawmodifiers);
// CP removed to build mCEFLib->injectUnicodeText(unicodeChar, unmodifiedChar, keyCode, rawmodifiers);
#elif LL_WINDOWS
U32 msg = ll_U32_from_sd(native_key_data["msg"]);

View File

@ -858,6 +858,13 @@ class DarwinManifest(ViewerManifest):
self.end_prefix()
# the helper app needs to have it's @executable_path modified to point to the
# same location we drop the CEF framework shortcut
helperexecutablepath = self.dst_path_of('SLPlugin.app/Contents/Frameworks/DullahanHelper.app/Contents/MacOS/DullahanHelper')
self.run_command('install_name_tool -change '
'"@executable_path/Chromium Embedded Framework" '
'"@executable_path/Frameworks/Chromium Embedded Framework.framework/Chromium Embedded Framework" "%s"' % helperexecutablepath)
# SLPlugin plugins
if self.prefix(src="", dst="llplugin"):
self.path2basename("../media_plugins/cef/" + self.args['configuration'],