summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKyle K <kylek389@gmail.com>2010-12-28 02:03:40 -0600
committerKamil Kaminski <kamilkss@gmail.com>2010-12-28 02:03:40 -0600
commit58de8cf17972a9f0bd97c41b761c9e16dedea527 (patch)
tree1f5f7c933aec16736d83fef0711baecadb89ef68
downloadX.org-script-58de8cf17972a9f0bd97c41b761c9e16dedea527.tar.gz
X.org-script-58de8cf17972a9f0bd97c41b761c9e16dedea527.tar.bz2
X.org-script-58de8cf17972a9f0bd97c41b761c9e16dedea527.zip
Initial commit
-rwxr-xr-xflags15
-rw-r--r--info.txt28
-rw-r--r--local9
-rwxr-xr-xxorg400
4 files changed, 452 insertions, 0 deletions
diff --git a/flags b/flags
new file mode 100755
index 0000000..64f8ae2
--- /dev/null
+++ b/flags
@@ -0,0 +1,15 @@
+#!/bin/bash
+
+# misc flags, written to save user's time and memory
+
+#export CFLAGS="-O0 -g"
+#export CXXFLAGS="-O0 -g"
+
+export CFLAGS="-march=core2 -mtune=core2 -O2 -fomit-frame-pointer"
+export CXXFLAGS="-march=core2 -mtune=core2 -O2 -fomit-frame-pointer"
+
+#export CPATH="/opt/gfx-test/include"
+export ACLOCAL="aclocal -I /opt/gfx-test/share/aclocal"
+export PKG_CONFIG_PATH="/opt/gfx-test/lib/pkgconfig:/opt/gfx-test/share/pkgconfig"
+export PREFIX="/opt/gfx-test"
+
diff --git a/info.txt b/info.txt
new file mode 100644
index 0000000..2e01aff
--- /dev/null
+++ b/info.txt
@@ -0,0 +1,28 @@
+# misc xorg.conf sections, settings, and options
+
+Section "ServerFlags"
+# Option "NoTrapSignals" "True"
+ Option "DontZap" "False"
+# Option "AIGLX" "False"
+EndSection
+
+ HorizSync 31-80
+ VertRefresh 56-75
+
+ Option "ModeDebug" "On"
+
+ SubSection "Display"
+ Viewport 0 0
+ Depth 16
+ Modes "1280x1024" "1024x768"
+ EndSubSection
+ SubSection "Display"
+ Viewport 0 0
+ Depth 24
+ Modes "1280x1024" "1024x768"
+ EndSubSection
+
+Section "DRI"
+ Mode 0666
+EndSection
+
diff --git a/local b/local
new file mode 100644
index 0000000..013f500
--- /dev/null
+++ b/local
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+export CFLAGS="-march=core2 -mtune=core2 -O2 -fomit-frame-pointer"
+export CXXFLAGS="-march=core2 -mtune=core2 -O2 -fomit-frame-pointer"
+
+export ACLOCAL="aclocal -I /usr/local/share/aclocal"
+export PREFIX=/usr/local
+export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig"
+
diff --git a/xorg b/xorg
new file mode 100755
index 0000000..5559dde
--- /dev/null
+++ b/xorg
@@ -0,0 +1,400 @@
+#!/bin/bash
+#
+# Kamil Kaminski
+# revision 8
+#
+
+echo -e "X.Org utility script\n"
+
+# compiler flags
+export CFLAGS="-march=native -mtune=native -O2 -fomit-frame-pointer"
+export CXXFLAGS="-march=native -mtune=native -O2 -fomit-frame-pointer"
+
+#export CPATH="/usr/local/include"
+#export ACLOCAL="aclocal -I /usr/local/share/aclocal"
+#export PREFIX=/usr/local
+#export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig"
+
+#export CPATH="/opt/gfx-test/include"
+export ACLOCAL="aclocal -I /opt/gfx-test/share/aclocal"
+export PKG_CONFIG_PATH="/opt/gfx-test/lib/pkgconfig:/opt/gfx-test/share/pkgconfig"
+export PREFIX="/opt/gfx-test"
+MAKE="make -j2"
+
+# list of repositories
+REPOS="\
+git://anongit.freedesktop.org/git/mesa/cairo \
+git://anongit.freedesktop.org/git/mesa/drm \
+git://anongit.freedesktop.org/git/mesa/mesa \
+git://anongit.freedesktop.org/git/nouveau/xf86-video-nouveau \
+git://anongit.freedesktop.org/git/pixman \
+git://anongit.freedesktop.org/git/xcb/libxcb \
+git://anongit.freedesktop.org/git/xcb/proto \
+git://anongit.freedesktop.org/git/xcb/pthread-stubs \
+git://anongit.freedesktop.org/git/xkeyboard-config \
+git://anongit.freedesktop.org/git/xorg/app/xkbcomp \
+git://anongit.freedesktop.org/git/xorg/driver/xf86-input-evdev \
+git://anongit.freedesktop.org/git/xorg/driver/xf86-input-keyboard \
+git://anongit.freedesktop.org/git/xorg/driver/xf86-input-mouse \
+git://anongit.freedesktop.org/git/xorg/driver/xf86-video-fbdev \
+git://anongit.freedesktop.org/git/xorg/driver/xf86-video-intel \
+git://anongit.freedesktop.org/git/xorg/driver/xf86-video-nv \
+git://anongit.freedesktop.org/git/xorg/driver/xf86-video-vesa \
+git://anongit.freedesktop.org/git/xorg/font/misc-misc \
+git://anongit.freedesktop.org/git/xorg/lib/libX11 \
+git://anongit.freedesktop.org/git/xorg/lib/libXdamage \
+git://anongit.freedesktop.org/git/xorg/lib/libXext \
+git://anongit.freedesktop.org/git/xorg/lib/libXfixes \
+git://anongit.freedesktop.org/git/xorg/lib/libXfont \
+git://anongit.freedesktop.org/git/xorg/lib/libXinerama \
+git://anongit.freedesktop.org/git/xorg/lib/libXrandr \
+git://anongit.freedesktop.org/git/xorg/lib/libXv \
+git://anongit.freedesktop.org/git/xorg/lib/libXvMC \
+git://anongit.freedesktop.org/git/xorg/lib/libXxf86vm \
+git://anongit.freedesktop.org/git/xorg/lib/libfontenc \
+git://anongit.freedesktop.org/git/xorg/lib/libpciaccess \
+git://anongit.freedesktop.org/git/xorg/lib/libxkbfile \
+git://anongit.freedesktop.org/git/xorg/lib/libxtrans \
+git://anongit.freedesktop.org/git/xorg/proto/bigreqsproto \
+git://anongit.freedesktop.org/git/xorg/proto/compositeproto \
+git://anongit.freedesktop.org/git/xorg/proto/damageproto \
+git://anongit.freedesktop.org/git/xorg/proto/dri2proto \
+git://anongit.freedesktop.org/git/xorg/proto/evieproto \
+git://anongit.freedesktop.org/git/xorg/proto/fixesproto \
+git://anongit.freedesktop.org/git/xorg/proto/fontsproto \
+git://anongit.freedesktop.org/git/xorg/proto/glproto \
+git://anongit.freedesktop.org/git/xorg/proto/inputproto \
+git://anongit.freedesktop.org/git/xorg/proto/kbproto \
+git://anongit.freedesktop.org/git/xorg/proto/randrproto \
+git://anongit.freedesktop.org/git/xorg/proto/recordproto \
+git://anongit.freedesktop.org/git/xorg/proto/renderproto \
+git://anongit.freedesktop.org/git/xorg/proto/resourceproto \
+git://anongit.freedesktop.org/git/xorg/proto/scrnsaverproto \
+git://anongit.freedesktop.org/git/xorg/proto/videoproto \
+git://anongit.freedesktop.org/git/xorg/proto/x11proto \
+git://anongit.freedesktop.org/git/xorg/proto/xcmiscproto \
+git://anongit.freedesktop.org/git/xorg/proto/xextproto \
+git://anongit.freedesktop.org/git/xorg/proto/xf86dgaproto \
+git://anongit.freedesktop.org/git/xorg/proto/xf86driproto \
+git://anongit.freedesktop.org/git/xorg/proto/xf86vidmodeproto \
+git://anongit.freedesktop.org/git/xorg/proto/xineramaproto \
+git://anongit.freedesktop.org/git/xorg/util/macros \
+git://anongit.freedesktop.org/git/xorg/xserver \
+git://anongit.freedesktop.org/git/mesa/demos"
+
+# list of modules that will get compiled generically, without any extra flags
+modules="\
+bigreqsproto \
+compositeproto \
+damageproto \
+dri2proto \
+evieproto \
+fixesproto \
+fontsproto \
+glproto \
+inputproto \
+kbproto \
+macros \
+proto \
+pthread-stubs \
+randrproto \
+recordproto \
+renderproto \
+resourceproto \
+scrnsaverproto \
+videoproto \
+x11proto \
+xcmiscproto \
+xextproto \
+xf86dgaproto \
+xf86driproto \
+xf86vidmodeproto \
+xineramaproto \
+libXdamage \
+libXext \
+libXfixes \
+libfontenc \
+libxtrans \
+libXfont \
+libXinerama \
+libXrandr \
+libXv \
+libXvMC \
+libXxf86vm \
+libpciaccess \
+libxcb \
+libxkbfile \
+misc-misc \
+pixman \
+xkbcomp \
+xkeyboard-config \
+libX11"
+
+# list of modules that may get compiled with custom flags
+modules2="\
+cairo \
+drm \
+mesa \
+xf86-input-evdev \
+xf86-input-keyboard \
+xf86-input-mouse \
+xf86-video-fbdev \
+xf86-video-intel \
+xf86-video-nouveau \
+xf86-video-nv \
+xf86-video-vesa \
+xserver"
+
+init()
+{
+ for repo in $REPOS; do
+ REPONAME=`basename $repo`
+ if [ -d $REPONAME ]; then
+ echo -e "\e[00;32m$REPONAME\e[00m \e[00;33mis already initialized, skipping\e[00m"
+ else
+ git clone $repo
+ fi
+ done
+}
+
+update_modules()
+{
+ for module in $modules2; do
+ REPONAME=`basename $module`
+ if [ ! -d $REPONAME ]; then
+ echo -e "\e[00;31m$REPONAME\e[00m \e[00;33mdoes not exist, skipping\e[00m"
+ else
+ cd $module
+ echo -n "$module: "
+ git pull
+ #git rebase master
+ cd ..
+ fi
+ done
+
+ for module in $modules; do
+ REPONAME=`basename $module`
+ if [ ! -d $REPONAME ]; then
+ echo -e "\e[00;31m$REPONAME\e[00m \e[00;33mdoes not exist, skipping\e[00m"
+ else
+ cd $module
+ echo -n "$module: "
+ git pull
+ #git rebase master
+ cd ..
+ fi
+ done
+}
+
+build()
+{
+ exec 2> >(tee ../xorg.log)
+
+ echo -e "\e[00;32mbuilding X.Org\n\e[00m"
+
+ if [ -d $PREFIX ]; then
+ echo "$PREFIX exists, removing..."
+ rm -rf $PREFIX
+ mkdir -p $PREFIX/share/aclocal
+ mkdir -p $PREFIX/bin
+ else
+ mkdir -p $PREFIX/share/aclocal
+ mkdir -p $PREFIX/bin
+ fi
+
+ if [ -d pthread-stubs ]; then
+ cd pthread-stubs
+ echo "building pthread-stubs"
+ ./autogen.sh --prefix=$PREFIX
+ ($MAKE)
+ make install
+ cd ..
+ else
+ echo -e "\e[00;31mpthread-stubs has not been cloned\e[00m"
+ fi
+
+ if [ -d macros ]; then
+ cd macros
+ echo "building macros"
+ ./autogen.sh --prefix=$PREFIX
+ ($MAKE)
+ make install
+ cd ..
+ else
+ echo -e "\e[00;31mmacros has not been cloned\e[00m"
+ fi
+
+ for i in $modules; do
+ if [ -d $i ]; then
+ cd $i
+ echo ======================
+ echo configuring $i
+ echo ======================
+ ./autogen.sh --prefix=$PREFIX
+ echo ======================
+ echo building $i
+ echo ======================
+ if [ $? -ne 0 ]; then
+ echo "failed to configure $i."
+ exit
+ fi
+ ($MAKE)
+ make install
+ cd ..
+ else
+ echo -e "\e[00;33m$i has not been cloned\e[00m"
+ fi
+ done
+
+ if [ -d drm ]; then
+ cd drm
+ ./autogen.sh --prefix=$PREFIX --enable-nouveau-experimental-api
+ ($MAKE)
+ make install
+ cd ..
+ else
+ echo -e "\e[00;33mdrm has not been cloned\e[00m"
+ fi
+
+ if [ -d mesa ]; then
+ cd mesa
+ ./autogen.sh --prefix=$PREFIX --with-dri-driverdir=$PREFIX/lib/dri \
+ --enable-glx-tls --enable-xcb --enable-gles2 \
+ --with-dri-drivers=swrast,nouveau --enable-gallium-nouveau \
+ --disable-gallium-intel --disable-gallium-radeon \
+ --disable-gallium-svga #--disable-asm --enable-debug
+ if [ $? -ne 0 ]; then
+ echo "failed to configure Mesa."
+ exit
+ fi
+ ($MAKE)
+ make install
+ mkdir -p $PREFIX/bin
+ install -m755 progs/xdemos/{glxinfo,glxgears} $PREFIX/bin
+ cd ..
+ else
+ echo -e "\e[00;33mmesa has not been cloned\e[00m"
+ fi
+
+ if [ -d xserver ]; then
+ cd xserver
+ ./autogen.sh --prefix=$PREFIX --enable-glx-tls
+ if [ $? -ne 0 ]; then
+ echo "failed to configure X server."
+ exit
+ fi
+ ($MAKE)
+ make install
+ chown root $PREFIX/bin/Xorg
+ chmod +s $PREFIX/bin/Xorg
+ cd ..
+ else
+ echo -e "\e[00;33mxserver has not been cloned\e[00m"
+ fi
+
+ if [ -d cairo ]; then
+ cd cairo
+ ./autogen.sh --prefix=$PREFIX --enable-gl
+ ($MAKE)
+ make install
+ cd ..
+ else
+ echo -e "\e[00;33mcairo has not been cloned\e[00m"
+ fi
+
+ if [ -d xf86-input-mouse ]; then
+ cd xf86-input-mouse
+ ./autogen.sh --prefix=$PREFIX
+ ($MAKE)
+ make install
+ cd ..
+ else
+ echo -e "\e[00;33mxf86-input-mouse has not been cloned\e[00m"
+ fi
+
+ if [ -d xf86-input-keyboard ]; then
+ cd xf86-input-keyboard
+ ./autogen.sh --prefix=$PREFIX
+ ($MAKE)
+ make install
+ cd ..
+ else
+ echo -e "\e[00;33mxf86-input-keyboard has not been cloned\e[00m"
+ fi
+
+ if [ -d xf86-video-nouveau ]; then
+ cd xf86-video-nouveau
+ ./autogen.sh --prefix=$PREFIX
+ ($MAKE)
+ make install
+ cd ..
+ else
+ echo -e "\e[00;33mxf86-video-nouveau has not been cloned\e[00m"
+ fi
+
+ if [ -d xf86-video-nv ]; then
+ cd xf86-video-nv
+ ./autogen.sh --prefix=$PREFIX
+ ($MAKE)
+ make install
+ cd ..
+ else
+ echo -e "\e[00;33mxf86-video-nv has not been cloned\e[00m"
+ fi
+
+ if [ -d xf86-video-vesa ]; then
+ cd xf86-video-vesa
+ ./autogen.sh --prefix=$PREFIX
+ ($MAKE)
+ make install
+ cd ..
+ else
+ echo -e "\e[00;33mxf86-video-vesa has not been cloned\e[00m"
+ fi
+
+ if [ -d xf86-video-fbdev ]; then
+ cd xf86-video-fbdev
+ ./autogen.sh --prefix=$PREFIX
+ ($MAKE)
+ make install
+ cd ..
+ else
+ echo -e "\e[00;33mxf86-video-fbdev has not been cloned\e[00m"
+ fi
+
+ if [ -d xf86-input-evdev ]; then
+ cd xf86-input-evdev
+ ./autogen.sh --prefix=$PREFIX
+ ($MAKE)
+ make install
+ cd ..
+ else
+ echo -e "\e[00;33mxf86-input-evdev has not been cloned\e[00m"
+ fi
+
+ if [ -d xf86-video-intel ]; then
+ cd xf86-video-intel
+ ./autogen.sh --prefix=$PREFIX
+ ($MAKE)
+ make install
+ cd ..
+ else
+ echo -e "\e[00;33mxf86-video-intel has not been cloned\e[00m"
+ fi
+}
+
+case "$1" in
+ init)
+ init
+ ;;
+ build)
+ build
+ ;;
+ update)
+ update_modules
+ ;;
+ *)
+ echo "usage: $0 init | build | update"
+ exit 3
+esac
+