compat-wireless: version bump, fixes a lot of the issues

This commit is contained in:
Zero_Chaos 2011-05-05 04:57:59 +00:00
parent 84cdf41bec
commit a2ad16ceb6
2 changed files with 138 additions and 0 deletions

View file

@ -48,6 +48,7 @@ DIST compat-wireless-2.6.37-4-sn.tar.bz2 3874734 RMD160 86cce3f4f6e21cb00a2e1c3d
DIST compat-wireless-2.6.38-3-ns.tar.bz2 4055637 RMD160 ce9a5bc3d359031c7aa984bcb6162b505c18129b SHA1 305e5c7e24246d082f88ffa1c7ad219db1138058 SHA256 e5cb02cd46e9f070e9ddaa17cd29bf6c9d839fd1b0e5771932753da6b5c73f54
DIST compat-wireless-2.6.38.2-2-ns.tar.bz2 4060490 RMD160 3c385c22e8c353cafdc9b0dc578cce9616714967 SHA1 c0470b3cbb3d9b31a1d9a98ea82f4fe344c8ea59 SHA256 f77b913f90bfc40233d7c71e2c274afac1134997a9257116521873ca1a5a0f79
DIST compat-wireless-2.6.39-rc1-3-s.tar.bz2 4330348 RMD160 cddb9b64bd97979a1550bd0c7ce886013c4abaab SHA1 9f7234f92551c77dc51bf3ec5faa5190265de695 SHA256 302e68f4cd3352eac8f983f022041bc31005883903a1854a6bfb9c819efb91d1
DIST compat-wireless-2.6.39-rc6-1-sp.tar.bz2 4332287 RMD160 6284b43d38425549bc77825979f6df5e3a4903ed SHA1 a45eb61347944a769b912f47efca1d9a4e8d78d0 SHA256 4e68ee589a3226ce9c4af17df0ab3cf611078e2db41e505358eb6c99a93b889f
EBUILD compat-wireless-2.6.32.8.ebuild 2368 RMD160 53d1a1401310d34cd03f2fa6bb41e60d2a16dcfd SHA1 c19445050e394bc0239c61fec11eab69e4f08daa SHA256 705bb5ad89ec2433edd4252488b3e7322c5137c49520203a3cbea44314ab9234
EBUILD compat-wireless-2.6.33-r1.ebuild 2747 RMD160 c120f1c92a7205097839c5dc42235bfd10cbf555 SHA1 2144302eab89dd5881eecf3725124d6c5b288f3f SHA256 0d425eec9472ed83cd1a29945ead1116612c938248c430653510011d56307a6b
EBUILD compat-wireless-2.6.34-r2.ebuild 3918 RMD160 48f91620cf68a993e63d3c9dfe565850650e6fc5 SHA1 44e4bec8543c93e456d3a2ac3e4ab1c7b55a8f01 SHA256 a729ecc6955dac802ed9b1585f23a48c54fdd45434d2673930322c792c77e159
@ -59,4 +60,5 @@ EBUILD compat-wireless-2.6.38.2.ebuild 5349 RMD160 997fe67289661b4b59f7b0751745a
EBUILD compat-wireless-2.6.38.ebuild 5349 RMD160 0ee4a4189fdfcf79549f1322149ca562b4ac8f8a SHA1 d2d22dfa0a7d3fc663779a680d7ac489f02740f5 SHA256 6e842396c1d468750be6a91fd94a784168d56b68513a3e9e660fc0e97c556556
EBUILD compat-wireless-2.6.39_rc1-r1.ebuild 5727 RMD160 86cf72f78c3de95e3a7a619f0094bd1136af792b SHA1 2639c2f356e69321664d507a9ce59e549be3089b SHA256 2a18b6d63c7c4add6b355247feb1228810e4f34914d64d493f374b047aafa0cd
EBUILD compat-wireless-2.6.39_rc1.ebuild 5352 RMD160 843acbacc6d8c1c30c873f4e050a757314ab8707 SHA1 ba8ba48bf7acf5d1287faa287022ecafcdec7732 SHA256 9f24ba20c29c1efe402c51e56ca5f716d680b0ebc5507d66132d74552d3cf6b0
EBUILD compat-wireless-2.6.39_rc6.ebuild 5385 RMD160 8ce900d26c9b30cb585308d37c43bd5fb4efabb7 SHA1 e79c57c130816c9ddb13fc251739a679f3c54d98 SHA256 eb29169be7583e0531f3ee9fd89218507dd80da64f4f92fb3b1d343c867f0a8d
MISC metadata.xml 228 RMD160 cd3fb26b5d8049ab5dba38f21d7654ec033aa0eb SHA1 3148dfbdced7a623a311d21c6f728ab9c7135dae SHA256 8715828d1bff71d5d96b991ba600bae9376c1c80c96f0f102260fc335ca22487

View file

@ -0,0 +1,136 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="2"
inherit linux-mod linux-info versionator eutils
##Stable
MY_P=${P/_rc/-rc}
MY_PV=v$(get_version_component_range 1-3)
DESCRIPTION="Stable kernel pre-release wifi subsystem backport"
HOMEPAGE="http://wireless.kernel.org/en/users/Download/stable"
CRAZY_VERSIONING="1-sp"
SRC_URI="http://www.orbit-lab.org/kernel/${PN}-2.6-stable/${MY_PV}/${MY_P}-${CRAZY_VERSIONING}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~arm ~amd64 ~x86"
IUSE="atheros_obey_crda debugfs debug-driver full-debug injection noleds tinyversionoverride"
DEPEND=""
RDEPEND=">=sys-kernel/linux-firmware-20110429"
S="${WORKDIR}"/"${MY_P}"-${CRAZY_VERSIONING}
RESTRICT="strip"
CONFIG_CHECK="!DYNAMIC_FTRACE"
pkg_setup() {
linux-mod_pkg_setup
kernel_is -lt 2 6 27 && die "kernel 2.6.27 or higher is required for compat wireless to be installed"
kernel_is -gt $(get_version_component_range 1) $(get_version_component_range 2) $(get_version_component_range 3) && die "The version of compat-wireless you are trying to install contains older modules than your kernel. Failing before downgrading your system."
if kernel_is -eq $(get_version_component_range 1) $(get_version_component_range 2) $(get_version_component_range 3); then
if use tinyversionoverride; then
ewarn "You have the tinyversionoverride use flag set which means you know for a fact that your"
ewarn "kernel is older than the compat-wireless you are installing."
ewarn "Most likely you have no clue what you are doing and should hit control-C now"
ewarn "before you downgrade your system. Ten seconds to think about it."
epause 10
else
ewarn "Your kernel version is most likely newer than the compat-wireless release you are"
ewarn "trying to install. If you are certain that your kernel is older then you can set"
ewarn "the tinyversionoverride use flag to override this safety check."
epause 5
die "Your kernel version is too close to the compat-wireless version to risk installation."
fi
fi
linux_chkconfig_module MAC80211 || die "CONFIG_MAC80211 must be built as a _module_ !"
linux_chkconfig_module CFG80211 || die "CONFIG_CFG80211 must be built as a _module_ !"
}
src_prepare() {
#this patch fixes a trivial typo in the config.mk
epatch "${FILESDIR}"/fix-typos-2.6.36_rc5.patch
#this may or may not HELP the channel -1 issue. this is not a fix
epatch "${FILESDIR}"/channel-negative-one-maxim.patch
#this patch ignores the regulatory settings of an atheros card and uses what CRDA thinks is right
if use atheros_obey_crda; then
ewarn "You have enabled atheros_obey_crda which doesn't do what you think."
ewarn "This use flag will cause the eeprom of the card to be ignored and force"
ewarn "world roaming on the device until crda provides a valid regdomain."
ewarn "Short version, this is not a way to break the law, this will automatically"
ewarn "make your card less functional unless you set a proper regdomain with iw/crda."
ewarn "Pausing for 10 secs..."
epause 10
epatch "${FILESDIR}"/ath_ignore_eeprom.patch
fi
if use injection; then
epatch "${FILESDIR}"/4002_mac80211-2.6.29-fix-tx-ctl-no-ack-retry-count.patch
epatch "${FILESDIR}"/4004_zd1211rw-2.6.28.patch
epatch "${FILESDIR}"/mac80211.compat08082009.wl_frag+ack_v1.patch
epatch "${FILESDIR}"/4013-runtime-enable-disable-of-mac80211-packet-injection.patch
# epatch "${FILESDIR}"/compat-chaos.patch
# epatch "${FILESDIR}"/rtl8187-mac80211-injection-speed-2.6.30-rc3.patch
# epatch "${FILESDIR}"/super_secret_patch.diff
epatch "${FILESDIR}"/ipw2200-inject.2.6.36.patch
fi
use noleds && epatch "${FILESDIR}"/leds-disable-strict.patch
use debug-driver && epatch "${FILESDIR}"/driver-debug.patch
use debugfs && sed -i '/DEBUGFS/s/^# *//' "${S}"/config.mk
if use full-debug; then
if use debug-driver ; then
sed -i '/CONFIG=/s/^# *//' "${S}"/config.mk
else
ewarn "Enabling full-debug includes debug-driver."
sed -i '/DEBUG=/s/^# *//' "${S}"/config.mk
fi
fi
# Disable B44 ethernet driver
sed -i '/CONFIG_B44=/s/ */#/' "${S}"/config.mk || die "unable to disable B44 driver"
sed -i '/CONFIG_B44_PCI=/s/ */#/' "${S}"/config.mk || die "unable to disable B44 driver"
}
src_compile() {
addpredict "${KERNEL_DIR}"
set_arch_to_kernel
emake KLIB_BUILD="${DESTDIR}"/lib/modules/"${KV_FULL}"/build || die "emake failed"
}
src_install() {
for file in $(find -name \*.ko); do
insinto "/lib/modules/${KV_FULL}/updates/$(dirname ${file})"
doins "${file}" || die "failed to install module ${file}"
done
dosbin scripts/athenable scripts/b43load scripts/iwl-enable \
scripts/madwifi-unload scripts/athload scripts/iwl-load \
scripts/b43enable scripts/unload.sh || die "script installation failed"
dodir /usr/lib/compat-wireless
exeinto /usr/lib/compat-wireless
doexe scripts/modlib.sh || die
dodoc README || die
dodir /$(get_libdir)/udev/rules.d/
insinto /$(get_libdir)/udev/rules.d/
doins udev/50-compat_firmware.rules
exeinto /$(get_libdir)/udev/
doexe udev/compat_firmware.sh
}
pkg_postinst() {
update_depmod
update_moduledb
einfo 'You may have problem if you do not run "depmod -ae" after this installation'
einfo 'To switch to the new drivers without reboot run unload.sh then load
your needed driver.'
}
pkg_postrm() {
remove_moduledb
}