Skip to content
  • Antonio Ospite's avatar
    gst-env: use Path.open() in get_pkgconfig_variable_from_pcfile() · e10c27fb
    Antonio Ospite authored and Antonio Ospite's avatar Antonio Ospite committed
    The pcfile argument passed to get_target_install_filename() is
    guaranteed to be a Path() object so use the .open() method to open the
    file instead of the standard open() function.
    
    This makes it possible to run gst-env.py on older systems with pyhton3.5
    where the standard open() function cannot handle Path arguments.
    
    The change fixes errors like the following:
    
    -----------------------------------------------------------------------
    $ ninja -C build/ devenv
    ninja: Entering directory `build/'
    [0/1] Running external command devenv
    Traceback (most recent call last):
      File "/home/ao2/gst-build/gst-env.py", line 493, in <module>
        env = get_subprocess_env(options, gst_version)
      File "/home/ao2/gst-build/gst-env.py", line 342, in get_subprocess_env
        elif is_gio_module(target, filename, options.builddir):
      File "/home/ao2/gst-build/gst-env.py", line 121, in is_gio_module
        giomoduledir = PurePath(get_pkgconfig_variable(builddir, 'gio-2.0', 'giomoduledir'))
      File "/home/ao2/gst-build/gst-env.py", line 110, in get_pkgconfig_variable
        return get_pkgconfig_variable_from_pcfile(pcfile, varname)
      File "/home/ao2/gst-build/gst-env.py", line 89, in get_pkgconfig_variable_from_pcfile
        with open(pcfile, 'r', encoding='utf-8') as f:
    TypeError: invalid file: PosixPath('/home/ao2/gst-build/build/meson-private/gio-2.0.pc')
    FAILED: meson-devenv
    -----------------------------------------------------------------------
    
    
    
    (cherry picked from commit fa9627eb)
    
    Part-of: <gstreamer/gst-build!220>
    e10c27fb