のねのBlog

パソコンの問題や、ソフトウェアの開発で起きた問題など書いていきます。よろしくお願いします^^。

ViewStateSerializer.cppコンパイルオプション

ACCELERATED_COMPOSITINGは、どこで設定するんだろ?
Cross Reference: /external/webkit/Android.mk

ViewStateSerializer.cppをコンパイルするとき、
ACCELERATED_COMPOSITINGが、有効か無効かわからないため、
LayerAndroid.hが、どのような内容になるかわからなかった。

そこで、LayerAndroid.hヘッダのACCELERATED_COMPOSITINGが、
コンパイル時に有効になるか無効になるか確認するため、
コンパイル時のコマンドのログを取った。(showcommands)

make -j4 showcommands 2>&1 |tee make.log

コンパイルオプションで定義されていたのは以下のものだった。
ACCELERATED_COMPOSITTINGは、定義されていなかった。

  • DANDROID
  • DNDEBUG
  • UDEBUG
  • DWEBKIT_IMPLEMENTATION=1
  • DWTF_USE_V8=1
  • DENABLE_WEB_AUTOFILL
  • DGOOGLEURL -DGL_GLEXT_PROTOTYPES
  • DEGL_EGLEXT_PROTOTYPES
  • Darm
  • DANDROID_LARGE_MEMORY_DEVICE
  • DENABLE_SVG=1
  • DENABLE_SVG_ANIMATION=1
  • DSUPPORT_COMPLEX_SCRIPTS=1

実際の詳細オプションは以下の通りです。

/external/webkit/Source/WebCore/platform/graphics/android/layers/LayerAndroid.h
#if USE(ACCELERATED_COMPOSITING)

prebuilts/misc/linux-x86/ccache/ccache prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/arm-linux-androideabi-g++ 
-I bionic -I external/stlport/stlport 
-I libnativehelper/include/nativehelper 
-I external/webkit/Source/WebKit/android/icu 
-I external/ 
-I external/icu4c/common 
-I external/icu4c/i18n 
-I external/jpeg 
-I external/libxml2/include 
-I external/libxslt -I external/hyphenation 
-I external/skia/emoji 
-I external/skia/gpu/include 
-I external/skia/include/core 
-I external/skia/include/effects 
-I external/skia/include/gpu 
-I external/skia/include/images 
-I external/skia/include/ports 
-I external/skia/include/utils 
-I external/skia/src/ports 
-I external/sqlite/dist 
-I frameworks/base/core/jni/android/graphics 
-I frameworks/base/include 
-I external/webkit/Source 
-I external/webkit/Source/WebCore 
-I external/webkit/Source/WebCore/accessibility 
-I external/webkit/Source/WebCore/bindings/ 
-I external/webkit/Source/WebCore/bindings/generic 
-I external/webkit/Source/WebCore/css 
-I external/webkit/Source/WebCore/dom 
-I external/webkit/Source/WebCore/editing 
-I external/webkit/Source/WebCore/fileapi 
-I external/webkit/Source/WebCore/history 
-I external/webkit/Source/WebCore/history/android 
-I external/webkit/Source/WebCore/html 
-I external/webkit/Source/WebCore/html/canvas 
-I external/webkit/Source/WebCore/html/parser 
-I external/webkit/Source/WebCore/html/shadow 
-I external/webkit/Source/WebCore/inspector 
-I external/webkit/Source/WebCore/loader 
-I external/webkit/Source/WebCore/loader/appcache 
-I external/webkit/Source/WebCore/loader/archive 
-I external/webkit/Source/WebCore/loader/archive/android 
-I external/webkit/Source/WebCore/loader/cache 
-I external/webkit/Source/WebCore/loader/icon 
-I external/webkit/Source/WebCore/notifications 
-I external/webkit/Source/WebCore/page 
-I external/webkit/Source/WebCore/page/android 
-I external/webkit/Source/WebCore/page/animation 
-I external/webkit/Source/WebCore/platform 
-I external/webkit/Source/WebCore/platform/android 
-I external/webkit/Source/WebCore/platform/animation 
-I external/webkit/Source/WebCore/platform/graphics 
-I external/webkit/Source/WebCore/platform/graphics/android 
-I external/webkit/Source/WebCore/platform/graphics/android/context 
-I external/webkit/Source/WebCore/platform/graphics/android/fonts 
-I external/webkit/Source/WebCore/platform/graphics/android/layers 
-I external/webkit/Source/WebCore/platform/graphics/android/rendering 
-I external/webkit/Source/WebCore/platform/graphics/android/utils 
-I external/webkit/Source/WebCore/platform/graphics/filters 
-I external/webkit/Source/WebCore/platform/graphics/gpu 
-I external/webkit/Source/WebCore/platform/graphics/network 
-I external/webkit/Source/WebCore/platform/graphics/skia 
-I external/webkit/Source/WebCore/platform/graphics/transforms 
-I external/webkit/Source/WebCore/platform/image-decoders 
-I external/webkit/Source/WebCore/platform/image-decoders/bmp 
-I external/webkit/Source/WebCore/platform/image-decoders/gif 
-I external/webkit/Source/WebCore/platform/image-decoders/ico 
-I external/webkit/Source/WebCore/platform/image-decoders/jpeg 
-I external/webkit/Source/WebCore/platform/image-decoders/png 
-I external/webkit/Source/WebCore/platform/image-decoders/webp 
-I external/webkit/Source/WebCore/platform/mock 
-I external/webkit/Source/WebCore/platform/network 
-I external/webkit/Source/WebCore/platform/network/android 
-I external/webkit/Source/WebCore/platform/sql 
-I external/webkit/Source/WebCore/platform/text 
-I external/webkit/Source/WebCore/platform/text/transcoder 
-I external/webkit/Source/WebCore/plugins 
-I external/webkit/Source/WebCore/plugins/android 
-I external/webkit/Source/WebCore/rendering 
-I external/webkit/Source/WebCore/rendering/style 
-I external/webkit/Source/WebCore/rendering/svg 
-I external/webkit/Source/WebCore/storage 
-I external/webkit/Source/WebCore/svg 
-I external/webkit/Source/WebCore/svg/animation 
-I external/webkit/Source/WebCore/svg/graphics 
-I external/webkit/Source/WebCore/svg/graphics/filters 
-I external/webkit/Source/WebCore/svg/properties 
-I external/webkit/Source/WebCore/websockets 
-I external/webkit/Source/WebCore/workers 
-I external/webkit/Source/WebCore/xml 
-I external/webkit/Source/WebKit/android 
-I external/webkit/Source/WebKit/android/WebCoreSupport 
-I external/webkit/Source/WebKit/android/jni 
-I external/webkit/Source/WebKit/android/nav 
-I external/webkit/Source/WebKit/android/plugins 
-I external/webkit/Source/JavaScriptCore 
-I external/webkit/Source/JavaScriptCore/collector/handles 
-I external/webkit/Source/JavaScriptCore/heap 
-I external/webkit/Source/JavaScriptCore/wtf 
-I external/webkit/Source/JavaScriptCore/wtf/unicode 
-I external/webkit/Source/JavaScriptCore/wtf/unicode/icu 
-I out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore 
-I out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/css 
-I out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/html 
-I out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/platform 
-I out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/xml 
-I external/webkit/Source/WebKit/chromium 
-I external/webkit/Source/WebKit/chromium/public 
-I external/chromium/chrome/browser 
-I external/chromium/chrome/renderer 
-I external/chromium 
-I external/chromium/chrome 
-I external/skia 
-I external/v8/include 
-I external/webkit/Source/WebCore/bindings/v8 
-I external/webkit/Source/WebCore/bindings/v8/custom 
-I external/webkit/Source/WebCore/bindings/v8/specialization 
-I external/webkit/Source/WebCore/bridge 
-I external/webkit/Source/WebCore/bridge/jni 
-I external/webkit/Source/WebCore/bridge/jni/v8 
-I external/webkit/Source/WebCore/bridge/jsc 
-I out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/bindings 
-I out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/svg 
-I out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/JavaScriptCore 
-I external/openssl/include 
-I libcore/include 
-I external/chromium/android 
-I external/harfbuzz/src 
-I external/harfbuzz/contrib 
-I external/webkit 
-I out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates 
-I libnativehelper/include/nativehelper @out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/import_includes 
-isystem system/core/include -isystem hardware/libhardware/include 
-isystem hardware/libhardware_legacy/include 
-isystem hardware/ril/include 
-isystem libnativehelper/include 
-isystem frameworks/native/include 
-isystem frameworks/native/opengl/include 
-isystem frameworks/av/include -isystem frameworks/base/opengl/include 
-isystem external/skia/include 
-isystem out/target/product/generic/obj/include 
-isystem bionic/libc/arch-arm/include 
-isystem bionic/libc/include 
-isystem bionic/libstdc++/include 
-isystem bionic/libc/kernel/common 
-isystem bionic/libc/kernel/arch-arm 
-isystem bionic/libm/include 
-isystem bionic/libm/include/arm 
-isystem bionic/libthread_db/include 
-c  
-fno-exceptions 
-Wno-multichar -msoft-float 
-fpic 
-fPIE 
-ffunction-sections 
-fdata-sections 
-funwind-tables 
-fstack-protector 
-Wa,--noexecstack 
-Werror=format-security 
-fno-short-enums 
-march=armv7-a 
-mfloat-abi=softfp 
-mfpu=vfpv3-d16 
-include system/core/include/arch/linux-arm/AndroidConfig.h 
-I system/core/include/arch/linux-arm/ 
-Wno-unused-but-set-variable 
-fno-builtin-sin 
-fno-strict-volatile-bitfields 
-Wno-psabi 
-mthumb-interwork 
-DANDROID 
-fmessage-length=0 
-W 
-Wall 
-Wno-unused 
-Winit-self 
-Wpointer-arith 
-Werror=return-type 
-Werror=non-virtual-dtor 
-Werror=address 
-Werror=sequence-point 
-DNDEBUG 
-g 
-Wstrict-aliasing=2 
-fgcse-after-reload 
-frerun-cse-after-loop 
-frename-registers 
-DNDEBUG 
-UDEBUG 
-fvisibility-inlines-hidden 
-DANDROID 
-fmessage-length=0 -W -Wall 
-Wno-unused 
-Winit-self 
-Wpointer-arith 
-Wsign-promo 
-Werror=return-type 
-Werror=non-virtual-dtor 
-Werror=address 
-Werror=sequence-point 
-DNDEBUG 
-UDEBUG 
-mthumb 
-Os 
-fomit-frame-pointer 
-fno-strict-aliasing  
-fno-rtti  
-DWEBKIT_IMPLEMENTATION=1 
-DWTF_USE_V8=1 
-DENABLE_WEB_AUTOFILL 
-Wno-endif-labels 
-Wno-import 
-Wno-format 
-fno-strict-aliasing 
-include "WebCorePrefix.h" 
-fvisibility=hidden 
-DALWAYS_INLINE=inline 
-include "assert.h" 
-DGOOGLEURL -DGL_GLEXT_PROTOTYPES 
-DEGL_EGLEXT_PROTOTYPES
-Darm 
-Wno-psabi 
-DANDROID_LARGE_MEMORY_DEVICE 
-DENABLE_SVG=1 
-DENABLE_SVG_ANIMATION=1 
-DSUPPORT_COMPLEX_SCRIPTS=1  
-Wno-c++0x-compat
-MD 
-MF  out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebKit/android/jni/WebViewCore.d 
-o out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebKit/android/jni/WebViewCore.o 
external/webkit/Source/WebKit/android/jni/WebViewCore.cpp
cp  out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebKit/android/jni/WebStorage.d out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebKit/android/jni/WebStorage.P;
 sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$//' -e '/^$/ d' -e 's/$/ :/' < out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebKit/android/jni/WebStorage.d >> out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebKit/android/jni/WebStorage.P;
 rm -f out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebKit/android/jni/WebStorage.d
target thumb C++: libwebcore <= external/webkit/Source/WebKit/android/jni/ViewStateSerializer.cpp