/[gentoo-x86]/sys-apps/hal/hal-0.5.7.1-r4.ebuild
Gentoo

Contents of /sys-apps/hal/hal-0.5.7.1-r4.ebuild

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (show annotations) (download)
Fri Mar 30 14:37:01 2007 UTC (7 years, 5 months ago) by cardoe
Branch: MAIN
CVS Tags: HEAD
Changes since 1.2: +1 -1 lines
FILE REMOVED
remove old version. metadata fixes.
(Portage version: 2.1.2.2)

1 # Copyright 1999-2007 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/hal-0.5.7.1-r4.ebuild,v 1.2 2007/01/30 19:43:04 cardoe Exp $
4
5 inherit eutils linux-info
6
7 DESCRIPTION="Hardware Abstraction Layer"
8 HOMEPAGE="http://www.freedesktop.org/Software/hal"
9 SRC_URI="http://freedesktop.org/~david/dist/${P}.tar.gz"
10
11 LICENSE="|| ( GPL-2 AFL-2.0 )"
12 SLOT="0"
13 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86"
14 IUSE="acpi crypt debug doc dmi pcmcia selinux"
15
16 RDEPEND=">=dev-libs/glib-2.6
17 || ( >=dev-libs/dbus-glib-0.71
18 ( <sys-apps/dbus-0.90 >=sys-apps/dbus-0.60 ) )
19 >=sys-fs/udev-083
20 >=sys-apps/util-linux-2.12r
21 || ( >=sys-kernel/linux-headers-2.6 >=sys-kernel/mips-headers-2.6 )
22 dev-libs/expat
23 sys-libs/libcap
24 sys-apps/pciutils
25 dev-libs/libusb
26 virtual/eject
27 dmi? ( >=sys-apps/dmidecode-2.7 )
28 crypt? ( >=sys-fs/cryptsetup-luks-1.0.1 )
29 selinux? ( sys-libs/libselinux )"
30
31 DEPEND="${RDEPEND}
32 dev-util/pkgconfig
33 >=dev-util/intltool-0.29
34 doc? ( app-doc/doxygen app-text/docbook-sgml-utils )"
35
36 ## HAL Daemon drops privledges so we need group access to read disks
37 HALDAEMON_GROUPS="haldaemon,plugdev,disk,cdrom,cdrw,floppy,usb"
38
39 function notify_uevent() {
40 eerror
41 eerror "You must enable Kernel Userspace Events in your kernel."
42 eerror "This can be set under 'General Setup'. It is marked as"
43 eerror "CONFIG_KOBJECT_UEVENT in the config file."
44 eerror
45 ebeep 5
46 }
47
48 function notify_uevent_2_6_16() {
49 eerror
50 eerror "You must enable Kernel Userspace Events in your kernel."
51 eerror "For this you need to enable 'Hotplug' under 'General Setup' and"
52 eerror "basic networking. They are marked CONFIG_HOTPLUG and CONFIG_NET"
53 eerror "in the config file."
54 eerror
55 ebeep 5
56 }
57
58 function notify_procfs() {
59 eerror
60 eerror "You must enable the proc filesystem in your kernel."
61 eerror "For this you need to enable '/proc file system support' under"
62 eerror "'Pseudo filesystems' in 'File systems'. It is marked"
63 eerror "CONFIG_PROC_FS in the config file."
64 eerror
65 ebeep 5
66 }
67
68 pkg_setup() {
69 get_version || eerror "Unable to calculate Linux Kernel version"
70
71 kernel_is ge 2 6 15 || eerror "HAL requires a kernel version 2.6.15 or newer"
72
73 if kernel_is lt 2 6 16 ; then
74 linux_chkconfig_present KOBJECT_UEVENT || notify_uevent
75 else
76 (linux_chkconfig_present HOTPLUG && linux_chkconfig_present NET) \
77 || notify_uevent_2_6_16
78 fi
79
80 if use acpi ; then
81 linux_chkconfig_present PROC_FS || notify_procfs
82 fi
83
84 if [ -d ${ROOT}/etc/hal/device.d ]; then
85 eerror "HAL 0.5.x will not run with the HAL 0.4.x series of"
86 eerror "/etc/hal/device.d/ so please remove this directory"
87 eerror "with rm -rf /etc/hal/device.d/ and then re-emerge."
88 eerror "This is due to configuration protection of /etc/"
89 die "remove /etc/hal/device.d/"
90 fi
91 }
92
93 src_unpack() {
94 unpack ${A}
95 cd "${S}"
96
97 # handle ignored volumes properly
98 epatch "${FILESDIR}"/${PN}-0.5.7.1-ignored-volumes.patch
99
100 # Fix bash in hald scripts
101 epatch "${FILESDIR}"/${PN}-0.5.7.1-hald-scripts.patch
102
103 # probe partition table
104 epatch "${FILESDIR}"/${PN}-0.5.7-part-table.patch
105
106 # fix pmu support crash
107 epatch "${FILESDIR}"/${PN}-0.5.7-pmu-fix.patch
108
109 # unclean unmount
110 epatch "${FILESDIR}"/${PN}-0.5.7-unclean-unmount-r1.patch
111
112 # allow plugdev group people to mount
113 epatch "${FILESDIR}"/${PN}-0.5.7-plugdev-allow-send.patch
114
115 # rescan devices on resume
116 epatch "${FILESDIR}"/${PN}-0.5.7-rescan-on-resume.patch
117
118 # dbus deprecated dbus_connection_disconnect
119 epatch "${FILESDIR}"/${PN}-0.5.7.1-dbus-close.patch
120
121 # sr driver fix
122 epatch "${FILESDIR}"/${PN}-0.5.7.1-sr-driver.patch
123
124 # mounting autofs & subfs fixes
125 epatch "${FILESDIR}"/${PN}-0.5.7.1-autofs-subfs.patch
126
127 # iPod Nano detected as RAID fix
128 epatch "${FILESDIR}"/${PN}-0.5.7.1-ipod-nano.patch
129
130 # Floppies mounting fix
131 epatch "${FILESDIR}"/${PN}-0.5.7.1-floppies-fix.patch
132
133 # fix undeclared ctype.h so everyone can stop getting their panties in a
134 # bundle
135 epatch "${FILESDIR}"/${PN}-0.5.7.1-ctype-fix.patch
136 }
137
138 src_compile() {
139 if [ -r "${ROOT}/usr/share/misc/pci.ids.gz" ] ; then
140 hwdata="${ROOT}/usr/share/misc/pci.ids.gz"
141 elif [ -r "${ROOT}/usr/share/misc/pci.ids" ] ; then
142 hwdata="${ROOT}/usr/share/misc/pci.ids"
143 else
144 die "pci.ids file not found. please file a bug @ bugs.gentoo.org"
145 fi
146
147 econf \
148 --with-doc-dir=/usr/share/doc/${PF} \
149 --with-os-type=gentoo \
150 --with-pid-file=/var/run/hald.pid \
151 --with-hwdata=${hwdata} \
152 --enable-hotplug-map \
153 $(use_enable debug verbose-mode) \
154 $(use_enable pcmcia pcmcia-support) \
155 $(use_enable acpi acpi-proc) \
156 $(use_enable doc docbook-docs) \
157 $(use_enable doc doxygen-docs) \
158 $(use_enable selinux) \
159 || die "configure failed"
160
161 emake || die "make failed"
162 }
163
164 src_install() {
165 make DESTDIR="${D}" install || die
166 dodoc AUTHORS ChangeLog NEWS README
167
168 # remove dep on gnome-python
169 mv "${D}"/usr/bin/hal-device-manager "${D}"/usr/share/hal/device-manager/
170
171 # initscript
172 newinitd "${FILESDIR}"/0.5-hald.rc hald
173
174 # We now create and keep /media here as both gnome-mount and pmount
175 # use these directories, to avoid collision.
176 dodir /media
177 keepdir /media
178 }
179
180 pkg_postinst() {
181 # Despite what people keep changing this location. Either one works.. it doesn't matter
182 # http://dev.gentoo.org/~plasmaroo/devmanual/ebuild-writing/functions/
183
184 # Create groups for hotplugging and HAL
185 enewgroup haldaemon || die "Problem adding haldaemon group"
186 enewgroup plugdev || die "Problem adding plugdev group"
187
188 # HAL drops priviledges by default now ...
189 # ... so we must make sure it can read disk/cdrom info (ie. be in ${HALDAEMON_GROUPS} groups)
190 enewuser haldaemon -1 "-1" /dev/null ${HALDAEMON_GROUPS} || die "Problem adding haldaemon user"
191
192 # Make sure that the haldaemon user is in the ${HALDAEMON_GROUPS}
193 # If users have a problem with this, let them file a bug
194 usermod -G ${HALDAEMON_GROUPS} haldaemon
195
196 elog "The HAL daemon needs to be running for certain applications to"
197 elog "work. Suggested is to add the init script to your start-up"
198 elog "scripts, this should be done like this :"
199 elog "\`rc-update add hald default\`"
200 echo
201 elog "Looking for automounting support? Add yourself to the plugdev group"
202 }

  ViewVC Help
Powered by ViewVC 1.1.20