head 1.3; access; symbols pkgsrc-2021Q4:1.2.0.16 pkgsrc-2021Q4-base:1.2 pkgsrc-2021Q3:1.2.0.14 pkgsrc-2021Q3-base:1.2 pkgsrc-2021Q2:1.2.0.12 pkgsrc-2021Q2-base:1.2 pkgsrc-2021Q1:1.2.0.10 pkgsrc-2021Q1-base:1.2 pkgsrc-2020Q4:1.2.0.8 pkgsrc-2020Q4-base:1.2 pkgsrc-2020Q3:1.2.0.6 pkgsrc-2020Q3-base:1.2 pkgsrc-2020Q2:1.2.0.4 pkgsrc-2020Q2-base:1.2 pkgsrc-2020Q1:1.2.0.2 pkgsrc-2020Q1-base:1.2 pkgsrc-2019Q4:1.1.0.6 pkgsrc-2019Q4-base:1.1 pkgsrc-2019Q3:1.1.0.2 pkgsrc-2019Q3-base:1.1; locks; strict; comment @// @; 1.3 date 2022.03.13.15.50.05; author tnn; state dead; branches; next 1.2; commitid MGlmXua80GA0t4wD; 1.2 date 2020.03.08.10.35.03; author tnn; state Exp; branches; next 1.1; commitid 5cz4nA4sbtFFlAZB; 1.1 date 2019.08.21.13.35.28; author nia; state Exp; branches; next ; commitid QbuTYFguNT3eMTzB; desc @@ 1.3 log @MesaLib: update to 21.3.7 Of particular note is this change in Mesa 21.2: "32-bit x86 builds now default disable x87 math and use sse2." This might need to be revisited in pkgsrc. Bugfixes omitted from ChangeLog. New features in Mesa 21.3: VK_EXT_color_write_enable on lavapipe GL_ARB_texture_filter_anisotropic in llvmpipe Anisotropic texture filtering in lavapipe VK_EXT_shader_atomic_float2 on Intel and RADV. VK_EXT_vertex_input_dynamic_state on RADV. VK_KHR_timeline_semaphore on lavapipe VK_EXT_external_memory_host on lavapipe GL_AMD_pinned_memory on llvmpipe GL 4.5 compatibility on llvmpipe VK_EXT_primitive_topology_list_restart on RADV and lavapipe. ES 3.2 on zink VK_KHR_depth_stencil_resolve on lavapipe VK_KHR_shader_integer_dot_product on RADV. OpenGL FP16 support on llvmpipe VK_KHR_shader_float16_int8 on lavapipe VK_KHR_shader_subgroup_extended_types on lavapipe VK_KHR_spirv_1_4 on lavapipe Experimental raytracing support on RADV VK_KHR_synchronization2 on Intel NGG shader based culling is now enabled by default on GFX10.3 on RADV. VK_KHR_maintenance4 on RADV VK_KHR_format_feature_flags2 on RADV. EGL_EXT_present_opaque on wayland New features in Mesa 21.2: zink supports GL_ARB_texture_filter_minmax, GL_ARB_shader_clock VK_EXT_provoking_vertex on RADV. VK_EXT_extended_dynamic_state2 on RADV. VK_EXT_global_priority_query on RADV. VK_EXT_physical_device_drm on RADV. VK_KHR_shader_subgroup_uniform_control_flow on Intel and RADV. VK_EXT_color_write_enable on RADV. 32-bit x86 builds now default disable x87 math and use sse2. GL ES 3.1 on GT21x hardware. VK_EXT_acquire_drm_display on RADV and ANV. VK_EXT_vertex_input_dynamic_state on lavapipe wideLines on lavapipe VK_EXT_line_rasterization on lavapipe VK_EXT_multi_draw on ANV, lavapipe, and RADV VK_KHR_separate_depth_stencil_layouts on lavapipe VK_EXT_separate_stencil_usage on lavapipe VK_EXT_extended_dynamic_state2 on lavapipe NGG shader based primitive culling is now supported by RADV. Panfrost supports OpenGL ES 3.1 New Asahi driver for the Apple M1 GL_ARB_sample_locations on zink GL_ARB_sparse_buffer on zink GL_ARB_shader_group_vote on zink DRM format modifiers on zink freedreno+turnip: Initial support for a6xx gen4 (a660, a635) New features in Mesa 21.1: VK_KHR_workgroup_memory_explicit_layout on Intel, RADV DRM format modifiers for AMD. VK_KHR_zero_initialize_workgroup_memory on Intel, RADV Zink exposes GL 4.6 and ES 3.1 GL_EXT_depth_bounds_test on softpipe, zink GL_EXT_texture_filter_minmax on nvc0 (gm200+) GL_ARB_texture_filter_minmax on nvc0 (gm200+) GL_ARB_post_depth_coverage on zink VK_KHR_copy_commands2 on lavapipe lavapipe exposes Vulkan 1.1 VRS attachment on RADV New features in Mesa 21.0: GL_EXT_demote_to_helper_invocation on radeonsi GL_NV_compute_shader_derivatives on radeonsi EGL_MESA_platform_xcb Removed GL_NV_point_sprite for classic swrast. driconf: remove glx_disable_oml_sync_control, glx_disable_sgi_video_sync, and glx_disable_ext_buffer_age Removed support for loading DRI drivers older than Mesa 8.0, including all DRI1 support Add support for VK_VALVE_mutable_descriptor_type on RADV Removed classic OSMesa in favor of the newly improved gallium OSMesa VK_KHR_fragment_shading_rate on RADV (RDNA2 only) Freedreno a6xx exposes GL 3.3 Classic swrast dri driver removed in favor of gallium swrast (llvmpipe or softpipe) Panfrost g31/g52/g72 exposes ES 3.0 Panfrost t760+ exposes GL 3.1 (including on Bifrost) Sparse memory support on RADV Rapid packed math (16bit-vectorization) on RADV New features in Mesa 20.3: GL 4.5 on llvmpipe GL_INTEL_blackhole_render on radeonsi GL_NV_copy_depth_to_color for NIR GL_NV_half_float GL_NV_shader_atomic_int64 on radeonsi EGL_KHR_swap_buffers_with_damage on X11 (DRI3) VK_PRESENT_MODE_FIFO_RELAXED on X11 GLX_EXT_swap_control for DRI2 and DRI3 GLX_EXT_swap_control_tear for DRI3 VK_KHR_copy_commands2 on RADV VK_KHR_shader_terminate_invocation on RADV NGG GS support in ACO VK_KHR_shader_terminate_invocation on ANV driconf: add glx_extension_override driconf: add indirect_gl_extension_override VK_AMD_mixed_attachment_samples on RADV (GFX6-GFX7). GL_MESA_pack_invert on r100 and vieux GL_ANGLE_pack_reverse_row_order VK_EXT_shader_image_atomic_int64 on RADV New features in mesa 20.2: GL_ARB_compute_variable_group_size on Iris. GL_ARB_gpu_shader5 on llvmpipe GL_ARB_post_depth_coverage on llvmpipe GLES 3.2 on llvmpipe GL_EXT_shader_group_vote on GLES3. GL_EXT_texture_shadow_lod on llvmpipe VK_AMD_texture_gather_bias_lod on RADV. VK_AMD_gpu_shader_half_float on RADV/ACO. VK_AMD_gpu_shader_int16 on RADV/ACO. VK_EXT_extended_dynamic_state on ANV and RADV. VK_EXT_image_robustness on RADV. VK_EXT_private_data on ANV and RADV. VK_EXT_custom_border_color on ANV and RADV. VK_EXT_pipeline_creation_cache_control on ANV and RADV. VK_EXT_shader_demote_to_helper_invocation on RADV/LLVM. VK_EXT_subgroup_size_control on RADV/ACO. VK_GOOGLE_user_type on ANV and RADV. VK_KHR_shader_subgroup_extended_types on RADV/ACO. GL_ARB_gl_spirv on nvc0/nir. GL_ARB_spirv_extensions on nvc0/nir. RADV now uses ACO per default as backend RADV_DEBUG=llvm option to enable LLVM backend for RADV VK_EXT_image_robustness for ANV VK_EXT_shader_atomic_float on ANV VK_EXT_4444_formats on ANV and RADV. VK_KHR_memory_model on RADV. GL 4.5 on llvmpipe EGL_KHR_swap_buffers_with_damage on X11 (DRI3) New features in mesa 20.1: GL_ARB_compute_variable_group_size on i965. GL_EXT_depth_bounds_test on Iris. GL_EXT_texture_shadow_lod on radeonsi, nvc0. GL_NV_alpha_to_coverage_dither_control on radeonsi GL_NV_copy_image on all gallium drivers. GL_NV_pixel_buffer_object on all gallium drivers, i915, i965, swrast. GL_NV_viewport_array2 on nvc0 (GM200+). GL_NV_viewport_swizzle on nvc0 (GM200+). VK_AMD_memory_overallocation_behavior on RADV. VK_KHR_shader_non_semantic_info on Intel, RADV. GL_EXT_draw_instanced on gles2 VK_KHR_8bit_storage for ACO on GFX8+ VK_KHR_16bit_storage for ACO on GFX8+ (storageInputOutput16 is still unsupported) shaderInt16 for ACO on GFX9+ VK_KHR_shader_float16_int8 for ACO on GFX8+ (shaderFloat16 is still unsupported) VK_EXT_robustness2 on Intel, RADV. Add Rocket Lake (RKL) support on anvil and iris. @ text @$NetBSD: patch-src_gallium_state__trackers_clover_llvm_invocation.cpp,v 1.2 2020/03/08 10:35:03 tnn Exp $ Patch from FreeBSD ports graphics/mesa-dri 17.1.0 # fix errors like the following # # llvm/invocation.cpp:(.text+0x1275): undefined reference to `std::__1::basic_string, std::__1::allocator >::c_str() const' # /usr/bin/ld: ../../../../src/gallium/state_trackers/clover/.libs/libclover.a(libclllvm_la-invocation.o): relocation R_X86_64_PC32 against `_ZNKSt3__112bas ic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE5c_strEv' can not be used when making a shared object; recompile with -fPIC # /usr/bin/ld: final link failed: Bad value # --- src/gallium/state_trackers/clover/llvm/invocation.cpp.orig 2020-03-05 21:34:31.000000000 +0000 +++ src/gallium/state_trackers/clover/llvm/invocation.cpp @@@@ -188,6 +188,10 @@@@ namespace { return get_lang_standard_from_version_str(device_version); } +#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__) + const char* cstr(const std::string& str) { return str.c_str(); } +#endif + std::unique_ptr create_compiler_instance(const device &dev, const std::string& ir_target, const std::vector &opts, @@@@ -200,9 +204,13 @@@@ namespace { // Parse the compiler options. A file name should be present at the end // and must have the .cl extension in order for the CompilerInvocation // class to recognize it as an OpenCL source file. +#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__) + std::vector copts(opts.size()); + std::transform(opts.begin(), opts.end(), copts.begin(), cstr); +#else const std::vector copts = map(std::mem_fn(&std::string::c_str), opts); - +#endif const target &target = ir_target; const std::string &device_clc_version = dev.device_clc_version(); @ 1.2 log @MesaLib: update to mesa-20.0.1 New features in mesa 20: OpenGL 4.6 on radeonsi. GL_ARB_gl_spirv on radeonsi. GL_ARB_spirv_extensions on radeonsi. GL_EXT_direct_state_access for compatibility profile. VK_AMD_device_coherent_memory on RADV. VK_AMD_mixed_attachment_samples on RADV. VK_AMD_shader_explicit_vertex_parameter on RADV. VK_AMD_shader_image_load_store_lod on RADV. VK_AMD_shader_fragment_mask on RADV. VK_EXT_subgroup_size_control on RADV/LLVM. VK_KHR_separate_depth_stencil_layouts on Intel, RADV. VK_KHR_shader_subgroup_extended_types on RADV. VK_KHR_swapchain_mutable_format on RADV. VK_KHR_shader_float_controls on RADV/ACO. GFX6 (Southern Islands) and GFX7 (Sea Islands) support on RADV/ACO. Wave32 support for GFX10 (Navi) on RADV/ACO. Compilation of Geometry Shaders on RADV/ACO. Vulkan 1.2 on Intel, RADV. GL_INTEL_shader_integer_functions2 and VK_INTEL_shader_integer_functions2 on Intel. As usual many bugfixes also. @ text @d1 1 a1 1 $NetBSD: patch-src_gallium_state__trackers_clover_llvm_invocation.cpp,v 1.1 2019/08/21 13:35:28 nia Exp $ @ 1.1 log @Move graphics/MesaLib18 to graphics/MesaLib. Move graphics/MesaLib to graphics/MesaLib11. @ text @d1 1 a1 1 $NetBSD: patch-src_gallium_state__trackers_clover_llvm_invocation.cpp,v 1.1 2018/10/07 23:49:31 ryoon Exp $ d14 1 a14 1 --- src/gallium/state_trackers/clover/llvm/invocation.cpp.orig 2018-09-07 21:18:07.000000000 +0000 d16 1 a16 1 @@@@ -181,6 +181,10 @@@@ namespace { d25 1 a25 1 create_compiler_instance(const device &dev, d27 1 a27 1 @@@@ -193,8 +197,13 @@@@ namespace { d37 1 d39 2 a41 2 const target &target = dev.ir_target(); const std::string &device_clc_version = dev.device_clc_version(); @