/builders/mesa-gl-amd-sh-d31ca63527e3eb5bf271267c2a60a9b5af83bd89/contrib/egl.sh (c89d46cf83ee0c0ad9c6f5f9f964853fc54aa409) (3679 bytes) (mode 100644) (type blob)
# egl is here only on gbm/dri level 2/drm platform for the xserver glamor
# accel
echo "building egl api for GBM/dri2/drm component-->"
mkdir -p $build_dir/src/egl
#===============================================================================
# fix gbm/dri level 2/drm egl platform (because most of the builds do enable
# the additional x11/dri3/drm egl platform)
cp -f $src_dir/src/egl/drivers/dri2/egl_dri2.c $build_dir/src/egl
patch -i $script_dir/egl_dri2.c.patch $build_dir/src/egl/egl_dri2.c
#===============================================================================
libegl_files="\
$src_dir/src/egl/main/eglapi.c \
$src_dir/src/egl/main/eglarray.c \
$src_dir/src/egl/main/eglconfig.c \
$src_dir/src/egl/main/eglcontext.c \
$src_dir/src/egl/main/eglcurrent.c \
$src_dir/src/egl/main/egldevice.c \
$src_dir/src/egl/main/egldisplay.c \
$src_dir/src/egl/main/eglglobals.c \
$src_dir/src/egl/main/eglimage.c \
$src_dir/src/egl/main/egllog.c \
$src_dir/src/egl/main/eglsurface.c \
$src_dir/src/egl/main/eglsync.c \
\
$build_dir/src/egl/egl_dri2.c \
\
$src_dir/src/egl/drivers/dri2/platform_surfaceless.c \
$src_dir/src/egl/drivers/dri2/platform_drm.c \
$src_dir/src/egl/drivers/dri2/platform_device.c \
"
#===============================================================================
for f in $libegl_files
do
libegl_obj_dir=$(dirname $f)
libegl_obj_dir=$build_dir/${libegl_obj_dir#*/src/}
mkdir -p $libegl_obj_dir
libegl_obj=$libegl_obj_dir/$(basename $f .c).o
libegl_a="$libegl_a $libegl_obj"
$cco_slib -o $libegl_obj $f \
-DHAVE_DRM_PLATFORM=1 \
-D_EGL_NATIVE_PLATFORM=_EGL_PLATFORM_DRM \
\
-I$src_dir/src/gbm/backends/dri \
-I$src_dir/src/gbm/main \
-I$src_dir/src/loader \
-I$src_dir/src/egl/drivers/dri2 \
-I$src_dir/src/egl/main \
-I$src_dir/src \
-I$src_dir/include \
\
$cco_slib_common_trailer &
done
wait
#===============================================================================
mkdir -p $build_dir/install_root$libdir
if test "${libegl_link_cmd-unset}" = unset ; then
libegl_link_cmd="\
gcc -o $build_dir/install_root$libdir/libEGL.so.1.0.0 -Wl,-soname=libEGL.so.1 \
-shared -static-libgcc \
-B/nyan/glibc/current/lib -L/nyan/glibc/current/lib \
-Wl,-rpath-link,/nyan/glibc/current/lib \
-Wl,--no-undefined,--gc-sections,-Bsymbolic \
$libegl_a \
\
$build_dir/libloader.a \
$build_dir/libxmlconfig.a \
$build_dir/libmesa_util.a \
\
$external_deps_static_ldflags \
-Wl,--exclude-libs,$external_deps_archives \
\
-Wl,--as-needed \
$build_dir/install_root$libdir/libglapi.so.0.0.0 \
$build_dir/install_root$libdir/libgbm.so.1.0.0 \
$external_deps_ldflags \
$glibc_ldflags \
-Wl,--no-as-needed"
fi
eval $libegl_link_cmd
ln -sf libEGL.so.1.0.0 $build_dir/install_root$libdir/libEGL.so.1
ln -sf libEGL.so.1 $build_dir/install_root$libdir/libEGL.so
#===============================================================================
mkdir -p $build_dir/install_root$libdir/pkgconfig
cp $src_dir/contrib/pkgconfig/egl.pc.in $build_dir/install_root$libdir/pkgconfig/egl.pc
sed -i "\
s:@prefix@:$prefix:;\
s:@libdir@:$libdir:;\
s:@includedir@:$incdir:;\
s:@GL_PC_REQ_PRIV@::;\
s:@PACKAGE_VERSION@:$version:;\
s:@GL_PC_LIB_PRIV@::;\
s:@GL_PC_CFLAGS@::;\
" $build_dir/install_root$libdir/pkgconfig/egl.pc
#===============================================================================
mkdir -p $build_dir/install_root$incdir/EGL
cp -f \
$src_dir/include/EGL/eglextchromium.h \
$src_dir/include/EGL/eglext.h \
$src_dir/include/EGL/egl.h \
$src_dir/include/EGL/eglmesaext.h \
$src_dir/include/EGL/eglplatform.h \
$build_dir/install_root$incdir/EGL
echo "<--egl api for GBM/dri2/drm components built"
Mode |
Type |
Size |
Ref |
File |
100644 |
blob |
5 |
8eba6c8dd4dcaf6166bd22285ed34625f38a84ff |
.gitignore |
100755 |
blob |
1587 |
57fa4264b9ee0ae0a6f678f2527a05d3b22dda78 |
00-bootstrap-build.sh |
100755 |
blob |
848 |
a30f443bf405d56682efe3b4c5d3a19d5f7eb45d |
01-re-bootstrap-build.sh |
100644 |
blob |
2142 |
f19c2d6b293244bb11a3f74ee77c10675cadc7d6 |
INSTALL |
100644 |
blob |
30 |
c9b735fa1332286f4b3f5f81fa10527fd7506b6e |
LICENSE |
040000 |
tree |
- |
357061d85902d374b516bb96fedea2b8545f0f14 |
builders |
100644 |
blob |
1773 |
ef1551089a803bde37e36edc8d61bb819d06f793 |
conf.bootstrap.sh |
100644 |
blob |
479 |
8cc15efe46965ac7750fe304460f5a2b0aa4201c |
conf.sh |
040000 |
tree |
- |
7f251574f7a78832ee5b4b8b8aa6de70a9ae4c0e |
files |
100755 |
blob |
333 |
06859f922e41c1e691c72ada1be3f981ef05f602 |
pkg-build |
100644 |
blob |
22800641 |
e9e6291054c857401f6835c728f31541dae4311e |
steam.tar.bz2 |
100644 |
blob |
173 |
2047af328b22f9d146585cd9e759edbc18122250 |
utils.sh |
040000 |
tree |
- |
b7a22de7f5cbd97650dd45412ef7d4246e395eb8 |
x86 |
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"
Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/sylware/nyanlinux
Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/sylware/nyanlinux
Clone this repository using git:
git clone git://git.rocketgit.com/user/sylware/nyanlinux
You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a
merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main