1 echo "building util -->"
2 #===============================================================================
4 mkdir
$build_dir/src
/util
5 mkdir
$build_dir/src
/util
/blake3
6 #-------------------------------------------------------------------------------
7 # filenames should be different since we build in one directory
8 libmesa_util_c_pathnames
="\
9 $build_dir/src/util/format_srgb.c \
10 $build_dir/src/util/format/u_format_table.c \
11 $src_dir/src/util/anon_file.c \
12 $src_dir/src/util/bitscan.c \
13 $src_dir/src/util/blake3/blake3.c \
14 $src_dir/src/util/blake3/blake3_dispatch.c \
15 $src_dir/src/util/blake3/blake3_portable.c \
16 $src_dir/src/util/blob.c \
17 $src_dir/src/util/build_id.c \
18 $src_dir/src/util/compress.c \
19 $src_dir/src/util/cnd_monotonic.c \
20 $src_dir/src/util/crc32.c \
21 $src_dir/src/util/disk_cache.c \
22 $src_dir/src/util/disk_cache_os.c \
23 $src_dir/src/util/double.c \
24 $src_dir/src/util/fast_idiv_by_const.c \
25 $src_dir/src/util/fossilize_db.c \
26 $src_dir/src/util/futex.c \
27 $src_dir/src/util/half_float.c \
28 $src_dir/src/util/hash_table.c \
29 $src_dir/src/util/helpers.c \
30 $src_dir/src/util/log.c \
31 $src_dir/src/util/mesa-blake3.c \
32 $src_dir/src/util/mesa-sha1.c \
33 $build_dir/src/util/mesa_cache_db.c \
34 $src_dir/src/util/mesa_cache_db_multipart.c \
35 $src_dir/src/util/memstream.c \
36 $src_dir/src/util/os_file.c \
37 $src_dir/src/util/os_time.c \
38 $src_dir/src/util/os_memory_fd.c \
39 $src_dir/src/util/os_misc.c \
40 $src_dir/src/util/os_socket.c \
41 $src_dir/src/util/parson.c \
42 $src_dir/src/util/u_process.c \
43 $src_dir/src/util/sha1/sha1.c \
44 $src_dir/src/util/ralloc.c \
45 $src_dir/src/util/rand_xor.c \
46 $src_dir/src/util/rb_tree.c \
47 $src_dir/src/util/register_allocate.c \
48 $src_dir/src/util/rgtc.c \
49 $src_dir/src/util/rwlock.c \
50 $src_dir/src/util/set.c \
51 $src_dir/src/util/simple_mtx.c \
52 $src_dir/src/util/slab.c \
53 $src_dir/src/util/softfloat.c \
54 $src_dir/src/util/sparse_array.c \
55 $src_dir/src/util/streaming-load-memcpy.c \
56 $src_dir/src/util/string_buffer.c \
57 $src_dir/src/util/strtod.c \
58 $src_dir/src/util/thread_sched.c \
59 $src_dir/src/util/u_atomic.c \
60 $src_dir/src/util/u_dl.c \
61 $src_dir/src/util/u_debug_memory.c \
62 $src_dir/src/util/u_dynarray.c \
63 $src_dir/src/util/u_printf.c \
64 $src_dir/src/util/format/u_format.c \
65 $src_dir/src/util/format/u_format_bptc.c \
66 $src_dir/src/util/format/u_format_etc.c \
67 $src_dir/src/util/format/u_format_fxt1.c \
68 $src_dir/src/util/format/u_format_latc.c \
69 $src_dir/src/util/format/u_format_other.c \
70 $src_dir/src/util/format/u_format_rgtc.c \
71 $src_dir/src/util/format/u_format_s3tc.c \
72 $src_dir/src/util/format/u_format_tests.c \
73 $src_dir/src/util/format/u_format_yuv.c \
74 $src_dir/src/util/format/u_format_zs.c \
75 $src_dir/src/util/u_cpu_detect.c \
76 $src_dir/src/util/u_call_once.c \
77 $src_dir/src/util/u_debug.c \
78 $src_dir/src/util/u_debug_stack.c \
79 $src_dir/src/util/u_debug_symbol.c \
80 $src_dir/src/util/u_hash_table.c \
81 $src_dir/src/util/u_idalloc.c \
82 $src_dir/src/util/u_math.c \
83 $src_dir/src/util/u_mm.c \
84 $src_dir/src/util/u_queue.c \
85 $src_dir/src/util/u_thread.c \
86 $build_dir/src/util/perf/u_trace.c \
87 $src_dir/src/util/u_vector.c \
88 $src_dir/src/util/u_worklist.c \
89 $src_dir/src/util/vma.c \
91 $src_dir/src/c11/impl/threads_posix.c \
92 $src_dir/src/c11/impl/time.c \
94 # from the trashiest and toxiciest coders:
95 libmesa_util_cxx_pathnames
="\
96 $src_dir/src/util/texcompress_astc_luts.cpp \
97 $src_dir/src/util/texcompress_astc_luts_wrap.cpp \
99 #-------------------------------------------------------------------------------
100 for src_pathname
in $libmesa_util_c_pathnames
102 cpp_filename
=$
(basename $src_pathname .c
).cpp.c
103 printf "CPP $src_pathname --> $build_dir/src/util/$cpp_filename\n"
104 $cpp $src_pathname -o $build_dir/src
/util
/$cpp_filename \
105 -I$cc_internal_fixed_incdir \
106 -I$cc_internal_incdir \
110 -I$build_dir/src
/gallium
/auxiliary \
111 -I$src_dir/src
/gallium
/auxiliary \
112 -I$build_dir/src
/gallium
/include \
113 -I$src_dir/src
/gallium
/include \
114 -I$build_dir/src
/util
/format \
115 -I$src_dir/src
/util
/format \
116 -I$build_dir/src
/util \
117 -I$src_dir/src
/util \
118 -I$build_dir/src
/mesa \
119 -I$src_dir/src
/mesa \
122 -I$build_dir/include \
125 $syslib_cpp_flags_defs \
126 $linux_cpp_flags_defs \
127 $cc_builtins_cpp_flags_defs \
128 $cc_attributes_cpp_flags_defs \
129 $mesa_cpp_flags_defs \
131 $external_deps_cpp_flags &
133 #-------------------------------------------------------------------------------
135 #------------------------------------------------------------------------------
136 for src_pathname
in $libmesa_util_c_pathnames
138 cpp_filename
=$
(basename $src_pathname .c
).cpp.c
139 asm_filename
=$
(basename $src_pathname .c
).cpp.c.s
140 printf "CC_S $build_dir/src/util/$cpp_filename --> $build_dir/src/util/$asm_filename\n"
141 $cc_s $build_dir/src
/util
/$cpp_filename -o $build_dir/src
/util
/$asm_filename &
143 #------------------------------------------------------------------------------
145 #------------------------------------------------------------------------------
147 for src_pathname
in $libmesa_util_c_pathnames
149 asm_filename
=$
(basename $src_pathname .c
).cpp.c.s
150 o_filename
=$
(basename $src_pathname .c
).cpp.c.s.o
151 os
="$os $build_dir/src/util/$o_filename"
152 printf "AS $build_dir/src/util/$asm_filename --> $build_dir/src/util/$o_filename\n"
153 $as $build_dir/src
/util
/$asm_filename -o $build_dir/src
/util
/$o_filename &
155 #===============================================================================
156 for src_pathname
in $libmesa_util_cxx_pathnames
158 cxxpp_filename
=$
(basename $src_pathname .cpp
).cpp.cxx
159 printf "CXXPP $src_pathname --> $build_dir/src/util/$cxxpp_filename\n"
160 $cxxpp $src_pathname -o $build_dir/src
/util
/$cxxpp_filename \
161 -I$cc_internal_fixed_incdir \
162 -I$cc_internal_incdir \
163 -I$cxx_internal_incdir \
167 -I$build_dir/src
/gallium
/auxiliary \
168 -I$src_dir/src
/gallium
/auxiliary \
169 -I$build_dir/src
/gallium
/include \
170 -I$src_dir/src
/gallium
/include \
171 -I$build_dir/src
/util
/format \
172 -I$src_dir/src
/util
/format \
173 -I$build_dir/src
/util \
174 -I$src_dir/src
/util \
175 -I$build_dir/src
/mesa \
176 -I$src_dir/src
/mesa \
179 -I$build_dir/include \
182 $syslib_cpp_flags_defs \
183 $linux_cpp_flags_defs \
184 $cc_builtins_cpp_flags_defs \
185 $cc_attributes_cpp_flags_defs \
186 $mesa_cpp_flags_defs \
188 $external_deps_cpp_flags &
190 #------------------------------------------------------------------------------
192 #------------------------------------------------------------------------------
193 for src_pathname
in $libmesa_util_cxx_pathnames
195 cxxpp_filename
=$
(basename $src_pathname .cpp
).cpp.cxx
196 asm_filename
=$
(basename $src_pathname .cpp
).cpp.cxx.s
197 printf "CXX_S $build_dir/src/util/$cxxpp_filename --> $build_dir/src/util/$asm_filename\n"
198 $cxx_s $build_dir/src
/util
/$cxxpp_filename -o $build_dir/src
/util
/$asm_filename &
200 #------------------------------------------------------------------------------
202 #------------------------------------------------------------------------------
204 for src_pathname
in $libmesa_util_cxx_pathnames
206 asm_filename
=$
(basename $src_pathname .cpp
).cpp.cxx.s
207 o_filename
=$
(basename $src_pathname .cpp
).cpp.cxx.s.o
208 os
="$os $build_dir/src/util/$o_filename"
209 printf "AS $build_dir/src/util/$asm_filename --> $build_dir/src/util/$o_filename\n"
210 $as $build_dir/src
/util
/$asm_filename -o $build_dir/src
/util
/$o_filename &
212 #===============================================================================
213 # The following is for the ultra complex blake3 hash algorithm.
214 libmesautil_asm_pathnames
="\
215 $src_dir/src/util/blake3/blake3_sse2_x86-64_unix.S \
216 $src_dir/src/util/blake3/blake3_sse41_x86-64_unix.S \
217 $src_dir/src/util/blake3/blake3_avx2_x86-64_unix.S \
218 $src_dir/src/util/blake3/blake3_avx512_x86-64_unix.S \
220 #------------------------------------------------------------------------------
221 for src_pathname
in $libmesautil_asm_pathnames
223 asm_filename
=$
(basename $src_pathname .c
).cpp.s
225 printf "CPP $src_pathname --> $build_dir/src/util/blake3/$asm_filename\n"
226 $cpp $src_pathname -o $build_dir/src
/util
/blake
3/$asm_filename \
227 -I$cc_internal_fixed_incdir \
228 -I$cc_internal_incdir \
232 -I$build_dir/src
/gallium
/auxiliary \
233 -I$src_dir/src
/gallium
/auxiliary \
234 -I$build_dir/src
/gallium
/include \
235 -I$src_dir/src
/gallium
/include \
236 -I$build_dir/src
/util
/format \
237 -I$src_dir/src
/util
/format \
238 -I$build_dir/src
/util \
239 -I$src_dir/src
/util \
240 -I$build_dir/src
/mesa \
241 -I$src_dir/src
/mesa \
244 -I$build_dir/include \
247 $syslib_cpp_flags_defs \
248 $linux_cpp_flags_defs \
249 $cc_builtins_cpp_flags_defs \
250 $cc_attributes_cpp_flags_defs \
251 $mesa_cpp_flags_defs \
253 $external_deps_cpp_flags &
255 #-------------------------------------------------------------------------------
257 #-------------------------------------------------------------------------------
259 for src_pathname
in $libmesautil_asm_pathnames
261 asm_filename
=$
(basename $src_pathname .c
).cpp.s
262 o_filename
=$
(basename $src_pathname .c
).cpp.s.o
263 os
="$os $build_dir/src/util/blake3/$o_filename"
265 printf "AS $build_dir/src/util/blake3/$asm_filename --> $build_dir/src/util/blake3/$o_filename\n"
266 $as $build_dir/src
/util
/blake
3/$asm_filename -o $build_dir/src
/util
/blake
3/$o_filename &
268 #-------------------------------------------------------------------------------
270 #-------------------------------------------------------------------------------
271 printf "AR RCS $build_dir/libmesa_util.a $os\n"
272 $ar_rcs $build_dir/libmesa_util.a
$os
273 #===============================================================================
274 printf "CPP $src_dir/src/util/xmlconfig.c --> $build_dir/src/util/xmlconfig.cpp.c\n"
275 $cpp $src_dir/src
/util
/xmlconfig.c
-o $build_dir/src
/util
/xmlconfig.cpp.c \
276 -DSYSCONFDIR=\"$sysconfdir\" \
277 -DDATADIR=\"$datadir_runtime\" \
279 -I$cc_internal_fixed_incdir \
280 -I$cc_internal_incdir \
284 -I$build_dir/src
/util
/blake3 \
285 -I$src_dir/src
/util
/blake3 \
286 -I$build_dir/src
/util \
287 -I$src_dir/src
/util \
290 -I$build_dir/include \
293 $syslib_cpp_flags_defs \
294 $linux_cpp_flags_defs \
295 $cc_builtins_cpp_flags_defs \
296 $cc_attributes_cpp_flags_defs \
297 $mesa_cpp_flags_defs \
299 $external_deps_cpp_flags
300 #-------------------------------------------------------------------------------
301 printf "CC_S $build_dir/src/util/xmlconfig.cpp.c --> $build_dir/src/util/xmlconfig.cpp.c.s\n"
302 $cc_s $build_dir/src
/util
/xmlconfig.cpp.c
-o $build_dir/src
/util
/xmlconfig.cpp.c.s
303 #-------------------------------------------------------------------------------
304 printf "AS $build_dir/src/util/xmlconfig.cpp.c.s --> $build_dir/src/util/xmlconfig.cpp.c.s.o\n"
305 $as $build_dir/src
/util
/xmlconfig.cpp.c.s
-o $build_dir/src
/util
/xmlconfig.cpp.c.s.o
306 #-------------------------------------------------------------------------------
307 printf "AR RCS $build_dir/libxmlconfig.a $build_dir/src/util/xmlconfig.cpp.c.s.o\n"
308 $ar_rcs $build_dir/libxmlconfig.a
$build_dir/src
/util
/xmlconfig.cpp.c.s.o
&
309 #===============================================================================
310 mkdir
$build_dir/to_install
/drirc.d
311 cp $src_dir/src
/util
/00-mesa-defaults.conf
$build_dir/to_install
/drirc.d
/00-mesa-defaults.conf
312 #===============================================================================
313 echo "<-- util built"