aidl: support RPC in Java

In Java, when need to make a transaction on an RPC binder object, the
Parcel needs to be in a different format. This adds a build option to
enable RPC to work (by attaching the binder to a parcel, the correct
format can be used). In the future, we could enable this by default
on all AIDL interfaces which are built against a new enough API version
(b/175819535).

Bug: 175814583
Test: atest aidl_integration_test, manual
Change-Id: Ia5234e58d0f1731ddb7bb577c4e193a81779e6ec
diff --git a/options.h b/options.h
index 70c82a6..3c4490f 100644
--- a/options.h
+++ b/options.h
@@ -120,6 +120,8 @@
 
   bool AutoDepFile() const { return auto_dep_file_; }
 
+  bool GenRpc() const { return gen_rpc_; }
+
   bool GenTraces() const { return gen_traces_; }
 
   bool GenTransactionNames() const { return gen_transaction_names_; }
@@ -177,6 +179,7 @@
   set<string> import_dirs_;
   vector<string> preprocessed_files_;
   string dependency_file_;
+  bool gen_rpc_ = false;
   bool gen_traces_ = false;
   bool gen_transaction_names_ = false;
   bool dependency_file_ninja_ = false;