utils: gen-shader-headers: Fix subproject build
Meson already takes care of passing the proper absolute or relative
paths to commands. There is no need do more path manipulation.
So simplify the script by using the paths as-is. This also fixes the
path manipulation issue that prevented libcamera from building as a
subproject.
Fixes: 19371dee41 ("utils: gen-shader-headers: Add a utility to generate headers from shaders")
Signed-off-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
committed by
Kieran Bingham
parent
34c5cf2480
commit
f0499ecfc2
@@ -188,7 +188,7 @@ libcamera_shader_headers = custom_target(
|
||||
'gen-shader-headers',
|
||||
input : [shader_files],
|
||||
output : 'glsl_shaders.h',
|
||||
command : [gen_shader_headers, meson.project_source_root(), meson.project_build_root(), '@OUTPUT@', '@INPUT@'],
|
||||
command : [gen_shader_headers, meson.project_source_root(), '@OUTPUT@', '@INPUT@'],
|
||||
)
|
||||
|
||||
libcamera_internal_headers += libcamera_shader_headers
|
||||
|
||||
@@ -3,14 +3,13 @@
|
||||
set -e
|
||||
|
||||
usage() {
|
||||
echo "Usage: $0 <src_dir> <build_dir> <output_header_name> <shader_file1> [shader_file2 ...]"
|
||||
echo "Usage: $0 <src_dir> <output_header> <shader_file1> [shader_file2 ...]"
|
||||
echo
|
||||
echo "Generates a C header file containing hex-encoded shader data."
|
||||
echo
|
||||
echo "Arguments:"
|
||||
echo " src_dir Path to the base of the source directory"
|
||||
echo " build_dir Directory where shader files are located and header will be written"
|
||||
echo " output_header_name Name of the generated header file (relative to build_dir)"
|
||||
echo " output_header Path to the generated header file"
|
||||
echo " shader_file(s) One or more shader files to embed in the header"
|
||||
exit 1
|
||||
}
|
||||
@@ -21,8 +20,7 @@ if [ $# -lt 4 ]; then
|
||||
fi
|
||||
|
||||
src_dir="$1"; shift
|
||||
build_dir="$1"; shift
|
||||
build_path=$build_dir/"$1"; shift
|
||||
build_path="$1"; shift
|
||||
|
||||
cat <<EOF > "$build_path"
|
||||
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
||||
@@ -40,7 +38,7 @@ cat <<EOF >> "$build_path"
|
||||
EOF
|
||||
|
||||
for file in "$@"; do
|
||||
name=$(basename "$build_dir/$file" | tr '.' '_')
|
||||
name=$(basename "$file" | tr '.' '_')
|
||||
echo "[SHADER-GEN] $name"
|
||||
echo " * unsigned char $name;" >> "$build_path"
|
||||
done
|
||||
@@ -49,7 +47,7 @@ echo "*/" >> "$build_path"
|
||||
|
||||
echo "/* Hex encoded shader data */" >> "$build_path"
|
||||
for file in "$@"; do
|
||||
name=$(basename "$build_dir/$file")
|
||||
"$src_dir/utils/gen-shader-header.py" "$name" "$build_dir/$file" >> "$build_path"
|
||||
name=$(basename "$file")
|
||||
"$src_dir/utils/gen-shader-header.py" "$name" "$file" >> "$build_path"
|
||||
echo >> "$build_path"
|
||||
done
|
||||
|
||||
Reference in New Issue
Block a user