Xorg7/MesaLib
Back to libdrm
Contents
MesaLib
Mesa is an OpenGL compatible 3D library. Three packages are available.
- MesaLib - the main Mesa library source code, drivers and documentation.
- MesaDemos - OpenGL demonstration and test programs. Most of the programs require GLUT.
- MesaGLUT - provides a working libglut.
If you're not interested in running the demos, you'll only need the first package. However, if you choose to install the demos, extract all three tarballs from the same toplevel directory. All three will extract to the Mesa-6.5 directory.
Dependencies
Required
- Xorg Protocol Headers glproto >=1.4.5
- Xorg Libraries
- Xorg Utilities
- libdrm >= 2.0.1
Note: Don't remove the source after building MesaLib. It is needed by the Xorg Xserver build. You need to pass the path to the MesaLib source when building xorg-server, so take note of it.
Non-Multilib
Apply the patch and correct some hardcoded paths.
patch -Np1 -i ../mesa-6.5-drop_static_inline.patch && sed -i "s@/usr/X11R6@$XORG_PREFIX@g" $(grep -lr /usr/X11R6 *) && sed -i 's@lib/modules@lib/X11/modules@' src/glx/x11/dri_glx.c && sed -i 's@lib/modules@lib/X11/modules@' src/mesa/drivers/dri/Makefile.template
Fix an error with output redirection if /bin/sh is not the Bash shell on your system:
sed -i 's%>& /dev/null%>/dev/null%' src/mesa/drivers/dri/Makefile.template
Compile the package:
make realclean make linux-dri
Install the binaries and modules.
bin/installmesa ${XORG_PREFIX} && install -d ${XORG_PREFIX}/lib/X11/modules/dri && install -m755 lib/*dri* ${XORG_PREFIX}/lib/X11/modules/dri
If you chose to download and extract the demos, compile them now.
sed -i 's@-l$(GLUT_LIB)@@g' configs/default && cd progs/xdemos && make PROGS='glxinfo glxgears'
Install the demo programs.
install -m755 glxinfo glxgears ${XORG_PREFIX}/bin
Multilib
32Bit
Apply the patch and correct some hardcoded paths.
mv Mesa-6.5 Mesa-6.5-32 patch -Np1 -i ../mesa-6.5-drop_static_inline.patch && sed -i configs/linux-dri* \ -e "s@/usr/X11R6@$XORG_PREFIX@g" \ -e "s/-DHAVE_ALIAS/& -DGLX_USE_TLS/" && sed -i "s@/usr/local@$XORG_PREFIX@g" bin/installmesa && sed -i 's@lib/modules@lib/X11/modules@' src/glx/x11/dri_glx.c && sed -i 's@lib/modules@lib/X11/modules@' src/mesa/drivers/dri/Makefile.template
Fix an error with output redirection if /bin/sh is not the Bash shell on your system:
sed -i 's%>& /dev/null%>/dev/null%' src/mesa/drivers/dri/Makefile.template
Compile the package:
PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \ make CC="gcc ${BUILD32}" OPT_FLAGS="${BUILD32}" linux-dri
Install the binaries and modules.
bin/installmesa ${XORG_PREFIX} && install -d ${XORG_PREFIX}/lib/X11/modules/dri && install -m755 lib/*dri* ${XORG_PREFIX}/lib/X11/modules/dri
DEMOS: Only 1 Insatallation needed! If you chose to download and extract the demos, compile them now.
sed -i 's@-l$(GLUT_LIB)@@g' configs/default && cd progs/xdemos && make PROGS='glxinfo glxgears'
Install the demo programs.
install -m755 glxinfo glxgears ${XORG_PREFIX}/bin
N32
64Bit
Apply the patch and correct some hardcoded paths.
mv Mesa-6.5 Mesa-6.5-64 patch -Np1 -i ../mesa-6.5-drop_static_inline.patch && sed -i configs/linux-dri* \ -e "s@/usr/X11R6@${XORG_PREFIX}@g" \ -e "s/-DHAVE_ALIAS/& -DGLX_USE_TLS/" && sed -i bin/installmesa \ -e 's@LIB_DIR=$1/lib@&64@' \ -e 's@LIB_DIR="/usr/local/lib@&64@' \ -e "s@/usr/local@${XORG_PREFIX}@g"
Fix an error with output redirection if /bin/sh is not the Bash shell on your system:
sed -i 's%>& /dev/null%>/dev/null%' src/mesa/drivers/dri/Makefile.template
Compile the package:
PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \ make CC="gcc ${BUILD64}" OPT_FLAGS="${BUILD64}" linux-dri-x86-64
Install the binaries and modules.
bin/installmesa ${XORG_PREFIX} && install -d ${XORG_PREFIX}/lib64/X11/modules/dri && install -m755 lib64/*dri* ${XORG_PREFIX}/lib64/X11/modules/dri
DEMOS: Only 1 Installation Needed! If you chose to download and extract the demos, compile them now.
sed -i 's@-l$(GLUT_LIB)@@g' configs/default && cd progs/xdemos && make PROGS='glxinfo glxgears'
Install the demo programs.
install -m755 glxinfo glxgears ${XORG_PREFIX}/bin
Forward to xbitmaps