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

Contents of /sys-apps/hal/hal-0.5.9.ebuild

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.5 - (hide annotations) (download)
Thu Apr 5 22:00:22 2007 UTC (7 years, 4 months ago) by cardoe
Branch: MAIN
Changes since 1.4: +2 -2 lines
Remove typo'd whitespace
(Portage version: 2.1.2.3)

1 steev 1.1 # Copyright 1999-2007 Gentoo Foundation
2     # Distributed under the terms of the GNU General Public License v2
3 cardoe 1.5 # $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/hal-0.5.9.ebuild,v 1.4 2007/04/05 17:29:55 cardoe Exp $
4 steev 1.1
5     inherit eutils linux-info autotools flag-o-matic
6    
7     DESCRIPTION="Hardware Abstraction Layer"
8     HOMEPAGE="http://www.freedesktop.org/Software/hal"
9     SRC_URI="http://people.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 -mips ~ppc ~ppc64 ~sh ~sparc ~x86"
14 cardoe 1.4 IUSE="acpi crypt debug dell disk-partition doc pam pcmcia selinux"
15 steev 1.1
16     RDEPEND=">=dev-libs/glib-2.6
17     >=dev-libs/dbus-glib-0.61
18     >=sys-fs/udev-104
19     >=sys-apps/util-linux-2.12r-r1
20 cardoe 1.4 kernel_linux? ( >=sys-kernel/linux-headers-2.6.17 )
21 steev 1.1 >=dev-libs/expat-1.95.8
22     >=sys-apps/pciutils-2.2.3
23     >=dev-libs/libusb-0.1.10a
24     virtual/eject
25     amd64? ( >=sys-apps/dmidecode-2.7 )
26     x86? ( >=sys-apps/dmidecode-2.7 )
27     ia64? ( >=sys-apps/dmidecode-2.7 )
28     dell? ( >=sys-libs/libsmbios-0.13.4 )
29     disk-partition? ( >=sys-apps/parted-1.7.1 )
30     crypt? ( >=sys-fs/cryptsetup-luks-1.0.1 )
31 cardoe 1.4 selinux? ( sys-libs/libselinux )
32     pam? ( sys-auth/consolekit )"
33 steev 1.1
34     DEPEND="${RDEPEND}
35     dev-util/pkgconfig
36     >=dev-util/intltool-0.35
37     doc? ( app-doc/doxygen app-text/docbook-sgml-utils )"
38    
39     PDEPEND="app-misc/hal-info"
40    
41     ## HAL Daemon drops privledges so we need group access to read disks
42     HALDAEMON_GROUPS="haldaemon,plugdev,disk,cdrom,cdrw,floppy,usb"
43    
44     function notify_uevent() {
45     ewarn
46     ewarn "You must enable Kernel Userspace Events in your kernel."
47     ewarn "For this you need to enable 'Hotplug' under 'General Setup' and"
48     ewarn "basic networking. They are marked CONFIG_HOTPLUG and CONFIG_NET"
49     ewarn "in the config file."
50     ewarn
51     ebeep 5
52     }
53    
54     function notify_procfs() {
55     ewarn
56     ewarn "You must enable the proc filesystem in your kernel."
57     ewarn "For this you need to enable '/proc file system support' under"
58     ewarn "'Pseudo filesystems' in 'File systems'. It is marked"
59     ewarn "CONFIG_PROC_FS in the config file."
60     ewarn
61     ebeep 5
62     }
63    
64     pkg_setup() {
65     kernel_is ge 2 6 17 || ewarn "HAL requires a kernel version 2.6.17 or newer"
66    
67     if ! ( linux_chkconfig_present HOTPLUG && linux_chkconfig_present NET )
68     then
69     notify_uevent
70     fi
71    
72     if use acpi ; then
73     linux_chkconfig_present PROC_FS || notify_procfs
74     fi
75    
76     if [[ -d ${ROOT}/etc/hal/device.d ]]; then
77     eerror "HAL 0.5.x will not run with the HAL 0.4.x series of"
78     eerror "/etc/hal/device.d/ so please remove this directory"
79     eerror "with rm -rf /etc/hal/device.d/ and then re-emerge."
80     eerror "This is due to configuration protection of /etc/"
81     die "remove /etc/hal/device.d/"
82     fi
83     }
84    
85     src_unpack() {
86     unpack ${A}
87     cd ${S}
88 cardoe 1.2
89     # Gentoo Patch Set
90     EPATCH_SUFFIX="patch" EPATCH_FORCE="yes" epatch ${FILESDIR}/${PV}
91    
92 steev 1.1 epatch ${FILESDIR}/${PN}-0.5.7-plugdev-allow-send.patch
93     }
94    
95     src_compile() {
96 cardoe 1.4 local backend=""
97     local acpi=""
98    
99 steev 1.1 # TODO :: policykit should have a pam useflag
100     append-flags -rdynamic
101    
102 cardoe 1.4 if use kernel_linux ; then
103     backend="linux"
104     elif use kernel_FreeBSD ; then
105     backend="freebsd"
106     else
107     eerror "Invalid backend"
108     fi
109    
110     if use acpi ; then
111     acpi="--enable-acpi-toshiba --enable-acpi-ibm"
112     else
113     acpi="--disable-acpi-proc --disable-acpi-acpid"
114     fi
115    
116 steev 1.1 econf --disable-policy-kit \
117     --with-doc-dir=/usr/share/doc/${PF} \
118     --with-os-type=gentoo \
119     --with-pid-file=/var/run/hald.pid \
120     --with-hwdata=/usr/share/misc \
121     --enable-hotplug-map \
122 cardoe 1.4 --enable-man-pages \
123     --with-backend=${backend} \
124 steev 1.1 $(use_enable debug verbose-mode) \
125 cardoe 1.5 $(use_with dell dell-backlight) \
126 steev 1.1 $(use_enable disk-partition parted) \
127     $(use_enable pcmcia pcmcia-support) \
128     $(use_enable doc docbook-docs) \
129     $(use_enable doc doxygen-docs) \
130     $(use_enable selinux) \
131 cardoe 1.4 $(use_enable pam console-kit) \
132     ${acpi} \
133 steev 1.1 || die "configure failed"
134    
135     emake || die "make failed"
136     }
137    
138     src_install() {
139     make DESTDIR="${D}" install || die
140     dodoc AUTHORS ChangeLog NEWS README
141    
142     # remove dep on gnome-python
143     mv "${D}"/usr/bin/hal-device-manager "${D}"/usr/share/hal/device-manager/
144    
145     # hal umount for unclean unmounts
146     exeinto /lib/udev/
147     newexe "${FILESDIR}"/hal-unmount.dev hal_unmount
148    
149     # initscript
150 cardoe 1.3 newinitd "${FILESDIR}"/0.5.9-hald.rc hald
151 steev 1.1
152     # We now create and keep /media here as both gnome-mount and pmount
153     # use these directories, to avoid collision.
154     keepdir /media
155 cardoe 1.3
156 steev 1.1 # We also need to create and keep /etc/fdi/{information,policy,preprobe}
157     # or else hal bombs.
158     keepdir /etc/hal/fdi/{information,policy,preprobe}
159 cardoe 1.3
160     # HAL stores it's fdi cache in /var/lib/cache/hald
161     keepdir /var/lib/cache/hald
162 steev 1.1 }
163    
164     pkg_postinst() {
165     # Despite what people keep changing this location. Either one works.. it doesn't matter
166     # http://dev.gentoo.org/~plasmaroo/devmanual/ebuild-writing/functions/
167    
168     # Create groups for hotplugging and HAL
169     enewgroup haldaemon || die "Problem adding haldaemon group"
170     enewgroup plugdev || die "Problem adding plugdev group"
171    
172     # HAL drops priviledges by default now ...
173     # ... so we must make sure it can read disk/cdrom info (ie. be in ${HALDAEMON_GROUPS} groups)
174     enewuser haldaemon -1 "-1" /dev/null ${HALDAEMON_GROUPS} || die "Problem adding haldaemon user"
175    
176     # Make sure that the haldaemon user is in the ${HALDAEMON_GROUPS}
177     # If users have a problem with this, let them file a bug
178     usermod -G ${HALDAEMON_GROUPS} haldaemon
179    
180     elog "The HAL daemon needs to be running for certain applications to"
181     elog "work. Suggested is to add the init script to your start-up"
182     elog "scripts, this should be done like this :"
183     elog "\`rc-update add hald default\`"
184     echo
185     elog "Looking for automounting support? Add yourself to the plugdev group"
186     }

  ViewVC Help
Powered by ViewVC 1.1.20