[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: patch 004 is overkill



Branden Robinson wrote:

> On Thu, Jan 08, 2004 at 06:54:49AM -0600, Warren Turkal wrote:
>> Patch 004 is overkill for making the manpages appears with the right
>> names in the right places.
> 
> I need you to spend more time justifying this statement, please.

Short Description:
Okay, if you used the patch I supplied, you will get the manpages in the
same places with the same names as we use in Debian. This all uses the
internal support in the XF86 build system.

Longer Description:
The 004 patch that I am referring to is
004_imake_manpage_handling_overhaul.diff. In this patch, there appears to
be an effort to break the tie between the name and the location of a
manpage.

I hold that this is not neccessary in XF86 4.3.0. By default, manpages are
installed in the $(MANSOURCEPATH)$(manpagesection)/$(manpagename)
$(mansuffix).

In XF86, $(MANSOURCEPATH) is /usr/X11R6/man/man. The manpage section depends
on various imake configuration settings. The manpage name is defined by the
file that generates the manpage. The manpage suffix also depends on various
imake configuration settings.

The XF86 build system has 5 different kinds of manpages.

1) Regular manpages
2) Library API manpages
3) File format manpages
4) Driver manpages
5) Misc manpages (the info about X.org is here)

Each of these types of manpages has two attributes: (1) ManDir and (2)
ManSuffix.

I will take ManSuffix first. With respect to the types of manpages listed
above, the following are the man suffix configuration options.

1) ManSuffix
2) LibManSuffix
3) FileManSuffix
4) DriverManSuffix
5) MiscManSuffix

By default, linux.cf makes the following definitions for the suffixes.
#ifndef ManSuffix
# define ManSuffix      1x
#endif
#ifndef LibManSuffix
# define LibManSuffix   3x
#endif
#ifndef FileManSuffix
# define FileManSuffix  5x
#endif

My preliminary patch adds the following defines within the LinuxDistribution
== LinuxDebian section.

# define DriverManSuffix       4x
# define MiscManSuffix         7x

Now the man sections must be modified appropriately. Again with repect to
the types of manpages, these are the man dir configuration settings.

1) ManDir
2) LibmanDir (yes, it is a small "m" on the "man" part)
3) FileManDir
4) DriverManDir
5) MiscManDir

By default, the man section is the same as the ManSuffix for each section.
Further, linux.cf provides to following definitions.

#ifndef ManDir
# define ManDir         $(MANSOURCEPATH)1
#endif
#ifndef LibmanDir
# define LibmanDir      $(MANSOURCEPATH)3
#endif
#ifndef FileManDir
# define FileManDir     $(MANSOURCEPATH)5
#endif

My preliminary patch adds the following defines within the LinuxDistribution
== LinuxDebian section.

# define DriverManDir          $(MANSOURCEPATH)4
# define MiscManDir            $(MANSOURCEPATH)7

This takes care of Debian Linux. My patch did not modify the other
architectures.

That said, I believe that my patches definitions would be better grouped
with the other definitions that are already in linux.cf as my additions
bring it in compliance with Filesystem Hierarchy Standard. The gnu.cf has a
similar section. I guess that bsd needs to same somehow. I don't know what
file to edit for bsd.

Essentially, the following should be in each file for architectures that we
support.

#ifndef ManSuffix
# define ManSuffix      1x
#endif
#ifndef ManDir
# define ManDir         $(MANSOURCEPATH)1
#endif
#ifndef LibManSuffix
# define LibManSuffix   3x
#endif
#ifndef LibmanDir
# define LibmanDir      $(MANSOURCEPATH)3
#endif
#ifndef DriverSuffix
# define DriverManSuffix 4x
#endif
#ifndef DriverManDir
# define DriverManDir   $(MANSOURCEPATH)4
#endif
#ifndef FileManSuffix
# define FileManSuffix  5x
#endif
#ifndef FileManDir
# define FileManDir     $(MANSOURCEPATH)5
#endif
#ifndef MiscManSuffix
# define MiscManSuffix  7x
#endif
#ifndef MiscManDir
# define MiscManDir     $(MANSOURCEPATH)7
#endif

wt
-- 
Warren Turkal
President, GOLUM, Inc.
http://www.golum.org



Reply to: