Gfx Stack Update
[nyanlinux.git] / builders / mesa-gl-amd-sh-4d04396531a25986b444d064434d6a9272c70d8b / contrib / gbm.sh
blob52bcf8f04f9c7c4f67e92d9c7a86404eedb6b1ba
1 echo "building GBM (Generic Buffer Manager) components-->"
2 # only one backend: dri
3 #===============================================================================
4 mkdir $build_dir/src
5 mkdir $build_dir/src/gbm
6 ################################################################################
7 # first the dri backend
8 #-------------------------------------------------------------------------------
9 gbm_dri_c_pathnames="\
10 $src_dir/src/gbm/backends/dri/gbm_dri.c \
12 #-------------------------------------------------------------------------------
13 for src_pathname in $gbm_dri_c_pathnames
15 cpp_filename=$(basename $src_pathname .c).cpp.c
16 printf "CPP $src_pathname --> $build_dir/src/gbm/$cpp_filename\n"
17 $cpp $src_pathname -o $build_dir/src/gbm/$cpp_filename \
18 -I$cc_internal_fixed_incdir \
19 -I$cc_internal_incdir \
20 -I$linux_incdir \
21 -I$syslib_incdir \
23 -I$build_dir/src/gallium/frontends/dri \
24 -I$src_dir/src/gallium/frontends/dri \
25 -I$build_dir/src/gallium/auxiliary \
26 -I$src_dir/src/gallium/auxiliary \
27 -I$build_dir/src/gallium/include \
28 -I$src_dir/src/gallium/include \
29 -I$build_dir/src/gbm/backends/dri \
30 -I$src_dir/src/gbm/backends/dri \
31 -I$build_dir/src/gbm/main \
32 -I$src_dir/src/gbm/main \
33 -I$build_dir/src/mesa \
34 -I$src_dir/src/mesa \
35 -I$build_dir/src/loader \
36 -I$src_dir/src/loader \
37 -I$build_dir/src/ \
38 -I$src_dir/src/ \
39 -I$build_dir/include \
40 -I$src_dir/include \
42 $syslib_cpp_flags_defs \
43 $linux_cpp_flags_defs \
44 $cc_builtins_cpp_flags_defs \
45 $cc_attributes_cpp_flags_defs \
46 $mesa_cpp_flags_defs \
48 $external_deps_cpp_flags &
49 done
50 #-------------------------------------------------------------------------------
51 wait
52 #------------------------------------------------------------------------------
53 for src_pathname in $gbm_dri_c_pathnames
55 cpp_filename=$(basename $src_pathname .c).cpp.c
56 asm_filename=$(basename $src_pathname .c).cpp.c.s
57 printf "CC_S $build_dir/src/gbm/$cpp_filename --> $build_dir/src/gbm/$asm_filename\n"
58 $cc_s $build_dir/src/gbm/$cpp_filename -o $build_dir/src/gbm/$asm_filename &
59 done
60 #------------------------------------------------------------------------------
61 wait
62 #------------------------------------------------------------------------------
63 for src_pathname in $gbm_dri_c_pathnames
65 asm_filename=$(basename $src_pathname .c).cpp.c.s
66 o_filename=$(basename $src_pathname .c).cpp.c.s.o
67 printf "AS $build_dir/src/gbm/$asm_filename --> $build_dir/src/gbm/$o_filename\n"
68 $as $build_dir/src/gbm/$asm_filename -o $build_dir/src/gbm/$o_filename &
69 done
70 #-------------------------------------------------------------------------------
71 #===============================================================================
72 wait
73 #===============================================================================
74 mkdir $build_dir/to_install/gbm
75 #-------------------------------------------------------------------------------
76 printf "BINUTILS LD $build_dir/to_install/gbm/dri_gbm.so\n"
77 $binutils_ld -o $build_dir/to_install/gbm/dri_gbm.so \
78 -shared \
79 -soname dri_gbm.so \
80 --no-undefined \
81 --gc-sections \
82 -s \
83 $syslib_ld_slib_start_files \
84 $cc_ld_slib_start_files \
85 $build_dir/src/gbm/gbm_dri.cpp.c.s.o \
87 $build_dir/libloader.a \
88 $build_dir/libxmlconfig.a \
89 $build_dir/libmesa_util.a \
91 --as-needed \
92 $build_dir/to_install/libgallium_dri.so \
93 $libdrm_ld_flags \
94 $syslibs_libm_ld_flags \
95 $syslibs_libdl_ld_flags \
96 $syslibs_libpthread_ld_flags \
97 $syslibs_libc_ld_flags \
98 --no-as-needed \
99 $cc_ld_slib_end_files \
100 $syslib_ld_slib_end_files
101 ################################################################################
102 # now the gbm itself
103 gbm_c_pathnames="\
104 $src_dir/src/gbm/main/backend.c \
105 $src_dir/src/gbm/main/gbm.c \
107 #-------------------------------------------------------------------------------
108 for src_pathname in $gbm_c_pathnames
110 cpp_filename=$(basename $src_pathname .c).cpp.c
111 printf "CPP $src_pathname --> $build_dir/src/gbm/$cpp_filename\n"
112 $cpp $src_pathname -o $build_dir/src/gbm/$cpp_filename \
113 -DDEFAULT_BACKENDS_PATH=\"$libdir/gbm\" \
115 -I$cc_internal_fixed_incdir \
116 -I$cc_internal_incdir \
117 -I$linux_incdir \
118 -I$syslib_incdir \
120 -I$build_dir/src/gallium/frontends/dri \
121 -I$src_dir/src/gallium/frontends/dri \
122 -I$build_dir/src/gallium/auxiliary \
123 -I$src_dir/src/gallium/auxiliary \
124 -I$build_dir/src/gallium/include \
125 -I$src_dir/src/gallium/include \
126 -I$build_dir/src/gbm/backends/dri \
127 -I$src_dir/src/gbm/backends/dri \
128 -I$build_dir/src/gbm/main \
129 -I$src_dir/src/gbm/main \
130 -I$build_dir/src/mesa \
131 -I$src_dir/src/mesa \
132 -I$build_dir/src/loader \
133 -I$src_dir/src/loader \
134 -I$build_dir/src/ \
135 -I$src_dir/src/ \
136 -I$build_dir/include \
137 -I$src_dir/include \
139 $syslib_cpp_flags_defs \
140 $linux_cpp_flags_defs \
141 $cc_builtins_cpp_flags_defs \
142 $cc_attributes_cpp_flags_defs \
143 $mesa_cpp_flags_defs \
145 $external_deps_cpp_flags &
146 done
147 #-------------------------------------------------------------------------------
148 wait
149 #------------------------------------------------------------------------------
150 for src_pathname in $gbm_c_pathnames
152 cpp_filename=$(basename $src_pathname .c).cpp.c
153 asm_filename=$(basename $src_pathname .c).cpp.c.s
154 printf "CC_S $build_dir/src/gbm/$cpp_filename --> $build_dir/src/gbm/$asm_filename\n"
155 $cc_s $build_dir/src/gbm/$cpp_filename -o $build_dir/src/gbm/$asm_filename &
156 done
157 #------------------------------------------------------------------------------
158 wait
159 #------------------------------------------------------------------------------
160 for src_pathname in $gbm_c_pathnames
162 asm_filename=$(basename $src_pathname .c).cpp.c.s
163 o_filename=$(basename $src_pathname .c).cpp.c.s.o
164 printf "AS $build_dir/src/gbm/$asm_filename --> $build_dir/src/gbm/$o_filename\n"
165 $as $build_dir/src/gbm/$asm_filename -o $build_dir/src/gbm/$o_filename &
166 done
167 #-------------------------------------------------------------------------------
168 #===============================================================================
169 wait
170 #===============================================================================
171 printf "BINUTILS LD $build_dir/to_install/libgbm.so.1.0.0\n"
172 $binutils_ld -o $build_dir/to_install/libgbm.so.1.0.0 \
173 -shared \
174 -soname libgbm.so.1 \
175 --no-undefined \
176 --gc-sections \
177 -s \
178 $syslib_ld_slib_start_files \
179 $cc_ld_slib_start_files \
180 $build_dir/src/gbm/backend.cpp.c.s.o \
181 $build_dir/src/gbm/gbm.cpp.c.s.o \
182 $build_dir/src/gbm/gbm_dri.cpp.c.s.o \
184 $build_dir/libloader.a \
185 $build_dir/libxmlconfig.a \
186 $build_dir/libmesa_util.a \
188 --as-needed \
189 $build_dir/to_install/libgallium_dri.so \
190 $libdrm_ld_flags \
191 $syslibs_libm_ld_flags \
192 $syslibs_libdl_ld_flags \
193 $syslibs_libpthread_ld_flags \
194 $syslibs_libc_ld_flags \
195 --no-as-needed \
196 $cc_ld_slib_end_files \
197 $syslib_ld_slib_end_files
198 #-------------------------------------------------------------------------------
199 ln -s libgbm.so.1.0.0 $build_dir/to_install/libgbm.so.1
200 #===============================================================================
201 cp $src_dir/src/gbm/main/gbm.h $build_dir/to_install/include/gbm.h
202 #===============================================================================
203 echo "<--GBM components built"