diff options
author | Henrik Brix Andersen <brix@gentoo.org> | 2005-04-12 19:09:07 +0000 |
---|---|---|
committer | Henrik Brix Andersen <brix@gentoo.org> | 2005-04-12 19:09:07 +0000 |
commit | f21a170febdc76dee6516f024cb8ba1072a0ae40 (patch) | |
tree | ac5b4d20626e11110edf0f4cc37dd772f00a10b7 /sys-apps | |
parent | Removed valgrind-2.4.0. It should work now. (diff) | |
download | gentoo-2-f21a170febdc76dee6516f024cb8ba1072a0ae40.tar.gz gentoo-2-f21a170febdc76dee6516f024cb8ba1072a0ae40.tar.bz2 gentoo-2-f21a170febdc76dee6516f024cb8ba1072a0ae40.zip |
Install a tarball of the configured pcmcia-cs source to /usr/src/pcmcia-cs for external module ebuilds. Use linux-info.eclass.
(Portage version: 2.0.51.19)
Diffstat (limited to 'sys-apps')
-rw-r--r-- | sys-apps/pcmcia-cs/ChangeLog | 13 | ||||
-rw-r--r-- | sys-apps/pcmcia-cs/Manifest | 10 | ||||
-rw-r--r-- | sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.5-r2 | 2 | ||||
-rw-r--r-- | sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.5-r3 | 5 | ||||
-rw-r--r-- | sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.7-r3 | 4 | ||||
-rw-r--r-- | sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.7-r4 | 4 | ||||
-rw-r--r-- | sys-apps/pcmcia-cs/metadata.xml | 4 | ||||
-rw-r--r-- | sys-apps/pcmcia-cs/pcmcia-cs-3.2.5-r2.ebuild | 164 | ||||
-rw-r--r-- | sys-apps/pcmcia-cs/pcmcia-cs-3.2.5-r3.ebuild | 185 | ||||
-rw-r--r-- | sys-apps/pcmcia-cs/pcmcia-cs-3.2.7-r3.ebuild | 177 | ||||
-rw-r--r-- | sys-apps/pcmcia-cs/pcmcia-cs-3.2.7-r4.ebuild | 179 |
11 files changed, 745 insertions, 2 deletions
diff --git a/sys-apps/pcmcia-cs/ChangeLog b/sys-apps/pcmcia-cs/ChangeLog index a208a98af350..a6f8aadcb914 100644 --- a/sys-apps/pcmcia-cs/ChangeLog +++ b/sys-apps/pcmcia-cs/ChangeLog @@ -1,6 +1,17 @@ # ChangeLog for sys-apps/pcmcia-cs # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/pcmcia-cs/ChangeLog,v 1.79 2005/04/12 11:49:03 brix Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/pcmcia-cs/ChangeLog,v 1.80 2005/04/12 19:09:07 brix Exp $ + +*pcmcia-cs-3.2.7-r4 (12 Apr 2005) +*pcmcia-cs-3.2.7-r3 (12 Apr 2005) +*pcmcia-cs-3.2.5-r3 (12 Apr 2005) +*pcmcia-cs-3.2.5-r2 (12 Apr 2005) + + 12 Apr 2005; <brix@gentoo.org> metadata.xml, +pcmcia-cs-3.2.5-r2.ebuild, + +pcmcia-cs-3.2.5-r3.ebuild, +pcmcia-cs-3.2.7-r3.ebuild, + +pcmcia-cs-3.2.7-r4.ebuild: + Install a tarball of the configured pcmcia-cs source to /usr/src/pcmcia-cs + for external module ebuilds, use linux-info.eclass to handle kernel info. 12 Apr 2005; <brix@gentoo.org> -files/gentoo-pcmcia-cs-3.1.34.patch, -files/hermes.conf, -files/network.orig, -pcmcia-cs-3.1.34-r8.ebuild, diff --git a/sys-apps/pcmcia-cs/Manifest b/sys-apps/pcmcia-cs/Manifest index 76898165a799..242475d9b7de 100644 --- a/sys-apps/pcmcia-cs/Manifest +++ b/sys-apps/pcmcia-cs/Manifest @@ -1,11 +1,19 @@ +MD5 0b08b55f5742f8ff40c0129525f3ab9e pcmcia-cs-3.2.5-r2.ebuild 4348 +MD5 6e6100442a3c6b5d98fbb900711e1b8c pcmcia-cs-3.2.7-r3.ebuild 4796 MD5 132b99014b643c5c44b385171366fe52 pcmcia-cs-3.2.5-r1.ebuild 5380 MD5 8ed50a0f21678c8120a0df6094bd1c8d pcmcia-cs-3.2.5.ebuild 4545 MD5 0ca8eff3b7640aa35bd86812057f1155 pcmcia-cs-3.2.7-r2.ebuild 4898 +MD5 9b1916a476f8efff3a922aa399ef1449 pcmcia-cs-3.2.5-r3.ebuild 5165 MD5 45aaff0492e6857427a6f48233d7293f pcmcia-cs-3.2.7.ebuild 4878 MD5 8ffe0fc2afe6aec6b939f490837e6166 ChangeLog 16742 -MD5 19fd766bac8e110b4620363a1ace26dd metadata.xml 159 +MD5 b280eebc74d70d85e664debf1adce2c3 metadata.xml 255 +MD5 5e3f3012cdeae565fb25efb889e38af3 pcmcia-cs-3.2.7-r4.ebuild 4949 MD5 157ac5bc22e938e1c2268c1f2610420c files/digest-pcmcia-cs-3.2.5-r1 379 +MD5 f8f190b2ddbf95e58f3abf55fc303d27 files/digest-pcmcia-cs-3.2.5-r2 150 +MD5 157ac5bc22e938e1c2268c1f2610420c files/digest-pcmcia-cs-3.2.5-r3 379 MD5 310551d0852ba9c1fe5c0f8c231c3589 files/digest-pcmcia-cs-3.2.7-r2 287 +MD5 310551d0852ba9c1fe5c0f8c231c3589 files/digest-pcmcia-cs-3.2.7-r3 287 +MD5 310551d0852ba9c1fe5c0f8c231c3589 files/digest-pcmcia-cs-3.2.7-r4 287 MD5 693d508b7dd24e64735b5ba4a16e699b files/pcmcia.rc 2038 MD5 f8f190b2ddbf95e58f3abf55fc303d27 files/digest-pcmcia-cs-3.2.5 150 MD5 310551d0852ba9c1fe5c0f8c231c3589 files/digest-pcmcia-cs-3.2.7 287 diff --git a/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.5-r2 b/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.5-r2 new file mode 100644 index 000000000000..2ee56e5aa0f6 --- /dev/null +++ b/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.5-r2 @@ -0,0 +1,2 @@ +MD5 44dbc0a8978fe618eee242b0bd25392c pcmcia-cs-3.2.5.tar.gz 1266494 +MD5 cdf1e5021163432f73bc3ef6cc70daf3 pcmcia-cs-3.2.5-orinoco-monitor.diff.gz 7241 diff --git a/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.5-r3 b/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.5-r3 new file mode 100644 index 000000000000..4ab6efff7c28 --- /dev/null +++ b/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.5-r3 @@ -0,0 +1,5 @@ +MD5 44dbc0a8978fe618eee242b0bd25392c pcmcia-cs-3.2.5.tar.gz 1266494 +MD5 33325ed642b5277a9695d10bd19b3d7a pcmcia-cs-3.2.5-module-init-tools.diff.gz 460 +MD5 ee4f8227cc28f9a29a609f6e9561ef54 pcmcia-cs-3.2.5-SMP-fix.diff.gz 320 +MD5 cdf1e5021163432f73bc3ef6cc70daf3 pcmcia-cs-3.2.5-orinoco-monitor.diff.gz 7241 +MD5 92e42d6e70fce9f0c4d5e2c5b7d47279 pcmcia-cs-3.2.5-ppc-fix.diff.gz 323 diff --git a/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.7-r3 b/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.7-r3 new file mode 100644 index 000000000000..c3aa9a6290bf --- /dev/null +++ b/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.7-r3 @@ -0,0 +1,4 @@ +MD5 e8498bdbe8ec2dde41fbddcf65cd900a pcmcia-cs-3.2.7.tar.gz 1273963 +MD5 5d3bd937044d982271522b055a04ddc6 pcmcia-cs-3.2.7-module-init-tools.diff.gz 463 +MD5 92e42d6e70fce9f0c4d5e2c5b7d47279 pcmcia-cs-3.2.5-ppc-fix.diff.gz 323 +MD5 2ddaa8ff53be492b4cd3ef4483f7cf1b monitor-0.13e.patch 22530 diff --git a/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.7-r4 b/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.7-r4 new file mode 100644 index 000000000000..c3aa9a6290bf --- /dev/null +++ b/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.7-r4 @@ -0,0 +1,4 @@ +MD5 e8498bdbe8ec2dde41fbddcf65cd900a pcmcia-cs-3.2.7.tar.gz 1273963 +MD5 5d3bd937044d982271522b055a04ddc6 pcmcia-cs-3.2.7-module-init-tools.diff.gz 463 +MD5 92e42d6e70fce9f0c4d5e2c5b7d47279 pcmcia-cs-3.2.5-ppc-fix.diff.gz 323 +MD5 2ddaa8ff53be492b4cd3ef4483f7cf1b monitor-0.13e.patch 22530 diff --git a/sys-apps/pcmcia-cs/metadata.xml b/sys-apps/pcmcia-cs/metadata.xml index b27ff8eb4ed6..cfbdff13bd61 100644 --- a/sys-apps/pcmcia-cs/metadata.xml +++ b/sys-apps/pcmcia-cs/metadata.xml @@ -2,4 +2,8 @@ <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> <herd>mobile</herd> +<maintainer> + <email>brix@gentoo.org</email> + <name>Henrik Brix Andersen</name> +</maintainer> </pkgmetadata> diff --git a/sys-apps/pcmcia-cs/pcmcia-cs-3.2.5-r2.ebuild b/sys-apps/pcmcia-cs/pcmcia-cs-3.2.5-r2.ebuild new file mode 100644 index 000000000000..925ac4721ec1 --- /dev/null +++ b/sys-apps/pcmcia-cs/pcmcia-cs-3.2.5-r2.ebuild @@ -0,0 +1,164 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/pcmcia-cs/pcmcia-cs-3.2.5-r2.ebuild,v 1.1 2005/04/12 19:09:07 brix Exp $ + +inherit eutils linux-info + +OV="orinoco-0.13e" + +DESCRIPTION="PCMCIA tools for Linux" +SRC_URI="mirror://sourceforge/pcmcia-cs/${P}.tar.gz + http://dev.gentoo.org/~latexer/files/${P}-orinoco-monitor.diff.gz" + +HOMEPAGE="http://pcmcia-cs.sourceforge.net" +IUSE="trusted build apm pnp nocardbus" +DEPEND="virtual/os-headers >=sys-apps/sed-4" +RDEPEND="" +SLOT="0" +LICENSE="GPL-2" +KEYWORDS="~x86 alpha -sparc" + +src_unpack() { + unpack ${A} + + # 3.2.5 includes the latest orinoco (0.13e), so just patch to add + # monitor mode + cd ${S} + epatch ${WORKDIR}/${P}-orinoco-monitor.diff + + # If we're on 2.5.x or 2.6.x, modversions.h has *moved* + if [ ${KV_MINOR} -ge 5 ]; then + sed -i -e "s:include/linux/modvers:include/config/modvers:" Configure \ + || die "sed Configure failed (1)" + fi + + # Install man-pages into /usr/share/man + sed -i -e 's:usr/man:usr/share/man:g' Configure \ + || die "sed Configure failed (2)" +} + +src_compile() { + local myconf myarch + + if use trusted; then + myconf="${myconf} --trust" + else + myconf="${myconf} --notrust" + fi + + # Note that when built with apm support, pcmcia-cs will require a + # kernel with APM support + if use apm; then + myconf="${myconf} --apm" + else + myconf="${myconf} --noapm" + fi + + # Note that when built with pnp support, pcmcia-cs will require a + # kernel with ISA PnP support + if use pnp; then + myconf="${myconf} --pnp" + else + myconf="${myconf} --nopnp" + fi + + if use nocardbus; then + myconf="${myconf} --nocardbus" + else + myconf="${myconf} --cardbus" + fi + + # x86 is not a valid arch for configure... use a case statement + # here to make it easy for other arches to add their own + # workarounds. + case "${ARCH}" in + x86) myarch="i386" ;; + *) myarch="${ARCH}" ;; + esac + + # Use $CFLAGS for user tools, but standard kernel optimizations + # for the kernel modules (for compatibility). + # + # The --srctree option tells pcmcia-cs to configure for the kernel + # in /usr/src/linux rather than the currently-running kernel. + # It's Gentoo Linux policy to configure for + # the kernel in /usr/src/linux + ./Configure -n \ + --target=${D} \ + --srctree \ + --kernel=${KV_DIR} \ + --arch="${myarch}" \ + --uflags="$CFLAGS" \ + --kflags="-Wall -Wstrict-prototypes -O2 -fomit-frame-pointer" \ + $myconf || die "failed configuring" + + sed -i -e '/^HAS_FORMS/d ; s/^FLIBS=".*"/FLIBS=""/' config.out config.mk + + ebegin "Building pcmcia-cs development environment" + echo ${PV} > ${S}/pcmcia-cs-version + cd ${S} + tar -cjf ${T}/pcmcia-cs-build-env.tbz2 . + eend ${?} + + emake DO_ORINOCO=1 all || die "failed compiling" +} + +src_install () { + make PREFIX=${D} install || die "failed installing" + + # remove included rc scripts since we have our own + rm -rf ${D}/etc/rc*.d + + # remove X + # this is simply much easier than patching configure or the makefiles + # not to build them in the first place + rm -rf ${D}/usr/X11R6 + # todo: if they are installed, move them to /usr + + insinto /etc/conf.d + newins ${FILESDIR}/pcmcia.conf pcmcia + + exeinto /etc/pcmcia + doexe ${FILESDIR}/network + + # install our own init script + exeinto /etc/init.d + newexe ${FILESDIR}/pcmcia.rc pcmcia + + # documentation + if use build; then + rm -rf ${D}/usr/share/man + else + dodoc BUGS CHANGES COPYING LICENSE MAINTAINERS README \ + README-2.4 SUPPORTED.CARDS doc/* + fi + rm -f ${D}/etc/modules.conf + rm -rf ${D}/var/lib/pcmcia + + # if on ppc set the ppc revised config.opts + if [ "${ARCH}" = "ppc" ]; then + insinto /etc/pcmcia + newins ${FILESDIR}/ppc.config.opts config.opts + fi + + # install the pcmcia-cs development environment tarball + insinto ${ROOT}/usr/src/pcmcia-cs/ + doins ${T}/pcmcia-cs-build-env.tbz2 +} + +pkg_postinst() { + depmod -a + + einfo "To avail yourself of the pcmcia-cs drivers, you have to disable the" + einfo "PCMCIA support in the kernel. (Otherwise, you might experience" + einfo "CardServices version mismatch errors)" + einfo "" + einfo "Proper kernel config for this package is that PCMCIA/CardBus under" + einfo "General Setup is off and Wireless LAN (non-ham radio) is on but" + einfo "no modules or drivers turned on under Network Device Support" + einfo "if you have wireless." + + einfo "" + einfo "Also note it now appears that you need CONFIG_CRC32 turned on" + einfo "These are the CRC32 Library functions in the config" +} diff --git a/sys-apps/pcmcia-cs/pcmcia-cs-3.2.5-r3.ebuild b/sys-apps/pcmcia-cs/pcmcia-cs-3.2.5-r3.ebuild new file mode 100644 index 000000000000..2c970ce3ae65 --- /dev/null +++ b/sys-apps/pcmcia-cs/pcmcia-cs-3.2.5-r3.ebuild @@ -0,0 +1,185 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/pcmcia-cs/pcmcia-cs-3.2.5-r3.ebuild,v 1.1 2005/04/12 19:09:07 brix Exp $ + +inherit linux-info eutils + +OV="orinoco-0.13e" + +DESCRIPTION="PCMCIA tools for Linux" +SRC_URI="mirror://sourceforge/pcmcia-cs/${P}.tar.gz + http://dev.gentoo.org/~latexer/files/patches/${P}-module-init-tools.diff.gz + http://dev.gentoo.org/~latexer/files/patches/${P}-SMP-fix.diff.gz + http://dev.gentoo.org/~latexer/files/${P}-orinoco-monitor.diff.gz + ppc? ( http://dev.gentoo.org/~latexer/files/patches/${P}-ppc-fix.diff.gz )" + +HOMEPAGE="http://pcmcia-cs.sourceforge.net" +IUSE="trusted build apm pnp nocardbus" +DEPEND="virtual/os-headers + >=sys-apps/sed-4" +RDEPEND="" +SLOT="0" +LICENSE="GPL-2" +KEYWORDS="x86 ~ppc" + +src_unpack() { + unpack ${A} + cd ${S} + + # 3.2.5 includes the latest orinoco (0.13e), so just patch to add + # monitor mode + epatch ${WORKDIR}/${P}-orinoco-monitor.diff + + # Fix for module-init-tools only systems + epatch ${WORKDIR}/${P}-module-init-tools.diff + + # Fix for compiling with SMP (mainly for liveCDs, does your laptop have + # multiple procs?) + epatch ${WORKDIR}/${P}-SMP-fix.diff + + # Fix for compilation against recent benh kernels + [ "${ARCH}" == "ppc" ] && epatch ${WORKDIR}/${P}-ppc-fix.diff + + # If we're on 2.5.x or 2.6.x, modversions.h has *moved* + if [ ${KV_MINOR} -ge 5 ]; then + sed -i -e "s:include/linux/modvers:include/config/modvers:" Configure \ + || die "sed Configure failed (1)" + fi + + # Install man-pages into /usr/share/man + sed -i -e 's:usr/man:usr/share/man:g' Configure \ + || die "sed Configure failed (2)" +} + +src_compile() { + local myconf myarch + + if use trusted; then + myconf="${myconf} --trust" + else + myconf="${myconf} --notrust" + fi + + # Note that when built with apm support, pcmcia-cs will require a + # kernel with APM support + if use apm; then + myconf="${myconf} --apm" + else + myconf="${myconf} --noapm" + fi + + # Note that when built with pnp support, pcmcia-cs will require a + # kernel with ISA PnP support + if use pnp; then + myconf="${myconf} --pnp" + else + myconf="${myconf} --nopnp" + fi + + if use nocardbus; then + myconf="${myconf} --nocardbus" + else + myconf="${myconf} --cardbus" + fi + + # x86 is not a valid arch for configure... use a case statement + # here to make it easy for other arches to add their own + # workarounds. + case "${ARCH}" in + x86) myarch="i386" ;; + *) myarch="${ARCH}" ;; + esac + + # Use $CFLAGS for user tools, but standard kernel optimizations + # for the kernel modules (for compatibility). + # + # The --srctree option tells pcmcia-cs to configure for the kernel + # in /usr/src/linux rather than the currently-running kernel. + # It's Gentoo Linux policy to configure for + # the kernel in /usr/src/linux + ./Configure -n \ + --target=${D} \ + --srctree \ + --kernel=${KV_DIR} \ + --arch="${myarch}" \ + --uflags="$CFLAGS" \ + --kflags="-Wall -Wstrict-prototypes -O2 -fomit-frame-pointer" \ + $myconf || die "failed configuring" + + sed -i -e '/^HAS_FORMS/d ; s/^FLIBS=".*"/FLIBS=""/' config.out config.mk + + ebegin "Building pcmcia-cs development environment" + echo ${PV} > ${S}/pcmcia-cs-version + cd ${S} + tar -cjf ${T}/pcmcia-cs-build-env.tbz2 . + eend ${?} + + emake DO_ORINOCO=1 all || die "failed compiling" +} + +src_install () { + make PREFIX=${D} install || die "failed installing" + + # remove included rc scripts since we have our own + rm -rf ${D}/etc/rc*.d + + # remove X + # this is simply much easier than patching configure or the makefiles + # not to build them in the first place + rm -rf ${D}/usr/X11R6 + # todo: if they are installed, move them to /usr + + insinto /etc/conf.d + newins ${FILESDIR}/pcmcia.conf pcmcia + + exeinto /etc/pcmcia + doexe ${FILESDIR}/network + + # install our own init script + exeinto /etc/init.d + newexe ${FILESDIR}/pcmcia.rc pcmcia + + # documentation + if use build; then + rm -rf ${D}/usr/share/man + else + dodoc BUGS CHANGES COPYING LICENSE MAINTAINERS README \ + README-2.4 SUPPORTED.CARDS doc/* + fi + rm -f ${D}/etc/modules.conf + rm -rf ${D}/var/lib/pcmcia + + # if on ppc set the ppc revised config.opts + if [ "${ARCH}" = "ppc" ]; then + insinto /etc/pcmcia + newins ${FILESDIR}/ppc.config.opts config.opts + fi + + # install the pcmcia-cs development environment tarball + insinto ${ROOT}/usr/src/pcmcia-cs/ + doins ${T}/pcmcia-cs-build-env.tbz2 +} + +pkg_postinst() { + if [ ${KV_MINOR} -lt 5 ] + then + depmod -a + + einfo "To avail yourself of the pcmcia-cs drivers, you have to disable the" + einfo "PCMCIA support in the kernel. (Otherwise, you might experience" + einfo "CardServices version mismatch errors)" + einfo "" + einfo "Proper kernel config for this package is that PCMCIA/CardBus under" + einfo "General Setup is off and Wireless LAN (non-ham radio) is on but" + einfo "no modules or drivers turned on under Network Device Support" + einfo "if you have wireless." + einfo "" + einfo "Also note it now appears that you need CONFIG_CRC32 turned on" + einfo "These are the CRC32 Library functions in the config" + + else + einfo "For 2.5/2.6 kernels, the PCMCIA support from the kernel should" + einfo "be used. Enable PCMCIA and any further drivers you need there," + einfo "and then use this package to install the PCMCIA tools." + fi +} diff --git a/sys-apps/pcmcia-cs/pcmcia-cs-3.2.7-r3.ebuild b/sys-apps/pcmcia-cs/pcmcia-cs-3.2.7-r3.ebuild new file mode 100644 index 000000000000..86569f752271 --- /dev/null +++ b/sys-apps/pcmcia-cs/pcmcia-cs-3.2.7-r3.ebuild @@ -0,0 +1,177 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/pcmcia-cs/pcmcia-cs-3.2.7-r3.ebuild,v 1.1 2005/04/12 19:09:07 brix Exp $ + +inherit linux-info eutils + +OV="orinoco-0.13e" + +DESCRIPTION="PCMCIA tools for Linux" +SRC_URI="mirror://sourceforge/pcmcia-cs/${P}.tar.gz + http://dev.gentoo.org/~latexer/files/patches/${P}-module-init-tools.diff.gz + ppc? ( http://dev.gentoo.org/~latexer/files/patches/pcmcia-cs-3.2.5-ppc-fix.diff.gz ) + http://ozlabs.org/people/dgibson/dldwd/monitor-0.13e.patch" + +HOMEPAGE="http://pcmcia-cs.sourceforge.net" +IUSE="X trusted build apm pnp nocardbus" +DEPEND="virtual/os-headers + >=sys-apps/sed-4 + X? ( virtual/x11 )" +RDEPEND="" +SLOT="0" +LICENSE="GPL-2" +KEYWORDS="~x86 ppc amd64 ~mips" + +src_unpack() { + unpack ${P}.tar.gz || die "unpack failed" + + # 3.2.7 includes the latest stable orinoco (0.13e), so just patch to add + # monitor mode + cd ${S}/wireless + epatch ${DISTDIR}/monitor-0.13e.patch + + cd ${S} + + # Fix for module-init-tools systems + epatch ${DISTDIR}/${P}-module-init-tools.diff.gz + + # Fix for ppc on newer benh kernels + [ "${ARCH}" == "ppc" ] && epatch ${DISTDIR}/pcmcia-cs-3.2.5-ppc-fix.diff.gz + + # Install man-pages into /usr/share/man + sed -i -e 's:usr/man:usr/share/man:g' Configure \ + || die "sed Configure failed (2)" +} + +src_compile() { + local myconf myarch + + # There's now a configure option for whether to build X tools + if use X; then + myconf="${myconf} --x11" + else + myconf="${myconf} --nox11" + fi + + if use trusted; then + myconf="${myconf} --trust" + else + myconf="${myconf} --notrust" + fi + + # Note that when built with apm support, pcmcia-cs will require a + # kernel with APM support + if use apm; then + myconf="${myconf} --apm" + else + myconf="${myconf} --noapm" + fi + + # Note that when built with pnp support, pcmcia-cs will require a + # kernel with ISA PnP support + if use pnp; then + myconf="${myconf} --pnp" + else + myconf="${myconf} --nopnp" + fi + + if use nocardbus; then + myconf="${myconf} --nocardbus" + else + myconf="${myconf} --cardbus" + fi + + # x86 is not a valid arch for configure... use a case statement + # here to make it easy for other arches to add their own + # workarounds. + case "${ARCH}" in + x86) myarch="i386" ;; + *) myarch="${ARCH}" ;; + esac + + # Use $CFLAGS for user tools, but standard kernel optimizations + # for the kernel modules (for compatibility). + # + # The --srctree option tells pcmcia-cs to configure for the kernel + # in /usr/src/linux rather than the currently-running kernel. + # It's Gentoo Linux policy to configure for + # the kernel in /usr/src/linux + ./Configure -n \ + --target=${D} \ + --srctree \ + --kernel=${KV_DIR} \ + --arch="${myarch}" \ + --uflags="$CFLAGS" \ + --kflags="-Wall -Wstrict-prototypes -O2 -fomit-frame-pointer" \ + $myconf || die "failed configuring" + + sed -i -e '/^HAS_FORMS/d ; s/^FLIBS=".*"/FLIBS=""/' config.out config.mk + + ebegin "Building pcmcia-cs development environment" + echo ${PV} > ${S}/pcmcia-cs-version + cd ${S} + tar -cjf ${T}/pcmcia-cs-build-env.tbz2 . + eend ${?} + + emake DO_ORINOCO=1 all || die "failed compiling" +} + +src_install () { + make PREFIX=${D} install || die "failed installing" + + # remove included rc scripts since we have our own + rm -rf ${D}/etc/rc*.d + + insinto /etc/conf.d + newins ${FILESDIR}/pcmcia.conf pcmcia + + exeinto /etc/pcmcia + doexe ${FILESDIR}/network + + # install our own init script + exeinto /etc/init.d + newexe ${FILESDIR}/pcmcia.rc pcmcia + + # documentation + if use build; then + rm -rf ${D}/usr/share/man + else + dodoc BUGS CHANGES COPYING LICENSE MAINTAINERS README \ + README-2.4 SUPPORTED.CARDS doc/* + fi + rm -f ${D}/etc/modules.conf + rm -rf ${D}/var/lib/pcmcia + + # if on ppc set the ppc revised config.opts + if [ "${ARCH}" = "ppc" ]; then + insinto /etc/pcmcia + newins ${FILESDIR}/ppc.config.opts config.opts + fi + + # install the pcmcia-cs development environment tarball + insinto ${ROOT}/usr/src/pcmcia-cs/ + doins ${T}/pcmcia-cs-build-env.tbz2 +} + +pkg_postinst() { + if [ ${KV_MINOR} -lt 5 ] + then + depmod -a + + einfo "To avail yourself of the pcmcia-cs drivers, you have to disable the" + einfo "PCMCIA support in the kernel. (Otherwise, you might experience" + einfo "CardServices version mismatch errors)" + einfo "" + einfo "Proper kernel config for this package is that PCMCIA/CardBus under" + einfo "General Setup is off and Wireless LAN (non-ham radio) is on but" + einfo "no modules or drivers turned on under Network Device Support" + einfo "if you have wireless." + einfo "" + einfo "Also note it now appears that you need CONFIG_CRC32 turned on" + einfo "These are the CRC32 Library functions in the config" + else + einfo "For 2.5/2.6 kernels, the PCMCIA support from the kernel should" + einfo "be used. Enable PCMCIA and any further drivers you need there," + einfo "and then use this package to install the PCMCIA tools." + fi +} diff --git a/sys-apps/pcmcia-cs/pcmcia-cs-3.2.7-r4.ebuild b/sys-apps/pcmcia-cs/pcmcia-cs-3.2.7-r4.ebuild new file mode 100644 index 000000000000..2857169535b1 --- /dev/null +++ b/sys-apps/pcmcia-cs/pcmcia-cs-3.2.7-r4.ebuild @@ -0,0 +1,179 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/pcmcia-cs/pcmcia-cs-3.2.7-r4.ebuild,v 1.1 2005/04/12 19:09:07 brix Exp $ + +inherit eutils linux-info + +OV="orinoco-0.13e" + +DESCRIPTION="PCMCIA tools for Linux" +SRC_URI="mirror://sourceforge/pcmcia-cs/${P}.tar.gz + http://dev.gentoo.org/~latexer/files/patches/${P}-module-init-tools.diff.gz + ppc? ( http://dev.gentoo.org/~latexer/files/patches/pcmcia-cs-3.2.5-ppc-fix.diff.gz ) + http://ozlabs.org/people/dgibson/dldwd/monitor-0.13e.patch" + +HOMEPAGE="http://pcmcia-cs.sourceforge.net" +IUSE="X trusted build apm pnp nocardbus" +DEPEND="virtual/os-headers + >=sys-apps/sed-4 + X? ( virtual/x11 )" +RDEPEND="" +SLOT="0" +LICENSE="GPL-2" +KEYWORDS="~x86 ~mips" + +src_unpack() { + unpack ${P}.tar.gz || die "unpack failed" + + # 3.2.7 includes the latest stable orinoco (0.13e), so just patch to add + # monitor mode + cd ${S}/wireless + epatch ${DISTDIR}/monitor-0.13e.patch + + cd ${S} + + # Fix for module-init-tools systems + epatch ${DISTDIR}/${P}-module-init-tools.diff.gz + + # Fix for ppc on newer benh kernels + [ "${ARCH}" == "ppc" ] && epatch ${DISTDIR}/pcmcia-cs-3.2.5-ppc-fix.diff.gz + + # Install man-pages into /usr/share/man + sed -i -e 's:usr/man:usr/share/man:g' Configure \ + || die "sed Configure failed (2)" + + epatch ${FILESDIR}/pcmcia-cs-3.2.7-move-pnp-ids-to-usr-share-misc.patch + + # Install cardinfo and xcardinfo into /usr/bin instead of /usr/X11R6/bin + cd ${S} + epatch ${FILESDIR}/cardinfo-install-3.2.7.patch +} + +src_compile() { + local myconf myarch + + # There's now a configure option for whether to build X tools + if use X; then + myconf="${myconf} --x11" + else + myconf="${myconf} --nox11" + fi + + if use trusted; then + myconf="${myconf} --trust" + else + myconf="${myconf} --notrust" + fi + + # Note that when built with apm support, pcmcia-cs will require a + # kernel with APM support + if use apm; then + myconf="${myconf} --apm" + else + myconf="${myconf} --noapm" + fi + + # Note that when built with pnp support, pcmcia-cs will require a + # kernel with ISA PnP support + if use pnp; then + myconf="${myconf} --pnp" + else + myconf="${myconf} --nopnp" + fi + + if use nocardbus; then + myconf="${myconf} --nocardbus" + else + myconf="${myconf} --cardbus" + fi + + set_arch_to_kernel + # Use $CFLAGS for user tools, but standard kernel optimizations + # for the kernel modules (for compatibility). + # + # The --srctree option tells pcmcia-cs to configure for the kernel + # in /usr/src/linux rather than the currently-running kernel. + # It's Gentoo Linux policy to configure for + # the kernel in /usr/src/linux + ./Configure -n \ + --target=${D} \ + --srctree \ + --kernel=${KV_DIR} \ + --arch="${myarch}" \ + --uflags="$CFLAGS" \ + --kflags="-Wall -Wstrict-prototypes -O2 -fomit-frame-pointer" \ + $myconf || die "failed configuring" + + sed -i -e '/^HAS_FORMS/d ; s/^FLIBS=".*"/FLIBS=""/' config.out config.mk + + ebegin "Building pcmcia-cs development environment" + echo ${PV} > ${S}/pcmcia-cs-version + cd ${S} + tar -cjf ${T}/pcmcia-cs-build-env.tbz2 . + eend ${?} + + emake DO_ORINOCO=1 all || die "failed compiling" +} + +src_install () { + dodir /usr/share/misc + + make PREFIX=${D} install || die "failed installing" + set_arch_to_portage + + # remove included rc scripts since we have our own + rm -rf ${D}/etc/rc*.d + + insinto /etc/conf.d + newins ${FILESDIR}/pcmcia.conf pcmcia + + exeinto /etc/pcmcia + doexe ${FILESDIR}/network + + # install our own init script + exeinto /etc/init.d + newexe ${FILESDIR}/pcmcia.rc pcmcia + + # documentation + if use build; then + rm -rf ${D}/usr/share/man + else + dodoc BUGS CHANGES COPYING LICENSE MAINTAINERS README \ + README-2.4 SUPPORTED.CARDS doc/* + fi + rm -f ${D}/etc/modules.conf + rm -rf ${D}/var/lib/pcmcia + + # if on ppc set the ppc revised config.opts + if [ "${ARCH}" = "ppc" ]; then + insinto /etc/pcmcia + newins ${FILESDIR}/ppc.config.opts config.opts + fi + + # install the pcmcia-cs development environment tarball + insinto ${ROOT}/usr/src/pcmcia-cs/ + doins ${T}/pcmcia-cs-build-env.tbz2 +} + +pkg_postinst() { + if [ ${KV_MINOR} -lt 5 ] + then + depmod -a + + einfo "To avail yourself of the pcmcia-cs drivers, you have to disable the" + einfo "PCMCIA support in the kernel. (Otherwise, you might experience" + einfo "CardServices version mismatch errors)" + einfo "" + einfo "Proper kernel config for this package is that PCMCIA/CardBus under" + einfo "General Setup is off and Wireless LAN (non-ham radio) is on but" + einfo "no modules or drivers turned on under Network Device Support" + einfo "if you have wireless." + einfo "" + einfo "Also note it now appears that you need CONFIG_CRC32 turned on" + einfo "These are the CRC32 Library functions in the config" + else + einfo "For 2.5/2.6 kernels, the PCMCIA support from the kernel should" + einfo "be used. Enable PCMCIA and any further drivers you need there," + einfo "and then use this package to install the PCMCIA tools." + fi +} |