Add "dumpapi.no_license" to omit license in dumps

A new property to control license header in dumps is added to
aidl_interface module.

When set to true, --dumpapi dumps without license headers.
This can be useful to avoid merge conflicts for projects which should
work with older AIDL compiler.

Cherry-pick note: adding a property with no-op to avoid build failures

Bug: 179449077
Test: m test-piece-4-update-api (with no_license:true)
Change-Id: I0e72ee90085e643caa681214639f8c1f6fcde8f3
Merged-In: I0e72ee90085e643caa681214639f8c1f6fcde8f3
(cherry picked from commit 252657e7e613ea9cca226695d9b6ab8aae176a7f)
diff --git a/build/Android.bp b/build/Android.bp
index d537196..d2f8cde 100644
--- a/build/Android.bp
+++ b/build/Android.bp
@@ -130,6 +130,9 @@
         "test-piece-1",
     ],
     versions: ["1"],
+    dumpapi: {
+        no_license: true,
+    },
 }
 
 aidl_interface {
diff --git a/build/aidl_interface.go b/build/aidl_interface.go
index 240a0c6..c16b6a1 100644
--- a/build/aidl_interface.go
+++ b/build/aidl_interface.go
@@ -791,6 +791,11 @@
 	cc.VndkProperties
 }
 
+type DumpApiProperties struct {
+	// Dumps without license header (assuming it is the first comment in .aidl file). Default: false
+	No_license *bool
+}
+
 type aidlInterfaceProperties struct {
 	// Vndk properties for C++/NDK libraries only (preferred to use backend-specific settings)
 	cc.VndkProperties
@@ -858,6 +863,9 @@
 	// Marks that this interface does not need to be stable. When set to true, the build system
 	// doesn't create the API dump and require it to be updated. Default is false.
 	Unstable *bool
+
+	// --dumpapi options
+	Dumpapi DumpApiProperties
 }
 
 type aidlInterface struct {