Summary
Description: The git repository for the ATI/AMD fglrx packaging scripts.
Last Change: Mon 8/30/10 10:11
Recent Commits
>
--git a/Ubuntu/dists/source/fglrx-amdcccle.install.in b/Ubuntu/dists/source/fglrx-amdcccle.install.in
index d19fd91..32a92ac 100755
--- a/Ubuntu/dists/source/fglrx-amdcccle.install.in
+++ b/Ubuntu/dists/source/fglrx-amdcccle.install.in
@@ -2,6 +2,6 @@ debian/overrides/fglrx-amdcccle usr/share/lintian/overrides
usr/share/icons/*.xpm usr/share/pixmaps
usr/share/ati usr/share
usr/share/applications usr/share
-usr/X11R6/bin/* usr/bin/
-arch/#ARCH#/usr/X11R6/bin/amdcccle usr/bin
+usr/X11R6/bin/* #DRIDIR#/bin
+arch/#ARCH#/usr/X11R6/bin/amdcccle #DRIDIR#/bin
diff --git a/Ubuntu/dists/source/fglrx.install.in b/Ubuntu/dists/source/fglrx.install.in
index b4d5069..7930173 100644
--- a/Ubuntu/dists/source/fglrx.install.in
+++ b/Ubuntu/dists/source/fglrx.install.in
@@ -8,7 +8,7 @@ arch/#ARCH#/lib/modules/fglrx/build_mod/lib* usr/src/fglrx-#CVERSION#
debian/dkms.conf usr/src/fglrx-#CVERSION#
#DRI stuff
-arch/#ARCH#/usr/X11R6/#LIBDIR#/libAMD* usr/lib
+arch/#ARCH#/usr/X11R6/#LIBDIR#/libAMD* #DRIDIR#
#debian integration
debian/overrides/fglrx usr/share/lintian/overrides
@@ -19,16 +19,16 @@ etc/ati etc
debian/replacements/authatieventsd.sh etc/ati
#binaries
-arch/#ARCH#/usr/sbin/* usr/sbin
-arch/#ARCH#/usr/X11R6/bin/ati* usr/bin
-arch/#ARCH#/usr/X11R6/bin/fgl* usr/bin
+arch/#ARCH#/usr/sbin/* #DRIDIR#/bin
+arch/#ARCH#/usr/X11R6/bin/ati* #DRIDIR#/bin
+arch/#ARCH#/usr/X11R6/bin/fgl* #DRIDIR#/bin
usr/sbin/*sh usr/share/fglrx
#DRI stuff
-arch/#ARCH#/usr/X11R6/#LIBDIR#/liba*.so* usr/lib
-arch/#ARCH#/usr/X11R6/#LIBDIR#/libf*.so* usr/lib
-arch/#ARCH#/usr/X11R6/#LIBDIR#/libX*.so* usr/lib
-arch/#ARCH#/usr/X11R6/#LIBDIR#/libG*.so* usr/lib
+arch/#ARCH#/usr/X11R6/#LIBDIR#/liba*.so* #DRIDIR#
+arch/#ARCH#/usr/X11R6/#LIBDIR#/libf*.so* #DRIDIR#
+arch/#ARCH#/usr/X11R6/#LIBDIR#/libX*.so* #DRIDIR#
+arch/#ARCH#/usr/X11R6/#LIBDIR#/libG*.so* #DRIDIR#
arch/#ARCH#/usr/X11R6/#LIBDIR#/modules/dri #DRIDIR#
#Xorg stuff
@@ -38,4 +38,4 @@ arch/#ARCH#/usr/X11R6/#LIBDIR#/modules/dri #DRIDIR#
#XARCH#/usr/X11R6/#LIBDIR#/modules/extensions #XMODDIR#
#CAL stuff
-arch/#ARCH#/usr/#LIBDIR#/* usr/lib
+arch/#ARCH#/usr/#LIBDIR#/* #DRIDIR#
diff --git a/Ubuntu/dists/source/fglrx.links b/Ubuntu/dists/source/fglrx.links
index ed3578e..7251c2f 100644
--- a/Ubuntu/dists/source/fglrx.links
+++ b/Ubuntu/dists/source/fglrx.links
@@ -1,4 +1,8 @@
-usr/lib/libfglrx_gamma.so.1.0 usr/lib/libfglrx_gamma.so.1
-usr/lib/libfglrx_pp.so.1.0 usr/lib/libfglrx_pp.so.1
-usr/lib/libfglrx_dm.so.1.0 usr/lib/libfglrx_dm.so.1
-usr/lib/libfglrx_tvout.so.1.0 usr/lib/libfglrx_tvout.so.1
+usr/lib/fglrx/libfglrx_gamma.so.1.0 usr/lib/fglrx/libfglrx_gamma.so.1
+usr/lib/fglrx/libfglrx_pp.so.1.0 usr/lib/fglrx/libfglrx_pp.so.1
+usr/lib/fglrx/libfglrx_dm.so.1.0 usr/lib/fglrx/libfglrx_dm.so.1
+usr/lib/fglrx/libfglrx_tvout.so.1.0 usr/lib/fglrx/libfglrx_tvout.so.1
+usr/lib/fglrx/libatiuki.so.1.0 usr/lib/fglrx/libatiuki.so.1
+usr/lib/fglrx/libGL.so.1.2 usr/lib/fglrx/libGL.so.1
+usr/lib/fglrx/libGL.so.1 usr/lib/fglrx/libGL.so
+usr/lib/fglrx/libAMDXvBA.so.1.0 usr/lib/fglrx/libAMDXvBA.so.1
diff --git a/Ubuntu/dists/source/fglrx.postinst b/Ubuntu/dists/source/fglrx.postinst
index f422f2d..4274e17 100644
--- a/Ubuntu/dists/source/fglrx.postinst
+++ b/Ubuntu/dists/source/fglrx.postinst
@@ -4,7 +4,6 @@ set -e
PACKAGE_NAME=fglrx
CVERSION=`dpkg-query -W -f='${Version}' $PACKAGE_NAME | awk -F "-" '{print $1}' | cut -d\: -f2`
-BLACKLIST_FILE=/etc/modprobe.d/blacklist-$PACKAGE_NAME.conf
ARCH=`dpkg --print-architecture`
@@ -16,16 +15,26 @@ if [ "$1" = "configure" ]; then
dpkg-divert --remove --rename --package xorg-driver-fglrx --divert /usr/lib/fglrx/libglx.so.xlibmesa /usr/lib/xorg/modules/extensions/libglx.so > /dev/null
fi
+ update-alternatives --force \
+ --install /etc/ld.so.conf.d/GL.conf gl_conf /usr/lib/fglrx/ld.so.conf 9700 \
+ --slave /usr/bin/aticonfig aticonfig /usr/lib/fglrx/bin/aticonfig \
+ --slave /usr/bin/atiode atiode /usr/lib/fglrx/bin/atiode \
+ --slave /usr/bin/amdnotifyui amdnotifyui /usr/lib/fglrx/bin/amdnotifyui \
+ --slave /usr/bin/amdcccle amdcccle /usr/lib/fglrx/bin/amdcccle \
+ --slave /usr/bin/fgl_glxgears fgl_glxgears /usr/lib/fglrx/bin/fgl_glxgears \
+ --slave /usr/bin/fglrxinfo fglrxinfo /usr/lib/fglrx/bin/fglrxinfo \
+ --slave /usr/bin/atiodcli atiodcli /usr/lib/fglrx/bin/atiodcli \
+ --slave /usr/bin/atieventsd atieventsd /usr/lib/fglrx/bin/atieventsd \
+ --slave /usr/lib/xorg/modules/drivers/fglrx_drv.so fglrx_drv /usr/lib/fglrx/xorg/modules/drivers/fglrx_drv.so \
+ --slave /etc/modprobe.d/fglrx.conf fglrx_modconf /usr/lib/fglrx/modprobe.conf \
+ --slave /usr/lib/xorg/extra-modules xorg_extra_modules /usr/lib/fglrx/xorg \
+ # explicit ldconfig due to alternatives
+ ldconfig
+
/usr/lib/dkms/common.postinst $PACKAGE_NAME $CVERSION /usr/share/$PACKAGE_NAME $ARCH $2
- if [ ! -f $BLACKLIST_FILE ]; then
- cat > $BLACKLIST_FILE <<EOF
-# Warning: This file is autogenerated by fglrx. All changes to this file will be lost.
-blacklist radeon
-EOF
- #Update the initramfs as radeon might get loaded from it normally
- /usr/sbin/update-initramfs -u
- fi
+ #Update the initramfs as radeon might get loaded from it normally
+ /usr/sbin/update-initramfs -u
fi
#DEBHELPER#
diff --git a/Ubuntu/dists/source/fglrx.preinst b/Ubuntu/dists/source/fglrx.preinst
index f24d184..1c0bbd9 100644
--- a/Ubuntu/dists/source/fglrx.preinst
+++ b/Ubuntu/dists/source/fglrx.preinst
@@ -85,20 +85,6 @@ case "$1" in
### remove old fglrx diversions ###
fix_diversions
- ### make new diversions ###
- if [ ! -d /usr/lib/fglrx ]; then ###
- mkdir -p /usr/lib/fglrx
- fi
- dpkg-divert --add --rename --package $PKGNAME --divert /usr/lib/fglrx/libGL.so.1.2.xlibmesa /usr/lib/libGL.so.1.2 > /dev/null
- dpkg-divert --add --rename --package $PKGNAME --divert /usr/lib/fglrx/libglx.so.xlibmesa /usr/lib/xorg/modules/extensions/libglx.so > /dev/null
-
- if [ -n "$HAS_LIB32" ]; then
- if [ ! -d /usr/lib32/fglrx ]; then
- mkdir -p /usr/lib32/fglrx
- fi
- dpkg-divert --add --rename --package $PKGNAME --divert /usr/lib32/fglrx/libGL.so.1.2.xlibmesa /usr/lib32/libGL.so.1.2 > /dev/null
- fi
-
### Remove user changes to "conffiles"" ###
### These files are stored in /etc but shouldn't be treated ###
### as conf files because updated drivers may stop working ###
diff --git a/Ubuntu/dists/source/fglrx.prerm b/Ubuntu/dists/source/fglrx.prerm
index f3f1600..0ccf8d6 100644
--- a/Ubuntu/dists/source/fglrx.prerm
+++ b/Ubuntu/dists/source/fglrx.prerm
@@ -1,33 +1,32 @@
#!/bin/sh
-# Copyright (C) 2002-2005 Flavio Stanchina
-# Copyright (C) 2005-2006 Aric Cyr
-# Copyright (C) 2007-2008 Mario Limonciello
+# prerm script for nvidia-current
+#
+# Copyright (C) 2007 Mario Limonciello
+# Copyright (C) 2009 Canonical Ltd
+# Authors: Alberto Milone
-#DEBHELPER#
-CVERSION=`dpkg-query -W -f='${Version}' fglrx | awk -F "-" '{print $1}' | cut -d\: -f2`
-SOURCES=/var/lib/dkms/fglrx/
+PACKAGE_NAME=fglrx
+CVERSION=`dpkg-query -W -f='${Version}' $PACKAGE_NAME | awk -F "-" '{print $1}' | cut -d\: -f2`
+
+remove_dkms_module() {
+ echo "Removing all DKMS Modules"
+ dkms remove -m $PACKAGE_NAME -v $CVERSION --all > /dev/null
+ echo "Done."
+}
case "$1" in
- remove|upgrade)
- if [ -d $SOURCES ]; then
- for directory in $(ls $SOURCES); do
- kind=$(echo "$directory" | awk '$1 ~ /.*[a-z].*$/ { print "alpha"; next } { print "num" }')
- # the names of the directories containing the version of the driver are digits (e.g. 8.573)
- if [ "$kind" = "num" ]; then
- comparison=$(echo "$directory" | awk -v Version="$CVERSION" '($1 != Version) { print "yes"; next } { print "no" }')
- # if the version is less than $VERSION
- if [ "$comparison" = "yes" ]; then
- echo "Removing old untracked DKMS directory: $SOURCES$directory"
- rm -rf $SOURCES$directory 2>/dev/null
- fi
- fi
- done
- fi
- echo "Removing all DKMS Modules"
- dkms remove -m fglrx -v $CVERSION --all > /dev/null
- echo "Done."
- ;;
-esac
+ upgrade)
+ remove_dkms_module
+ ;;
+ remove)
+ remove_dkms_module
+
+ update-alternatives --remove gl_conf /usr/lib/fglrx/ld.so.conf
+ # explicit ldconfig due to alternatives
+ ldconfig
+ ;;
+esac
+#DEBHELPER#
diff --git a/Ubuntu/dists/source/rules b/Ubuntu/dists/source/rules
index 25c1d95..8fd1253 100755
--- a/Ubuntu/dists/source/rules
+++ b/Ubuntu/dists/source/rules
@@ -8,19 +8,19 @@ CVERSION := $(shell dpkg-parsechangelog | grep '^Version:' | cut -d' ' -f2 | cut
DVERSION := $(shell dpkg-parsechangelog | grep '^Version:' | cut -d' ' -f2 | cut -d\: -f2)
DISTRO := $(shell dpkg-parsechangelog | grep '^Distribution:' | cut -d' ' -f2 | cut -d\: -f2)
+# Package names
+PKG_driver := fglrx
+PKG_driver_dev := fglrx-dev
+PKG_control := fglrx-amdcccle
+
#Directory naming schemes
-DRIDIR := usr/lib
-DRIDIR32 := usr/lib32
+DRIDIR := usr/lib/$(PKG_driver)
+DRIDIR32 := usr/lib32/$(PKG_driver)
XMODDIR := $(DRIDIR)/xorg/modules
LIBDIR := lib
ARCH := x86
XARCH := x740
-# Package names
-PKG_driver := fglrx
-PKG_driver_dev := fglrx-dev
-PKG_control := fglrx-amdcccle
-
ifeq ($(DEB_BUILD_ARCH),amd64)
LIBDIR := lib64
ARCH := x86_64
@@ -86,40 +86,51 @@ build:
binary:
#Steps that we can't easily represent in debhelper files or .in files yet
ifeq ($(DEB_BUILD_ARCH),amd64)
- dh_install -p$(PKG_UVD_library) "arch/x86/usr/X11R6/lib/libAMD*.so*" "usr/lib32"
- dh_install -XlibAMD -p$(PKG_driver) "arch/x86/usr/X11R6/lib/*.so*" "usr/lib32"
+ dh_install -p$(PKG_driver) "arch/x86/usr/X11R6/lib/libAMD*.so*" "$(DRIDIR32)"
+ dh_install -p$(PKG_driver) "arch/x86/usr/X11R6/lib/*.so*" "$(DRIDIR32)"
+ dh_installdirs -p$(PKG_driver) "$(DRIDIR32)"
dh_install -p$(PKG_driver) "arch/x86/usr/X11R6/lib/modules/dri" "$(DRIDIR32)"
- dh_install -p$(PKG_driver) "arch/x86/usr/lib/*" "usr/lib32"
- dh_installdirs -p$(PKG_driver) "usr/lib32/fglrx"
+ dh_install -p$(PKG_driver) "arch/x86/usr/lib/*" "$(DRIDIR32)"
for i in \
debian/$(PKG_driver)/$(DRIDIR32)/dri/fglrx_dri.so \
- debian/$(PKG_driver)/usr/lib32/libGL.so.* \
+ debian/$(PKG_driver)/$(DRIDIR32)/libGL.so.* \
; do execstack -q $$i; execstack -c $$i; done
#they don't provide the symlink for us (starting at 8.699)
- dh_link -p$(PKG_driver) usr/lib32/libatiuki.so.1.0 usr/lib32/libatiuki.so.1
+ dh_link -p$(PKG_driver) $(DRIDIR32)/libatiuki.so.1.0 $(DRIDIR32)/libatiuki.so.1
endif
- #they don't provide the symlink for us (starting at 8.699)
- dh_link -p$(PKG_driver) usr/lib/libatiuki.so.1.0 usr/lib/libatiuki.so.1
-
dh_installdocs -p$(PKG_driver) usr/share/doc/fglrx/* --exclude ATI_LICENSE.TXT
dh_installinit -p$(PKG_driver) --name="atieventsd" --no-start --update-rcd-params="defaults 31"
#remove executable bits from stack
dh_install -p$(PKG_control)
- execstack -c debian/$(PKG_control)/usr/bin/amdcccle
+ execstack -c debian/$(PKG_control)/$(DRIDIR)/bin/amdcccle
dh_install -p$(PKG_driver)
for i in \
- debian/$(PKG_driver)/usr/bin/atiode \
- debian/$(PKG_driver)/usr/sbin/amdnotifyui \
- debian/$(PKG_driver)/usr/lib/dri/fglrx_dri.so \
- debian/$(PKG_driver)/usr/lib/libGL.so.* \
+ debian/$(PKG_driver)/$(DRIDIR)/bin/atiode \
+ debian/$(PKG_driver)/$(DRIDIR)/bin/amdnotifyui \
+ debian/$(PKG_driver)/$(DRIDIR)/dri/fglrx_dri.so \
+ debian/$(PKG_driver)/$(DRIDIR)/libGL.so.* \
; do execstack -q $$i; execstack -c $$i; done
+
+ # Blacklist any other driver that udev may want to load instead of fglrx
+ printf "blacklist radeon\n" > $(CURDIR)/debian/$(PKG_driver)/$(DRIDIR)/modprobe.conf
+
+ #ld.so.conf
+ echo "$(DRIDIR)" > "$(CURDIR)/debian/$(PKG_driver)/$(DRIDIR)/ld.so.conf"
+ifeq ($(DEB_BUILD_ARCH),amd64)
+ echo "$(DRIDIR32)" >> "$(CURDIR)/debian/$(PKG_driver)/$(DRIDIR)/ld.so.conf"
+endif
+
+
#Run the normal stuff
dh binary
+override_dh_shlibdeps:
+ dh_shlibdeps -l`pwd`/debian/fglrx/usr/lib/fglrx
+
%:
&n
Copyright © 2010 by Phoronix Media