sylware / nyanlinux (public) (License: AFFERO GPLv3) (since 2019-09-09) (hash sha1)
scripts for a lean, from scratch, amd hardware, linux distro

/builders/mesa-gl-amd-sh-f1207229f92fe9c2f5f1447d0859d2152d2443ab/contrib/gallium_auxiliary.sh (ba1415897619a764719f1f0a36d0f4865aaf0f7f) (14361 bytes) (mode 100644) (type blob)

printf "\tbuilding gallium auxiliary sub-components-->\n"

#-------------------------------------------------------------------------------

mkdir -p $build_dir/src/gallium/auxiliary/indices

$python3 $src_dir/src/gallium/auxiliary/indices/u_indices_gen.py \
>$build_dir/src/gallium/auxiliary/indices/u_indices_gen.c

$python3 $src_dir/src/gallium/auxiliary/indices/u_unfilled_gen.py \
>$build_dir/src/gallium/auxiliary/indices/u_unfilled_gen.c

#-------------------------------------------------------------------------------

libgallium_c_files="\
$build_dir/src/gallium/auxiliary/indices/u_indices_gen.c \
$build_dir/src/gallium/auxiliary/indices/u_unfilled_gen.c \
$src_dir/src/gallium/auxiliary/cso_cache/cso_cache.c \
$src_dir/src/gallium/auxiliary/cso_cache/cso_cache.h \
$src_dir/src/gallium/auxiliary/cso_cache/cso_context.c \
$src_dir/src/gallium/auxiliary/cso_cache/cso_hash.c \
$src_dir/src/gallium/auxiliary/draw/draw_context.c \
$src_dir/src/gallium/auxiliary/draw/draw_fs.c \
$src_dir/src/gallium/auxiliary/draw/draw_gs.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_aaline.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_aapoint.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_clip.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_cull.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_flatshade.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_offset.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_pstipple.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_stipple.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_twoside.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_unfilled.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_user_cull.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_util.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_validate.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_vbuf.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_wide_line.c \
$src_dir/src/gallium/auxiliary/draw/draw_pipe_wide_point.c \
$src_dir/src/gallium/auxiliary/draw/draw_prim_assembler.c \
$src_dir/src/gallium/auxiliary/draw/draw_private.h \
$src_dir/src/gallium/auxiliary/draw/draw_pt.c \
$src_dir/src/gallium/auxiliary/draw/draw_pt_emit.c \
$src_dir/src/gallium/auxiliary/draw/draw_pt_fetch.c \
$src_dir/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c \
$src_dir/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c \
$src_dir/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c \
$src_dir/src/gallium/auxiliary/draw/draw_pt_post_vs.c \
$src_dir/src/gallium/auxiliary/draw/draw_pt_so_emit.c \
$src_dir/src/gallium/auxiliary/draw/draw_pt_util.c \
$src_dir/src/gallium/auxiliary/draw/draw_pt_vsplit.c \
$src_dir/src/gallium/auxiliary/draw/draw_tess.c \
$src_dir/src/gallium/auxiliary/draw/draw_vertex.c \
$src_dir/src/gallium/auxiliary/draw/draw_vs.c \
$src_dir/src/gallium/auxiliary/draw/draw_vs_exec.c \
$src_dir/src/gallium/auxiliary/draw/draw_vs_variant.c \
$src_dir/src/gallium/auxiliary/driver_ddebug/dd_context.c \
$src_dir/src/gallium/auxiliary/driver_ddebug/dd_draw.c \
$src_dir/src/gallium/auxiliary/driver_ddebug/dd_screen.c \
$src_dir/src/gallium/auxiliary/driver_noop/noop_pipe.c \
$src_dir/src/gallium/auxiliary/driver_noop/noop_state.c \
$src_dir/src/gallium/auxiliary/driver_rbug/rbug_context.c \
$src_dir/src/gallium/auxiliary/driver_rbug/rbug_core.c \
$src_dir/src/gallium/auxiliary/driver_rbug/rbug_objects.c \
$src_dir/src/gallium/auxiliary/driver_rbug/rbug_screen.c \
$src_dir/src/gallium/auxiliary/driver_trace/tr_context.c \
$src_dir/src/gallium/auxiliary/driver_trace/tr_dump.c \
$src_dir/src/gallium/auxiliary/driver_trace/tr_dump_state.c \
$src_dir/src/gallium/auxiliary/driver_trace/tr_public.h \
$src_dir/src/gallium/auxiliary/driver_trace/tr_screen.c \
$src_dir/src/gallium/auxiliary/driver_trace/tr_texture.c \
$src_dir/src/gallium/auxiliary/hud/font.c \
$src_dir/src/gallium/auxiliary/hud/hud_context.c \
$src_dir/src/gallium/auxiliary/hud/hud_cpu.c \
$src_dir/src/gallium/auxiliary/hud/hud_nic.c \
$src_dir/src/gallium/auxiliary/hud/hud_cpufreq.c \
$src_dir/src/gallium/auxiliary/hud/hud_diskstat.c \
$src_dir/src/gallium/auxiliary/hud/hud_sensors_temp.c \
$src_dir/src/gallium/auxiliary/hud/hud_driver_query.c \
$src_dir/src/gallium/auxiliary/hud/hud_fps.c \
$src_dir/src/gallium/auxiliary/indices/u_primconvert.c \
$src_dir/src/gallium/auxiliary/os/os_process.c \
$src_dir/src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c \
$src_dir/src/gallium/auxiliary/pipebuffer/pb_bufmgr_cache.c \
$src_dir/src/gallium/auxiliary/pipebuffer/pb_bufmgr_debug.c \
$src_dir/src/gallium/auxiliary/pipebuffer/pb_bufmgr_mm.c \
$src_dir/src/gallium/auxiliary/pipebuffer/pb_bufmgr_slab.c \
$src_dir/src/gallium/auxiliary/pipebuffer/pb_cache.c \
$src_dir/src/gallium/auxiliary/pipebuffer/pb_slab.c \
$src_dir/src/gallium/auxiliary/pipebuffer/pb_validate.c \
$src_dir/src/gallium/auxiliary/postprocess/pp_celshade.c \
$src_dir/src/gallium/auxiliary/postprocess/pp_colors.c \
$src_dir/src/gallium/auxiliary/postprocess/pp_colors.h \
$src_dir/src/gallium/auxiliary/postprocess/pp_init.c \
$src_dir/src/gallium/auxiliary/postprocess/pp_mlaa.c \
$src_dir/src/gallium/auxiliary/postprocess/pp_program.c \
$src_dir/src/gallium/auxiliary/postprocess/pp_run.c \
$src_dir/src/gallium/auxiliary/rbug/rbug_connection.c \
$src_dir/src/gallium/auxiliary/rbug/rbug_context.c \
$src_dir/src/gallium/auxiliary/rbug/rbug_core.c \
$src_dir/src/gallium/auxiliary/rbug/rbug_demarshal.c \
$src_dir/src/gallium/auxiliary/rbug/rbug_shader.c \
$src_dir/src/gallium/auxiliary/rbug/rbug_texture.c \
$src_dir/src/gallium/auxiliary/rtasm/rtasm_cpu.c \
$src_dir/src/gallium/auxiliary/rtasm/rtasm_execmem.c \
$src_dir/src/gallium/auxiliary/rtasm/rtasm_x86sse.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_aa_point.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_build.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_dump.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_dynamic_indexing.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_exec.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_emulate.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_from_mesa.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_info.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_iterate.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_lowering.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_parse.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_point_sprite.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_sanity.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_scan.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_strings.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_text.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_transform.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_two_side.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_ureg.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_util.c \
$src_dir/src/gallium/auxiliary/tgsi/tgsi_vpos.c \
$src_dir/src/gallium/auxiliary/translate/translate.c \
$src_dir/src/gallium/auxiliary/translate/translate_cache.c \
$src_dir/src/gallium/auxiliary/translate/translate_generic.c \
$src_dir/src/gallium/auxiliary/translate/translate_sse.c \
$src_dir/src/gallium/auxiliary/util/u_async_debug.c \
$src_dir/src/gallium/auxiliary/util/u_bitmask.c \
$src_dir/src/gallium/auxiliary/util/u_blitter.c \
$src_dir/src/gallium/auxiliary/util/u_cache.c \
$src_dir/src/gallium/auxiliary/util/u_compute.c \
$src_dir/src/gallium/auxiliary/util/u_debug_describe.c \
$src_dir/src/gallium/auxiliary/util/u_debug_flush.c \
$src_dir/src/gallium/auxiliary/util/u_debug_image.c \
$src_dir/src/gallium/auxiliary/util/u_debug_refcnt.c \
$src_dir/src/gallium/auxiliary/util/u_dl.c \
$src_dir/src/gallium/auxiliary/util/u_draw.c \
$src_dir/src/gallium/auxiliary/util/u_draw_quad.c \
$src_dir/src/gallium/auxiliary/util/u_dump_defines.c \
$src_dir/src/gallium/auxiliary/util/u_dump_state.c \
$src_dir/src/gallium/auxiliary/util/u_framebuffer.c \
$src_dir/src/gallium/auxiliary/util/u_gen_mipmap.c \
$src_dir/src/gallium/auxiliary/util/u_handle_table.c \
$src_dir/src/gallium/auxiliary/util/u_hash_table.c \
$src_dir/src/gallium/auxiliary/util/u_helpers.c \
$src_dir/src/gallium/auxiliary/util/u_index_modify.c \
$src_dir/src/gallium/auxiliary/util/u_linear.c \
$src_dir/src/gallium/auxiliary/util/u_live_shader_cache.c \
$src_dir/src/gallium/auxiliary/util/u_log.c \
$src_dir/src/gallium/auxiliary/util/u_network.c \
$src_dir/src/gallium/auxiliary/util/u_prim.c \
$src_dir/src/gallium/auxiliary/util/u_prim_restart.c \
$src_dir/src/gallium/auxiliary/util/u_pstipple.c \
$src_dir/src/gallium/auxiliary/util/u_resource.c \
$src_dir/src/gallium/auxiliary/util/u_sampler.c \
$src_dir/src/gallium/auxiliary/util/u_screen.c \
$src_dir/src/gallium/auxiliary/util/u_simple_shaders.c \
$src_dir/src/gallium/auxiliary/util/u_split_draw.c \
$src_dir/src/gallium/auxiliary/util/u_suballoc.c \
$src_dir/src/gallium/auxiliary/util/u_surface.c \
$src_dir/src/gallium/auxiliary/util/u_tests.c \
$src_dir/src/gallium/auxiliary/util/u_texture.c \
$src_dir/src/gallium/auxiliary/util/u_tile.c \
$src_dir/src/gallium/auxiliary/util/u_transfer.c \
$src_dir/src/gallium/auxiliary/util/u_transfer_helper.c \
$src_dir/src/gallium/auxiliary/util/u_threaded_context.c \
$src_dir/src/gallium/auxiliary/util/u_upload_mgr.c \
$src_dir/src/gallium/auxiliary/util/u_vbuf.c \
$src_dir/src/gallium/auxiliary/nir/nir_draw_helpers.c \
$src_dir/src/gallium/auxiliary/nir/tgsi_to_nir.c \
$src_dir/src/gallium/auxiliary/nir/nir_to_tgsi.c \
\
$src_dir/src/gallium/auxiliary/renderonly/renderonly.c"

libgallium_cxx_files="\
$src_dir/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp \
$src_dir/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp \
$src_dir/src/gallium/auxiliary/tessellator/p_tessellator.cpp \
$src_dir/src/gallium/auxiliary/tessellator/tessellator.cpp \
"

#------------------------------------------------------------------------------

for f in $libgallium_c_files
do
	libgallium_c_obj_dir=$(dirname $f)
	libgallium_c_obj_dir=$build_dir/${libgallium_c_obj_dir#*/src/}
	mkdir -p $libgallium_c_obj_dir

	libgallium_c_obj=$libgallium_c_obj_dir/$(basename $f .c).o
	libgallium_a="$libgallium_a $libgallium_c_obj"

	$cco_slib -o $libgallium_c_obj $f \
		-I$build_dir/src/compiler/nir \
		-I$src_dir/src/compiler/nir \
		-I$src_dir/src/gallium/auxiliary/util \
		-I$src_dir/src/gallium/auxiliary \
		-I$src_dir/src/gallium/include \
		-I$src_dir/src \
		-I$src_dir/include \
		\
		$cco_slib_common_trailer &
done

wait

#-------------------------------------------------------------------------------

for f in $libgallium_cxx_files
do
	libgallium_cxx_obj_dir=$(dirname $f)
	libgallium_cxx_obj_dir=$build_dir/${libgallium_cxx_obj_dir#*/src/}
	mkdir -p $libgallium_cxx_obj_dir

	libgallium_cxx_obj="$libgallium_cxx_obj_dir/$(basename $f .cpp).o"
	libgallium_a="$libgallium_a $libgallium_cxx_obj"

	$cxxo_slib -o $libgallium_cxx_obj $f \
		-I$src_dir/src/gallium/auxiliary \
		-I$src_dir/src/gallium/include \
		-I$src_dir/src \
		-I$src_dir/include \
		\
		$cxxo_slib_common_trailer &
done

wait

#-------------------------------------------------------------------------------

$ar $build_dir/libgallium.a $libgallium_a

#===============================================================================
# pipe-loader
# "backends" declare "devices", each linked to a specific winsys (windows
#  system):
#
#     - drm pipe-loader backend: declare a pipe loader device for each drm
#       supported piece of hardware. Each pipe loader device gets linked to the
#       piece of hardware specific winsys. For instance, amdgpu/drm device gets
#       linked to amdgpu/drm winsys (with the legacy radeon/drm winsys 
#       fallback). The drm backend is include only if HAVE_LIBDRM is defined.
#
#     - sw ("software") backend: declare the following devices:
#           - dri device linked to the dri winsys if HAVE_PIPE_LOADER_DRI is
#             defined
#           - kms_dri device linked to the kms_dri winsys if
#             HAVE_PIPE_LOADER_KMS is defined
#           - null device linked to the null winsys if DROP_PIPE_LOADER_MISC
#             is _NOT_ defined
#           - wrapper device linked to the wrapper winsys if
#             DROP_PIPE_LOADER_MISC is _NOT_ defined

# do remove the sw backend keep only the drm backend
mkdir -p $build_dir/src/gallium/auxiliary/pipe-loader
cp -f $src_dir/src/gallium/auxiliary/pipe-loader/pipe_loader.c $build_dir/src/gallium/auxiliary/pipe-loader/
patch -i $script_dir/pipe_loader.c.patch $build_dir/src/gallium/auxiliary/pipe-loader/pipe_loader.c

libpipe_loader_static_files="\
$build_dir/src/gallium/auxiliary/pipe-loader/pipe_loader.c \
\
$src_dir/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c \
"

#-------------------------------------------------------------------------------

for f in $libpipe_loader_static_files
do
	libpipe_loader_static_c_obj_dir=$(dirname $f)
	libpipe_loader_static_c_obj_dir=$build_dir/${libpipe_loader_static_c_obj_dir#*/src/}
	mkdir -p $libpipe_loader_static_c_obj_dir

	libpipe_loader_static_c_obj="$libpipe_loader_static_c_obj_dir/$(basename $f .c).o"
	libpipe_loader_static_a="$libpipe_loader_static_a $libpipe_loader_static_c_obj"

	$cco_slib -o $libpipe_loader_static_c_obj $f \
		-DGALLIUM_STATIC_TARGETS=1 \
		\
		-I$build_dir/src/util \
		-I$src_dir/src/gallium/auxiliary/pipe-loader \
		-I$src_dir/src/gallium/winsys \
		-I$src_dir/src/gallium/auxiliary \
		-I$src_dir/src/gallium/include \
		-I$src_dir/src/util \
		-I$src_dir/src/loader \
		-I$src_dir/src \
		-I$src_dir/include \
		\
		$cco_slib_common_trailer &

done

wait

#-------------------------------------------------------------------------------

$ar $build_dir/libpipe_loader_static.a $libpipe_loader_static_a

#===============================================================================
# galliumvl
# vl=Video Layer, where you can find vdpau/vapi hardwarer accelerated drivers,
# but we do use only the empty stubs

mkdir -p $build_dir/gallium/auxiliary/vl
$cco_slib -o $build_dir/gallium/auxiliary/vl/vl_stubs.o $src_dir/src/gallium/auxiliary/vl/vl_stubs.c \
	-I$src_dir/src/gallium/auxiliary \
	-I$src_dir/src/gallium/include \
	-I$src_dir/src \
	-I$src_dir/include \
	\
	$cco_slib_common_trailer

#-------------------------------------------------------------------------------

$ar $build_dir/libgalliumvl.a $build_dir/gallium/auxiliary/vl/vl_stubs.o

printf "\t<--gallium auxiliary sub-components built\n"


Mode Type Size Ref File
100644 blob 5 8eba6c8dd4dcaf6166bd22285ed34625f38a84ff .gitignore
100755 blob 2487 533016d4902080b22ae5dc5352802ebdd0d78b16 01-x86_64-nyan-linux-gnu.sh
100755 blob 4254 31fdc18cc3e6c6cfd8444fa404f7e82f849bad56 02-nyan-cross-core.sh
100755 blob 3549 7f1362bad6786a6818ce7a7d613d0dc11f611fb9 03-nyan-cross-x11.sh
100755 blob 12534 f9036d33f9f159ea2421ce1a1ebf7067f0f695c1 04-bootstrap-conf.sh
100755 blob 671 5f6bc5de83a883da3a7f0d4a37e1d0ef51c08561 10-sdk-conf.sh
100755 blob 2201 83fa9bf5bddbecb88db53779e324b9f270b1080e 11-sdk.sh
100755 blob 2826 090b622caebd38755ef1e57a9cf0f4f673b22a8e 12-desktop.sh
100755 blob 129 08460f0dece90701f01cbf7d710609ecbb3d56e0 13-beyond.sh
100644 blob 1075 1b5314b511d4c6dc7eb4db36a21dd47ba5a00a9d INSTALL
100644 blob 30 c9b735fa1332286f4b3f5f81fa10527fd7506b6e LICENSE
100644 blob 2657 64868dc96404c69ad85b979986821d6eb0420f9a README
040000 tree - 6760ecbdc26c4a98a0a897a4b390da50df923bf3 builders
100644 blob 2986 43344438bb4d817ff81f1890de1097f627c6d6c4 conf.sh
040000 tree - 84401dd4d78de6fafa1b3f59ccf2a0c62ecc705e files
100755 blob 351 6af534903b47d67a8dcb71653e7a0e1c1a4dfda4 pkg-build
100755 blob 289 7f5fbdbb712f274d04a036b9c486cbc9cf581be6 pkg-build-target
100644 blob 915 a7f21134dbc05d0e8227eaee366856b8171832a4 sdk.sh
100644 blob 22800641 e9e6291054c857401f6835c728f31541dae4311e steam.tar.bz2
040000 tree - 3ea8b6a0976e4a31f94cf63a35646cd184a55d4a 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