prepare skia for shared library build on android
R=borenet@google.com, djsollen@google.com Committed: https://code.google.com/p/skia/source/detail?r=9378 Review URL: https://codereview.chromium.org/15855006 git-svn-id: http://skia.googlecode.com/svn/trunk@9379 2bbb7eff-a529-9590-31e7-b0007b416f81
This commit is contained in:
parent
cf5348f5aa
commit
a96627fd24
2
Makefile
2
Makefile
@ -45,7 +45,7 @@ VALID_TARGETS := \
|
||||
pathops_unittest \
|
||||
SampleApp \
|
||||
SkiaAndroidApp \
|
||||
skia_lib \
|
||||
skia_base_libs \
|
||||
tests \
|
||||
tools
|
||||
|
||||
|
@ -18,7 +18,8 @@
|
||||
'../src/utils/mac/SkOSWindow_Mac.cpp',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'views.gyp:views',
|
||||
'xml.gyp:xml',
|
||||
],
|
||||
|
@ -142,7 +142,9 @@
|
||||
'../samplecode/SampleFontCache.cpp',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'images.gyp:images',
|
||||
'views.gyp:views',
|
||||
'animator.gyp:animator',
|
||||
'xml.gyp:xml',
|
||||
|
@ -25,7 +25,7 @@
|
||||
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'views.gyp:views',
|
||||
'xml.gyp:xml',
|
||||
],
|
||||
|
@ -28,7 +28,9 @@
|
||||
'../experimental/SimpleiOSApp/SimpleiOSApp-Info.plist',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'images.gyp:images',
|
||||
'views.gyp:views',
|
||||
'xml.gyp:xml',
|
||||
],
|
||||
|
@ -17,7 +17,9 @@
|
||||
'bench.gypi'
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'images.gyp:images',
|
||||
'bench_timer',
|
||||
],
|
||||
'conditions': [
|
||||
@ -48,7 +50,7 @@
|
||||
'../src/gpu',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
],
|
||||
'conditions': [
|
||||
[ 'skia_os not in ["mac", "ios"]', {
|
||||
|
@ -39,15 +39,6 @@
|
||||
}],
|
||||
],
|
||||
},
|
||||
# Validate the 'skia_os' setting against 'skia_shared_lib', because shared
|
||||
# library build is only supported on Android.
|
||||
'variables': {
|
||||
'conditions': [
|
||||
[ 'skia_os != "android" and skia_shared_lib', {
|
||||
'error': '<!(Skia shared lib build only currently supported on Android.)',
|
||||
}],
|
||||
],
|
||||
},
|
||||
'includes': [
|
||||
'common_conditions.gypi',
|
||||
],
|
||||
|
@ -326,17 +326,6 @@
|
||||
[ 'skia_profile_enabled == 1', {
|
||||
'cflags': ['-g', '-fno-omit-frame-pointer', '-marm', '-mapcs'],
|
||||
}],
|
||||
[ 'skia_shared_lib', {
|
||||
'cflags': [
|
||||
'-fPIC',
|
||||
],
|
||||
'defines': [
|
||||
'GR_DLL=1',
|
||||
'GR_IMPLEMENTATION=1',
|
||||
'SKIA_DLL',
|
||||
'SKIA_IMPLEMENTATION=1',
|
||||
],
|
||||
}],
|
||||
[ 'skia_arch_type == "arm" and arm_thumb == 1', {
|
||||
'cflags': [
|
||||
'-mthumb',
|
||||
|
@ -90,7 +90,6 @@
|
||||
'skia_osx_sdkroot%': '',
|
||||
'skia_profile_enabled%': 0,
|
||||
'skia_win_debuggers_path%': '',
|
||||
'skia_shared_lib%': 0,
|
||||
},
|
||||
|
||||
'conditions': [
|
||||
@ -122,7 +121,6 @@
|
||||
'skia_gpu%': '<(skia_gpu)',
|
||||
'skia_osx_sdkroot%': '<(skia_osx_sdkroot)',
|
||||
'skia_profile_enabled%': '<(skia_profile_enabled)',
|
||||
'skia_shared_lib%': '<(skia_shared_lib)',
|
||||
'skia_static_initializers%': '<(skia_static_initializers)',
|
||||
'ios_sdk_version%': '6.0',
|
||||
'skia_win_debuggers_path%': '<(skia_win_debuggers_path)',
|
||||
|
@ -76,11 +76,6 @@
|
||||
'config/win',
|
||||
],
|
||||
}],
|
||||
[ 'skia_os == "android"', {
|
||||
'sources': [
|
||||
'../src/core/SkPaintOptionsAndroid.cpp',
|
||||
],
|
||||
}],
|
||||
[ 'skia_os == "android" and skia_arch_type == "arm" and armv7 == 1', {
|
||||
# The code in SkUtilsArm.cpp can be used on an ARM-based Linux system, not only Android.
|
||||
'sources': [
|
||||
@ -125,6 +120,9 @@
|
||||
}],
|
||||
],
|
||||
},
|
||||
'dependencies': [
|
||||
'opts.gyp:opts'
|
||||
],
|
||||
},
|
||||
],
|
||||
}
|
||||
|
@ -94,12 +94,17 @@
|
||||
'../debugger/SkObjectParser.cpp',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'images.gyp:images',
|
||||
'effects.gyp:effects',
|
||||
'bench.gyp:bench_timer',
|
||||
'tools.gyp:picture_renderer',
|
||||
],
|
||||
'conditions': [
|
||||
[ 'skia_os == "nacl"', {
|
||||
'dependencies': [
|
||||
'utils.gyp:utils', # For SkBase64.h
|
||||
],
|
||||
'include_dirs': [
|
||||
'../src/utils',
|
||||
],
|
||||
|
@ -9,10 +9,7 @@
|
||||
'effects.gypi',
|
||||
],
|
||||
'include_dirs': [
|
||||
'../include/config',
|
||||
'../include/core',
|
||||
'../include/effects',
|
||||
'../include/utils',
|
||||
'../src/core',
|
||||
],
|
||||
'direct_dependent_settings': {
|
||||
@ -20,13 +17,15 @@
|
||||
'../include/effects',
|
||||
],
|
||||
},
|
||||
'dependencies': [
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
],
|
||||
'sources': [
|
||||
'effects.gypi', # Makes the gypi appear in IDEs (but does not modify the build).
|
||||
],
|
||||
'conditions': [
|
||||
['skia_gpu == 1', {
|
||||
'include_dirs': [
|
||||
'../include/gpu',
|
||||
'../src/gpu',
|
||||
],
|
||||
}],
|
||||
|
@ -10,7 +10,8 @@
|
||||
'../tools/flags/SkCommandLineFlags.cpp',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'core.gyp:core',
|
||||
],
|
||||
'direct_dependent_settings': {
|
||||
'include_dirs': [
|
||||
|
@ -16,7 +16,7 @@
|
||||
'../gm/gm_expectations.cpp',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'core.gyp:core',
|
||||
'images.gyp:images',
|
||||
'jsoncpp.gyp:jsoncpp',
|
||||
@ -57,11 +57,14 @@
|
||||
'../src/pipe/utils/SamplePipeControllers.cpp',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'flags.gyp:flags',
|
||||
'gm.gyp:gm_expectations',
|
||||
'images.gyp:images',
|
||||
'jsoncpp.gyp:jsoncpp',
|
||||
'pdf.gyp:pdf',
|
||||
'utils.gyp:utils',
|
||||
],
|
||||
'conditions': [
|
||||
['skia_os == "mac"', {
|
||||
|
@ -10,7 +10,7 @@
|
||||
'type': 'none',
|
||||
'dependencies': [
|
||||
# The minimal set of static libraries for basic Skia functionality.
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
|
||||
'bench.gyp:bench',
|
||||
'gm.gyp:gm',
|
||||
|
@ -5,7 +5,7 @@
|
||||
'target_name': 'nacl_interface',
|
||||
'type': 'static_library',
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
],
|
||||
'include_dirs': [
|
||||
# For SkThreadUtils.h
|
||||
|
@ -27,8 +27,11 @@
|
||||
'../tests/Test.h',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'flags.gyp:flags',
|
||||
'images.gyp:images',
|
||||
'utils.gyp:utils',
|
||||
],
|
||||
'conditions': [
|
||||
[ 'skia_gpu == 1', {
|
||||
|
@ -6,7 +6,7 @@
|
||||
'type': 'static_library',
|
||||
'standalone_static_library': 1,
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'zlib.gyp:zlib',
|
||||
],
|
||||
'include_dirs': [
|
||||
|
@ -118,8 +118,10 @@
|
||||
'../../../pixman/pixman/pixman.h',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'experimental.gyp:experimental',
|
||||
'images.gyp:images',
|
||||
'pdf.gyp:pdf',
|
||||
'views.gyp:views',
|
||||
'xml.gyp:xml',
|
||||
|
@ -6,17 +6,18 @@
|
||||
'product_name': 'skia_ports',
|
||||
'type': 'static_library',
|
||||
'standalone_static_library': 1,
|
||||
'dependencies': [
|
||||
'core.gyp:core',
|
||||
'sfnt.gyp:sfnt',
|
||||
'utils.gyp:utils',
|
||||
],
|
||||
'include_dirs': [
|
||||
'../include/config',
|
||||
'../include/core',
|
||||
'../include/effects',
|
||||
'../include/images',
|
||||
'../include/ports',
|
||||
'../include/utils',
|
||||
'../include/xml',
|
||||
'../src/core',
|
||||
'../src/lazy',
|
||||
'../src/sfnt',
|
||||
'../src/utils',
|
||||
],
|
||||
'sources': [
|
||||
|
@ -5,9 +5,10 @@
|
||||
'product_name': 'skia_sfnt',
|
||||
'type': 'static_library',
|
||||
'standalone_static_library': 1,
|
||||
'dependencies': [
|
||||
'core.gyp:core',
|
||||
],
|
||||
'include_dirs': [
|
||||
'../include/config',
|
||||
'../include/core',
|
||||
'../src/sfnt',
|
||||
],
|
||||
'sources': [
|
||||
|
@ -69,7 +69,9 @@
|
||||
'../experimental/Intersection/TriangleUtilities.h',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'images.gyp:images',
|
||||
'views.gyp:views',
|
||||
'xml.gyp:xml',
|
||||
],
|
||||
|
@ -115,7 +115,9 @@
|
||||
'../experimental/Intersection/thingsToDo.txt',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'images.gyp:images',
|
||||
],
|
||||
'conditions': [
|
||||
[ 'skia_gpu == 1', {
|
||||
|
@ -15,15 +15,23 @@
|
||||
'../experimental/Intersection/AddTestOutput/main.cpp',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'core.gyp:core',
|
||||
'effects.gyp:effects',
|
||||
'experimental.gyp:experimental',
|
||||
'images.gyp:images',
|
||||
'ports.gyp:ports',
|
||||
'pdf.gyp:pdf',
|
||||
'utils.gyp:utils',
|
||||
],
|
||||
'conditions': [
|
||||
[ 'skia_gpu == 1', {
|
||||
'include_dirs': [
|
||||
'../src/gpu',
|
||||
],
|
||||
'dependencies': [
|
||||
'gpu.gyp:gr',
|
||||
'gpu.gyp:skgr',
|
||||
],
|
||||
}],
|
||||
],
|
||||
},
|
||||
|
@ -1,14 +1,10 @@
|
||||
# The minimal set of static libraries for basic Skia functionality.
|
||||
|
||||
{
|
||||
'variables': {
|
||||
'component_libs': [
|
||||
'core.gyp:core',
|
||||
'effects.gyp:effects',
|
||||
'images.gyp:images',
|
||||
'opts.gyp:opts',
|
||||
'ports.gyp:ports',
|
||||
'sfnt.gyp:sfnt',
|
||||
'utils.gyp:utils',
|
||||
],
|
||||
'conditions': [
|
||||
@ -37,24 +33,8 @@
|
||||
},
|
||||
'targets': [
|
||||
{
|
||||
'target_name': 'skia_lib',
|
||||
'conditions': [
|
||||
[ 'skia_shared_lib', {
|
||||
'conditions': [
|
||||
[ 'skia_os == "android"', {
|
||||
# The name skia will confuse the linker on android into using the system's libskia.so
|
||||
# instead of the one packaged with the apk. We simply choose a different name to fix
|
||||
# this.
|
||||
'product_name': 'skia_android',
|
||||
}, {
|
||||
'product_name': 'skia',
|
||||
}],
|
||||
],
|
||||
'type': 'shared_library',
|
||||
}, {
|
||||
'type': 'none',
|
||||
}],
|
||||
],
|
||||
'target_name': 'skia_base_libs',
|
||||
'type': 'none',
|
||||
'dependencies': [
|
||||
'<@(component_libs)',
|
||||
],
|
@ -128,11 +128,15 @@
|
||||
'../src/pipe/utils/SamplePipeControllers.cpp',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'flags.gyp:flags',
|
||||
'experimental.gyp:experimental',
|
||||
'images.gyp:images',
|
||||
'pdf.gyp:pdf',
|
||||
'tools.gyp:picture_utils',
|
||||
'utils.gyp:utils',
|
||||
'sfnt.gyp:sfnt',
|
||||
],
|
||||
'conditions': [
|
||||
[ 'skia_gpu == 1', {
|
||||
|
@ -37,7 +37,9 @@
|
||||
'../tools/skdiff_utils.h',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'images.gyp:images',
|
||||
],
|
||||
},
|
||||
{
|
||||
@ -53,7 +55,9 @@
|
||||
'../tools/skdiff_utils.h',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'images.gyp:images',
|
||||
],
|
||||
},
|
||||
{
|
||||
@ -63,8 +67,10 @@
|
||||
'../tools/skhello.cpp',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'flags.gyp:flags',
|
||||
'images.gyp:images',
|
||||
],
|
||||
},
|
||||
{
|
||||
@ -78,9 +84,11 @@
|
||||
'../src/utils/',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'flags.gyp:flags',
|
||||
'gm.gyp:gm_expectations',
|
||||
'images.gyp:images',
|
||||
'jsoncpp.gyp:jsoncpp',
|
||||
'utils.gyp:utils',
|
||||
],
|
||||
@ -94,7 +102,7 @@
|
||||
'../src/utils/SkLua.cpp',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'utils.gyp:utils',
|
||||
'images.gyp:images',
|
||||
@ -115,9 +123,10 @@
|
||||
'../src/pipe/utils/',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'tools.gyp:picture_renderer',
|
||||
'tools.gyp:picture_utils',
|
||||
'ports.gyp:ports',
|
||||
'flags.gyp:flags',
|
||||
],
|
||||
},
|
||||
@ -137,10 +146,12 @@
|
||||
'../src/lazy/',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'tools.gyp:picture_utils',
|
||||
'tools.gyp:picture_renderer',
|
||||
'bench.gyp:bench_timer',
|
||||
'ports.gyp:ports',
|
||||
'flags.gyp:flags',
|
||||
],
|
||||
},
|
||||
@ -163,7 +174,9 @@
|
||||
'../src/utils/',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'images.gyp:images',
|
||||
'tools.gyp:picture_utils',
|
||||
'flags.gyp:flags',
|
||||
],
|
||||
@ -176,6 +189,9 @@
|
||||
},
|
||||
],
|
||||
],
|
||||
'export_dependent_settings': [
|
||||
'images.gyp:images',
|
||||
],
|
||||
},
|
||||
{
|
||||
'target_name': 'render_pdfs',
|
||||
@ -190,8 +206,11 @@
|
||||
'../src/utils/',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'core.gyp:core',
|
||||
'effects.gyp:effects',
|
||||
'images.gyp:images',
|
||||
'pdf.gyp:pdf',
|
||||
'ports.gyp:ports',
|
||||
'tools.gyp:picture_utils',
|
||||
],
|
||||
'conditions': [
|
||||
@ -238,7 +257,7 @@
|
||||
'../tools/picture_utils.h',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
],
|
||||
'direct_dependent_settings': {
|
||||
'include_dirs': [
|
||||
@ -253,7 +272,9 @@
|
||||
'../tools/pinspect.cpp',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'images.gyp:images',
|
||||
],
|
||||
},
|
||||
{
|
||||
@ -275,7 +296,9 @@
|
||||
'../debugger/SkObjectParser.cpp',
|
||||
],
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'effects.gyp:effects',
|
||||
'images.gyp:images',
|
||||
'tools.gyp:picture_utils',
|
||||
],
|
||||
},
|
||||
|
@ -6,7 +6,8 @@
|
||||
'type': 'static_library',
|
||||
'standalone_static_library': 1,
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'skia_base_libs.gyp:skia_base_libs',
|
||||
'images.gyp:images',
|
||||
'sfnt.gyp:sfnt',
|
||||
],
|
||||
'include_dirs': [
|
||||
|
@ -16,7 +16,7 @@ public class SkiaIntentService extends IntentService {
|
||||
public SkiaIntentService() {
|
||||
super("SkiaIntentService");
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public IBinder onBind(Intent arg0) {
|
||||
return null;
|
||||
@ -25,12 +25,12 @@ public class SkiaIntentService extends IntentService {
|
||||
public void onCreate() {
|
||||
super.onCreate();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void onDestroy() {
|
||||
super.onDestroy();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void onHandleIntent(Intent intent) {
|
||||
|
||||
@ -51,11 +51,10 @@ public class SkiaIntentService extends IntentService {
|
||||
String cmd = bundle.getString("args").trim();
|
||||
String[] args = cmd.split("\\s+");
|
||||
Log.d("skia", "Executing Command: " + cmd);
|
||||
|
||||
|
||||
// Load the requested library
|
||||
String lib = args[0];
|
||||
try {
|
||||
System.loadLibrary("skia_android");
|
||||
System.loadLibrary(lib);
|
||||
} catch (UnsatisfiedLinkError e) {
|
||||
Log.e("skia", "Library " + lib +
|
||||
@ -63,7 +62,7 @@ public class SkiaIntentService extends IntentService {
|
||||
SkiaReturn(-1, returnRepeats);
|
||||
throw e;
|
||||
}
|
||||
|
||||
|
||||
// JNI call to run the program
|
||||
int retval = run(args);
|
||||
SkiaReturn(retval, returnRepeats);
|
||||
|
@ -42,7 +42,6 @@ public class SkiaSampleActivity extends Activity
|
||||
mSlideList = new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1);
|
||||
|
||||
try {
|
||||
System.loadLibrary("skia_android");
|
||||
System.loadLibrary("SampleApp");
|
||||
|
||||
LinearLayout holder = (LinearLayout) findViewById(R.id.holder);
|
||||
|
@ -126,7 +126,6 @@ setup_device() {
|
||||
DEFINES="${DEFINES} skia_os=android"
|
||||
DEFINES="${DEFINES} android_base=${SCRIPT_DIR}/.."
|
||||
DEFINES="${DEFINES} android_toolchain=${TOOLCHAIN_TYPE}"
|
||||
DEFINES="${DEFINES} skia_shared_lib=1"
|
||||
|
||||
# Setup the build variation depending on the target device
|
||||
TARGET_DEVICE="$1"
|
||||
|
@ -4,7 +4,6 @@
|
||||
'target_name': 'CopySkiaAppDeps',
|
||||
'type': 'none',
|
||||
'dependencies': [
|
||||
'skia_lib.gyp:skia_lib',
|
||||
'SampleApp.gyp:SampleApp',
|
||||
'bench.gyp:bench',
|
||||
'gm.gyp:gm',
|
||||
@ -57,7 +56,6 @@
|
||||
'<(PRODUCT_DIR)/lib.target/libtests.so',
|
||||
'<(PRODUCT_DIR)/lib.target/libpathops_unittest.so',
|
||||
'<(PRODUCT_DIR)/lib.target/gdbserver',
|
||||
'<(PRODUCT_DIR)/lib.target/libskia_android.so',
|
||||
],
|
||||
},
|
||||
],
|
||||
|
@ -28,29 +28,6 @@ int launch_app(int (*app_main)(int, const char**), int argc,
|
||||
return (*app_main)(argc, argv);
|
||||
}
|
||||
|
||||
void* load_library(const char** argv, const char* libraryName)
|
||||
{
|
||||
// attempt to lookup the location of the shared libraries
|
||||
char libraryLocation[100];
|
||||
sprintf(libraryLocation, "%s/lib/lib%s.so", argv[0], libraryName);
|
||||
if (!file_exists(libraryLocation)) {
|
||||
printf("ERROR: Unable to find the appropriate library in the Skia App.\n");
|
||||
printf("ERROR: Did you provide the correct program_name?\n");
|
||||
usage(argv[0]);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
// load the appropriate library
|
||||
void* appLibrary = dlopen(libraryLocation, RTLD_LOCAL | RTLD_LAZY);
|
||||
if (!appLibrary) {
|
||||
printf("ERROR: Unable to open the shared library.\n");
|
||||
printf("ERROR: %s", dlerror());
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return appLibrary;
|
||||
}
|
||||
|
||||
int main(int argc, const char** argv) {
|
||||
|
||||
// check that the program name was specified
|
||||
@ -67,16 +44,21 @@ int main(int argc, const char** argv) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
// load the local skia shared library
|
||||
void* skiaLibrary = load_library(argv, "libskia_android.so");
|
||||
if (NULL == skiaLibrary)
|
||||
{
|
||||
// attempt to lookup the location of the shared libraries
|
||||
char libraryLocation[100];
|
||||
sprintf(libraryLocation, "%s/lib/lib%s.so", appLocation, argv[1]);
|
||||
if (!file_exists(libraryLocation)) {
|
||||
printf("ERROR: Unable to find the appropriate library in the Skia App.\n");
|
||||
printf("ERROR: Did you provide the correct program_name?\n");
|
||||
usage(argv[0]);
|
||||
return -1;
|
||||
}
|
||||
|
||||
// load the appropriate library
|
||||
void* appLibrary = load_library(argv, argv[1]);
|
||||
if (NULL == appLibrary) {
|
||||
void* appLibrary = dlopen(libraryLocation, RTLD_LOCAL | RTLD_LAZY);
|
||||
if (!appLibrary) {
|
||||
printf("ERROR: Unable to open the shared library.\n");
|
||||
printf("ERROR: %s", dlerror());
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user