#### this file is sourced not run
PKGVER=22.3.7
PKGBUILD=1
PKGARCH=i686

# source: BLFS 11.3 updated to 22.3.7
TARBALL=mesa-$PKGVER.tar.xz
MD5SUM=322991e82858a173b18b58b005e7d304
SRC_URL=https://mesa.freedesktop.org/archive/$TARBALL
BUNDLE=

SLACKREQ='libdrm32 expat32 libxml2_32 libX11_32 libelf32' # build-time: elfutils llvm32
# note: no dependency on libwayland32 because we don't build 32-bit wayland support
SLACKDESC="mesa32: mesa $PKGVER (open source OpenGL library)  
mesa32:  
mesa32: Mesa is an OpenGL compatible 3D graphics library.  
mesa32: 
mesa32: This contains 32-bit version of the library.
mesa32: 
mesa32: https://mesa3d.org/
mesa32: 
mesa32: 
mesa32: 
mesa32:
"

### default pkg_download
### prepare
pkg_prepare() {
	pkg_prepare_default &&
	cd tmp/mesa* &&
	patch -Np1 -i ../pkg/MesaLib-add_xdemos-1.patch
}

### package - only collect the libraries
pkg_package() {
	rm -rf usr/include usr/share &&
	#mkdir -p ./usr/share         &&
	#mv ./tmp/vulkan ./usr/share  &&
	true
}

### build
pkg_build() {

	export CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}"
	export CFLAGS="-O2" CXXFLAGS="-O2"
	export PKG_CONFIG_PATH="$PKG_CONFIG_PATH32"
	export USE_ARCH=32
	
	GALLIUM_DRV="r300,r600,radeonsi,nouveau,svga,swrast,virgl,iris,crocus,i915"
	DRI_DRIVERS="" # no longer supported - use amber branch to build
	
	MESONFLAGS="$MESONFLAGS --prefix=$XORG_PREFIX \
      --buildtype=release            \
      -Ddri-drivers=$DRI_DRIVERS     \
      -Dgallium-drivers=$GALLIUM_DRV \
      -Dgallium-nine=false           \
      -Dglx=dri                      \
      -Dvalgrind=false               \
      -Dlibunwind=false			     \
      -Dgles1=enabled				 \
      -Dgles2=enabled				 \
      -Dosmesa=true		             \
      -Dgallium-vdpau=false			 \
      -Dgallium-xa=true				 \
      -Dgallium-va=false			 \
      -Dgbm=true					 \
      -Dshared-glapi=enabled		 \
      -Dshared-llvm=false			 \
      -Dgallium-extra-hud=false		 \
      -Dvulkan-drivers=""		     \
      -Dplatforms=x11				 \
      "
    #In 22.3.5, osmesa defaults to false.

	pkg_build_meson && 
	pkg_build_slackdesc &&

	# multi-lib
	mv /usr/bin/glxgears /usr/bin/glxgears-32 &&
    mv /usr/bin/glxinfo /usr/bin/glxinfo-32 &&
	true
}
 
