Title: [291486] trunk/Tools
Revision
291486
Author
[email protected]
Date
2022-03-18 08:39:27 -0700 (Fri, 18 Mar 2022)

Log Message

[Flatpak] Pass extra webkit-flatpak args to sub-command
https://bugs.webkit.org/show_bug.cgi?id=238027

Reviewed by Carlos Garcia Campos.

This adds the abillity to run something like:
  webkit-flatpak --command=echo -- --help
Where our script doesn't parse anything after `--` and it gets passed to the subcommand.

* flatpak/flatpakutils.py:
(extract_extra_command_args):
(WebkitFlatpak.load_from_args):
(WebkitFlatpak.setup_dev_env):

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (291485 => 291486)


--- trunk/Tools/ChangeLog	2022-03-18 15:08:43 UTC (rev 291485)
+++ trunk/Tools/ChangeLog	2022-03-18 15:39:27 UTC (rev 291486)
@@ -1,3 +1,19 @@
+2022-03-18  Patrick Griffis  <[email protected]>
+
+        [Flatpak] Pass extra webkit-flatpak args to sub-command
+        https://bugs.webkit.org/show_bug.cgi?id=238027
+
+        Reviewed by Carlos Garcia Campos.
+
+        This adds the abillity to run something like:
+          webkit-flatpak --command=echo -- --help
+        Where our script doesn't parse anything after `--` and it gets passed to the subcommand.
+
+        * flatpak/flatpakutils.py:
+        (extract_extra_command_args):
+        (WebkitFlatpak.load_from_args):
+        (WebkitFlatpak.setup_dev_env):
+
 2022-03-18  Philippe Normand  <[email protected]>
 
         [GStreamer] Initial import of the GstWebRTC backend

Modified: trunk/Tools/flatpak/flatpakutils.py (291485 => 291486)


--- trunk/Tools/flatpak/flatpakutils.py	2022-03-18 15:08:43 UTC (rev 291485)
+++ trunk/Tools/flatpak/flatpakutils.py	2022-03-18 15:39:27 UTC (rev 291486)
@@ -458,6 +458,13 @@
         signal.signal(disabled_signal, previous_handler)
 
 
+def extract_extra_command_args(args):
+    """Takes a list of unparsed args and splits them at '--' to pass to subprocesses."""
+    try:
+        return args[args.index('--') + 1:]
+    except ValueError:
+        return []
+
 class WebkitFlatpak:
 
     @staticmethod
@@ -513,7 +520,8 @@
         buildoptions.add_argument("--cmakeargs",
                                   help="One or more optional CMake flags (e.g. --cmakeargs=\"-DFOO=bar -DCMAKE_PREFIX_PATH=/usr/local\")")
 
-        _, self.args = parser.parse_known_args(args=args, namespace=self)
+        parsing_namespace, self.args = parser.parse_known_args(args=args, namespace=self)
+        self.extra_command_args = extract_extra_command_args(parsing_namespace.args)
 
         if not self.build_type:
             self.build_type = "Release"
@@ -1209,7 +1217,7 @@
             if self.is_build_webkit(program) and self.cmakeargs:
                 self.user_command.append("--cmakeargs=%s" % self.cmakeargs)
 
-            return self.run_in_sandbox(*self.user_command)
+            return self.run_in_sandbox(*self.user_command + self.extra_command_args)
         elif not self.update and not self.build_gst and not self.regenerate_toolchains:
             return self.run_in_sandbox()
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to