From: Jonathan W. <jw...@ju...> - 2013-08-26 12:37:57
|
Hi Michael On Mon, Aug 26, 2013 at 03:47:13PM +0400, ??????? ?????? wrote: > Sorry for the confusion. ... I'm using sandbox build for development and > I'm building from Eclipse using SConsolidator plugin. Most of the time I > do not need to run scons install as root. without my patch build fails > trying install 60-ffado.rules file. Thanks for the additional information. What I understand from this is that you can run "scons install" as a non-root user and everything except the udev rule installs. This means you must have sufficient permissions on other system directories such as /usr/lib or /usr/local/lib. In this case, what is wrong with setting your udevdir to have similar permissions? > The patch is the workaroud for this problem, actually this is copy-paste > of the solution for dbus configuration file from support/dbus/SConscript The situation in support/dbus/SConscript is not quite the same since there is more being tested than just the writability of the target directory. Furthermore, it is possible (albeit highly unlikely) that the system may not have dbus installed, in which case the dbus files should clearly not be installed. Udev, on the other hand, is essential for the correct functioning of a modern Linux system. The installation of the udev file is therefore considered a necessity. I am still not clear as to why this change is necessary. If you do "scons install" you are by definition trying to install into the selected destination directory. If those directories are protected and cannot be written to then a failure is expected. If other target directories have been configured so as to be writeable then doing the same for udevdir should be doable. If for some reasin it is not there is always the option of setting udevdir to point to a place which is writable, as Adrian suggested. The latter is the "proper" fix for the case where you can't write to the udevdir. What if you don't have write access to includedir? Should the build system include a workaround for that too? And bindir, or any of the other places that ffado writes to during "scons install"? In short, I don't understand why 60-ffado.rules should be treated differently. "scons install" means "install onto the system". There's an implicit understanding that root permission will be needed to do this. For unusual cases such as yours there's always the possibility of overriding directory variables like udevdir. Given this, I don't see that a workaround for 60-ffado.rules is really needed. Don't get me wrong - I'm more than happy to apply this patch if it can be demonstrated that it's needed. However, since a simple override of udevdir would appear to solve your problem I am yet to be convinced. Regards jonathan |