)]}'
{
  "commit": "f4c419ec4240247ae75aa222293b2dbd2876849b",
  "tree": "1f0dd580afc1ee8099541845eb99bfb651150860",
  "parents": [
    "b5432c918e92a7a0f1a8b012df8459079897cdc8"
  ],
  "author": {
    "name": "Dan Willemsen",
    "email": "dwillemsen@google.com",
    "time": "Fri Apr 07 14:13:06 2017 -0700"
  },
  "committer": {
    "name": "Steven Moreland",
    "email": "smoreland@google.com",
    "time": "Tue Apr 11 18:24:56 2017 +0000"
  },
  "message": "Mark as vendor_available\n\nBy setting vendor_available, the following may become true:\n\n* a prebuilt library from this release may be used at runtime by\n  in a later releasse (by vendor code compiled against this release).\n  so this library shouldn\u0027t depend on runtime state that may change\n  in the future.\n* this library may be loaded twice into a single process (potentially\n  an old version and a newer version). The symbols will be isolated\n  using linker namespaces, but this may break assumptions about 1\n  library in 1 process (your singletons will run twice).\n\nBackground:\n\nThis means that these modules may be built and installed twice --\nonce for the system partition and once for the vendor partition. The\nsystem version will build just like today, and will be used by the\nframework components on /system. The vendor version will build\nagainst a reduced set of exports and libraries -- similar to, but\nseparate from, the NDK. This means that all your dependencies must\nalso mark vendor_available.\n\nAt runtime, /system binaries will load libraries from /system/lib*,\nwhile /vendor binaries will load libraries from /vendor/lib*. There\nare some exceptions in both directions -- bionic(libc,etc) and liblog\nare always loaded from /system. And SP-HALs (OpenGL, etc) may load\n/vendor code into /system processes, but the dependencies of those\nlibraries will load from /vendor until it reaches a library that\u0027s\nalways on /system. In the SP-HAL case, if both framework and vendor\nlibraries depend on a library of the same name, both versions will be\nloaded, but they will be isolated from each other.\n\nIt\u0027s possible to compile differently -- reducing your source files,\nexporting different include directories, etc. For details see:\n\nhttps://android-review.googlesource.com/368372\n\nNone of this is enabled unless the device opts into the system/vendor\nsplit with BOARD_VNDK_VERSION :\u003d current.\n\nBug: 36426473\nBug: 36079834\nTest: Android-aosp_arm.mk is the same before/after\nTest: build.ninja is the same before/after\nTest: build-aosp_arm.ninja is the same before/after\nTest: attempt to compile with BOARD_VNDK_VERSION :\u003d current\nMerged-In: Ic1c1cfdab14bb24dfb93b6a1ba3d6443e1e3e67e\nChange-Id: Ic1c1cfdab14bb24dfb93b6a1ba3d6443e1e3e67e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1ced88e3324512eeeba8a8b76f21ce040cd9da22",
      "old_mode": 33188,
      "old_path": "Android.bp",
      "new_id": "2c2c8e65f8da433ba512e8d22e1c9bf6e6809ab4",
      "new_mode": 33188,
      "new_path": "Android.bp"
    }
  ]
}
