Opened 15 years ago
Last modified 15 years ago
#2459 closed defect
Udev rules documentation location — at Version 8
Reported by: | Owned by: | ||
---|---|---|---|
Priority: | normal | Milestone: | 6.5 |
Component: | Book | Version: | SVN |
Severity: | normal | Keywords: | |
Cc: |
Description (last modified by )
It was mentioned earlier that Udev now puts an HTML file about writing Udev rules in /usr/share/doc/udev-[version], but for me it just goes into /usr/share/doc/udev. This is fixed by adding --docdir=/usr/share/doc/udev-&udev-version; to Udev's configure.
Change History (8)
comment:1 by , 15 years ago
Resolution: | → wontfix |
---|---|
Status: | new → closed |
follow-up: 3 comment:2 by , 15 years ago
I'm confused by your response. I don't know what you mean by "Please don't" - I believe it is generally LFS policy to put all documentation in /usr/share/doc into subdirs with version numbers, and I was just pointing out one package that does not.
follow-up: 4 comment:3 by , 15 years ago
Replying to chris@…:
I believe it is generally LFS policy to put all documentation in /usr/share/doc into subdirs with version numbers, and I was just pointing out one package that does not.
I was unaware of any such policy. If it does exist, it goes against at least the autoconf default ${docdir}, and (I think also therefore) the GNU coding standards which autoconf follows. At least autoconf uses the plain old package name, without a version.
If we're overriding that in lots of places (grepping the book finds a couple... :-( ), I think we need to re-think that decision. Using the standard directory makes it a heck of a lot easier to upgrade udev in the future, without leaving lots of different /usr/share/doc/udev-XXX directories hanging around forever.
(The "please don't" was directed more at other editors than at you; sorry if that wasn't clear.)
follow-up: 5 comment:4 by , 15 years ago
Replying to bryan@…:
Replying to chris@…:
I believe it is generally LFS policy to put all documentation in /usr/share/doc into subdirs with version numbers, and I was just pointing out one package that does not.
I was unaware of any such policy. If it does exist, it goes against at least the autoconf default ${docdir}, and (I think also therefore) the GNU coding standards which autoconf follows. At least autoconf uses the plain old package name, without a version.
That's an interesting comment because all the LFS packages except udev are version specific and I know there has been a lot of effort for it to be that way in BLFS for quite a while.
The rationale is that newer packages don't delete obsolete documentation that may still be in /usr/share/doc when upgrading.
comment:5 by , 15 years ago
Replying to bdubbs@…:
The rationale is that newer packages don't delete obsolete documentation that may still be in /usr/share/doc when upgrading.
Newer packages also don't delete older shared library versions, or obsolete header files. We don't cater to that...
(To be specific, I'm talking about e.g. /lib/libz.so.1.2.3 not being replaced when upgrading from zlib-1.2.3 to zlib-1.2.<newer>.)
I don't know the rationale behind making ${docdir} be /usr/share/doc/${PACKAGE_TARNAME} in autoconf. I'd assume they don't care about removing obsolete documentation files... :-)
comment:6 by , 15 years ago
Resolution: | wontfix |
---|---|
Status: | closed → reopened |
follow-up: 8 comment:7 by , 15 years ago
Type: | task → defect |
---|
I just noticed something. The "Device and Module Handling" page - http://www.linuxfromscratch.org/lfs/view/development/chapter07/udev.html - and "Creating Custom Symlinks" - http://www.linuxfromscratch.org/lfs/view/development/chapter07/symlinks.html - both explicitly refer to the HTML file about Udev rules by its full path - including being inside a versioned directory, which of course does not exist with the current Udev instructions. Also, the HTML file is actually inside another subdir - specifically, /usr/share/doc/udev/writing_udev_rules/index.html. So, even if it is decided not to change the installation location, the text on the "Device and Module Handling" and "Creating Custom Symlinks" pages must be updated.
comment:8 by , 15 years ago
Description: | modified (diff) |
---|
Replying to chris@…:
OK, this is what needs to be done:
- In Chapter 6 add --docdir=/usr/share/dov/udev-145 to configure
- Add writing_udev_rules/ to the path in Chapter 7, udev.xml and symlinks.xml
I've not actually built the whole package, but I did run ./configure with the switch and the 'make DESTDIR=/tmp/udev install' in the docs/ directory.
What I get is:
/usr/bin/install -c -m 644 $files "/usr/share/doc/udev-145/writing_udev_rules"
/tmp/udev: usr /tmp/udev/usr: share /tmp/udev/usr/share: doc /tmp/udev/usr/share/doc: udev-145 /tmp/udev/usr/share/doc/udev-145: writing_udev_rules /tmp/udev/usr/share/doc/udev-145/writing_udev_rules: index.html
So those simple changes should be adequate.
Looks like I got that path wrong...
Please don't. I hadn't checked what --docdir actually was by default when I said what what you quoted above; I was assuming that autofoo added the package version number to the documentation directory. If it does not, that's still the right way to go. (Besides, this was just a comment in a bug (or on lfs-dev, I can't remember which); it's not like this information is in the book...)