diff options
author | Alin Năstac <mrness@gentoo.org> | 2006-09-09 15:27:37 +0000 |
---|---|---|
committer | Alin Năstac <mrness@gentoo.org> | 2006-09-09 15:27:37 +0000 |
commit | 120872f36852c1b151fdf9d54fd25b734d746976 (patch) | |
tree | d0580263f0038c0b07ec521b8f193fe7c7601d7b /net-dialup | |
parent | Stable on amd64 wrt Bug #145885. (diff) | |
download | gentoo-2-120872f36852c1b151fdf9d54fd25b734d746976.tar.gz gentoo-2-120872f36852c1b151fdf9d54fd25b734d746976.tar.bz2 gentoo-2-120872f36852c1b151fdf9d54fd25b734d746976.zip |
Fix compilation errors when build against kernels >= 2.6.18 (#140723). Correct udev rules (#144841).
(Portage version: 2.1-r2)
Diffstat (limited to 'net-dialup')
-rw-r--r-- | net-dialup/slmodem/ChangeLog | 10 | ||||
-rw-r--r-- | net-dialup/slmodem/files/digest-slmodem-2.9.11_pre20051101-r1 | 6 | ||||
-rw-r--r-- | net-dialup/slmodem/files/slmodem-2.9.11-devfs.patch | 36 | ||||
-rw-r--r-- | net-dialup/slmodem/files/slmodem-2.9.11-makefile.patch | 33 | ||||
-rw-r--r-- | net-dialup/slmodem/slmodem-2.9.11_pre20051101-r1.ebuild | 153 |
5 files changed, 237 insertions, 1 deletions
diff --git a/net-dialup/slmodem/ChangeLog b/net-dialup/slmodem/ChangeLog index 124901b84e14..f0ff25dd6439 100644 --- a/net-dialup/slmodem/ChangeLog +++ b/net-dialup/slmodem/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for net-dialup/slmodem # Copyright 2000-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-dialup/slmodem/ChangeLog,v 1.67 2006/08/22 12:13:54 genstef Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-dialup/slmodem/ChangeLog,v 1.68 2006/09/09 15:27:36 mrness Exp $ + +*slmodem-2.9.11_pre20051101-r1 (09 Sep 2006) + + 09 Sep 2006; Alin Nastac <mrness@gentoo.org> + +files/slmodem-2.9.11-devfs.patch, +files/slmodem-2.9.11-makefile.patch, + +slmodem-2.9.11_pre20051101-r1.ebuild: + Fix compilation errors when build against kernels >= 2.6.18 (#140723). + Correct udev rules (#144841). 22 Aug 2006; Stefan Schweizer <genstef@gentoo.org> +files/slmodem-2.9.11-modem-cc-makefile.patch, diff --git a/net-dialup/slmodem/files/digest-slmodem-2.9.11_pre20051101-r1 b/net-dialup/slmodem/files/digest-slmodem-2.9.11_pre20051101-r1 new file mode 100644 index 000000000000..047a97ea184a --- /dev/null +++ b/net-dialup/slmodem/files/digest-slmodem-2.9.11_pre20051101-r1 @@ -0,0 +1,6 @@ +MD5 56bb1ddf621b2fe26caf746aed0ac26f slmodem-2.9.11-20051101.tar.gz 833644 +RMD160 044dd97f763c68ff5c5609cb925146c5302bfb61 slmodem-2.9.11-20051101.tar.gz 833644 +SHA256 d5c456b1bab05a1606f7deaf4d5f1b9151d23377e7eb421b81082f9285de5172 slmodem-2.9.11-20051101.tar.gz 833644 +MD5 a23326976632fe7774e110cbc0636f70 ungrab-winmodem.tar.gz 1872 +RMD160 c7058f884ddf6345ddcd15c984364f4741464fbf ungrab-winmodem.tar.gz 1872 +SHA256 b9d966fa13b05876c2921f4bd030dfb151e6810958202010fab661d1689e4e11 ungrab-winmodem.tar.gz 1872 diff --git a/net-dialup/slmodem/files/slmodem-2.9.11-devfs.patch b/net-dialup/slmodem/files/slmodem-2.9.11-devfs.patch new file mode 100644 index 000000000000..226fc3f00618 --- /dev/null +++ b/net-dialup/slmodem/files/slmodem-2.9.11-devfs.patch @@ -0,0 +1,36 @@ +diff -Nru slmodem-2.9.11-20051101.orig/drivers/amrmo_init.c slmodem-2.9.11-20051101/drivers/amrmo_init.c +--- slmodem-2.9.11-20051101.orig/drivers/amrmo_init.c 2005-10-10 00:14:13.000000000 +0300 ++++ slmodem-2.9.11-20051101/drivers/amrmo_init.c 2006-09-09 18:13:47.219081000 +0300 +@@ -53,7 +53,13 @@ + #include <linux/poll.h> + #include <linux/fs.h> + #include <asm/uaccess.h> +-#include <linux/devfs_fs_kernel.h> ++ ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18) ++# include <linux/devfs_fs_kernel.h> ++#else ++# define devfs_mk_cdev(dev, mode, fmt, i) ++# define devfs_remove(fmt, i) ++#endif + + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0) + #define OLD_KERNEL 1 +diff -Nru slmodem-2.9.11-20051101.orig/drivers/st7554.c slmodem-2.9.11-20051101/drivers/st7554.c +--- slmodem-2.9.11-20051101.orig/drivers/st7554.c 2005-11-01 17:31:45.000000000 +0200 ++++ slmodem-2.9.11-20051101/drivers/st7554.c 2006-09-09 18:14:36.910186500 +0300 +@@ -55,7 +55,13 @@ + #include <linux/poll.h> + #include <linux/usb.h> + #include <linux/device.h> +-#include <linux/devfs_fs_kernel.h> ++ ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18) ++# include <linux/devfs_fs_kernel.h> ++#else ++# define devfs_mk_cdev(dev, mode, fmt, i) ++# define devfs_remove(fmt, i) ++#endif + + #include <modem_defs.h> + diff --git a/net-dialup/slmodem/files/slmodem-2.9.11-makefile.patch b/net-dialup/slmodem/files/slmodem-2.9.11-makefile.patch new file mode 100644 index 000000000000..7bc568ddaf8b --- /dev/null +++ b/net-dialup/slmodem/files/slmodem-2.9.11-makefile.patch @@ -0,0 +1,33 @@ +diff -Nru slmodem-2.9.11-20051101.orig/modem/Makefile slmodem-2.9.11-20051101/modem/Makefile +--- slmodem-2.9.11-20051101.orig/modem/Makefile 2005-11-01 17:33:34.000000000 +0200 ++++ slmodem-2.9.11-20051101/modem/Makefile 2006-09-09 18:04:39.680862000 +0300 +@@ -13,10 +13,10 @@ + # + ########################################################################### + +-CC:= gcc ++CC?= gcc + RM:= rm -f + +-CFLAGS+= -Wall -g -O -I. -DCONFIG_DEBUG_MODEM ++CFLAGS+= -Wall -finline -I. -DCONFIG_DEBUG_MODEM + + + modem-objs:= \ +@@ -33,13 +33,13 @@ + + #SUPPORT_ALSA:=1 + ifdef SUPPORT_ALSA +-slmodemd: -lasound ++ + CFLAGS+= -DSUPPORT_ALSA=1 +-LFLAGS+= -lasound ++LDLIBS+= -lasound + endif + + slmodemd modem_test: +- $(CC) $(LFLAGS) -o $@ $^ ++ $(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS) + + clean: + $(RM) slmodemd modem_test modem_main.o modem_cmdline.o modem_test.o $(modem-objs) $(dp-objs) $(sysdep-objs) diff --git a/net-dialup/slmodem/slmodem-2.9.11_pre20051101-r1.ebuild b/net-dialup/slmodem/slmodem-2.9.11_pre20051101-r1.ebuild new file mode 100644 index 000000000000..211d9fdf65b8 --- /dev/null +++ b/net-dialup/slmodem/slmodem-2.9.11_pre20051101-r1.ebuild @@ -0,0 +1,153 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-dialup/slmodem/slmodem-2.9.11_pre20051101-r1.ebuild,v 1.1 2006/09/09 15:27:37 mrness Exp $ + +inherit eutils linux-mod multilib + +DESCRIPTION="Driver for Smart Link modem" +HOMEPAGE="http://linmodems.technion.ac.il/packages/smartlink/" +SRC_URI="http://linmodems.technion.ac.il/packages/smartlink/${P/_pre/-}.tar.gz + http://linmodems.technion.ac.il/packages/smartlink/ungrab-winmodem.tar.gz" + +LICENSE="Smart-Link" +SLOT="0" +KEYWORDS="-* ~amd64 ~x86" +IUSE="alsa usb" + +DEPEND="alsa? ( media-libs/alsa-lib ) + amd64? ( app-emulation/emul-linux-x86-soundlibs )" + +S=${WORKDIR}/${P/_pre/-} + +pkg_setup() { + use amd64 && multilib_toolchain_setup x86 + + MODULE_NAMES="ungrab-winmodem(:${WORKDIR}/ungrab-winmodem)" + if ! use amd64; then + MODULE_NAMES="${MODULE_NAMES} slamr(net:${S}/drivers)" + if use usb; then + MODULE_NAMES="${MODULE_NAMES} slusb(net:${S}/drivers)" + CONFIG_CHECK="USB" + fi + fi + BUILD_TARGETS="all" + linux-mod_pkg_setup + BUILD_PARAMS="KERNEL_DIR=${KV_DIR}" +} + +src_unpack() { + unpack ${A} + sed -i "s:SUBDIRS=\$(shell pwd):SUBDIRS=${WORKDIR}/ungrab-winmodem:" \ + "${WORKDIR}/ungrab-winmodem/Makefile" + convert_to_m "${WORKDIR}/ungrab-winmodem/Makefile" + + cd "${S}" + epatch "${FILESDIR}/${P%%_*}-makefile.patch" + epatch "${FILESDIR}/${P%%_*}-devfs.patch" + cd drivers + sed -i "s:SUBDIRS=\$(shell pwd):SUBDIRS=${S}/drivers:" Makefile + convert_to_m Makefile + sed -i "s:.*=[ \t]*THIS_MODULE.*::" st7554.c amrmo_init.c old_st7554.c + sed -i 's:MODULE_PARM(\([^,]*\),"i");:module_param(\1, int, 0);:' st7554.c \ + amrmo_init.c old_st7554.c +} + +src_compile() { + local MAKE_PARAMS="" + if use alsa || use amd64; then + MAKE_PARAMS="SUPPORT_ALSA=1" + fi + emake ${MAKE_PARAMS} modem || die "failed to build modem" + + use amd64 && multilib_toolchain_setup amd64 + linux-mod_src_compile +} + +src_install() { + linux-mod_src_install + + cd "${S}" + newsbin modem/modem_test slmodem_test + dosbin modem/slmodemd + dodir /var/lib/slmodem + fowners root:dialout /var/lib/slmodem + keepdir /var/lib/slmodem + + newconfd "${FILESDIR}/${PN}-2.9.conf" ${PN} + newinitd "${FILESDIR}/${PN}-2.9.11.init" ${PN} + + # configure for alsa - or not for alsa + if use alsa; then + sed -i -e "s/# MODULE=alsa/MODULE=alsa/" \ + -e "s/# HW_SLOT=modem:1/HW_SLOT=modem:1/" "${D}/etc/conf.d/slmodem" + else + sed -i "s/# MODULE=slamr/MODULE=slamr/" "${D}/etc/conf.d/slmodem" + fi + + + # Add module aliases and install hotplug script + insinto /etc/modules.d/; newins "${FILESDIR}/${PN}-2.9.11.modules" ${PN} + if use usb; then + exeinto /etc/hotplug/usb; newexe "${FILESDIR}/slusb.hotplug" slusb + fi + + dodir /etc/hotplug/blacklist.d + echo -e "slusb\nslamr\nsnd-intel8x0m" >> "${D}/etc/hotplug/blacklist.d/${PN}" + + # Add configuration for devfs, udev + if [ -e "${ROOT}/dev/.devfsd" ] ; then + insinto /etc/devfs.d/; newins "${FILESDIR}/${PN}-2.9.devfs" ${PN} + elif [ -e "${ROOT}/dev/.udev" ] ; then + dodir /etc/udev/rules.d/ + echo 'KERNEL=="slamr", NAME="slamr0" GROUP="dialout"' > \ + "${D}/etc/udev/rules.d/55-${PN}.rules" + if use usb; then + echo 'KERNEL=="slusb", NAME="slusb0" GROUP="dialout"' >> \ + "${D}/etc/udev/rules.d/55-${PN}.rules" + fi + fi + + dodoc Changes README "${WORKDIR}/ungrab-winmodem/Readme.txt" +} + +pkg_postinst() { + linux-mod_pkg_postinst + + # Make some devices if we aren't using devfs or udev + if [ -e "${ROOT}/dev/.devfsd" ]; then + ebegin "Restarting devfsd to reread devfs rules" + killall -HUP devfsd + eend $? + + elif [ -e "${ROOT}/dev/.udev" ]; then + ebegin "Restarting udev to reread udev rules" + udevstart + eend $? + else + cd "${S}/drivers" + make DESTDIR="${ROOT}" install-devices + fi + + if [ ! -e "${ROOT}/dev/ppp" ]; then + mknod "${ROOT}/dev/ppp" c 108 0 + fi + + ewarn "To avoid problems, slusb/slamr have been added to /etc/hotplug/blacklist" + einfo "You must edit /etc/conf.d/${PN} for your configuration" + einfo "To add slmodem to your startup - type : rc-update add slmodem default" + + if use alsa; then + einfo "I hope you have already added alsa to your startup: " + einfo "otherwise type: rc-update add alsasound boot" + einfo + einfo "If you need to use snd-intel8x0m from the kernel" + einfo "compile it as a module and edit /etc/modules.d/alsa" + einfo 'to: "alias snd-card-(number) snd-intel8x0m"' + fi + + einfo "You need to be in the uucp AND dialout group to make calls as a user." + einfo + einfo "If you see the following in dmesg:" + echo slamr: device 10b9:5457 is grabbed by driver serial + einfo "you need to modprobe ungrab-winmodem before slamr" +} |