This is basically throwing running chainsaws at the tree until it builds. It 
removes large parts of the tree that you may depend on. These changes will also 
make it really hard to update your tree (via ./repo sync). So do this at your 
own risk.

Most of the problems seem to come from Xcode 5 only having libc++ available, 
Android's completely broken usage of char16_t, and some C++11 related stuff. 
I'm using clang 3.4 trunk (r193513), Xcode 5.0.1, and my tree is configured for 
the Unagi. Here are the steps I followed to get it to work: (I retraced the 
steps after it was done, so there may be small differences, but I think I 
covered everything. If you run into any issues, ping me on IRC).

tl;dr is: remove everything that uses gtest, fix usage of char16_t in 
frameworks/base, apply these patches to the relevant repositories: 
https://gist.github.com/reubenmorais/7239186

In frameworks/base:
  rm -r cmds/installd/tests
  rm -r libs/gui/tests
  rm -r libs/ui/tests
  rm -r media/libstagefright/tests
  rm -r opengl/libs/GLES2_dbg/test
  rm -r opengl/tests/{EGLTest,hwc,lib}
  rm -r services/input/tests
  rm -r services/surfaceflinger/tests
  rm -r tools/aapt 
  curl 
https://gist.github.com/reubenmorais/7239186/raw/118698875d99f14b4bb2aa400efcedf37a1c8c04/frameworks_base.diff
 | patch -p1

In external:
  rm -r gtest
  rm -r apitrace # It's probably not too hard to fix the problems here, but I 
did it because chainsaws
  rm -r screencap-gonk # Ditto

In external/llvm:
  rm -r unittests
  rm -r utils/unittest
  curl 
https://gist.github.com/reubenmorais/7239186/raw/163920a3b1421d4cf177b30469707def14fc768d/external_llvm.diff
 | patch -p1

In external/protobuf:
  rm -r gtest
  cd src/google/protobuf && find . -name "*_unittest*" -delete && cd -
  curl 
https://gist.github.com/reubenmorais/7239186/raw/9a654b5df46004ecd488c35e4aae0d334b0d316a/external_protobuf.diff
 | patch -p1

In external/webrtc:
  rm -r src/modules/audio_processing/main/test/process_test
  find . -type f | xargs grep -l "gtest.h" | xargs rm
  curl 
https://gist.github.com/reubenmorais/7239186/raw/86bcacfea8f69ea6554af15d26a88ae9e50b1e6c/external_webrtc.diff
 | patch -p1

In system/extras:
  rm -r tests/{binder,iptables,lib,wifi}
  
In system/media:
  rm -r wilhelm/tests

In system/vold:
  rm -r tests
  curl 
https://gist.github.com/reubenmorais/7239186/raw/78cf007915a57b262f2ce3c306168e60768ebc45/system_vold.diff
 | patch -p1

Hope this is helpful to someone.

-- reuben

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
dev-b2g mailing list
dev-b2g@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-b2g

Reply via email to