Home | History | Annotate | Line # | Download | only in dri
      1  1.44  jmcneill # $NetBSD: Makefile,v 1.44 2026/01/10 22:05:08 jmcneill Exp $
      2  1.13       mrg 
      3  1.19       mrg # Link the mesa_dri_drivers mega driver.
      4   1.1      cube 
      5  1.41    rillig NOLINT=		# Lots of "Unsupported platform" due to undefined __GNUC__
      6  1.41    rillig 
      7  1.19       mrg .include <bsd.own.mk>
      8  1.19       mrg 
      9  1.38       mrg .include "../mesa-which.mk"
     10  1.38       mrg 
     11  1.35  jmcneill .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" || \
     12  1.44  jmcneill     ${MACHINE} == "evbarm" || ${MACHINE} == "evbppc"
     13  1.19       mrg 
     14  1.19       mrg LIBISMODULE=	yes
     15  1.19       mrg LIBISCXX=     yes
     16  1.19       mrg 
     17  1.19       mrg SHLIB_MAJOR=	0
     18  1.19       mrg 
     19  1.19       mrg LIB=		mesa_dri_drivers
     20  1.19       mrg DRIDIR=		${X11USRLIBDIR}/modules/dri
     21  1.23  christos DRIDEBUGDIR=	${DEBUGDIR}${X11USRLIBDIR}/modules/dri
     22  1.19       mrg 
     23  1.30       mrg LDFLAGS+=	-Wl,--build-id=sha1
     24  1.30       mrg 
     25  1.29       mrg #	-I${X11SRCDIR.Mesa}/src/mesa/drivers/dri/${MODULE}/server \
     26  1.19       mrg 
     27  1.19       mrg CPPFLAGS+= \
     28  1.29       mrg 	-I${X11SRCDIR.Mesa}/src/egl/main \
     29  1.29       mrg 	-I${X11SRCDIR.Mesa}/src/egl/drivers/dri \
     30  1.29       mrg 	-I${X11SRCDIR.Mesa}/../src/mesa/drivers/dri/common \
     31  1.33      maya 	-I${DESTDIR}${X11INCDIR}/libdrm \
     32  1.33      maya 	-I${X11SRCDIR.Mesa}/../src/util
     33  1.19       mrg 
     34  1.30       mrg .if ${MACHINE_ARCH} == "i386"
     35  1.30       mrg CPPFLAGS.brw_disk_cache.c+=	-march=i586
     36  1.30       mrg .endif
     37  1.30       mrg 
     38  1.19       mrg #CPPFLAGS+=	-D_NETBSD_SOURCE -DPTHREADS
     39  1.19       mrg 
     40  1.44  jmcneill # We don't actually build this on non-x86/evbarm/evbppc at all, currently.
     41  1.21  christos # The following if statements are not effective since we only
     42  1.35  jmcneill # get here for x86 and evbarm
     43  1.10       abs .if ${MACHINE_ARCH} == "alpha"
     44  1.19       mrg DRIVERS=	r200 radeon
     45  1.17       mrg .elif ${MACHINE} == "macppc" || ${MACHINE} == "ofppc"
     46  1.19       mrg DRIVERS=	r200 radeon
     47  1.10       abs .elif ${MACHINE_ARCH} == "sparc64" || ${MACHINE_ARCH} == "sparc"
     48  1.19       mrg DRIVERS=	r200 radeon
     49  1.10       abs .elif ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
     50  1.19       mrg DRIVERS=	i915 i965 r200 radeon
     51  1.16  kiyohara .elif ${MACHINE} == "prep" || ${MACHINE} == "bebox"
     52  1.19       mrg DRIVERS=	r200 radeon
     53  1.35  jmcneill .elif ${MACHINE} == "evbarm"
     54  1.35  jmcneill DRIVERS=	r200 radeon
     55  1.44  jmcneill .elif ${MACHINE} == "evbppc"
     56  1.44  jmcneill DRIVERS=	# none
     57  1.19       mrg .endif
     58  1.19       mrg 
     59  1.19       mrg DRI_SUBDIRS= ${DRIVERS}
     60  1.19       mrg 
     61  1.39       rjs .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
     62  1.39       rjs 
     63  1.30       mrg DRI_SOURCES.i915+= \
     64  1.19       mrg 	i830_context.c \
     65  1.19       mrg 	i830_state.c \
     66  1.19       mrg 	i830_texblend.c \
     67  1.19       mrg 	i830_texstate.c \
     68  1.19       mrg 	i830_vtbl.c \
     69  1.19       mrg 	i915_context.c \
     70  1.19       mrg 	i915_debug_fp.c \
     71  1.19       mrg 	i915_fragprog.c \
     72  1.19       mrg 	i915_program.c \
     73  1.19       mrg 	i915_state.c \
     74  1.30       mrg 	i915_texstate.c \
     75  1.30       mrg 	i915_vtbl.c \
     76  1.30       mrg 	i915_tex_layout.c
     77  1.19       mrg 
     78  1.19       mrg I915_INTEL_FILES = \
     79  1.30       mrg 	intel_batchbuffer.c \
     80  1.30       mrg 	intel_blit.c \
     81  1.19       mrg 	intel_buffer_objects.c \
     82  1.30       mrg 	intel_buffers.c \
     83  1.19       mrg 	intel_clear.c \
     84  1.30       mrg 	intel_context.c \
     85  1.19       mrg 	intel_extensions.c \
     86  1.30       mrg 	intel_fbo.c \
     87  1.19       mrg 	intel_mipmap_tree.c \
     88  1.19       mrg 	intel_pixel.c \
     89  1.19       mrg 	intel_pixel_bitmap.c \
     90  1.19       mrg 	intel_pixel_copy.c \
     91  1.19       mrg 	intel_pixel_draw.c \
     92  1.19       mrg 	intel_pixel_read.c \
     93  1.30       mrg 	intel_regions.c \
     94  1.30       mrg 	intel_render.c \
     95  1.19       mrg 	intel_screen.c \
     96  1.19       mrg 	intel_state.c \
     97  1.19       mrg 	intel_syncobj.c \
     98  1.30       mrg 	intel_tex.c \
     99  1.30       mrg 	intel_tex_copy.c \
    100  1.30       mrg 	intel_tex_image.c \
    101  1.30       mrg 	intel_tex_layout.c \
    102  1.30       mrg 	intel_tex_subimage.c \
    103  1.30       mrg 	intel_tex_validate.c \
    104  1.30       mrg 	intel_tris.c
    105  1.19       mrg 
    106  1.19       mrg .for _f in ${I915_INTEL_FILES}
    107  1.29       mrg BUILDSYMLINKS+=		${X11SRCDIR.Mesa}/src/mesa/drivers/dri/i915/${_f} i915_${_f}
    108  1.19       mrg DRI_SOURCES.i915+=	i915_${_f}
    109  1.29       mrg CPPFLAGS.i915_${_f}+=	-I${X11SRCDIR.Mesa}/src/mesa/drivers/dri/i915
    110  1.19       mrg .endfor
    111  1.19       mrg 
    112  1.30       mrg .PATH: ${X11SRCDIR.Mesa}/src/intel/blorp
    113  1.30       mrg .PATH: ${X11SRCDIR.Mesa}/src/intel/common
    114  1.30       mrg .PATH: ${X11SRCDIR.Mesa}/src/intel/compiler
    115  1.30       mrg .PATH: ${X11SRCDIR.Mesa}/src/intel/dev
    116  1.39       rjs .PATH: ${X11SRCDIR.Mesa}/src/intel/ds
    117  1.30       mrg .PATH: ${X11SRCDIR.Mesa}/src/intel/isl
    118  1.33      maya .PATH: ${X11SRCDIR.Mesa}/src/intel/perf
    119  1.33      maya .PATH: ${X11SRCDIR.Mesa}/../src/intel/
    120  1.39       rjs .PATH: ${X11SRCDIR.Mesa}/../src/intel/compiler
    121  1.39       rjs .PATH: ${X11SRCDIR.Mesa}/../src/intel/isl
    122  1.33      maya .PATH: ${X11SRCDIR.Mesa}/../src/intel/perf
    123  1.30       mrg 
    124  1.30       mrg DRI_SOURCES.i965+= \
    125  1.30       mrg 	blorp.c \
    126  1.30       mrg 	blorp_blit.c \
    127  1.30       mrg 	blorp_clear.c \
    128  1.40      maya 	brw_batch.c \
    129  1.19       mrg 	brw_binding_tables.c \
    130  1.39       rjs 	brw_blit.c \
    131  1.30       mrg 	brw_blorp.c \
    132  1.40      maya 	brw_mipmap_tree.c \
    133  1.39       rjs 	brw_buffer_objects.c \
    134  1.39       rjs 	brw_buffers.c \
    135  1.30       mrg 	brw_bufmgr.c \
    136  1.19       mrg 	brw_cfg.cpp \
    137  1.19       mrg 	brw_clear.c \
    138  1.19       mrg 	brw_clip.c \
    139  1.19       mrg 	brw_clip_line.c \
    140  1.19       mrg 	brw_clip_point.c \
    141  1.19       mrg 	brw_clip_tri.c \
    142  1.19       mrg 	brw_clip_unfilled.c \
    143  1.19       mrg 	brw_clip_util.c \
    144  1.30       mrg 	brw_compile_clip.c \
    145  1.39       rjs 	brw_compile_ff_gs.c \
    146  1.30       mrg 	brw_compile_sf.c \
    147  1.30       mrg 	brw_compiler.c \
    148  1.30       mrg 	brw_compute.c \
    149  1.30       mrg 	brw_conditional_render.c \
    150  1.19       mrg 	brw_context.c \
    151  1.39       rjs 	brw_copy_image.c \
    152  1.30       mrg 	brw_cs.c \
    153  1.19       mrg 	brw_curbe.c \
    154  1.19       mrg 	brw_dead_control_flow.cpp \
    155  1.33      maya 	brw_debug_recompile.c \
    156  1.19       mrg 	brw_disasm.c \
    157  1.30       mrg 	brw_disasm_info.c \
    158  1.30       mrg 	brw_disk_cache.c \
    159  1.19       mrg 	brw_draw.c \
    160  1.19       mrg 	brw_draw_upload.c \
    161  1.39       rjs 	brw_eu.cpp \
    162  1.19       mrg 	brw_eu_compact.c \
    163  1.19       mrg 	brw_eu_emit.c \
    164  1.19       mrg 	brw_eu_util.c \
    165  1.30       mrg 	brw_eu_validate.c \
    166  1.39       rjs 	brw_extensions.c \
    167  1.40      maya 	brw_fbo.c \
    168  1.19       mrg 	brw_fs.cpp \
    169  1.30       mrg 	brw_fs_bank_conflicts.cpp \
    170  1.30       mrg 	brw_fs_cmod_propagation.cpp \
    171  1.30       mrg 	brw_fs_combine_constants.cpp \
    172  1.19       mrg 	brw_fs_copy_propagation.cpp \
    173  1.19       mrg 	brw_fs_cse.cpp \
    174  1.19       mrg 	brw_fs_dead_code_eliminate.cpp \
    175  1.19       mrg 	brw_fs_generator.cpp \
    176  1.19       mrg 	brw_fs_live_variables.cpp \
    177  1.30       mrg 	brw_fs_lower_pack.cpp \
    178  1.33      maya 	brw_fs_lower_regioning.cpp \
    179  1.30       mrg 	brw_fs_nir.cpp \
    180  1.19       mrg 	brw_fs_reg_allocate.cpp \
    181  1.40      maya 	brw_ff_gs.c \
    182  1.40      maya 	brw_formatquery.c \
    183  1.19       mrg 	brw_fs_register_coalesce.cpp \
    184  1.19       mrg 	brw_fs_saturate_propagation.cpp \
    185  1.39       rjs 	brw_fs_scoreboard.cpp \
    186  1.19       mrg 	brw_fs_sel_peephole.cpp \
    187  1.30       mrg 	brw_fs_validate.cpp \
    188  1.19       mrg 	brw_fs_visitor.cpp \
    189  1.30       mrg 	brw_generate_mipmap.c \
    190  1.19       mrg 	brw_gs.c \
    191  1.19       mrg 	brw_gs_surface_state.c \
    192  1.19       mrg 	brw_interpolation_map.c \
    193  1.39       rjs 	brw_ir_performance.cpp \
    194  1.40      maya 	brw_link.cpp \
    195  1.19       mrg 	brw_meta_util.c \
    196  1.40      maya 	brw_mipmap_tree.c \
    197  1.19       mrg 	brw_misc_state.c \
    198  1.30       mrg 	brw_nir.c \
    199  1.30       mrg 	brw_nir_analyze_boolean_resolves.c \
    200  1.30       mrg 	brw_nir_analyze_ubo_ranges.c \
    201  1.30       mrg 	brw_nir_attribute_workarounds.c \
    202  1.39       rjs 	brw_nir_clamp_image_1d_2d_array_sizes.c \
    203  1.39       rjs 	brw_nir_lower_alpha_to_coverage.c \
    204  1.33      maya 	brw_nir_lower_conversions.c \
    205  1.30       mrg 	brw_nir_lower_cs_intrinsics.c \
    206  1.39       rjs 	brw_nir_lower_intersection_shader.c \
    207  1.33      maya 	brw_nir_lower_mem_access_bit_sizes.c \
    208  1.39       rjs 	brw_nir_lower_rt_intrinsics.c \
    209  1.39       rjs 	brw_nir_lower_scoped_barriers.c \
    210  1.39       rjs 	brw_nir_lower_shader_calls.c \
    211  1.39       rjs 	brw_nir_lower_storage_image.c \
    212  1.30       mrg 	brw_nir_opt_peephole_ffma.c \
    213  1.39       rjs 	brw_nir_rt.c \
    214  1.30       mrg 	brw_nir_tcs_workarounds.c \
    215  1.33      maya 	brw_nir_trig_workarounds.c \
    216  1.40      maya 	brw_nir_uniforms.cpp \
    217  1.19       mrg 	brw_object_purgeable.c \
    218  1.30       mrg 	brw_packed_float.c \
    219  1.30       mrg 	brw_performance_query.c \
    220  1.30       mrg 	brw_pipe_control.c \
    221  1.39       rjs 	brw_pixel.c \
    222  1.39       rjs 	brw_pixel_bitmap.c \
    223  1.39       rjs 	brw_pixel_copy.c \
    224  1.39       rjs 	brw_pixel_draw.c \
    225  1.39       rjs 	brw_pixel_read.c \
    226  1.30       mrg 	brw_predicated_break.cpp \
    227  1.30       mrg 	brw_primitive_restart.c \
    228  1.19       mrg 	brw_program.c \
    229  1.30       mrg 	brw_program_binary.c \
    230  1.30       mrg 	brw_program_cache.c \
    231  1.19       mrg 	brw_queryobj.c \
    232  1.30       mrg 	brw_reg_type.c \
    233  1.19       mrg 	brw_reset.c \
    234  1.39       rjs 	brw_screen.c \
    235  1.39       rjs 	brw_sf.c \
    236  1.19       mrg 	brw_schedule_instructions.cpp \
    237  1.19       mrg 	brw_shader.cpp \
    238  1.39       rjs 	brw_state.c \
    239  1.19       mrg 	brw_state_upload.c \
    240  1.19       mrg 	brw_surface_formats.c \
    241  1.30       mrg 	brw_sync.c \
    242  1.30       mrg 	brw_tcs.c \
    243  1.30       mrg 	brw_tcs_surface_state.c \
    244  1.30       mrg 	brw_tes.c \
    245  1.30       mrg 	brw_tes_surface_state.c \
    246  1.39       rjs 	brw_tex.c \
    247  1.39       rjs 	brw_tex_copy.c \
    248  1.39       rjs 	brw_tex_image.c \
    249  1.39       rjs 	brw_tex_validate.c \
    250  1.39       rjs 	brw_upload.c \
    251  1.19       mrg 	brw_urb.c \
    252  1.19       mrg 	brw_util.c \
    253  1.19       mrg 	brw_vec4.cpp \
    254  1.30       mrg 	brw_vec4_cmod_propagation.cpp \
    255  1.19       mrg 	brw_vec4_copy_propagation.cpp \
    256  1.19       mrg 	brw_vec4_cse.cpp \
    257  1.30       mrg 	brw_vec4_dead_code_eliminate.cpp \
    258  1.19       mrg 	brw_vec4_generator.cpp \
    259  1.30       mrg 	brw_vec4_gs_nir.cpp \
    260  1.19       mrg 	brw_vec4_gs_visitor.cpp \
    261  1.19       mrg 	brw_vec4_live_variables.cpp \
    262  1.30       mrg 	brw_vec4_nir.cpp \
    263  1.19       mrg 	brw_vec4_reg_allocate.cpp \
    264  1.30       mrg 	brw_vec4_surface_builder.cpp \
    265  1.30       mrg 	brw_vec4_tcs.cpp \
    266  1.30       mrg 	brw_vec4_tes.cpp \
    267  1.19       mrg 	brw_vec4_visitor.cpp \
    268  1.19       mrg 	brw_vec4_vs_visitor.cpp \
    269  1.19       mrg 	brw_vs.c \
    270  1.19       mrg 	brw_vs_surface_state.c \
    271  1.30       mrg 	brw_vue_map.c \
    272  1.19       mrg 	brw_wm.c \
    273  1.19       mrg 	brw_wm_iz.cpp \
    274  1.19       mrg 	brw_wm_surface_state.c \
    275  1.39       rjs 	gfx6_clip_state.c \
    276  1.39       rjs 	gfx6_constant_state.c \
    277  1.39       rjs 	gfx6_gs_visitor.cpp \
    278  1.39       rjs 	gfx6_multisample_state.c \
    279  1.39       rjs 	gfx6_queryobj.c \
    280  1.39       rjs 	gfx6_sampler_state.c \
    281  1.39       rjs 	gfx6_sol.c \
    282  1.39       rjs 	gfx6_urb.c \
    283  1.39       rjs 	gfx7_l3_state.c \
    284  1.39       rjs 	gfx7_sol_state.c \
    285  1.39       rjs 	gfx7_urb.c \
    286  1.39       rjs 	gfx8_depth_state.c \
    287  1.39       rjs 	gfx8_multisample_state.c \
    288  1.30       mrg 	hsw_queryobj.c \
    289  1.30       mrg 	hsw_sol.c \
    290  1.40      maya 	intel_perf_metrics.c \
    291  1.30       mrg 	isl.c \
    292  1.39       rjs 	isl_aux_info.c \
    293  1.30       mrg 	isl_drm.c \
    294  1.30       mrg 	isl_format.c \
    295  1.30       mrg 	isl_format_layout.c \
    296  1.39       rjs 	isl_gfx4.c \
    297  1.39       rjs 	isl_gfx6.c \
    298  1.39       rjs 	isl_gfx7.c \
    299  1.39       rjs 	isl_gfx8.c \
    300  1.39       rjs 	isl_gfx9.c \
    301  1.39       rjs 	isl_gfx12.c \
    302  1.33      maya 	isl_storage_image.c \
    303  1.33      maya 	isl_tiled_memcpy.c \
    304  1.33      maya 	isl_tiled_memcpy_normal.c \
    305  1.33      maya 	isl_tiled_memcpy_sse41.c
    306  1.19       mrg 
    307  1.39       rjs I965_INTEL_COMMON_FILES = \
    308  1.39       rjs 	intel_aux_map.c \
    309  1.39       rjs 	intel_batch_decoder.c \
    310  1.39       rjs 	intel_decoder.c \
    311  1.39       rjs 	intel_disasm.c \
    312  1.39       rjs 	intel_gem.c \
    313  1.39       rjs 	intel_l3_config.c \
    314  1.39       rjs 	intel_measure.c \
    315  1.39       rjs 	intel_sample_positions.c \
    316  1.39       rjs 	intel_urb_config.c \
    317  1.39       rjs 	intel_uuid.c
    318  1.39       rjs 
    319  1.39       rjs I965_INTEL_DEV_FILES = \
    320  1.39       rjs 	intel_debug.c \
    321  1.39       rjs 	intel_dev_info.c \
    322  1.39       rjs 	intel_device_info.c
    323  1.39       rjs 
    324  1.39       rjs I965_INTEL_PERF_FILES = \
    325  1.40      maya 	intel_perf.c \
    326  1.40      maya 	intel_perf_query.c \
    327  1.40      maya 	intel_perf_mdapi.c
    328  1.19       mrg 
    329  1.39       rjs INTEL_GENS_BLORP=	40 45 50 60 70 75 80 90 110
    330  1.30       mrg 
    331  1.30       mrg .for _gen in ${INTEL_GENS_BLORP}
    332  1.30       mrg BUILDSYMLINKS+=		${X11SRCDIR.Mesa}/src/mesa/drivers/dri/i965/genX_state_upload.c ${_gen}_state_upload.c
    333  1.30       mrg BUILDSYMLINKS+=		${X11SRCDIR.Mesa}/src/mesa/drivers/dri/i965/genX_blorp_exec.c ${_gen}_blorp_exec.c
    334  1.33      maya BUILDSYMLINKS+=		${X11SRCDIR.Mesa}/src/mesa/drivers/dri/i965/genX_pipe_control.c ${_gen}_pipe_control.c
    335  1.33      maya DRI_SOURCES.i965+=	${_gen}_state_upload.c ${_gen}_blorp_exec.c ${_gen}_pipe_control.c
    336  1.30       mrg 
    337  1.39       rjs CPPFLAGS.${_gen}_state_upload.c+=	-DGFX_VERx10=${_gen}
    338  1.39       rjs CPPFLAGS.${_gen}_blorp_exec.c+=		-DGFX_VERx10=${_gen}
    339  1.39       rjs CPPFLAGS.${_gen}_pipe_control.c+=	-DGFX_VERx10=${_gen}
    340  1.30       mrg .endfor
    341  1.30       mrg 
    342  1.39       rjs INTEL_GENS_ISL=	40 50 60 70 75 80 90 110 120 125
    343  1.30       mrg 
    344  1.30       mrg .for _gen in ${INTEL_GENS_ISL}
    345  1.30       mrg BUILDSYMLINKS+=		${X11SRCDIR.Mesa}/src/intel/isl/isl_emit_depth_stencil.c ${_gen}_isl_emit_depth_stencil.c
    346  1.30       mrg BUILDSYMLINKS+=		${X11SRCDIR.Mesa}/src/intel/isl/isl_surface_state.c ${_gen}_isl_surface_state.c
    347  1.30       mrg DRI_SOURCES.i965+=	${_gen}_isl_emit_depth_stencil.c ${_gen}_isl_surface_state.c
    348  1.30       mrg 
    349  1.39       rjs CPPFLAGS.${_gen}_isl_emit_depth_stencil.c+=	-DGFX_VERx10=${_gen} -I${X11SRCDIR.Mesa}/src/intel/isl/
    350  1.39       rjs CPPFLAGS.${_gen}_isl_surface_state.c+=		-DGFX_VERx10=${_gen} -I${X11SRCDIR.Mesa}/src/intel/isl/
    351  1.30       mrg .endfor
    352  1.30       mrg 
    353  1.39       rjs .for _f in ${I965_INTEL_COMMON_FILES}
    354  1.39       rjs BUILDSYMLINKS+=		${X11SRCDIR.Mesa}/src/intel/common/${_f} i965_${_f}
    355  1.39       rjs DRI_SOURCES.i965+=	i965_${_f}
    356  1.39       rjs .endfor
    357  1.39       rjs .for _f in ${I965_INTEL_DEV_FILES}
    358  1.39       rjs BUILDSYMLINKS+=		${X11SRCDIR.Mesa}/src/intel/dev/${_f} i965_${_f}
    359  1.19       mrg DRI_SOURCES.i965+=	i965_${_f}
    360  1.19       mrg .endfor
    361  1.40      maya .for _f in ${I965_INTEL_PERF_FILES}
    362  1.40      maya BUILDSYMLINKS+=			${X11SRCDIR.Mesa}/src/intel/perf/${_f} i965_${_f}
    363  1.40      maya DRI_SOURCES.i965+=		i965_${_f}
    364  1.40      maya CPPFLAGS.i965_${_f}+=	-I${X11SRCDIR.Mesa}/src/intel/perf
    365  1.40      maya .endfor
    366  1.19       mrg 
    367  1.30       mrg .for _f in ${DRI_SOURCES.i965}
    368  1.30       mrg CPPFLAGS.${_f} +=	-I${X11SRCDIR.Mesa}/src/mesa/drivers/dri/i965 \
    369  1.30       mrg 			-I${X11SRCDIR.Mesa}/src/intel \
    370  1.39       rjs 			-I${X11SRCDIR.Mesa}/src/intel/common \
    371  1.33      maya 			-I${X11SRCDIR.Mesa}/src/intel/compiler \
    372  1.39       rjs 			-I${X11SRCDIR.Mesa}/src/intel/dev \
    373  1.33      maya 			-I${X11SRCDIR.Mesa}/../src/intel \
    374  1.33      maya 			-I${X11SRCDIR.Mesa}/src/compiler/nir \
    375  1.39       rjs 			-I${X11SRCDIR.Mesa}/../src/compiler/nir \
    376  1.39       rjs 			-I${X11SRCDIR.Mesa}/../src
    377  1.30       mrg .endfor
    378  1.30       mrg 
    379  1.30       mrg # Needs mfence
    380  1.30       mrg CPPFLAGS.brw_bufmgr.c+=	-msse2
    381  1.30       mrg 
    382  1.39       rjs .endif
    383  1.39       rjs 
    384  1.19       mrg DRI_SOURCES.r200 = \
    385  1.19       mrg 	r200_context.c \
    386  1.19       mrg 	r200_ioctl.c \
    387  1.19       mrg 	r200_state.c \
    388  1.19       mrg 	r200_state_init.c \
    389  1.19       mrg 	r200_cmdbuf.c \
    390  1.19       mrg 	r200_tex.c \
    391  1.19       mrg 	r200_texstate.c \
    392  1.19       mrg 	r200_tcl.c \
    393  1.19       mrg 	r200_swtcl.c \
    394  1.19       mrg 	r200_maos.c \
    395  1.19       mrg 	r200_sanity.c \
    396  1.19       mrg 	r200_fragshader.c \
    397  1.19       mrg 	r200_vertprog.c \
    398  1.27  szptvlfn 	r200_blit.c
    399  1.19       mrg 
    400  1.19       mrg R200_RADEON_FILES= \
    401  1.19       mrg 	radeon_buffer_objects.c \
    402  1.19       mrg 	radeon_common_context.c \
    403  1.19       mrg 	radeon_common.c \
    404  1.19       mrg 	radeon_dma.c \
    405  1.19       mrg 	radeon_debug.c \
    406  1.19       mrg 	radeon_fbo.c \
    407  1.19       mrg 	radeon_fog.c \
    408  1.19       mrg 	radeon_mipmap_tree.c \
    409  1.19       mrg 	radeon_pixel_read.c \
    410  1.19       mrg 	radeon_queryobj.c \
    411  1.19       mrg 	radeon_span.c \
    412  1.19       mrg 	radeon_texture.c \
    413  1.19       mrg 	radeon_tex_copy.c \
    414  1.19       mrg 	radeon_tile.c \
    415  1.19       mrg 	radeon_screen.c
    416  1.19       mrg 
    417  1.19       mrg .for _f in ${R200_RADEON_FILES}
    418  1.29       mrg BUILDSYMLINKS+=		${X11SRCDIR.Mesa}/src/mesa/drivers/dri/radeon/${_f} r200_${_f}
    419  1.19       mrg DRI_SOURCES.r200+=	r200_${_f}
    420  1.19       mrg .endfor
    421  1.19       mrg 
    422  1.19       mrg .for _f in ${DRI_SOURCES.r200}
    423  1.29       mrg CPPFLAGS.${_f} +=	-I${X11SRCDIR.Mesa}/src/mesa/drivers/dri/r200/server \
    424  1.29       mrg 			-I${X11SRCDIR.Mesa}/src/mesa/drivers/dri/r200 \
    425  1.29       mrg 			-I${X11SRCDIR.Mesa}/src/mesa/drivers/dri/radeon/server \
    426  1.29       mrg 			-I${X11SRCDIR.Mesa}/src/mesa/drivers/dri/radeon \
    427  1.19       mrg 			-DRADEON_R200
    428  1.19       mrg .endfor
    429  1.19       mrg 
    430  1.19       mrg DRI_SOURCES.radeon = \
    431  1.19       mrg 	radeon_buffer_objects.c \
    432  1.19       mrg 	radeon_common_context.c \
    433  1.19       mrg 	radeon_common.c \
    434  1.19       mrg 	radeon_dma.c \
    435  1.19       mrg 	radeon_debug.c \
    436  1.19       mrg 	radeon_fbo.c \
    437  1.19       mrg 	radeon_fog.c \
    438  1.19       mrg 	radeon_mipmap_tree.c \
    439  1.19       mrg 	radeon_pixel_read.c \
    440  1.19       mrg 	radeon_queryobj.c \
    441  1.19       mrg 	radeon_span.c \
    442  1.19       mrg 	radeon_texture.c \
    443  1.19       mrg 	radeon_tex_copy.c \
    444  1.19       mrg 	radeon_tile.c \
    445  1.19       mrg 	radeon_context.c \
    446  1.19       mrg 	radeon_ioctl.c \
    447  1.19       mrg 	radeon_screen.c \
    448  1.19       mrg 	radeon_state.c \
    449  1.19       mrg 	radeon_state_init.c \
    450  1.19       mrg 	radeon_tex.c \
    451  1.19       mrg 	radeon_texstate.c \
    452  1.19       mrg 	radeon_tcl.c \
    453  1.19       mrg 	radeon_swtcl.c \
    454  1.19       mrg 	radeon_maos.c \
    455  1.19       mrg 	radeon_sanity.c \
    456  1.19       mrg 	radeon_blit.c
    457  1.19       mrg 
    458  1.19       mrg .for _f in ${DRI_SOURCES.radeon}
    459  1.29       mrg CPPFLAGS.${_f} +=	-I${X11SRCDIR.Mesa}/src/mesa/drivers/dri/radeon/server \
    460  1.29       mrg 			-I${X11SRCDIR.Mesa}/src/mesa/drivers/dri/radeon \
    461  1.19       mrg 			-DRADEON_R100
    462  1.19       mrg .endfor
    463  1.19       mrg 
    464  1.19       mrg .for _d in ${DRI_SUBDIRS}
    465  1.19       mrg SRCS+=	${DRI_SOURCES.${_d}}
    466  1.29       mrg .PATH: ${X11SRCDIR.Mesa}/src/mesa/drivers/dri/${_d}
    467  1.19       mrg .endfor
    468  1.19       mrg 
    469  1.36  christos 
    470  1.19       mrg LIBDPLIBS+=	expat		${NETBSDSRCDIR}/external/mit/expat/lib/libexpat
    471  1.19       mrg LIBDPLIBS+=	m		${NETBSDSRCDIR}/lib/libm
    472  1.31      maya LIBDPLIBS+=	pthread		${NETBSDSRCDIR}/lib/libpthread
    473  1.38       mrg LIBDPLIBS+= 	glapi		${.CURDIR}/../libglapi${OLD_SUFFIX}
    474  1.19       mrg LIBDPLIBS+= 	drm		${.CURDIR}/../libdrm
    475  1.19       mrg .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
    476  1.19       mrg LIBDPLIBS+= 	drm_intel	${.CURDIR}/../libdrm_intel
    477   1.2  macallan .endif
    478  1.19       mrg LIBDPLIBS+= 	drm_radeon	${.CURDIR}/../libdrm_radeon
    479   1.1      cube 
    480  1.19       mrg MESA_SRC_MODULES=  main math math_xform vbo tnl swrast ss common asm_c program asm_s
    481  1.19       mrg .include "../libmesa.mk"
    482  1.19       mrg .include "../libglsl.mk"
    483  1.19       mrg 
    484  1.21  christos .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
    485  1.19       mrg SRCS+=	streaming-load-memcpy.c
    486  1.33      maya CPPFLAGS.streaming-load-memcpy.c+=	-msse4.1
    487  1.33      maya CPPFLAGS.isl_tiled_memcpy_sse41.c+=	-msse4.1
    488  1.19       mrg .endif
    489  1.19       mrg 
    490  1.42  riastrad CWARNFLAGS.clang+=	-Wno-error=atomic-alignment
    491  1.42  riastrad CWARNFLAGS.clang+=	-Wno-error=typedef-redefinition
    492  1.36  christos 
    493  1.19       mrg .include "../driver.mk"
    494  1.19       mrg 
    495  1.19       mrg .for _d in ${DRIVERS}
    496  1.23  christos SYMLINKS+= mesa_dri_drivers.so.${SHLIB_MAJOR} ${DRIDIR}/${_d}_dri.so.${SHLIB_MAJOR} 
    497  1.19       mrg SYMLINKS+= ${_d}_dri.so.${SHLIB_MAJOR} ${DRIDIR}/${_d}_dri.so
    498  1.26      gson .if ${MKDEBUG} != "no"
    499  1.23  christos SYMLINKS+= mesa_dri_drivers.so.${SHLIB_MAJOR}.debug ${DRIDEBUGDIR}/${_d}_dri.so.${SHLIB_MAJOR}.debug
    500  1.23  christos .endif
    501  1.19       mrg .endfor
    502  1.19       mrg 
    503  1.19       mrg .endif
    504  1.12       mrg 
    505  1.18       mrg PKGCONFIG=	dri
    506  1.33      maya PKGDIST.dri=	${X11SRCDIR.Mesa}/../src/pkgconfig
    507  1.18       mrg .include "${.CURDIR}/../libGL/mesa-ver.mk"
    508  1.18       mrg PKGCONFIG_VERSION.dri=	${MESA_VER}
    509  1.18       mrg 
    510  1.19       mrg # XXX remove these from bsd.x11.mk
    511  1.19       mrg PKGCONFIG_SED_FLAGS= \
    512  1.19       mrg 	-e "s,@DRI_DRIVER_INSTALL_DIR@,${X11USRLIBDIR}/modules/dri,; \
    513  1.19       mrg 	    s,@DRI_PC_REQ_PRIV@,,"
    514  1.19       mrg 
    515  1.30       mrg .PATH:          ${X11SRCDIR.Mesa}/src/util
    516  1.30       mrg 
    517  1.19       mrg FILESDIR=	/etc
    518  1.30       mrg BUILDSYMLINKS+=	00-mesa-defaults.conf drirc
    519  1.19       mrg FILES=		drirc
    520  1.19       mrg 
    521  1.29       mrg .PATH:          ${X11SRCDIR.Mesa}/src/mesa/drivers/dri/common
    522  1.19       mrg 
    523  1.18       mrg .include <bsd.x11.mk>
    524  1.35  jmcneill .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" || \
    525  1.44  jmcneill     ${MACHINE} == "evbarm" || ${MACHINE} == "evbppc"
    526  1.19       mrg LIBDIR=		${X11USRLIBDIR}/modules/dri
    527  1.19       mrg 
    528  1.24     joerg CWARNFLAGS.clang+=	-Wno-error=initializer-overrides -Wno-error=switch \
    529  1.30       mrg 			-Wno-error=tautological-constant-out-of-range-compare \
    530  1.34     joerg 			-Wno-error=enum-conversion \
    531  1.34     joerg 			-Wno-error=implicit-int-float-conversion \
    532  1.34     joerg 			-Wno-error=tautological-constant-compare \
    533  1.43  christos 			-Wno-c99-designator -Wno-xor-used-as-pow \
    534  1.43  christos 			-Wno-typedef-redefinition
    535  1.24     joerg 
    536  1.32  christos COPTS+= -Wno-error=stack-protector
    537  1.28  christos 
    538  1.37       mrg COPTS.u_atomic.c+=	${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 10:? -Wno-builtin-declaration-mismatch :}
    539  1.37       mrg 
    540  1.19       mrg .include <bsd.lib.mk>
    541  1.22  christos .else
    542  1.22  christos .include <bsd.inc.mk>
    543  1.21  christos .endif
    544  1.25  christos # Don't re-build .c files when .y files change
    545  1.25  christos .y.c:
    546