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-d31ca63527e3eb5bf271267c2a60a9b5af83bd89/contrib/gallium_auxiliary.sh (3a69cc40e27288cdbf34db0837752b62d893dd22) (14248 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_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_flush.c \
$src_dir/src/gallium/auxiliary/util/u_debug_image.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_driconf.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_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/util/u_vertex_state_cache.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 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 - 357061d85902d374b516bb96fedea2b8545f0f14 builders
100644 blob 1773 ef1551089a803bde37e36edc8d61bb819d06f793 conf.bootstrap.sh
100644 blob 479 8cc15efe46965ac7750fe304460f5a2b0aa4201c conf.sh
040000 tree - 7f251574f7a78832ee5b4b8b8aa6de70a9ae4c0e files
100755 blob 333 06859f922e41c1e691c72ada1be3f981ef05f602 pkg-build
100644 blob 22800641 e9e6291054c857401f6835c728f31541dae4311e steam.tar.bz2
100644 blob 173 2047af328b22f9d146585cd9e759edbc18122250 utils.sh
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