On Sat, Apr 10, 2021 at 09:01:43AM +0100, Nick Connolly wrote:
> The symlink-drivers-solibs.sh script was disabled as part of 'install'
> for Windows because there is no support for shell scripts. However,
> this means that driver related DLLs are not present in the installed
> 'libdir' directory. Add a python script to perform the install and use
> it for Windows if the version of meson supports using an external
> program with add_install_script (>= 0.55.0).
>
> On Windows, symbolic links are somewhat problematic since the
> SeCreateSymbolicLinkPrivilege is required to be able to create them.
> In addition, different cross-compilation environments handle symbolic
> links differently, e.g. WSL, Msys2, Cygwin. Rather than trying to
> distinguish these scenarios, the python script will perform a file copy
> for any Windows specific names.
>
> On Windows, the shared library outputs have different names depending
> upon which toolset has been used to build them. The script currently
> handles Clang and GCC.
>
> On Linux the functionality is unchanged, but could be replaced with the
> python script once the required minimum version of meson is >= 0.55.0.
>
> Fixes: 5c7d86948764 ("build: fix install on Windows")
> Cc: [email protected]
>
> Signed-off-by: Nick Connolly <[email protected]>
> ---
> buildtools/symlink-drivers-solibs.py | 49 ++++++++++++++++++++++++++++
> config/meson.build | 4 +++
> 2 files changed, 53 insertions(+)
> create mode 100644 buildtools/symlink-drivers-solibs.py
>
> diff --git a/buildtools/symlink-drivers-solibs.py
> b/buildtools/symlink-drivers-solibs.py
Tested-by: Narcisa Vasile <[email protected]>
Acked-by: Narcisa Vasile <[email protected]>
Note that it needs rebasing.