/builders/mesa-vulkan-amd-sh-9ab59574ef162393f89c36980a366eeb8ecccb64/contrib/generators.sh (26714c7f9eacb10ac3d2c6b19dd5fd6eb3335d49) (11633 bytes) (mode 100644) (type blob)
#===============================================================================
# removing the braindamaged qsort class
cp -f $src_dir/src/compiler/nir/nir.c $build_dir/src/compiler/nir/nir.c
sed -i $build_dir/src/compiler/nir/nir.c \
-e '/u_qsort.h/ d' \
-e 's/util_qsort_r/qsort_r/' &
cp -f $src_dir/src/util/mesa_cache_db.c $build_dir/src/util/mesa_cache_db.c
sed -i $build_dir/src/util/mesa_cache_db.c \
-e '/u_qsort.h/ d' \
-e 's/util_qsort_r/qsort_r/' &
#===============================================================================
# that compute radix sort implementation ... OMFG! Text book what NOT to do.
# Where is the plain and simple C coded spir-v assembler for those shaders?
# blame: Konstantin Seurer
cp -f $src_dir/src/amd/vulkan/meta/radv_meta.c $build_dir/src/amd/vulkan/meta
patch -p 1 -i $src_dir/contrib/radv_meta.c.patch
cp -f $src_dir/src/amd/vulkan/meta/radv_meta_copy.c $build_dir/src/amd/vulkan/meta
patch -p 1 -i $src_dir/contrib/radv_meta_copy.c.patch
cp -f $src_dir/src/amd/vulkan/radv_device.c $build_dir/src/amd/vulkan
patch -p 1 -i $src_dir/contrib/radv_device.c.patch
# dudes... tracers should be cleanly compilable out... smells forced corpo crap
cp -f $src_dir/contrib/radv_no_tracers.c $build_dir/src/amd/vulkan
#===============================================================================
# vulkan util
export PYTHONPATH=$mako
$python3 $src_dir/src/vulkan/util/gen_enum_to_str.py \
--beta false \
--xml $vulkan_api_xml \
--outdir $build_dir/src/vulkan/util
# our ndebug/release version
cp -f $src_dir/contrib/vk_enum_to_str.c $src_dir/contrib/vk_enum_to_str.h \
$build_dir/src/vulkan/util
$python3 $src_dir/src/vulkan/util/vk_dispatch_table_gen.py \
--beta false \
--xml $vulkan_api_xml \
--out-c $build_dir/src/vulkan/util/vk_dispatch_table.c \
--out-h $build_dir/src/vulkan/util/vk_dispatch_table.h &
$python3 $src_dir/src/vulkan/util/vk_extensions_gen.py \
--xml $vulkan_api_xml \
--out-c $build_dir/src/vulkan/util/vk_extensions.c \
--out-h $build_dir/src/vulkan/util/vk_extensions.h &
$python3 $src_dir/src/vulkan/util/vk_struct_type_cast_gen.py \
--beta false \
--xml $vulkan_api_xml \
--outdir $build_dir/src/vulkan/util &
$python3 $src_dir/src/compiler/nir/nir_builder_opcodes_h.py \
>$build_dir/src/compiler/nir/nir_builder_opcodes.h &
$python3 $src_dir/src/compiler/nir/nir_opcodes_h.py \
>$build_dir/src/compiler/nir/nir_opcodes.h &
$python3 $src_dir/src/compiler/nir/nir_intrinsics_h.py \
--outdir $build_dir/src/compiler/nir &
$python3 $src_dir/src/compiler/nir/nir_intrinsics_indices_h.py \
--outdir $build_dir/src/compiler/nir &
unset PYTHONPATH
#===============================================================================
# vulkan runtime
export PYTHONPATH=$mako
$python3 $src_dir/src/vulkan/util/vk_entrypoints_gen.py \
--beta false \
--xml $vulkan_api_xml \
--proto --weak \
--out-h $build_dir/src/vulkan/runtime/vk_common_entrypoints.h \
--out-c $build_dir/src/vulkan/runtime/vk_common_entrypoints.c \
--prefix vk_common &
$python3 $src_dir/src/vulkan/util/vk_entrypoints_gen.py \
--beta false \
--xml $vulkan_api_xml \
--proto --weak \
--out-h $build_dir/src/vulkan/runtime/vk_cmd_enqueue_entrypoints.h \
--out-c $build_dir/src/vulkan/runtime/vk_cmd_enqueue_entrypoints.c \
--prefix vk_cmd_enqueue &
$python3 $src_dir/src/vulkan/util/vk_cmd_queue_gen.py \
--beta false \
--xml $vulkan_api_xml \
--out-h $build_dir/src/vulkan/runtime/vk_cmd_queue.h \
--out-c $build_dir/src/vulkan/runtime/vk_cmd_queue.c &
$python3 $src_dir/src/vulkan/util/vk_dispatch_trampolines_gen.py \
--beta false \
--xml $vulkan_api_xml \
--out-h $build_dir/src/vulkan/runtime/vk_dispatch_trampolines.h \
--out-c $build_dir/src/vulkan/runtime/vk_dispatch_trampolines.c &
$python3 $src_dir/src/vulkan/util/vk_physical_device_features_gen.py \
--beta false \
--xml $vulkan_api_xml \
--out-h $build_dir/src/vulkan/runtime/vk_physical_device_features.h \
--out-c $build_dir/src/vulkan/runtime/vk_physical_device_features.c &
$python3 $src_dir/src/vulkan/util/vk_physical_device_properties_gen.py \
--beta false \
--xml $vulkan_api_xml \
--out-h $build_dir/src/vulkan/runtime/vk_physical_device_properties.h \
--out-c $build_dir/src/vulkan/runtime/vk_physical_device_properties.c &
$python3 $src_dir/src/vulkan/runtime/vk_format_info_gen.py \
--xml $vulkan_api_xml \
--out-h $build_dir/src/vulkan/runtime/vk_format_info.h \
--out-c $build_dir/src/vulkan/runtime/vk_format_info.c &
$python3 $src_dir/src/vulkan/util/vk_synchronization_helpers_gen.py \
--beta false \
--xml $vulkan_api_xml \
--out-c $build_dir/src/vulkan/runtime/vk_synchronization_helpers.c &
unset PYTHONPATH
#===============================================================================
# wsi x11 (Window System Interface)
export PYTHONPATH=$mako
$python3 $src_dir/src/vulkan/util/vk_entrypoints_gen.py \
--beta false \
--xml $vulkan_api_xml \
--proto --weak \
--out-h $build_dir/src/vulkan/wsi/wsi_common_entrypoints.h \
--out-c $build_dir/src/vulkan/wsi/wsi_common_entrypoints.c \
--prefix wsi &
unset PYTHONPATH
#===============================================================================
# amd common archive
$python3 $src_dir/src/amd/common/sid_tables.py \
$src_dir/src/amd/common/sid.h \
$src_dir/src/amd/registers/gfx6.json \
$src_dir/src/amd/registers/gfx7.json \
$src_dir/src/amd/registers/gfx8.json \
$src_dir/src/amd/registers/gfx81.json \
$src_dir/src/amd/registers/gfx9.json \
$src_dir/src/amd/registers/gfx940.json \
$src_dir/src/amd/registers/gfx10.json \
$src_dir/src/amd/registers/gfx10-rsrc.json \
$src_dir/src/amd/registers/gfx103.json \
$src_dir/src/amd/registers/gfx11.json \
$src_dir/src/amd/registers/gfx115.json \
$src_dir/src/amd/registers/gfx11-rsrc.json \
$src_dir/src/amd/registers/pkt3.json \
$src_dir/src/amd/registers/registers-manually-defined.json \
>$build_dir/src/amd/common/sid_tables.h &
$python3 $src_dir/src/amd/registers/makeregheader.py \
$src_dir/src/amd/registers/gfx6.json \
$src_dir/src/amd/registers/gfx7.json \
$src_dir/src/amd/registers/gfx8.json \
$src_dir/src/amd/registers/gfx81.json \
$src_dir/src/amd/registers/gfx9.json \
$src_dir/src/amd/registers/gfx940.json \
$src_dir/src/amd/registers/gfx10.json \
$src_dir/src/amd/registers/gfx10-rsrc.json \
$src_dir/src/amd/registers/gfx11.json \
$src_dir/src/amd/registers/gfx115.json \
$src_dir/src/amd/registers/gfx11-rsrc.json \
$src_dir/src/amd/registers/gfx103.json \
$src_dir/src/amd/registers/pkt3.json \
$src_dir/src/amd/registers/registers-manually-defined.json \
--sort address \
--guard AMDGFXREGS_H \
>$build_dir/src/amd/common/amdgfxregs.h &
#===============================================================================
# libcompiler required by libnir
export PYTHONPATH=$mako
#------------------------------------------------------------------------------
$python3 $src_dir/src/compiler/glsl/ir_expression_operation.py enum \
>$build_dir/src/compiler/glsl/ir_expression_operation.h &
#------------------------------------------------------------------------------
$python3 $src_dir/src/compiler/builtin_types_h.py \
$build_dir/src/compiler/builtin_types.h &
#------------------------------------------------------------------------------
$python3 $src_dir/src/compiler/builtin_types_c.py \
$build_dir/src/compiler/builtin_types.c &
#------------------------------------------------------------------------------
$python3 $src_dir/src/compiler/builtin_types_cpp_h.py \
$build_dir/src/compiler/builtin_types_cpp.h &
#------------------------------------------------------------------------------
unset PYTHONPATH
#===============================================================================
# libnir
export PYTHONPATH=$mako
$python3 $src_dir/src/compiler/spirv/spirv_info_c.py \
$src_dir/src/compiler/spirv/spirv.core.grammar.json \
$build_dir/src/compiler/spirv/spirv_info.c &
$python3 $src_dir/src/compiler/spirv/vtn_gather_types_c.py \
$src_dir/src/compiler/spirv/spirv.core.grammar.json \
$build_dir/src/compiler/spirv/vtn_gather_types.c &
$python3 $src_dir/src/compiler/spirv/vtn_generator_ids_h.py \
$src_dir/src/compiler/spirv/spir-v.xml \
$build_dir/src/compiler/spirv/vtn_generator_ids.h &
# nir generated files
$python3 $src_dir/src/compiler/nir/nir_constant_expressions.py \
>$build_dir/src/compiler/nir/nir_constant_expressions.c &
$python3 $src_dir/src/compiler/nir/nir_opt_algebraic.py \
>$build_dir/src/compiler/nir/nir_opt_algebraic.c &
$python3 $src_dir/src/compiler/nir/nir_opcodes_c.py \
>$build_dir/src/compiler/nir/nir_opcodes.c &
$python3 $src_dir/src/compiler/nir/nir_intrinsics_c.py \
--outdir $build_dir/src/compiler/nir &
unset PYTHONPATH
#===============================================================================
# libaco
export PYTHONPATH=$mako
$python3 $src_dir/src/amd/compiler/aco_opcodes_h.py \
>$build_dir/src/amd/compiler/aco_opcodes.h &
$python3 $src_dir/src/amd/compiler/aco_opcodes_cpp.py \
>$build_dir/src/amd/compiler/aco_opcodes.cpp &
$python3 $src_dir/src/amd/compiler/aco_builder_h.py \
>$build_dir/src/amd/compiler/aco_builder.h &
unset PYTHONPATH
#===============================================================================
# libmesautils
export PYTHONPATH=$mako
$python3 $src_dir/src/util/format_srgb.py \
>$build_dir/src/util/format_srgb.c
$python3 $src_dir/src/util/format/u_format_table.py \
$src_dir/src/util/format/u_format.csv \
>$build_dir/src/util/u_format_table.c
# wow, really?
$python3 $src_dir/src/util/format/u_format_table.py \
--header \
$src_dir/src/util/format/u_format.csv \
>$build_dir/src/util/format/u_format_pack.h
# oooof!
$python3 $src_dir/src/util/driconf_static.py \
$src_dir/src/util/00-mesa-defaults.conf \
$build_dir/src/util/driconf_static.h
unset PYTHONPATH
#$src_dir/src/util/bitset_test.cpp wtf? rotten brain?
#===============================================================================
# amd vulkan
export PYTHONPATH=$mako
#------------------------------------------------------------------------------
# specific API to work around _still maintained at the time of writing _ game
# executable... this is the beginning of the end...
$python3 $src_dir/src/vulkan/util/vk_entrypoints_gen.py \
--beta false \
--xml $vulkan_api_xml \
--proto --weak \
--out-h $build_dir/src/amd/vulkan/radv_entrypoints.h \
--out-c $build_dir/src/amd/vulkan/radv_entrypoints.c \
--prefix radv \
--device-prefix metro_exodus \
--device-prefix rage2 &
#------------------------------------------------------------------------------
#$python3 $src_dir/src/amd/vulkan/radv_extensions.py \
# --xml $vulkan_api_xml \
# --out-c radv_extensions.c \
# --out-h radv_extensions.h &
#------------------------------------------------------------------------------
#$python3 $src_dir/src/amd/vulkan/vk_format_table.py \
# $src_dir/src/amd/vulkan/vk_format_layout.csv \
# >$build_dir/vk_format_table.c &
#------------------------------------------------------------------------------
$python3 $src_dir/src/amd/common/gfx10_format_table.py \
$src_dir/src/util/format/u_format.csv \
$src_dir/src/amd/registers/gfx10-rsrc.json \
$src_dir/src/amd/registers/gfx11-rsrc.json \
>$build_dir/src/amd/common/gfx10_format_table.c &
#------------------------------------------------------------------------------
git_sha1=no_git_sha1_available
if test -d $src_dir/.git; then
git_sha1=$(git --git-dir=$src_dir/.git rev-parse HEAD)
fi
echo git_sha1=$git_sha1
echo "#define MESA_GIT_SHA1 \"$git_sha1\"" >$build_dir/src/git_sha1.h &
unset PYTHONPATH
#===============================================================================
Mode |
Type |
Size |
Ref |
File |
100644 |
blob |
5 |
8eba6c8dd4dcaf6166bd22285ed34625f38a84ff |
.gitignore |
100755 |
blob |
1587 |
57fa4264b9ee0ae0a6f678f2527a05d3b22dda78 |
00-bootstrap-build.sh |
100755 |
blob |
848 |
a30f443bf405d56682efe3b4c5d3a19d5f7eb45d |
01-re-bootstrap-build.sh |
100644 |
blob |
2142 |
f19c2d6b293244bb11a3f74ee77c10675cadc7d6 |
INSTALL |
100644 |
blob |
30 |
c9b735fa1332286f4b3f5f81fa10527fd7506b6e |
LICENSE |
040000 |
tree |
- |
dafcdc47689e7f55dddc3ef81ae62ee65b1cc89d |
builders |
100644 |
blob |
1773 |
ef1551089a803bde37e36edc8d61bb819d06f793 |
conf.bootstrap.sh |
100644 |
blob |
479 |
8cc15efe46965ac7750fe304460f5a2b0aa4201c |
conf.sh |
040000 |
tree |
- |
7b9a10f45c2ce0f3169feab699ade1467b9e9033 |
files |
100755 |
blob |
356 |
8fb8be28ac72f7214b59934b9f74a682665f2d32 |
pkg-build |
100644 |
blob |
22800641 |
e9e6291054c857401f6835c728f31541dae4311e |
steam.tar.bz2 |
100644 |
blob |
173 |
2047af328b22f9d146585cd9e759edbc18122250 |
utils.sh |
040000 |
tree |
- |
8e23f551092a35f82b37129dd08c35c4d313c17b |
x64 |
040000 |
tree |
- |
b7a22de7f5cbd97650dd45412ef7d4246e395eb8 |
x86 |
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"
Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/sylware/nyanlinux
Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/sylware/nyanlinux
Clone this repository using git:
git clone git://git.rocketgit.com/user/sylware/nyanlinux
You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a
merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main