-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Minimum tizen shell for x64(pc) #125
Conversation
e42a022
to
1b27461
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I met this error
[3850/5348] CXX obj/third_party/skia/src/core/skia.SkBlitter_ARGB32.o
FAILED: obj/third_party/skia/src/core/skia.SkBlitter_ARGB32.o
../../buildtools/linux-x64/clang/bin/clang++ -MD -MF obj/third_party/skia/src/core/skia.SkBlitter_ARGB32.o.d -DSK_HAS_ANDROID_CODEC -DUSE_OPENSSL=1 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_LIBCPP_DISABLE_AVAILABILITY=1 -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS -D_DEBUG -D_GLIBCXX_DEBUG=1 -DSK_R32_SHIFT=16 -DSK_DISABLE_REDUCE_OPLIST_SPLITTING -DSK_ENABLE_DUMP_GPU -DSK_DISABLE_AAA -DSK_PARAGRAPH_LIBTXT_SPACES_RESOLUTION -DSK_PARAGRAPH_ROUND_POSITION -DSK_DISABLE_LEGACY_SHADERCONTEXT -DSK_DISABLE_LOWP_RASTER_PIPELINE -DSK_FORCE_RASTER_PIPELINE_BLITTER -DSK_GL -DSK_DISABLE_EFFECT_DESERIALIZATION -DSK_GAMMA_APPLY_TO_A8 -DSKIA_IMPLEMENTATION=1 -DSK_GL -DSK_ENABLE_DUMP_GPU -DSK_CODEC_DECODES_JPEG -DSK_ENCODE_JPEG -DSK_CODEC_DECODES_PNG -DSK_ENCODE_PNG -DSK_CODEC_DECODES_WEBP -DSK_ENCODE_WEBP -DSK_HAS_WUFFS_LIBRARY -I../.. -Igen -I../../third_party/libcxx/include -I../../third_party/libcxxabi/include -I../../third_party/libcxxabi/include -I../../third_party/skia -I../../third_party/fontconfig/src -fno-strict-aliasing -fstack-protector --param=ssp-buffer-size=4 -m64 -march=x86-64 -fPIC -pipe -pthread -fcolor-diagnostics -Wall -Wextra -Wendif-labels -Werror -Wno-missing-field-initializers -Wno-unused-parameter -Wno-implicit-int-float-conversion -Wno-c99-designator -Wno-deprecated-copy -Wno-range-loop-construct -fvisibility=hidden --sysroot=/home/boram/Work/f-project/engine/src/build/linux/debian_sid_amd64-sysroot -Wstring-conversion -Wnewline-eof -O0 -g2 -fvisibility-inlines-hidden -std=c++17 -fno-rtti -nostdinc++ -nostdinc++ -fno-exceptions -c ../../third_party/skia/src/core/SkBlitter_ARGB32.cpp -o obj/third_party/skia/src/core/skia.SkBlitter_ARGB32.o
In file included from ../../third_party/skia/src/core/SkBlitter_ARGB32.cpp:10:
../../third_party/skia/include/private/SkVx.h:459:43: error: AVX vector return of type 'VExt<16, unsigned short>' (vector of 16 'unsigned short' values) without 'avx' enabled changes the ABI [-Werror,-Wpsabi]
return to_vec(__builtin_convertvector(to_vext(src), VExt<N,D>))
You add many X64_SHELL pairs of each module now to run test. |
The current work is to create a stub of the module for x64 build. |
Sorry.. I forgot to tell you.. you have to revert the following diff.
|
What is your final goal? Is |
In conclusion, yes(At least that's my plan...) |
e375b8c
to
1402c64
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You might take a look at the gMock documentation (http://google.github.io/googletest/gmock_for_dummies.html) if you haven't.
Linking failed on my laptop.
In my case EFL libs have been installed to |
I really didn't expect that.. 😢 I guess we should use something (like pkg-config) here. |
#include <utils_i18n.h> | ||
#else |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think separating implementation files for device/desktop shells makes the code cleaner and easier to understand: https://github.com/swift-kim/engine/commits/pr/125.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the suggestion. I think that's a good idea.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now, It's applied!
I just found out that the path |
Signed-off-by: MuHong Byun <[email protected]> Use enable_desktop_embeddings instead of embedder_for_pc Signed-off-by: MuHong Byun <[email protected]> Co-authored-by: Swift Kim <[email protected]> Add flutter_tizen_engine TC Signed-off-by: MuHong Byun <[email protected]> Add basic shell for test Signed-off-by: MuHong Byun <[email protected]> Introduce mock_engine for unittest * copied from linux port ('/shell/platform/linux/testing/mock_engine.cc') Signed-off-by: MuHong Byun <[email protected]> Apply review's comment Signed-off-by: MuHong Byun <[email protected]> Code clean-up && Apply review's comment Signed-off-by: MuHong Byun <[email protected]> Clean up shell/platform/tizen/BUILD.gn Signed-off-by: MuHong Byun <[email protected]> Clean up shell/platform/tizen/BUILD.gn #2 Signed-off-by: MuHong Byun <[email protected]> Add EvasGL Helper for x64 shell build * This file is the same file as Evas_GL_GLES3_Helpers.h in tizen. Signed-off-by: MuHong Byun <[email protected]> Fix minor thing * Change ecore lib path at X64 shell * Refactor log function dummy * Apply review's comment Signed-off-by: MuHong Byun <[email protected]>
…op shell depdendencies
* Add log stub Signed-off-by: MuHong Byun <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor points. Thank you.
#ifndef __X64_SHELL__ | ||
gl_context_ = | ||
evas_gl_context_version_create(evas_gl_, NULL, EVAS_GL_GLES_3_X); | ||
gl_resource_context_ = | ||
evas_gl_context_version_create(evas_gl_, gl_context_, EVAS_GL_GLES_3_X); | ||
|
||
#endif |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this mean the desktop shell always falls back to EVAS_GL_GLES_2_X
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's right. I don't know if this is just my problem or evasgl problem... 3.0 doesn't work.
Signed-off-by: MuHong Byun <[email protected]>
Which version should I use? |
In my case, It's |
I got this error Launching a Flutter application...
embedder.cc (939): 'FlutterEngineInitialize' returned 'kInvalidArguments'. Not running in AOT mode but could not resolve the kernel binary.
: %s: %s(%d) > FlutterEngineRun Failure! result: %d(2204910) > FlutterEngineRun Failure! result: 2226933: %s: %s(%d) > Failed to run the Flutter engine.(2159055) > Failed to run the Flutter engine.Could not launch a Flutter application.
Segmentation fault (core dumped)
|
Now. Updated description. Refer to it and run it. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To achieve the purpose of this PR, It would be great if you make sure that show the symbols when debugging.
Reading symbols from ./flutter_tizen_shell...
(No debugging symbols found in ./flutter_tizen_shell)
// This file has same content as tizen's file(Evas_GL_GLES3_Helpers.h). | ||
// https://docs.tizen.org/application/native/api/mobile/6.0/group__Evas__GL__GLES3__Helpers.html |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure, but...I doubt this is for the best. Do we have to do this?
(If I'm not mistaken... is this change added recently?)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well.. I didn't quite understand the your point...
Does your intention mean we shouldn't use that macro in renderers?
I think that this macro could be used because it would improve readability and have no dependencies.
Let me know your concerns & I'll check it!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My intention is that I want to avoid keeping a copy of Evans_GLES3_Helpers.h in engine source tree.
I wonder what other people think about this. @flutter-tizen/maintainers
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is ideal to remove the file from our source tree. Is there any way to do so?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is ideal to remove the file from our source tree. Is there any way to do so?
Remove macro at evasgl renderer? @bbrto21 said to include the path of the tizen sdk... To be honest, I don't know...
IMO, We should make a choice between duplicate
or removing macro
. (I can't think of any good ideas... 😢 )
You can find what you want at this path |
Signed-off-by: MuHong Byun <[email protected]>
This comment has been minimized.
This comment has been minimized.
I guess you & I aren't on same page. I simply wanted to debug it with eclipse on my desktop pc. 😄 |
@bbrto21 From my understanding, the purpose of the x64 shell is not limited to debugging/testing, but ideally it's intended for running general types of applications (including debuggee and unit tests) on desktop. So the default behavior should be stripping out symbols (especially when the shell is built in release mode). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's enough for now. Thanks.
@@ -3,6 +3,7 @@ | |||
# found in the LICENSE file. | |||
|
|||
import("//flutter/common/config.gni") | |||
import("//flutter/shell/platform/config.gni") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unused import.
* Enable x64(pc) build for tizen shell Signed-off-by: MuHong Byun <[email protected]> Use enable_desktop_embeddings instead of embedder_for_pc Signed-off-by: MuHong Byun <[email protected]> Co-authored-by: Swift Kim <[email protected]> Add flutter_tizen_engine TC Signed-off-by: MuHong Byun <[email protected]> Add basic shell for test Signed-off-by: MuHong Byun <[email protected]> Introduce mock_engine for unittest * copied from linux port ('/shell/platform/linux/testing/mock_engine.cc') Signed-off-by: MuHong Byun <[email protected]> Apply review's comment Signed-off-by: MuHong Byun <[email protected]> Code clean-up && Apply review's comment Signed-off-by: MuHong Byun <[email protected]> Clean up shell/platform/tizen/BUILD.gn Signed-off-by: MuHong Byun <[email protected]> Clean up shell/platform/tizen/BUILD.gn #2 Signed-off-by: MuHong Byun <[email protected]> Add EvasGL Helper for x64 shell build * This file is the same file as Evas_GL_GLES3_Helpers.h in tizen. Signed-off-by: MuHong Byun <[email protected]> Fix minor thing * Change ecore lib path at X64 shell * Refactor log function dummy * Apply review's comment Signed-off-by: MuHong Byun <[email protected]> * Add stubs for LocalizationChannel and PlatformChannel * Add SettingsChannel stub * Remove ExternalTexturePixelGL and ExternalTextureSurfaceGL from destkop shell depdendencies * Fix minor thing * Add log stub Signed-off-by: MuHong Byun <[email protected]> * Apply review's comment Signed-off-by: MuHong Byun <[email protected]> * Apply review's comment #2 Signed-off-by: MuHong Byun <[email protected]> Co-authored-by: Swift Kim <[email protected]>
* Enable x64(pc) build for tizen shell Signed-off-by: MuHong Byun <[email protected]> Use enable_desktop_embeddings instead of embedder_for_pc Signed-off-by: MuHong Byun <[email protected]> Co-authored-by: Swift Kim <[email protected]> Add flutter_tizen_engine TC Signed-off-by: MuHong Byun <[email protected]> Add basic shell for test Signed-off-by: MuHong Byun <[email protected]> Introduce mock_engine for unittest * copied from linux port ('/shell/platform/linux/testing/mock_engine.cc') Signed-off-by: MuHong Byun <[email protected]> Apply review's comment Signed-off-by: MuHong Byun <[email protected]> Code clean-up && Apply review's comment Signed-off-by: MuHong Byun <[email protected]> Clean up shell/platform/tizen/BUILD.gn Signed-off-by: MuHong Byun <[email protected]> Clean up shell/platform/tizen/BUILD.gn #2 Signed-off-by: MuHong Byun <[email protected]> Add EvasGL Helper for x64 shell build * This file is the same file as Evas_GL_GLES3_Helpers.h in tizen. Signed-off-by: MuHong Byun <[email protected]> Fix minor thing * Change ecore lib path at X64 shell * Refactor log function dummy * Apply review's comment Signed-off-by: MuHong Byun <[email protected]> * Add stubs for LocalizationChannel and PlatformChannel * Add SettingsChannel stub * Remove ExternalTexturePixelGL and ExternalTextureSurfaceGL from destkop shell depdendencies * Fix minor thing * Add log stub Signed-off-by: MuHong Byun <[email protected]> * Apply review's comment Signed-off-by: MuHong Byun <[email protected]> * Apply review's comment #2 Signed-off-by: MuHong Byun <[email protected]> Co-authored-by: Swift Kim <[email protected]>
* Enable x64(pc) build for tizen shell Signed-off-by: MuHong Byun <[email protected]> Use enable_desktop_embeddings instead of embedder_for_pc Signed-off-by: MuHong Byun <[email protected]> Co-authored-by: Swift Kim <[email protected]> Add flutter_tizen_engine TC Signed-off-by: MuHong Byun <[email protected]> Add basic shell for test Signed-off-by: MuHong Byun <[email protected]> Introduce mock_engine for unittest * copied from linux port ('/shell/platform/linux/testing/mock_engine.cc') Signed-off-by: MuHong Byun <[email protected]> Apply review's comment Signed-off-by: MuHong Byun <[email protected]> Code clean-up && Apply review's comment Signed-off-by: MuHong Byun <[email protected]> Clean up shell/platform/tizen/BUILD.gn Signed-off-by: MuHong Byun <[email protected]> Clean up shell/platform/tizen/BUILD.gn #2 Signed-off-by: MuHong Byun <[email protected]> Add EvasGL Helper for x64 shell build * This file is the same file as Evas_GL_GLES3_Helpers.h in tizen. Signed-off-by: MuHong Byun <[email protected]> Fix minor thing * Change ecore lib path at X64 shell * Refactor log function dummy * Apply review's comment Signed-off-by: MuHong Byun <[email protected]> * Add stubs for LocalizationChannel and PlatformChannel * Add SettingsChannel stub * Remove ExternalTexturePixelGL and ExternalTextureSurfaceGL from destkop shell depdendencies * Fix minor thing * Add log stub Signed-off-by: MuHong Byun <[email protected]> * Apply review's comment Signed-off-by: MuHong Byun <[email protected]> * Apply review's comment #2 Signed-off-by: MuHong Byun <[email protected]> Co-authored-by: Swift Kim <[email protected]>
* Enable x64 (PC) build for tizen shell Add flutter_tizen_engine TC Add basic shell for test Introduce mock_engine for unittest Clean up shell/platform/tizen/BUILD.gn Add EvasGL Helper for x64 shell build * This file is the same file as Evas_GL_GLES3_Helpers.h in tizen. * Add stubs for LocalizationChannel and PlatformChannel * Add SettingsChannel stub * Remove ExternalTexturePixelGL and ExternalTextureSurfaceGL from destkop shell depdendencies * Add log stub * Apply review's comment Signed-off-by: MuHong Byun <[email protected]> Co-authored-by: Swift Kim <[email protected]>
* Enable x64 (PC) build for tizen shell Add flutter_tizen_engine TC Add basic shell for test Introduce mock_engine for unittest Clean up shell/platform/tizen/BUILD.gn Add EvasGL Helper for x64 shell build * This file is the same file as Evas_GL_GLES3_Helpers.h in tizen. * Add stubs for LocalizationChannel and PlatformChannel * Add SettingsChannel stub * Remove ExternalTexturePixelGL and ExternalTextureSurfaceGL from destkop shell depdendencies * Add log stub * Apply review's comment Signed-off-by: MuHong Byun <[email protected]> Co-authored-by: Swift Kim <[email protected]>
* Enable x64 (PC) build for tizen shell Add flutter_tizen_engine TC Add basic shell for test Introduce mock_engine for unittest Clean up shell/platform/tizen/BUILD.gn Add EvasGL Helper for x64 shell build * This file is the same file as Evas_GL_GLES3_Helpers.h in tizen. * Add stubs for LocalizationChannel and PlatformChannel * Add SettingsChannel stub * Remove ExternalTexturePixelGL and ExternalTextureSurfaceGL from destkop shell depdendencies * Add log stub * Apply review's comment Signed-off-by: MuHong Byun <[email protected]> Co-authored-by: Swift Kim <[email protected]>
* Enable x64 (PC) build for tizen shell Add flutter_tizen_engine TC Add basic shell for test Introduce mock_engine for unittest Clean up shell/platform/tizen/BUILD.gn Add EvasGL Helper for x64 shell build * This file is the same file as Evas_GL_GLES3_Helpers.h in tizen. * Add stubs for LocalizationChannel and PlatformChannel * Add SettingsChannel stub * Remove ExternalTexturePixelGL and ExternalTextureSurfaceGL from destkop shell depdendencies * Add log stub * Apply review's comment Signed-off-by: MuHong Byun <[email protected]> Co-authored-by: Swift Kim <[email protected]>
* Enable x64 (PC) build for tizen shell Add flutter_tizen_engine TC Add basic shell for test Introduce mock_engine for unittest Clean up shell/platform/tizen/BUILD.gn Add EvasGL Helper for x64 shell build * Add stubs for LocalizationChannel and PlatformChannel * Add SettingsChannel stub * Remove ExternalTexturePixelGL and ExternalTextureSurfaceGL from destkop shell depdendencies * Add log stub Signed-off-by: MuHong Byun <[email protected]> Co-authored-by: Swift Kim <[email protected]>
* Enable x64 (PC) build for tizen shell Add flutter_tizen_engine TC Add basic shell for test Introduce mock_engine for unittest Clean up shell/platform/tizen/BUILD.gn Add EvasGL Helper for x64 shell build * Add stubs for LocalizationChannel and PlatformChannel * Add SettingsChannel stub * Remove ExternalTexturePixelGL and ExternalTextureSurfaceGL from destkop shell depdendencies * Add log stub Signed-off-by: MuHong Byun <[email protected]> Co-authored-by: Swift Kim <[email protected]>
This is for tizen shell for X64(PC)
This has the following goals:
Prerequisites
You can build it with the following command:
To execute shell, the following tpkroot directory is required.
These files must be obtained from the x64 build on a different port.
You can run x64 shell with following command
Here is sample tpkroot for your convenience.
tpkroot.zip
This is a Hello World sample,
Just Upack it to the path where the shell executable file is located.