diff --git a/catalyst/PKGBUILD b/catalyst/PKGBUILD new file mode 100644 index 000000000..bf8b6cdd2 --- /dev/null +++ b/catalyst/PKGBUILD @@ -0,0 +1,168 @@ +# +# Chakra Packages for Chakra, part of chakra-project.org +# +# maintainer (i686): Phil Miller +# maintainer (x86_64): Manuel Tortosa + +# include global config +source ../_buildscripts/${current_repo}-${_arch}-cfg.conf + +_kernver=`uname -r` + +pkgname=catalyst +pkgver=10.4 +pkgrel=2 +pkgdesc="AMD/ATI drivers for Radeon brand cards" +arch=('i686' 'x86_64') +url="http://www.ati.amd.com" +license=('custom') +depends=('xorg-server<1.9.0' 'kernel26>=2.6.29' 'kernel26<2.6.35' 'kernel26-headers' 'netkit-bsd-finger' 'libstdc++5' 'libxrandr' 'libsm' 'fontconfig' 'libxcursor' 'libxi' 'gcc-libs') + +conflicts=('catalyst-utils' 'nvidia' 'libgl' 'catalyst-leaked' 'xf86-video-ati' 'xf86-video-radeonhd' 'ati-dri') +provides=('libgl' 'libatical') +install=catalyst.install +source=(https://launchpad.net/ubuntu/lucid/+source/fglrx-installer/2:8.723.1-0ubuntu1/+files/fglrx-installer_8.723.1.orig.tar.gz + catalyst.sh amdcccle.desktop atieventsd.sh fglrx-2.6.33.patch) +md5sums=('c5bed046747747b8f8e66f0338c81907' + 'bdafe749e046bfddee2d1c5e90eabd83' + '4efa8414a8fe9eeb50da38b5522ef81d' + 'f729bf913613f49b0b9759c246058a87' + 'c5eb5571782fed5232461f59a789fb08') + +build() { + +##Preparing ubuntu's fglrx to work with old archs pkgbuild +tar zxvf fglrx-installer_8.723.1.orig.tar.gz +cd fglrx-installer-8.723.1 +mkdir common +mv etc usr lib common +cp common/usr/share/doc/fglrx/ATI_LICENSE.TXT . +cd .. + + +##Build kernel modules + +if [ "${CARCH}" = "x86_64" ]; then +BUILDARCH=x86_64 +_archdir=x86_64 +fi +if [ "${CARCH}" = "i686" ]; then +BUILDARCH=i386 +_archdir=x86 +fi + +##patching for kernel 2.6.33 or 2.6.34 support +if [ `uname -r |grep -c "2.6.33"` != 0 ] || [ `uname -r |grep -c "2.6.34"` != 0 ]; then +cd "${srcdir}/fglrx-installer-8.723.1/" +patch -Np1 -i ../fglrx-2.6.33.patch || return 1 +fi + + +cd "${srcdir}/fglrx-installer-8.723.1/common/lib/modules/fglrx/build_mod" +cp "${srcdir}/fglrx-installer-8.723.1/arch/${_archdir}/lib/modules/fglrx/build_mod/libfglrx_ip.a.GCC4" . || return 1 +cp 2.6.x/Makefile . || return 1 + +make -C /lib/modules/${_kernver}/build SUBDIRS="`pwd`" ARCH=${BUILDARCH} modules || return 1 + +install -m755 -d "${pkgdir}/lib/modules/${_kernver}/video/" +install -m644 fglrx.ko "${pkgdir}/lib/modules/${_kernver}/video/" || return 1 +install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + +sed -i -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" $startdir/*.install + +##Install catalyst utilities + +# Create directories +install -m755 -d "${pkgdir}/etc/ati" +install -m755 -d "${pkgdir}/etc/rc.d" +install -m755 -d "${pkgdir}/etc/profile.d" +install -m755 -d "${pkgdir}/etc/acpi/events" + +install -m755 -d "${pkgdir}/usr/lib/xorg/modules/dri" +install -m755 -d "${pkgdir}/usr/lib/xorg/modules/drivers" +install -m755 -d "${pkgdir}/usr/lib/xorg/modules/extensions" +install -m755 -d "${pkgdir}/usr/lib/xorg/modules/linux" + +install -m755 -d "${pkgdir}/usr/bin" +install -m755 -d "${pkgdir}/usr/sbin" + +install -m755 -d "${pkgdir}/usr/include/X11/extensions" +install -m755 -d "${pkgdir}/usr/include/GL" + +install -m755 -d "${pkgdir}/usr/share/applications" +install -m755 -d "${pkgdir}/usr/share/ati/amdcccle" +install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" +install -m755 -d "${pkgdir}/usr/share/man/man8" +install -m755 -d "${pkgdir}/usr/share/pixmaps" +install -m755 -d "${pkgdir}/opt/${pkgname}" + +# X driver installation +if [ "${CARCH}" = "i686" ]; then +cd "${srcdir}/fglrx-installer-8.723.1/x750/usr/X11R6/lib/modules" || return 1 +elif [ "${CARCH}" = "x86_64" ]; then +cd "${srcdir}/fglrx-installer-8.723.1/x750_64a/usr/X11R6/lib64/modules" || return 1 +fi + +#install -m644 *.a "${pkgdir}/usr/lib/xorg/modules/" || return 1 +install -m755 *.so "${pkgdir}/usr/lib/xorg/modules/" || return 1 +install -m755 drivers/*.so "${pkgdir}/usr/lib/xorg/modules/drivers/" || return 1 +install -m755 linux/*.so "${pkgdir}/usr/lib/xorg/modules/linux/" || return 1 +install -m755 extensions/libglx.so "${pkgdir}/usr/lib/xorg/modules/extensions/" || return 1 +#install -m755 extensions/libdri.so "${pkgdir}/usr/lib/xorg/modules/extensions/libdri.ati" || return 1 + +# Controlcenter / library installation +if [ "${CARCH}" = "i686" ]; then +cd "${srcdir}/fglrx-installer-8.723.1/arch/x86/usr" || return 1 +_lib=lib +elif [ "${CARCH}" = "x86_64" ]; then +cd "${srcdir}/fglrx-installer-8.723.1/arch/x86_64/usr" || return 1 +_lib=lib64 +fi + +install -m755 X11R6/bin/* "${pkgdir}/usr/bin/" || return 1 +install -m755 sbin/* "${pkgdir}/usr/sbin/" || return 1 +install -m755 X11R6/${_lib}/*.so* "${pkgdir}/usr/lib/" || return 1 +install -m644 X11R6/${_lib}/*.a "${pkgdir}/usr/lib/" || return 1 # really needed? +install -m644 X11R6/${_lib}/*.cap "${pkgdir}/usr/lib/" || return 1 +install -m755 X11R6/${_lib}/modules/dri/*.so "${pkgdir}/usr/lib/xorg/modules/dri/" || return 1 +install -m755 ${_lib}/*.so* "${pkgdir}/usr/lib/" || return 1 + +ln -sf /usr/lib/xorg/modules/dri ${pkgdir}/usr/lib/dri +ln -sf libfglrx_dm.so.1.0 "${pkgdir}/usr/lib/libfglrx_dm.so.1" +ln -sf libfglrx_pp.so.1.0 "${pkgdir}/usr/lib/libfglrx_pp.so.1" +ln -sf libfglrx_tvout.so.1.0 "${pkgdir}/usr/lib/libfglrx_tvout.so.1" +ln -sf libfglrx_gamma.so.1.0 "${pkgdir}/usr/lib/libfglrx_gamma.so.1" +ln -sf libGL.so.1.2 "${pkgdir}/usr/lib/libGL.so.1" +ln -sf libGL.so.1.2 "${pkgdir}/usr/lib/libGL.so" + +cd "${srcdir}"/fglrx-installer-8.723.1/common +install -m644 etc/ati/* "${pkgdir}/etc/ati/" || return 1 +chmod 755 "${pkgdir}/etc/ati/authatieventsd.sh" || return 1 + +install -m644 usr/X11R6/include/X11/extensions/*.h "${pkgdir}/usr/include/X11/extensions/" || return 1 +install -m644 usr/X11R6/bin/amdupdaterandrconfig "${pkgdir}/usr/bin/" || return 1 +install -m644 usr/include/GL/*.h "${pkgdir}/usr/include/GL/" || return 1 +install -m755 usr/sbin/*.sh "${pkgdir}/usr/sbin/" || return 1 +install -m644 usr/share/ati/amdcccle/* "${pkgdir}/usr/share/ati/amdcccle/" || return 1 # ? what are these files for? +# install -m644 usr/share/gnome/apps/amdcccle.desktop "${pkgdir}/usr/share/applications/" || return 1 +install -m644 usr/share/icons/*.xpm "${pkgdir}/usr/share/pixmaps/" || return 1 +install -m644 usr/share/man/man8/*.8 "${pkgdir}/usr/share/man/man8/" || return 1 +install -m644 "${srcdir}/amdcccle.desktop" "${pkgdir}/usr/share/applications/" || return 1 + +# ACPI example files +install -m755 usr/share/doc/fglrx/examples/etc/acpi/*.sh "${pkgdir}/etc/acpi/" || return 1 +sed -i -e 's/usr\/X11R6/usr/g' "${pkgdir}/etc/acpi/ati-powermode.sh" || return 1 +install -m644 usr/share/doc/fglrx/examples/etc/acpi/events/* "${pkgdir}/etc/acpi/events/" || return 1 + +# Add ATI Events Daemon launcher +install -m755 "${srcdir}/atieventsd.sh" "${pkgdir}/etc/rc.d/atieventsd" || return 1 + +# thanks to cerebral, we dont need that damned symlink +install -m755 "${srcdir}/catalyst.sh" "${pkgdir}/etc/profile.d/" || return 1 + +# License +install -m644 "${srcdir}/fglrx-installer-8.723.1/ATI_LICENSE.TXT" "${pkgdir}/usr/share/licenses/${pkgname}/" || return 1 + +# hw_ati_hwdb +install -m644 "${srcdir}/fglrx-installer-8.723.1/common/lib/modules/fglrx/build_mod/fglrxko_pci_ids.h" "${pkgdir}/opt/${pkgname}/" || return 1 +} diff --git a/catalyst/amdcccle.desktop b/catalyst/amdcccle.desktop new file mode 100644 index 000000000..ba2ed4a81 --- /dev/null +++ b/catalyst/amdcccle.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Name=ATI Catalyst Control Center +Comment=ATI graphics adapter settings +Name[de]=ATI Catalyst Control Center +Comment[de]=ATI grafics adapter settings +Icon=ccc_large +MiniIcon=ccc_small +Exec=amdcccle +Type=Application +Terminal=false +Categories=Settings;DesktopSettings; diff --git a/catalyst/atieventsd.sh b/catalyst/atieventsd.sh new file mode 100644 index 000000000..16bd9a4fa --- /dev/null +++ b/catalyst/atieventsd.sh @@ -0,0 +1,41 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +ATID_PID=`pidof -o %PPID /usr/sbin/atieventsd` + +case "$1" in + start) + rc=0 + stat_busy "Starting ATI Events Daemon" + [ -z "$ATID_PID" ] && /usr/sbin/atieventsd + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + else + add_daemon atieventsd + stat_done + fi + ;; + stop) + rc=0 + stat_busy "Stopping ATI Events Daemon" + kill $ATID_PID &>/dev/null + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + else + rm_daemon atieventsd + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/catalyst/catalyst.install b/catalyst/catalyst.install new file mode 100644 index 000000000..c5b24f20b --- /dev/null +++ b/catalyst/catalyst.install @@ -0,0 +1,52 @@ +KERNEL_VERSION=2.6.33-ARCH + +pre_install() { + if [ ! -e /usr/lib/xorg/modules/extensions/libdri.so ]; then + ln -sf /usr/lib/xorg/modules/extensions/libdri.xorg /usr/lib/xorg/modules/extensions/libdri.so + fi +} + +post_install() { + depmod $KERNEL_VERSION + if [ ! -e /usr/lib/xorg/modules/extensions/libdri.so ]; then + ln -sf /usr/lib/xorg/modules/extensions/libdri.xorg /usr/lib/xorg/modules/extensions/libdri.so + fi + echo "--------------------------------------------------------------" + echo "You can use the tool 'aticonfig' to generate an xorg.conf file." + echo "Remember to add fglrx to the MODULES list in /etc/rc.conf." + echo "--------------------------------------------------------------" + echo "Add nomodeset to your kernel line in /boot/grub/menu.lst , ie.:" + echo "kernel /boot/vmlinuz26 root=/dev/disk/by-uuid/1aa731c0-f626-4d01-a551-8eed3c2a35f3 ro nomodeset" + echo "--------------------------------------------------------------" + echo "To get it work with xorg-server >= 1.8 (when it will arrive in [extra] repo)" + echo "you need patched xorg-server, you may get it from [catalyst-test-xorg18] repo, more here:" + echo "http://bbs.archlinux.org/viewtopic.php?pid=740353#p740353" + echo "--------------------------------------------------------------" +} + +post_upgrade() { + depmod $KERNEL_VERSION + if [ ! -e /usr/lib/xorg/modules/extensions/libdri.so ]; then + ln -sf /usr/lib/xorg/modules/extensions/libdri.xorg /usr/lib/xorg/modules/extensions/libdri.so + fi + echo "--------------------------------------------------------------" + echo "You can use the tool 'aticonfig' to generate an xorg.conf file." + echo "Remember to add fglrx to the MODULES list in /etc/rc.conf." + echo "--------------------------------------------------------------" + echo "Add nomodeset to your kernel line in /boot/grub/menu.lst , ie.:" + echo "kernel /boot/vmlinuz26 root=/dev/disk/by-uuid/1aa731c0-f626-4d01-a551-8eed3c2a35f3 ro nomodeset" + echo "--------------------------------------------------------------" + echo "To get it work with xorg-server >= 1.8 (when it will arrive in [extra] repo)" + echo "you need patched xorg-server, you may get it from [catalyst-test-xorg18] repo, more here:" + echo "http://bbs.archlinux.org/viewtopic.php?pid=740353#p740353" + echo "--------------------------------------------------------------" +} + +post_remove() { + depmod $KERNEL_VERSION + # If the symlink is dead, remove it + if [ ! -e /usr/lib/xorg/modules/extensions/libdri.so ]; then + ln -sf /usr/lib/xorg/modules/extensions/libdri.xorg /usr/lib/xorg/modules/extensions/libdri.so + fi + echo "NOTE: Don't forget to recover your original xorg.conf file." +} diff --git a/catalyst/catalyst.sh b/catalyst/catalyst.sh new file mode 100644 index 000000000..7aedd4f52 --- /dev/null +++ b/catalyst/catalyst.sh @@ -0,0 +1,11 @@ +if [ $LIBGL_DRIVERS_PATH ] +then + if ! set | grep LIBGL_DRIVERS_PATH | grep /usr/lib/xorg/modules/dri/ > /dev/null + then + LIBGL_DRIVERS_PATH=$LIBGL_DRIVERS_PATH:/usr/lib/xorg/modules/dri/ + export LIBGL_DRIVERS_PATH + fi +else + LIBGL_DRIVERS_PATH=/usr/lib/xorg/modules/dri/ + export LIBGL_DRIVERS_PATH +fi diff --git a/catalyst/fglrx-2.6.33.patch b/catalyst/fglrx-2.6.33.patch new file mode 100644 index 000000000..7ba9ecd0e --- /dev/null +++ b/catalyst/fglrx-2.6.33.patch @@ -0,0 +1,228 @@ +Index: ati10.1/common/lib/modules/fglrx/build_mod/drmP.h +=================================================================== +--- ati10.1/common/lib/modules/fglrx/build_mod/drmP.h ++++ ati10.1/common/lib/modules/fglrx/build_mod/drmP.h 2010-01-28 19:57:07.562644291 +0200 +@@ -42,7 +42,12 @@ + * can build the DRM (part of PI DRI). 4/21/2000 S + B */ + #include + #endif /* __alpha__ */ ++#include ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33) ++#include ++#else + #include ++#endif + #include + #include + #include +@@ -51,7 +56,6 @@ + #include + #include + #include +-#include + #include + #include /* For (un)lock_kernel */ + #include +Index: ati10.1/common/lib/modules/fglrx/build_mod/firegl_public.c +=================================================================== +--- ati10.1/common/lib/modules/fglrx/build_mod/firegl_public.c ++++ ati10.1/common/lib/modules/fglrx/build_mod/firegl_public.c 2010-01-29 14:21:58.687999115 +0200 +@@ -28,7 +28,11 @@ + #error Kernel versions older than 2.6.0 are no longer supported by this module. + #endif + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33) ++#include ++#else + #include ++#endif + + #if !defined(CONFIG_X86) + #if !defined(CONFIG_X86_PC) +@@ -163,8 +167,12 @@ + + // For 2.6.18 or higher, the UTS_RELEASE is defined in the linux/utsrelease.h. + #ifndef UTS_RELEASE ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33) ++#include ++#else + #include + #endif ++#endif + + #if defined(__i386__) + #ifndef do_div +@@ -1472,7 +1472,16 @@ + #ifndef __HAVE_ARCH_CMPXCHG + return __fgl_cmpxchg(ptr,old,new,size); + #else +- return __cmpxchg(ptr,old,new,size); ++ switch (size) { ++ case 1: { volatile u8 *_ptr = ptr; return cmpxchg(_ptr, old, new); } ++ case 2: { volatile u16 *_ptr = ptr; return cmpxchg(_ptr, old, new); } ++ case 4: { volatile u32 *_ptr = ptr; return cmpxchg(_ptr, old, new); } ++#ifdef __x86_64__ ++ case 8: { volatile u64 *_ptr = ptr; return cmpxchg(_ptr, old, new); } ++#endif ++ default: ++ return old; ++ } + #endif + } + + +Index: ati10.1/common/lib/modules/fglrx/build_mod/kcl_acpi.c +=================================================================== +--- ati10.1/common/lib/modules/fglrx/build_mod/kcl_acpi.c ++++ ati10.1/common/lib/modules/fglrx/build_mod/kcl_acpi.c 2010-01-28 19:57:17.897225045 +0200 +@@ -15,7 +15,11 @@ + ****************************************************************************/ + + #include ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33) ++#include ++#else + #include ++#endif + #include + + #include "kcl_config.h" +Index: ati10.1/common/lib/modules/fglrx/build_mod/kcl_agp.c +=================================================================== +--- ati10.1/common/lib/modules/fglrx/build_mod/kcl_agp.c ++++ ati10.1/common/lib/modules/fglrx/build_mod/kcl_agp.c 2010-01-28 19:57:26.104892082 +0200 +@@ -31,7 +31,11 @@ + */ + + #include ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33) ++#include ++#else + #include ++#endif + #include + #include + #include +Index: ati10.1/common/lib/modules/fglrx/build_mod/kcl_io.c +=================================================================== +--- ati10.1/common/lib/modules/fglrx/build_mod/kcl_io.c ++++ ati10.1/common/lib/modules/fglrx/build_mod/kcl_io.c 2010-01-28 19:57:34.337558105 +0200 +@@ -37,7 +37,11 @@ + */ + + #include ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33) ++#include ++#else + #include ++#endif + #include + #include + #include +Index: ati10.1/common/lib/modules/fglrx/build_mod/kcl_osconfig.h +=================================================================== +--- ati10.1/common/lib/modules/fglrx/build_mod/kcl_osconfig.h ++++ ati10.1/common/lib/modules/fglrx/build_mod/kcl_osconfig.h 2010-01-28 19:57:43.599182385 +0200 +@@ -20,7 +20,11 @@ + #define KCL_OSCONFIG_H + + #include ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33) ++#include ++#else + #include ++#endif + + // Choose modern way to call 32-on-64 IOCTLs if configured in the kernel + #if defined(CONFIG_COMPAT) && LINUX_VERSION_CODE > KERNEL_VERSION(2,6,9) +Index: ati10.1/common/lib/modules/fglrx/build_mod/kcl_pci.c +=================================================================== +--- ati10.1/common/lib/modules/fglrx/build_mod/kcl_pci.c ++++ ati10.1/common/lib/modules/fglrx/build_mod/kcl_pci.c 2010-01-28 19:57:51.295870149 +0200 +@@ -31,7 +31,11 @@ + */ + + #include ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33) ++#include ++#else + #include ++#endif + #include + + #include "kcl_config.h" +Index: ati10.1/common/lib/modules/fglrx/build_mod/kcl_str.c +=================================================================== +--- ati10.1/common/lib/modules/fglrx/build_mod/kcl_str.c ++++ ati10.1/common/lib/modules/fglrx/build_mod/kcl_str.c 2010-01-28 19:57:59.728528058 +0200 +@@ -30,7 +30,12 @@ + * + */ + ++#include ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33) ++#include ++#else + #include ++#endif + #include + #include + +Index: ati10.1/common/lib/modules/fglrx/build_mod/kcl_wait.c +=================================================================== +--- ati10.1/common/lib/modules/fglrx/build_mod/kcl_wait.c ++++ ati10.1/common/lib/modules/fglrx/build_mod/kcl_wait.c 2010-01-28 19:58:08.936154527 +0200 +@@ -31,7 +31,11 @@ + */ + + #include ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33) ++#include ++#else + #include ++#endif + #include + #include + #include +Index: ati10.1/common/lib/modules/fglrx/build_mod/make.sh +=================================================================== +--- ati10.1/common/lib/modules/fglrx/build_mod/make.sh ++++ ati10.1/common/lib/modules/fglrx/build_mod/make.sh 2010-01-28 19:55:10.849378991 +0200 +@@ -218,8 +218,15 @@ + # UTS-define is in external version-*.h files, i.e. linux-2.2.14-5.0-RedHat does this flaw + kernel_release=`cat $linuxincludes/linux/version-*.h | grep UTS_RELEASE | grep \"$OsRelease\" | cut -d'"' -f2` + else +- # For 2.6.18 or higher, UTS-define is defined in utsrelease.h. +- kernel_release=`cat $linuxincludes/linux/utsrelease.h | grep UTS_RELEASE | grep \"$OsRelease\" | cut -d'"' -f2` ++ UTS_REL_COUNT=`cat $linuxincludes/generated/utsrelease.h 2>/dev/null | grep UTS_RELEASE -c` ++ ++ if [ $UTS_REL_COUNT -gt 0 ]; then ++ # 2.6.33+ ++ kernel_release=`cat $linuxincludes/generated/utsrelease.h | grep UTS_RELEASE | grep \"$OsRelease\" | cut -d'"' -f2` ++ else ++ # For 2.6.18 to 2.6.32, UTS-define is defined in utsrelease.h. ++ kernel_release=`cat $linuxincludes/linux/utsrelease.h | grep UTS_RELEASE | grep \"$OsRelease\" | cut -d'"' -f2` ++ fi + fi + fi + fi +@@ -302,7 +309,8 @@ + # 3 + # linux/autoconf.h may contain this: #define CONFIG_SMP 1 + +-src_file=$linuxincludes/linux/autoconf.h ++src_file=$linuxincludes/generated/autoconf.h ++[ -e $src_file ] || src_file=$linuxincludes/linux/autoconf.h + + if [ ! -e $src_file ]; then + echo "Warning:" >> $logfile +@@ -355,7 +363,8 @@ + MODVERSIONS=0 + + # linux/autoconf.h may contain this: #define CONFIG_MODVERSIONS 1 +-src_file=$linuxincludes/linux/autoconf.h ++src_file=$linuxincludes/generated/autoconf.h ++[ -e $src_file ] || src_file=$linuxincludes/linux/autoconf.h + if [ ! -e $src_file ]; + then + echo "Warning:" >> $logfile diff --git a/libstdc++5/PKGBUILD b/libstdc++5/PKGBUILD new file mode 100644 index 000000000..40b4c2c4b --- /dev/null +++ b/libstdc++5/PKGBUILD @@ -0,0 +1,41 @@ +# $Id: PKGBUILD 35578 2009-04-14 04:59:36Z eric $ +# Maintainer: Jan de Groot + +pkgname=libstdc++5 +pkgver=3.3.6 +pkgrel=3 +pkgdesc="GNU Standard C++ library version 3" +arch=(i686 x86_64) +url="http://gcc.gnu.org" +license=('GPL' 'LGPL') +depends=('gcc-libs') +makedepends=('binutils' 'gcc') +options=('!libtool' '!makeflags') +source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-{core,g++}-${pkgver}.tar.bz2 gcc-3.4.3-no_multilib_amd64.patch) +md5sums=(18c52e6fb8966b7700665dca289d077f 6b3d00b8d079805be1b895f7f6ce47a0 \ + 088e0807e677010cafe4e590e8711be1) + +build(){ + export CFLAGS=$(echo $CFLAGS | sed 's|-mtune=generic||') + export CXXFLAGS=$(echo $CXXFLAGS | sed 's|-mtune=generic||') + cd ${srcdir}/gcc-${pkgver} + + if [ "$CARCH" = "x86_64" ]; then + patch -Np0 -i ../gcc-3.4.3-no_multilib_amd64.patch || return 1 + fi + + # No fixincludes + sed -i -e 's@\./fixinc\.sh@-c true@' gcc/Makefile.in + mkdir ../gcc-build + cd ../gcc-build + ../gcc-${pkgver}/configure --prefix=/usr --enable-shared \ + --enable-languages=c++ --enable-threads=posix --enable-__cxa_atexit \ + --disable-multilib --libdir=/usr/lib + make all-target-libstdc++-v3 BOOT_CFLAGS="${CFLAGS}" STAGE1_CFLAGS="-O" || return 1 + make DESTDIR=${pkgdir} install-target-libstdc++-v3 || return 1 + + # Remove includefiles and libs provided by gcc + rm -rf ${pkgdir}/usr/{include,share/locale} + rm -f ${pkgdir}/usr/lib/*.a + rm -f ${pkgdir}/usr/lib/libstdc++.so +} diff --git a/libstdc++5/gcc-3.4.3-no_multilib_amd64.patch b/libstdc++5/gcc-3.4.3-no_multilib_amd64.patch new file mode 100644 index 000000000..dce10d4e4 --- /dev/null +++ b/libstdc++5/gcc-3.4.3-no_multilib_amd64.patch @@ -0,0 +1,11 @@ +--- gcc/config/i386/t-linux64.orig 2003-06-28 00:19:59.000000000 +0000 ++++ gcc/config/i386/t-linux64 2003-06-28 00:20:07.000000000 +0000 +@@ -6,7 +6,7 @@ + + MULTILIB_OPTIONS = m64/m32 + MULTILIB_DIRNAMES = 64 32 +-MULTILIB_OSDIRNAMES = ../lib64 ../lib ++MULTILIB_OSDIRNAMES = . ../lib + + LIBGCC = stmp-multilib + INSTALL_LIBGCC = install-multilib diff --git a/netkit-bsd-finger/LICENSE b/netkit-bsd-finger/LICENSE new file mode 100644 index 000000000..78254519a --- /dev/null +++ b/netkit-bsd-finger/LICENSE @@ -0,0 +1,36 @@ +/* + * Copyright (c) 1989 The Regents of the University of California. + * All rights reserved. + * + * This code is derived from software contributed to Berkeley by + * Tony Nardo of the Johns Hopkins University/Applied Physics Lab. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + diff --git a/netkit-bsd-finger/PKGBUILD b/netkit-bsd-finger/PKGBUILD new file mode 100644 index 000000000..ea1987985 --- /dev/null +++ b/netkit-bsd-finger/PKGBUILD @@ -0,0 +1,26 @@ +# $Id: PKGBUILD 78053 2010-04-19 08:47:06Z dgriffiths $ +# Maintainer: dorphell +pkgname=netkit-bsd-finger +pkgver=0.17 +pkgrel=5 +pkgdesc="bsd-finger ported to Linux" +arch=('i686' 'x86_64') +url="ftp://ftp.uk.linux.org/pub/linux/Networking/netkit" +license=('BSD') +depends=('glibc' 'xinetd') +backup=('etc/xinetd.d/finger') +source=(ftp://ftp.uk.linux.org/pub/linux/Networking/netkit/bsd-finger-${pkgver}.tar.gz finger.xinetd LICENSE) +md5sums=('52bf281aac8814bf56cdc92f7661ee75' 'a8682004dc8dee356065162bde892b47'\ + '5fc568418a0379fc3a358ed1c2523b44') + +build() { + cd ${srcdir}/bsd-finger-${pkgver} + install -d ${pkgdir}/usr/{bin,sbin} ${pkgdir}/usr/share/man/{man1,man8} + ./configure --prefix=/usr || return 1 + sed -i 's@include @include @' finger/lprint.c || return 1 + sed -i 's@include @include @' finger/sprint.c || return 1 + make || return 1 + make INSTALLROOT=${pkgdir} MANDIR=/usr/share/man install || return 1 + install -D -m644 ${srcdir}/finger.xinetd ${pkgdir}/etc/xinetd.d/finger || return 1 + install -D -m644 ../LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE +} diff --git a/netkit-bsd-finger/finger.xinetd b/netkit-bsd-finger/finger.xinetd new file mode 100644 index 000000000..cc9a8b15d --- /dev/null +++ b/netkit-bsd-finger/finger.xinetd @@ -0,0 +1,8 @@ +service finger +{ + socket_type = stream + wait = no + user = nobody + server = /usr/sbin/in.fingerd + disable = yes +} diff --git a/nvidia-utils/20-nvidia.conf b/nvidia-utils/20-nvidia.conf new file mode 100644 index 000000000..8483e3699 --- /dev/null +++ b/nvidia-utils/20-nvidia.conf @@ -0,0 +1,4 @@ +Section "Device" + Identifier "Default nvidia Device" + Driver "nvidia" +EndSection diff --git a/nvidia-utils/PKGBUILD b/nvidia-utils/PKGBUILD new file mode 100644 index 000000000..ebdb78506 --- /dev/null +++ b/nvidia-utils/PKGBUILD @@ -0,0 +1,84 @@ +# +# Chakra Packages for Chakra, part of chakra-project.org +# +# maintainer (i686): Phil Miller +# maintainer (x86_64): Manuel Tortosa + +# include global config +source ../_buildscripts/${current_repo}-${_arch}-cfg.conf + +pkgname=nvidia-utils +pkgver=195.36.24 +pkgrel=1 +pkgdesc="NVIDIA drivers utilities and libraries." +arch=('i686' 'x86_64') +[ "$CARCH" = "i686" ] && ARCH=x86 +[ "$CARCH" = "x86_64" ] && ARCH=x86_64 +url="http://www.nvidia.com/" +depends=('xorg-server') +optdepends=('gtk2: nvidia-settings' 'pkgconfig: nvidia-xconfig') +conflicts=('libgl') +provides=('libgl') +license=('custom') +install=nvidia.install +options=(!strip) +source=("http://download.nvidia.com/XFree86/Linux-${ARCH}/${pkgver}/NVIDIA-Linux-${ARCH}-${pkgver}-pkg0.run" + 20-nvidia.conf) +md5sums=('97d3e5f69707092aa643fb901bb94003' + 'adbefbc0e570b3bd2b918ffd74443dde') +[ "$CARCH" = "x86_64" ] && md5sums[0]='9d58114ed8c89cd66fbaccad0c997ee8' + +build() { + cd $srcdir + sh NVIDIA-Linux-${ARCH}-${pkgver}-pkg0.run --extract-only +} + +package() { + cd $srcdir/NVIDIA-Linux-${ARCH}-${pkgver}-pkg0/usr/ + + mkdir -p $pkgdir/usr/{lib,bin,share/applications,share/pixmaps,share/man/man1} + mkdir -p $pkgdir/usr/lib/xorg/modules/{extensions,drivers} + mkdir -p $pkgdir/usr/lib/vdpau + mkdir -p $pkgdir/usr/share/licenses/nvidia + mkdir -p $pkgdir/usr/include/cuda + + install -m644 include/cuda/cuda*.h $pkgdir/usr/include/cuda/ + + install lib/{libGLcore,libGL,libnvidia-cfg,libcuda,tls/libnvidia-tls}.so.${pkgver} $pkgdir/usr/lib/ || return 1 + install -m755 lib/vdpau/libvdpau_nvidia.so.${pkgver} "${pkgdir}/usr/lib/vdpau/" || return 1 + ln -sf libvdpau_nvidia.so.${pkgver} "${pkgdir}/usr/lib/vdpau/libvdpau_nvidia.so.1" + + install -m644 share/man/man1/* $pkgdir/usr/share/man/man1/ || return 1 + rm $pkgdir/usr/share/man/man1/nvidia-installer.1.gz || return 1 + install X11R6/lib/libXv* $pkgdir/usr/lib/ || return 1 + install -m644 share/applications/nvidia-settings.desktop $pkgdir/usr/share/applications/ || return 1 + # fix nvidia .desktop file + sed -e 's:__UTILS_PATH__:/usr/bin:' -e 's:__PIXMAP_PATH__:/usr/share/pixmaps:' -i $pkgdir/usr/share/applications/nvidia-settings.desktop + install -m644 share/pixmaps/nvidia-settings.png $pkgdir/usr/share/pixmaps/ || return 1 + install X11R6/lib/modules/drivers/nvidia_drv.so $pkgdir/usr/lib/xorg/modules/drivers || return 1 + install X11R6/lib/modules/extensions/libglx.so.$pkgver $pkgdir/usr/lib/xorg/modules/extensions || return 1 + install -m755 bin/nvidia-{settings,xconfig,bug-report.sh} $pkgdir/usr/bin/ || return 1 + cd $pkgdir/usr/lib/ + ln -s libGL.so.$pkgver libGL.so || return 1 + ln -s libGL.so.$pkgver libGL.so.1 || return 1 + ln -s libGLcore.so.$pkgver libGLcore.so.1 || return 1 + ln -s libnvidia-cfg.so.$pkgver libnvidia-cfg.so.1 || return 1 + ln -s libnvidia-tls.so.$pkgver libnvidia-tls.so.1 || return 1 + ln -s libcuda.so.$pkgver libcuda.so.1 || return 1 + ln -s libcuda.so.$pkgver libcuda.so || return 1 + ln -s libXvMCNVIDIA.so.$pkgver libXvMCNVIDIA_dynamic.so.1 || return 1 + + cd $pkgdir/usr/lib/xorg/modules/extensions + ln -s libglx.so.$pkgver libglx.so || return 1 + + install -m644 $srcdir/NVIDIA-Linux-${ARCH}-${pkgver}-pkg0/LICENSE $pkgdir/usr/share/licenses/nvidia/ || return 1 + ln -s nvidia $startdir/pkg/usr/share/licenses/nvidia-utils || return 1 + + install -D -m644 $srcdir/NVIDIA-Linux-${ARCH}-${pkgver}-pkg0/usr/share/doc/README.txt $pkgdir/usr/share/doc/nvidia/README || return 1 + + find $pkgdir/usr -type d -exec chmod 755 {} \; + chmod 644 $pkgdir/usr/lib/libXvMCNVIDIA.a || return 1 + + # Install xorg.conf.d file for nvidia autodetection in xorg.conf-less configurations + install -D -m644 $srcdir/20-nvidia.conf $pkgdir/etc/X11/xorg.conf.d/20-nvidia.conf || return 1 +} diff --git a/nvidia-utils/nvidia.install b/nvidia-utils/nvidia.install new file mode 100644 index 000000000..0a878a73d --- /dev/null +++ b/nvidia-utils/nvidia.install @@ -0,0 +1,6 @@ +post_install() { + echo By using this package you accept the NVIDIA license, + echo which has been installed in /usr/share/licenses/nvidia/LICENSE + echo If you do not accept this license, you must remove the package immediately. + echo Dont forget to update your /etc/X11/xorg.conf +} diff --git a/nvidia/PKGBUILD b/nvidia/PKGBUILD new file mode 100644 index 000000000..58fa4489b --- /dev/null +++ b/nvidia/PKGBUILD @@ -0,0 +1,41 @@ +# +# Chakra Packages for Chakra, part of chakra-project.org +# +# maintainer (i686): Phil Miller +# maintainer (x86_64): Manuel Tortosa + +# include global config +source ../_buildscripts/${current_repo}-${_arch}-cfg.conf + +pkgname=nvidia +pkgver=195.36.24 +_kernver='2.6.33-ARCH' +pkgrel=1 +pkgdesc="NVIDIA drivers for kernel26." +arch=('i686' 'x86_64') +[ "$CARCH" = "i686" ] && ARCH=x86 +[ "$CARCH" = "x86_64" ] && ARCH=x86_64 +url="http://www.nvidia.com/" +depends=('kernel26>=2.6.33' 'kernel26<2.6.34' "nvidia-utils=${pkgver}") +makedepends=('kernel26-headers>=2.6.33' 'kernel26-headers<2.6.34') +conflicts=('nvidia-96xx' 'nvidia-173xx') +license=('custom') +install=nvidia.install +source=("http://download.nvidia.com/XFree86/Linux-$ARCH/${pkgver}/NVIDIA-Linux-$ARCH-${pkgver}-pkg0.run") +md5sums=('97d3e5f69707092aa643fb901bb94003') +[ "$CARCH" = "x86_64" ] && md5sums=('9d58114ed8c89cd66fbaccad0c997ee8') + +build() { + cd $srcdir + sh NVIDIA-Linux-$ARCH-${pkgver}-pkg0.run --extract-only + cd NVIDIA-Linux-$ARCH-${pkgver}-pkg0/usr/src/nv + make SYSSRC=/lib/modules/${_kernver}/build module || return 1 +} + +package() { + install -D -m644 $srcdir/NVIDIA-Linux-$ARCH-${pkgver}-pkg0/usr/src/nv/nvidia.ko \ + $pkgdir/lib/modules/${_kernver}/kernel/drivers/video/nvidia.ko || return 1 + mkdir -p $pkgdir/etc/modprobe.d + echo "blacklist nouveau" >> $pkgdir/etc/modprobe.d/nouveau_blacklist.conf || return 1 + sed -i -e "s/KERNEL_VERSION='.*'/KERNEL_VERSION='${_kernver}'/" $startdir/nvidia.install +} diff --git a/nvidia/nvidia.install b/nvidia/nvidia.install new file mode 100644 index 000000000..67e1a7ff6 --- /dev/null +++ b/nvidia/nvidia.install @@ -0,0 +1,14 @@ +post_install() { + KERNEL_VERSION='2.6.33-ARCH' + depmod $KERNEL_VERSION +} + +post_upgrade() { + post_install + rmmod nvidia || echo 'In order to use the new nvidia module, exit Xserver and unload it manually.' +} + +post_remove() { + KERNEL_VERSION='2.6.33-ARCH' + depmod $KERNEL_VERSION +}