diff --git a/net-wireless/compat-wireless/Manifest b/net-wireless/compat-wireless/Manifest index 92a99a29d..2861a8740 100644 --- a/net-wireless/compat-wireless/Manifest +++ b/net-wireless/compat-wireless/Manifest @@ -47,6 +47,7 @@ DIST compat-wireless-2.6.36-rc1-2.tar.bz2 2588755 RMD160 0d64a8fd4cb6268f2b32fe4 DIST compat-wireless-2.6.36-rc2-1.tar.bz2 2588254 RMD160 1f4134a3dd3f28965696c513cf5cec3320c90e85 SHA1 4a804ba4b5ee16e34afc15cced9d250fab11eec9 SHA256 d9d0f559e9d7c8a8378d7acca93dcd3e3d31ecd7bc4b9a7d1b1f7bdc42faaf97 DIST compat-wireless-2.6.36-rc3-1.tar.bz2 2589039 RMD160 5025d8d98ddcdf16bdbad2a1cdf7cb95465421f4 SHA1 e34e2103f9aa5c8c6ee6bb7ebc942c3cc834b1ea SHA256 e2135d95ce3a1e3f81635d58b729d72d170e98d2de1bef0396f0868fabbd440e DIST compat-wireless-2.6.36-rc5-2-s.tar.bz2 2600358 RMD160 43ff99f318ccf5a7fcb1ede073463c24ad0fd064 SHA1 4064d86b1b204cfbc1f5fc544ebd61832de88373 SHA256 c8312b6d8af12d35d5a32f58cdc466ed3823e7e7431cf884324a70d94595f689 +DIST compat-wireless-2.6.37-1-sn.tar.bz2 3883215 RMD160 8238aa25193ff5ad6984f0472cf5cf3e6ef1b6c8 SHA1 0524a1fa5d65079bcd833f26f873dbd50cbdd331 SHA256 911e9734a76d28d2b82c8fe550a00dd10de86fc923da635d2153fcc066ca8911 DIST compat-wireless-2.6.37-1.tar.bz2 3880779 RMD160 fbd620556ae309ae236a4658cfe42f10992576b6 SHA1 099838fc437b5619c13e1d8323f20d42fa32a55d SHA256 7d124661b58b7d0ec26b85d5e9861adfed0b30e85850bac1d8931839992f5638 DIST compat-wireless-2.6.37-rc1-1.tar.bz2 3848222 RMD160 ccf3320dd1750814d30671f16bd8d643171fe22e SHA1 60b1c6e9d421f039e22b62901de816a46931a603 SHA256 dc890a49009bd52d2c0357ee98b5a5a7b86afb7fba72417f48fdd4c5ce334bb2 DIST compat-wireless-2.6.37-rc3-1.tar.bz2 3851921 RMD160 17a86b1b9e5c9990bed5a5e8412af7b701d6940c SHA1 c2483837240d4ad1261f9cf030fc66bc331eee75 SHA256 5d915d2a9a201bc37356ae1a9d16ea4baecb94f130e85d8e2de390ed1e596449 @@ -67,6 +68,7 @@ EBUILD compat-wireless-2.6.36_rc1-r2.ebuild 5429 RMD160 d54bfcc4b6dbeb42c97beba8 EBUILD compat-wireless-2.6.36_rc2-r1.ebuild 5552 RMD160 20960d7eaa0b59b49fe220fa42027cf1d2adbccd SHA1 a17b9d179ffce76183df52c824a9516ebc997344 SHA256 a95954053ef405c653f16c79a91ff3ae1900b0c318f8029109692e3c4eeaa372 EBUILD compat-wireless-2.6.36_rc3-r1.ebuild 5552 RMD160 20960d7eaa0b59b49fe220fa42027cf1d2adbccd SHA1 a17b9d179ffce76183df52c824a9516ebc997344 SHA256 a95954053ef405c653f16c79a91ff3ae1900b0c318f8029109692e3c4eeaa372 EBUILD compat-wireless-2.6.36_rc5.ebuild 5324 RMD160 3a13c3478c6940708fadba66cad9d2fdf9487c28 SHA1 f1827886e67f1b0f6277526d9a932628ae6cf73e SHA256 431599d3e89ff794ed705b24e9ec4fd339138a9a68fff5626f148237fe169aa6 +EBUILD compat-wireless-2.6.37-r1.ebuild 5437 RMD160 7aef53651264a6c6016e0608fc298233f4f49d5c SHA1 3b162661ae532a2e7396cb86e73cc8166cd0a92e SHA256 317b8c09a2c4bdb8f22525c08c36cef25d791c96b68296b800786aeac20b1ac0 EBUILD compat-wireless-2.6.37.ebuild 5434 RMD160 47a134c6ad734dc4b06cf270c6113ffb3eb337ad SHA1 00373f235d9582df95ffa3a9c0ec1967218ba82c SHA256 d3871892076a5b09d18ea57d890b6db96dd9fdb1b74862abf2763a55fc141f6b EBUILD compat-wireless-2.6.37_rc1.ebuild 5383 RMD160 7e1d61bfca36e71d45003737daad8cdeede197dd SHA1 6970021a15256c7aea96b0ce7f796ca579c9566b SHA256 5acfc775dc048b0d3ff61c710ccf3191eb14e92b341a885f35582f89456cab1c EBUILD compat-wireless-2.6.37_rc3.ebuild 5383 RMD160 7e1d61bfca36e71d45003737daad8cdeede197dd SHA1 6970021a15256c7aea96b0ce7f796ca579c9566b SHA256 5acfc775dc048b0d3ff61c710ccf3191eb14e92b341a885f35582f89456cab1c diff --git a/net-wireless/compat-wireless/compat-wireless-2.6.37-r1.ebuild b/net-wireless/compat-wireless/compat-wireless-2.6.37-r1.ebuild new file mode 100644 index 000000000..c4814e1b2 --- /dev/null +++ b/net-wireless/compat-wireless/compat-wireless-2.6.37-r1.ebuild @@ -0,0 +1,139 @@ +# Copyright 1999-2010 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-sn" +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="~x86 ~amd64 ~arm" +IUSE="atheros_obey_crda debugfs debug-driver full-debug injection noleds tinyversionoverride" + +DEPEND="" +RDEPEND="=sys-kernel/linux-firmware-99999999" + +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 patch is needed to forcibly enable new ralink chips because the shipped config.mk doesn't enable them + epatch "${FILESDIR}"/force-enable-new-ralink-pci-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 + + #test patch for fixing iwlagn issues + epatch "${FILESDIR}"/reinette-test2.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 +} + +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 +}