Is your feature request related to a problem? Please describe.
The directx-dxc package includes a command-line tool for compiling HLSL shaders, dxc, whose path is provided in the CMake variable DIRECTX_DXC_TOOL after the appropriate find_package call. Unfortunately, this executable does not appear to be executable by default on Linux.
/bin/sh: 1: /home/runner/work/project/project/vcpkg/installed/x64-linux/tools/directx-dxc/dxc: Permission denied
I added the following snippet to my project's CMake scripts to resolve the issue, verifying that the problem is just the missing executable bit.
if(CMAKE_HOST_LINUX)
execute_process(COMMAND "chmod" "+x" "${DIRECTX_DXC_TOOL}")
endif()
Proposed solution
Set the executable bit on the dxc binary during the installation step of the port.
Adding an appropriate FILE_PERMISSIONS option to that command should resolve it, I believe.
Describe alternatives you've considered
No response
Additional context
No response
Is your feature request related to a problem? Please describe.
The
directx-dxcpackage includes a command-line tool for compiling HLSL shaders,dxc, whose path is provided in the CMake variableDIRECTX_DXC_TOOLafter the appropriatefind_packagecall. Unfortunately, this executable does not appear to be executable by default on Linux.I added the following snippet to my project's CMake scripts to resolve the issue, verifying that the problem is just the missing executable bit.
Proposed solution
Set the executable bit on the
dxcbinary during the installation step of the port.vcpkg/ports/directx-dxc/portfile.cmake
Line 57 in cd1099f
Adding an appropriate
FILE_PERMISSIONSoption to that command should resolve it, I believe.Describe alternatives you've considered
No response
Additional context
No response