gn2bp: Move the logic of source exclusion

Test: ./update_results.sh
Change-Id: Ic89cfc207e35cd2f90415fb888de8354ee190115
diff --git a/tools/gn2bp/Android.bp.swp b/tools/gn2bp/Android.bp.swp
index 247d896..7a26073 100644
--- a/tools/gn2bp/Android.bp.swp
+++ b/tools/gn2bp/Android.bp.swp
@@ -1979,8 +1979,8 @@
          "--header-path " +
          "$(genDir)/components/cronet/android/cronet_jni_registration.h " +
          "--manual_jni_registration " +
-         "--sources-exclusions " +
-         "[\"../../base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java\", \"../../base/android/java/src/org/chromium/base/library_loader/LibraryPrefetcher.java\", \"../../base/android/java/src/org/chromium/base/process_launcher/ChildProcessService.java\", \"../../base/android/java/src/org/chromium/base/SysUtils.java\"]",
+         " " +
+         "",
     out: [
         "components/cronet/android/cronet_jni_registration.h",
         "components/cronet/android/cronet_jni_registration.srcjar",
diff --git a/tools/gn2bp/gen_android_bp b/tools/gn2bp/gen_android_bp
index d06f215..6af308b 100755
--- a/tools/gn2bp/gen_android_bp
+++ b/tools/gn2bp/gen_android_bp
@@ -818,6 +818,11 @@
         target.args[i + 1] = re.sub('^gen', '$(genDir)', target.args[i + 1])
       if val == '--sources-files':
         target.args[i + 1] = '$(genDir)/java.sources'
+      elif val == '--sources-exclusions':
+        # update_jni_registration_module removes them from the srcs of the module
+        # It might be better to remove sources by '--sources-exclusions'
+        target.args[i] = ''
+        target.args[i + 1] = ''
 
   elif target.script == '//build/android/gyp/write_build_config.py':
     for i, val in enumerate(target.args):
@@ -1195,8 +1200,17 @@
 def update_jni_registration_module(blueprint, gn):
   bp_module_name = label_to_module_name('//components/cronet/android:cronet_jni_registration')
   module = blueprint.modules[bp_module_name]
+
+  # TODO: deny list is in the arg of jni_registration_generator.py. Should not be hardcoded
+  deny_list = [
+    '//base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java',
+    '//base/android/java/src/org/chromium/base/library_loader/LibraryPrefetcher.java',
+    '//base/android/java/src/org/chromium/base/process_launcher/ChildProcessService.java',
+    '//base/android/java/src/org/chromium/base/SysUtils.java']
+
   # TODO: java_sources might not contain all the required java files
-  module.srcs.update([gn_utils.label_to_path(source) for source in gn.java_sources])
+  module.srcs.update([gn_utils.label_to_path(source)
+                      for source in gn.java_sources if source not in deny_list])
 
 def create_blueprint_for_targets(gn, desc, targets):
   """Generate a blueprint for a list of GN targets."""