Xorg7/MesaLib

From CBLFS
Revision as of 16:44, 16 April 2007 by Jciccone (talk | contribs)
Jump to navigationJump to search
Download Source:
http://prdownloads.sourceforge.net/mesa3d/MesaLib-7.9.tar.bz2
http://prdownloads.sourceforge.net/mesa3d/MesaDemos-7.9.tar.bz2
http://prdownloads.sourceforge.net/mesa3d/MesaGLUT-7.9.tar.bz2
Download Patch:
http://svn.cross-lfs.org/svn/repos/patches/Mesa/mesa-7.9-drop_static_inline.patch

Back to libdrm

Introduction to Mesa

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, there are a few other packages that can use a GLUT library (such as LibTIFF), so you may wish to install MesaGLUT as well. If you choose to install the demos, extract all three tarballs from the same toplevel directory. All three will extract to the Mesa-7.9 directory.

Homepage: http://www.mesa3d.org/

Dependencies

Required

Caution.png

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.
Caution.png

Note

Executing 'make' in the top of the source tree will provide a list of supported targets. Several of these are 64-bit targets. Do not use these on a pure 64-bit system. The config files for these targets look in $XORG_PREFIX/lib64 for dependencies. They are really for multilib use and the regular linux or linux-dri target are appropriate for either the pure 32-bit or pure 64-bit system.

Non-Multilib

Apply the patch and correct some hardcoded paths.

patch -Np1 -i ../mesa-7.9-drop_static_inline.patch &&
sed -i "s@/usr/X11R6@$XORG_PREFIX@g" $(grep -lr /usr/X11R6 *) &&
sed -i 's@lib/modules@lib/xorg/modules@' src/glx/x11/dri_glx.c &&
sed -i 's@lib/modules@lib/xorg/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/xorg/modules/dri &&
install -m755 lib/*dri* ${XORG_PREFIX}/lib/xorg/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

The Mesa source is needed to build the x-server, save the Mesa source tree for use with the 32-bit x-server build.

mv Mesa-7.9 Mesa-7.9-32

Apply the patch and correct some hardcoded paths.

patch -Np1 -i ../mesa-7.9-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/xorg/modules@' src/glx/x11/dri_glx.c &&
sed -i 's@lib/modules@lib/xorg/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/xorg/modules/dri &&
install -m755 lib/*dri* ${XORG_PREFIX}/lib/xorg/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

N32

The Mesa source is needed to build the x-server, save the Mesa source tree for use with the N32 x-server build.

mv Mesa-7.9 Mesa-7.9-N32

Apply the patch and correct some hardcoded paths.

patch -Np1 -i ../mesa-7.9-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@&32@' \
    -e 's@LIB_DIR="/usr/local/lib@&32@' \
    -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_PATHN32}" \
make CC="gcc ${BUILDN32}" OPT_FLAGS="${BUILDN32}" linux-dri

Install the binaries and modules.

bin/installmesa ${XORG_PREFIX} &&
install -d ${XORG_PREFIX}/lib32/xorg/modules/dri &&
install -m755 lib32/*dri* ${XORG_PREFIX}/lib32/xorg/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

64Bit

The Mesa source is needed to build the x-server, save the Mesa source tree for use with the 64-bit x-server build.

mv Mesa-7.9 Mesa-7.9-64

Apply the patch and correct some hardcoded paths.

patch -Np1 -i ../mesa-7.9-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/xorg/modules/dri &&
install -m755 lib64/*dri* ${XORG_PREFIX}/lib64/xorg/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

Contents

Installed Directories: /usr/include/GLES
Installed Programs: None
Installed Libraries: libGL.so, libGLU.so, libGLw.so, libOSMesa.so, libglut.so

Short Description