/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 8 ĠThe ĠAndroid ĠOpen ĠSource ĠProject Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . android . build . gradle . internal . ide Ċ Ċ import Ġcom . android . build . gradle . internal . cxx . json . Android Build Gradle Json Streaming Parser Ċ import Ġcom . google . common . truth . Truth . assertThat Ċ import Ġcom . google . gson . stream . Json Reader Ċ import Ġcom . google . wire less . android . sdk . stats . Gradle Build Variant Ċ import Ġorg . junit . Test Ċ import Ġjava . io . File Ċ import Ġjava . io . String Reader Ċ Ċ class ĠNative Android Project Builder Test Ġ{ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Header File That Was Passed As Source () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbuilder Ġ= ĠNative Android Project Builder (" project ") ĊĠĠĠĠĠĠĠ Ġval Ġvisitor Ġ= ĠNative Android Project Builder . Json Streaming Visitor ( builder , Ġ" variant ", Ġnull ) ĊĠĠĠĠĠĠĠ Ġval Ġreader Ġ= ĠJson Reader ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠString Reader ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" {\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" build Files \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / Projects / Gradle Test / native _ lib / ../../../ Android / Sdk / nd k - bundle / build / cmake / android . toolchain . cmake \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / Projects / Gradle Test / native _ lib / CMake Lists . txt \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" clean Commands \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / Android / Sdk / cmake / 3 . 1 0 . 4 6 0 4 3 7 6 / bin / cmake Ġ-- build Ġ/ usr / local / google / home / j om of / Projects / Gradle Test / native _ lib /. external Native Build / cmake / release / x 8 6 _ 6 4 Ġ-- target Ġclean \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" libraries \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" native - lib - Release - x 8 6 _ 6 4 \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" build Command \": Ġ\" / usr / local / google / home / j om of / Android / Sdk / cmake / 3 . 1 0 . 4 6 0 4 3 7 6 / bin / cmake Ġ-- build Ġ/ usr / local / google / home / j om of / Projects / Gradle Test / native _ lib /. external Native Build / cmake / release / x 8 6 _ 6 4 Ġ-- target Ġnative - lib \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" build Type \": Ġ\" release \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" toolchain \": Ġ\" 1 3 5 1 5 1 9 5 9 7 \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" abi \": Ġ\" x 8 6 _ 6 4 \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" artifact Name \": Ġ\" native - lib \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" files \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" src \": Ġ\" / usr / local / google / home / j om of / Projects / Gradle Test / native _ lib / src / main / cpp / native - lib . hpp \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" working Directory \": Ġ\" / usr / local / google / home / j om of / Projects / Gradle Test / native _ lib /. external Native Build / cmake / release / x 8 6 _ 6 4 \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" src \": Ġ\" / usr / local / google / home / j om of / Projects / Gradle Test / native _ lib / src / main / cpp / native - lib . cpp \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" flags \": Ġ\" - is ystem Ġ/ usr / local / google / home / j om of / Android / Sdk / nd k - bundle / sys root / usr / include / x 8 6 _ 6 4 - linux - android Ġ- D __ ANDROID _ API __ = 2 1 Ġ- g Ġ- D ANDROID Ġ- ff unction - sections Ġ- fun wind - tables Ġ- f stack - prot ector - strong Ġ- no - canonical - prefixes Ġ- Wa ,-- no exec stack Ġ- W format Ġ- W error = format - security ĠĠ Ġ- O 2 Ġ- DN DEBUG Ġ Ġ- f PIC Ġ Ġ\ ",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" working Directory \": Ġ\" / usr / local / google / home / j om of / Projects / Gradle Test / native _ lib /. external Native Build / cmake / release / x 8 6 _ 6 4 \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" output \": Ġ\" / usr / local / google / home / j om of / Projects / Gradle Test / native _ lib / build / inter medi ates / cmake / release / obj / x 8 6 _ 6 4 / lib native - lib . so \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" tool chains \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 1 3 5 1 5 1 9 5 9 7 \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" cpp Compiler Executable \": Ġ\" / usr / local / google / home / j om of / Android / Sdk / nd k - bundle / tool chains / llvm / pre built / linux - x 8 6 _ 6 4 / bin / clang ++ \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" c File Extensions \": Ġ[], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" cpp File Extensions \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" cpp \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ] \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠAndroid Build Gradle Json Streaming Parser ( reader , Ġvisitor ). parse () ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġbuilder . build Native Android Project () !! ĊĠĠĠĠĠĠĠ Ġval Ġsource Files Ġ= Ġresult . artifacts . to Typed Array ()[ 0 ]. source Files ĊĠĠĠĠĠĠĠ ĠassertThat ( source Files . size ). isEqualTo ( 1 ) ĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsource Files . to Typed Array ()[ 0 ]. filePath . toString () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. endsWith (" cpp " Ġ+ ĠFile . separator Char Ġ+ Ġ" native - lib . cpp ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isTrue () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest String Table () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġbuilder Ġ= ĠNative Android Project Builder (" project ") ĊĠĠĠĠĠĠĠ Ġval Ġvisitor Ġ= ĠNative Android Project Builder . Json Streaming Visitor ( builder , Ġ" variant ", Ġnull ) ĊĠĠĠĠĠĠĠ Ġval Ġreader Ġ= ĠJson Reader ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠString Reader ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" {\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" string Table \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 0 \": Ġ\" - flag 1 Ġ- flag 2 \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 1 \": Ġ\" / my / working / directory \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" build Files \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Debug Vs Release _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / ../../ ../../ ../../ ../../ ../../../ pre bu il ts / studio / sdk / linux / nd k - bundle / build / cmake / android . toolchain . cmake \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Debug Vs Release _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / CMake Lists . txt \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" clean Commands \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / tools / common / cmake / linux / 3 . 8 . 2 / bin / cmake Ġ-- build Ġ/ usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Debug Vs Release _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / relative / path / cmake / debug / ar me abi - v 7 a Ġ-- target Ġclean \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" libraries \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" hello - jni - Debug - ar me abi - v 7 a \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" build Command \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / tools / common / cmake / linux / 3 . 8 . 2 / bin / cmake Ġ-- build Ġ/ usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Debug Vs Release _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / relative / path / cmake / debug / ar me abi - v 7 a Ġ-- target Ġhello - jni \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" build Type \": Ġ\" debug \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" toolchain \": Ġ\" 3 3 9 6 0 8 8 1 4 7 \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" abi \": Ġ\" ar me abi - v 7 a \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" artifact Name \": Ġ\" hello - jni \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" files \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" src \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Debug Vs Release _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / src / main / cpp / hello - jni . cpp \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" flags Ordinal \": Ġ 0 ,\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" working Directory Ordinal \": Ġ 1 \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" output \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Debug Vs Release _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / build / inter medi ates / cmake / debug / obj / ar me abi - v 7 a / lib hello - jni . so \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" tool chains \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 3 3 9 6 0 8 8 1 4 7 \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" cpp Compiler Executable \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / studio / sdk / linux / nd k - bundle / tool chains / llvm / pre built / linux - x 8 6 _ 6 4 / bin / clang ++ \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" c File Extensions \": Ġ[], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" cpp File Extensions \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" cpp \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ] \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠAndroid Build Gradle Json Streaming Parser ( reader , Ġvisitor ). parse () ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġbuilder . build Native Android Project () !! ĊĠĠĠĠĠĠĠ Ġval Ġsource Files Ġ= Ġresult . artifacts . to Typed Array ()[ 0 ]. source Files ĊĠĠĠĠĠĠĠ Ġval Ġsettings Ġ= Ġresult . settings . to Typed Array ()[ 0 ]. compiler Flags ĊĠĠĠĠĠĠĠ ĠassertThat ( source Files . size ). isEqualTo ( 1 ) ĊĠĠĠĠĠĠĠ ĠassertThat ( settings ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isEqualTo ( listOf ("- flag 1 ", Ġ"- flag 2 ")) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest String Table Work sWith Composite Builder () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġreader Ġ= ĠJson Reader ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠString Reader ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" {\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" string Table \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 0 \": Ġ\" - g Ġ- D ANDROID Ġ- ff unction - sections Ġ- fun wind - tables Ġ- f stack - prot ector - strong Ġ- no - canonical - prefixes Ġ- m arch = arm v 7 - a Ġ- m float - abi = soft fp Ġ- mf pu = v fp v 3 - d 1 6 Ġ- fno - integr ated - as Ġ- m thumb Ġ- Wa ,-- no exec stack Ġ- W format Ġ- W error = format - security Ġ Ġ- g Ġ- D ANDROID Ġ- ff unction - sections Ġ- fun wind - tables Ġ- f stack - prot ector - strong Ġ- no - canonical - prefixes Ġ- m arch = arm v 7 - a Ġ- m float - abi = soft fp Ġ- mf pu = v fp v 3 - d 1 6 Ġ- fno - integr ated - as Ġ- m thumb Ġ- Wa ,-- no exec stack Ġ- W format Ġ- W error = format - security Ġ Ġ- D TEST _ CPP _ FLAG Ġ- O 0 Ġ- fno - limit - debug - info Ġ- O 0 Ġ- fno - limit - debug - info Ġ Ġ- f PIC Ġ Ġ\ ",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 1 \": Ġ\" / my / working / directory \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" build Files \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / ../../ ../../ ../../ ../../ ../../../ pre bu il ts / studio / sdk / linux / nd k - bundle / build / cmake / android . toolchain . cmake \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / CMake Lists . txt \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" clean Commands \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / tools / common / cmake / linux / 3 . 8 . 2 / bin / cmake Ġ-- build Ġ/ usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / relative / path / cmake / debug / ar me abi - v 7 a Ġ-- target Ġclean \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" libraries \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" hello - jni - Debug - ar me abi - v 7 a \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" build Command \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / tools / common / cmake / linux / 3 . 8 . 2 / bin / cmake Ġ-- build Ġ/ usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / relative / path / cmake / debug / ar me abi - v 7 a Ġ-- target Ġhello - jni \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" build Type \": Ġ\" debug \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" toolchain \": Ġ\" 3 3 9 6 0 8 8 1 4 7 \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" abi \": Ġ\" ar me abi - v 7 a \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" artifact Name \": Ġ\" hello - jni \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" files \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" src \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / src / main / cpp / hello - jni . cpp \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" flags Ordinal \": Ġ 0 ,\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" working Directory Ordinal \": Ġ 1 \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" output \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / build / inter medi ates / cmake / debug / obj / ar me abi - v 7 a / lib hello - jni . so \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" tool chains \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 3 3 9 6 0 8 8 1 4 7 \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" cpp Compiler Executable \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / studio / sdk / linux / nd k - bundle / tool chains / llvm / pre built / linux - x 8 6 _ 6 4 / bin / clang ++ \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" c File Extensions \": Ġ[], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" cpp File Extensions \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" cpp \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ] \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġbuilder Ġ= ĠNative Android Project Builder (" name ") ĊĠĠĠĠĠĠĠ Ġbuilder . add Json ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreader , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" variant - name ", ĊĠĠĠĠĠĠĠĠĠĠĠ ĠGradle Build Variant . Native Build Config Info . newBuilder () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġbuilder . build Native Android Project () !! ĊĠĠĠĠĠĠĠ Ġval Ġflags Ġ= Ġresult . settings . to Typed Array ()[ 0 ]. compiler Flags ĊĠĠĠĠĠĠĠ ĠassertThat ( flags ). contains ("- g ") ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Re pro Case Where Wrong Visit Working Folder Called By Visitor () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġreader Ġ= ĠJson Reader ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠString Reader ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" {\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" string Table \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 0 \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Model _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / relative / path / cmake / debug / ar me abi - v 7 a \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 1 \": Ġ\" - g Ġ- D ANDROID Ġ- ff unction - sections Ġ- fun wind - tables Ġ- f stack - prot ector - strong Ġ- no - canonical - prefixes Ġ- m arch = arm v 7 - a Ġ- m float - abi = soft fp Ġ- mf pu = v fp v 3 - d 1 6 Ġ- fno - integr ated - as Ġ- m thumb Ġ- Wa ,-- no exec stack Ġ- W format Ġ- W error = format - security Ġ Ġ- g Ġ- D ANDROID Ġ- ff unction - sections Ġ- fun wind - tables Ġ- f stack - prot ector - strong Ġ- no - canonical - prefixes Ġ- m arch = arm v 7 - a Ġ- m float - abi = soft fp Ġ- mf pu = v fp v 3 - d 1 6 Ġ- fno - integr ated - as Ġ- m thumb Ġ- Wa ,-- no exec stack Ġ- W format Ġ- W error = format - security Ġ Ġ- D TEST _ CPP _ FLAG Ġ- O 0 Ġ- fno - limit - debug - info Ġ- O 0 Ġ- fno - limit - debug - info Ġ Ġ- f PIC Ġ Ġ\" \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" build Files \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Model _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / ../../ ../../ ../../ ../../ ../../../ pre bu il ts / studio / sdk / linux / nd k - bundle / build / cmake / android . toolchain . cmake \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Model _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / CMake Lists . txt \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" clean Commands \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / tools / common / cmake / linux / 3 . 8 . 2 / bin / cmake Ġ-- build Ġ/ usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Model _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / relative / path / cmake / debug / ar me abi - v 7 a Ġ-- target Ġclean \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" libraries \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" hello - jni - Debug - ar me abi - v 7 a \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" build Command \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / tools / common / cmake / linux / 3 . 8 . 2 / bin / cmake Ġ-- build Ġ/ usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Model _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / relative / path / cmake / debug / ar me abi - v 7 a Ġ-- target Ġhello - jni \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" build Type \": Ġ\" debug \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" toolchain \": Ġ\" 3 3 9 6 0 8 8 1 4 7 \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" abi \": Ġ\" ar me abi - v 7 a \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" artifact Name \": Ġ\" hello - jni \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" files \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" src \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Model _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / src / main / cpp / hello - jni . cpp \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" flags Ordinal \": Ġ 1 ,\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" working Directory Ordinal \": Ġ 0 \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" output \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Model _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / build / inter medi ates / cmake / debug / obj / ar me abi - v 7 a / lib hello - jni . so \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" tool chains \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 3 3 9 6 0 8 8 1 4 7 \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" cpp Compiler Executable \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / studio / sdk / linux / nd k - bundle / tool chains / llvm / pre built / linux - x 8 6 _ 6 4 / bin / clang ++ \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" c File Extensions \": Ġ[], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" cpp File Extensions \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" cpp \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ] \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġbuilder Ġ= ĠNative Android Project Builder (" name ") ĊĠĠĠĠĠĠĠ Ġbuilder . add Json ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreader , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" variant - name ", ĊĠĠĠĠĠĠĠĠĠĠĠ ĠGradle Build Variant . Native Build Config Info . newBuilder () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġbuilder . build Native Android Project () !! ĊĠĠĠĠĠĠĠ ĠassertThat ( result . settings . size ). isEqualTo ( 1 ) ĊĠĠĠĠĠĠĠ Ġval Ġflags Ġ= Ġresult . settings . to Typed Array ()[ 0 ]. compiler Flags ĊĠĠĠĠĠĠĠ ĠassertThat ( flags ). contains ("- g ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Build Native Variant Ab i () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġreader Ġ= ĠJson Reader ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠString Reader ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" {\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" string Table \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 0 \": Ġ\" - g Ġ- D ANDROID Ġ- ff unction - sections Ġ- fun wind - tables Ġ- f stack - prot ector - strong Ġ- no - canonical - prefixes Ġ- m arch = arm v 7 - a Ġ- m float - abi = soft fp Ġ- mf pu = v fp v 3 - d 1 6 Ġ- fno - integr ated - as Ġ- m thumb Ġ- Wa ,-- no exec stack Ġ- W format Ġ- W error = format - security Ġ Ġ- g Ġ- D ANDROID Ġ- ff unction - sections Ġ- fun wind - tables Ġ- f stack - prot ector - strong Ġ- no - canonical - prefixes Ġ- m arch = arm v 7 - a Ġ- m float - abi = soft fp Ġ- mf pu = v fp v 3 - d 1 6 Ġ- fno - integr ated - as Ġ- m thumb Ġ- Wa ,-- no exec stack Ġ- W format Ġ- W error = format - security Ġ Ġ- D TEST _ CPP _ FLAG Ġ- O 0 Ġ- fno - limit - debug - info Ġ- O 0 Ġ- fno - limit - debug - info Ġ Ġ- f PIC Ġ Ġ\ ",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 1 \": Ġ\" / my / working / directory \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" build Files \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / ../../ ../../ ../../ ../../ ../../../ pre bu il ts / studio / sdk / linux / nd k - bundle / build / cmake / android . toolchain . cmake \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / CMake Lists . txt \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" clean Commands \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / tools / common / cmake / linux / 3 . 8 . 2 / bin / cmake Ġ-- build Ġ/ usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / relative / path / cmake / debug / ar me abi - v 7 a Ġ-- target Ġclean \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" libraries \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" hello - jni - Debug - ar me abi - v 7 a \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" build Command \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / tools / common / cmake / linux / 3 . 8 . 2 / bin / cmake Ġ-- build Ġ/ usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / relative / path / cmake / debug / ar me abi - v 7 a Ġ-- target Ġhello - jni \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" build Type \": Ġ\" debug \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" toolchain \": Ġ\" 3 3 9 6 0 8 8 1 4 7 \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" abi \": Ġ\" ar me abi - v 7 a \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" artifact Name \": Ġ\" hello - jni \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" files \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" src \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / src / main / cpp / hello - jni . cpp \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" flags Ordinal \": Ġ 0 ,\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" working Directory Ordinal \": Ġ 1 \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" output \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / build / inter medi ates / cmake / debug / obj / ar me abi - v 7 a / lib hello - jni . so \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" tool chains \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 3 3 9 6 0 8 8 1 4 7 \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" cpp Compiler Executable \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / studio / sdk / linux / nd k - bundle / tool chains / llvm / pre built / linux - x 8 6 _ 6 4 / bin / clang ++ \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" c File Extensions \": Ġ[], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" cpp File Extensions \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" cpp \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ] \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġbuilder Ġ= ĠNative Android Project Builder (" name ", Ġ" ar me abi - v 7 a ") ĊĠĠĠĠĠĠĠ Ġbuilder . add Json ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreader , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" variant - name ", ĊĠĠĠĠĠĠĠĠĠĠĠ ĠGradle Build Variant . Native Build Config Info . newBuilder () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġbuilder . build Native Variant Ab i (" my - variant ") !! ĊĠĠĠĠĠĠĠ Ġval Ġflags Ġ= Ġresult . settings . to Typed Array ()[ 0 ]. compiler Flags ĊĠĠĠĠĠĠĠ ĠassertThat ( flags ). contains ("- g ") ĊĠĠĠĠĠĠĠ ĠassertThat ( result . artifacts ). has Size ( 1 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Build Native Variant Ab i Un matched Ab i Name () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġreader Ġ= ĠJson Reader ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠString Reader ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" {\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" string Table \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 0 \": Ġ\" - g Ġ- D ANDROID Ġ- ff unction - sections Ġ- fun wind - tables Ġ- f stack - prot ector - strong Ġ- no - canonical - prefixes Ġ- m arch = arm v 7 - a Ġ- m float - abi = soft fp Ġ- mf pu = v fp v 3 - d 1 6 Ġ- fno - integr ated - as Ġ- m thumb Ġ- Wa ,-- no exec stack Ġ- W format Ġ- W error = format - security Ġ Ġ- g Ġ- D ANDROID Ġ- ff unction - sections Ġ- fun wind - tables Ġ- f stack - prot ector - strong Ġ- no - canonical - prefixes Ġ- m arch = arm v 7 - a Ġ- m float - abi = soft fp Ġ- mf pu = v fp v 3 - d 1 6 Ġ- fno - integr ated - as Ġ- m thumb Ġ- Wa ,-- no exec stack Ġ- W format Ġ- W error = format - security Ġ Ġ- D TEST _ CPP _ FLAG Ġ- O 0 Ġ- fno - limit - debug - info Ġ- O 0 Ġ- fno - limit - debug - info Ġ Ġ- f PIC Ġ Ġ\ ",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 1 \": Ġ\" / my / working / directory \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" build Files \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / ../../ ../../ ../../ ../../ ../../../ pre bu il ts / studio / sdk / linux / nd k - bundle / build / cmake / android . toolchain . cmake \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / CMake Lists . txt \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" clean Commands \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / tools / common / cmake / linux / 3 . 8 . 2 / bin / cmake Ġ-- build Ġ/ usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / relative / path / cmake / debug / ar me abi - v 7 a Ġ-- target Ġclean \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" libraries \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" hello - jni - Debug - ar me abi - v 7 a \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" build Command \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / tools / common / cmake / linux / 3 . 8 . 2 / bin / cmake Ġ-- build Ġ/ usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / relative / path / cmake / debug / ar me abi - v 7 a Ġ-- target Ġhello - jni \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" build Type \": Ġ\" debug \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" toolchain \": Ġ\" 3 3 9 6 0 8 8 1 4 7 \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" abi \": Ġ\" ar me abi - v 7 a \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" artifact Name \": Ġ\" hello - jni \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" files \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" src \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / src / main / cpp / hello - jni . cpp \",\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" flags Ordinal \": Ġ 0 ,\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠĠĠ Ġ\" working Directory Ordinal \": Ġ 1 \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" output \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / out / build / base / build - system / integration - test / application / build / tests / Native Model Test / check Up ToDate _ model ___ CMAKE LIST S _ ARGUMENT S _ WITH _ CMAKE _ VERSION _/ project / build / inter medi ates / cmake / debug / obj / ar me abi - v 7 a / lib hello - jni . so \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" tool chains \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" 3 3 9 6 0 8 8 1 4 7 \": Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠ Ġ\" cpp Compiler Executable \": Ġ\" / usr / local / google / home / j om of / projects / studio - master - dev / pre bu il ts / studio / sdk / linux / nd k - bundle / tool chains / llvm / pre built / linux - x 8 6 _ 6 4 / bin / clang ++ \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ}\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ},\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" c File Extensions \": Ġ[], \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ\" cpp File Extensions \": Ġ[\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠ Ġ\" cpp \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ Ġ] \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġbuilder Ġ= ĠNative Android Project Builder (" name ", Ġ" x 8 6 ") ĊĠĠĠĠĠĠĠ Ġbuilder . add Json ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreader , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" variant - name ", ĊĠĠĠĠĠĠĠĠĠĠĠ ĠGradle Build Variant . Native Build Config Info . newBuilder () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġbuilder . build Native Variant Ab i (" my - variant ") !! ĊĠĠĠĠĠĠĠ ĠassertThat ( result . settings ). has Size ( 0 ) ĊĠĠĠĠĠĠĠ ĠassertThat ( result . artifacts ). has Size ( 0 ) ĊĠĠĠ Ġ} Ċ }