3 include $(SRCDIR)/config/aros.cfg
5 include $(SRCDIR)/$(CURDIR)/drm/sources.drm.mak
7 # Currently only built for x86, because nouveau.hidd uses agp.hidd
8 # which fails to build on architectures due to because of missing
9 # Wbinvd() implementation.
11 #MM- workbench-hidds-nouveau : hidd-nouveau-$(AROS_TARGET_CPU)
12 #MM- hidd-nouveau-i386 : hidd-nouveau
13 #MM- hidd-nouveau-x86_64 : hidd-nouveau
14 #MM hidd-nouveau : hidd-i2c hidd-agp hidd-gallium
16 GALLIUM_NOUVEAU_SOURCES = \
17 drivers/nouveau/nouveau_screen \
18 drivers/nouveau/nouveau_fence \
19 drivers/nouveau/nouveau_mm \
20 drivers/nouveau/nouveau_buffer \
21 drivers/nvfx/nv04_2d \
22 drivers/nvfx/nvfx_buffer \
23 drivers/nvfx/nvfx_context \
24 drivers/nvfx/nvfx_clear \
25 drivers/nvfx/nvfx_draw \
26 drivers/nvfx/nvfx_fragprog \
27 drivers/nvfx/nvfx_fragtex \
28 drivers/nvfx/nv30_fragtex \
29 drivers/nvfx/nv40_fragtex \
30 drivers/nvfx/nvfx_miptree \
31 drivers/nvfx/nvfx_push \
32 drivers/nvfx/nvfx_query \
33 drivers/nvfx/nvfx_resource \
34 drivers/nvfx/nvfx_screen \
35 drivers/nvfx/nvfx_state \
36 drivers/nvfx/nvfx_state_emit \
37 drivers/nvfx/nvfx_state_fb \
38 drivers/nvfx/nvfx_surface \
39 drivers/nvfx/nvfx_transfer \
40 drivers/nvfx/nvfx_vbo \
41 drivers/nvfx/nvfx_vertprog \
42 drivers/nv50/nv50_context \
43 drivers/nv50/nv50_draw \
44 drivers/nv50/nv50_formats \
45 drivers/nv50/nv50_miptree \
46 drivers/nv50/nv50_resource \
47 drivers/nv50/nv50_screen \
48 drivers/nv50/nv50_state \
49 drivers/nv50/nv50_state_validate \
50 drivers/nv50/nv50_surface \
51 drivers/nv50/nv50_tex \
52 drivers/nv50/nv50_transfer \
53 drivers/nv50/nv50_vbo \
54 drivers/nv50/nv50_program \
55 drivers/nv50/nv50_shader_state \
56 drivers/nv50/nv50_pc \
57 drivers/nv50/nv50_pc_print \
58 drivers/nv50/nv50_pc_emit \
59 drivers/nv50/nv50_tgsi_to_nc \
60 drivers/nv50/nv50_pc_optimize \
61 drivers/nv50/nv50_pc_regalloc \
62 drivers/nv50/nv50_push \
63 drivers/nv50/nv50_query \
64 drivers/nvc0/nvc0_context \
65 drivers/nvc0/nvc0_draw \
66 drivers/nvc0/nvc0_formats \
67 drivers/nvc0/nvc0_miptree \
68 drivers/nvc0/nvc0_resource \
69 drivers/nvc0/nvc0_screen \
70 drivers/nvc0/nvc0_state \
71 drivers/nvc0/nvc0_state_validate \
72 drivers/nvc0/nvc0_surface \
73 drivers/nvc0/nvc0_tex \
74 drivers/nvc0/nvc0_transfer \
75 drivers/nvc0/nvc0_vbo \
76 drivers/nvc0/nvc0_program \
77 drivers/nvc0/nvc0_shader_state \
78 drivers/nvc0/nvc0_pc \
79 drivers/nvc0/nvc0_pc_print \
80 drivers/nvc0/nvc0_pc_emit \
81 drivers/nvc0/nvc0_tgsi_to_nc \
82 drivers/nvc0/nvc0_pc_optimize \
83 drivers/nvc0/nvc0_pc_regalloc \
84 drivers/nvc0/nvc0_push \
85 drivers/nvc0/nvc0_push2 \
86 drivers/nvc0/nvc0_query \
88 XF86_NOUVEAU_SOURCES = \
101 GALLIUM_PATH = $(SRCDIR)/workbench/libs/mesa/src/gallium/
103 # WARNING - THIS MMAKEFILE REFERENCES SOURCE CODE OUTSIDE OF ITS TREE
105 DRM_PATH = $(SRCDIR)/$(CURDIR)/drm/
106 XF86_NOUVEAU_PATH = $(SRCDIR)/$(CURDIR)/xf86-video-nouveau/
108 NOUVEAU_HIDD_SOURCES := \
111 nouveau_bitmapclass \
112 nouveau_galliumclass \
116 nouveau_compositorclass \
117 $(addprefix $(DRM_PATH),$(AROS_DRM_CORE_SOURCES)) \
118 $(addprefix $(DRM_PATH),$(AROS_DRM_NVIDIA_SOURCES)) \
119 $(addprefix $(DRM_PATH),$(AROS_LIBDRM_CORE_SOURCES)) \
120 $(addprefix $(DRM_PATH),$(AROS_LIBDRM_NVIDIA_SOURCES)) \
121 $(addprefix $(GALLIUM_PATH), $(GALLIUM_NOUVEAU_SOURCES)) \
122 $(addprefix $(XF86_NOUVEAU_PATH), $(XF86_NOUVEAU_SOURCES)) \
126 -I$(DRM_PATH)/drm/nouveau \
127 -I$(DRM_PATH)/drm-aros \
128 -I$(DRM_PATH)/drm-aros/nouveau \
129 -I$(GALLIUM_PATH)/drivers \
130 -I$(AROS_DEVELOPER)/include/gallium \
131 -I$(GALLIUM_PATH)/include \
132 -I$(DRM_PATH)/libdrm \
133 -I$(DRM_PATH)/libdrm/nouveau \
134 -I$(XF86_NOUVEAU_PATH) \
136 NOWARN_FLAGS := $(NOWARN_UNINITIALIZED) $(NOWARN_STRICT_ALIASING)
137 USER_CFLAGS := $(NOWARN_FLAGS) -std=gnu99
139 %build_module mmake=hidd-nouveau \
140 modname=nouveau modtype=hidd \
141 files="$(NOUVEAU_HIDD_SOURCES)" \
142 uselibs="hiddstubs galliumauxiliary stdcio stdc"