Makefile.am revision e35772b2
1#
2# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
3#
4# Permission is hereby granted, free of charge, to any person obtaining a
5# copy of this software and associated documentation files (the "Software"),
6# to deal in the Software without restriction, including without limitation
7# the rights to use, copy, modify, merge, publish, distribute, sublicense,
8# and/or sell copies of the Software, and to permit persons to whom the
9# Software is furnished to do so, subject to the following conditions:
10#
11# The above copyright notice and this permission notice (including the next
12# paragraph) shall be included in all copies or substantial portions of the
13# Software.
14#
15# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
18# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21# DEALINGS IN THE SOFTWARE.
22# 
23
24drivermandir = $(DRIVER_MAN_DIR)
25
26driverman_PRE = @DRIVER_NAME@.man
27
28driverman_DATA = $(driverman_PRE:man=@DRIVER_MAN_SUFFIX@)
29
30EXTRA_DIST = @DRIVER_NAME@.man
31
32CLEANFILES = $(driverman_DATA)
33
34SED = sed
35
36# Strings to replace in man pages
37XORGRELSTRING = @PACKAGE_STRING@
38  XORGMANNAME = X Version 11
39
40MANDEFS =  \
41	-D__vendorversion__="\"$(XORGRELSTRING)\" \"$(XORGMANNAME)\"" \
42	-D__appmansuffix__=$(APP_MAN_SUFFIX) \
43	-D__filemansuffix__=$(FILE_MAN_SUFFIX) \
44	-D__libmansuffix__=$(LIB_MAN_SUFFIX) \
45	-D__miscmansuffix__=$(MISC_MAN_SUFFIX) \
46	-D__drivermansuffix__=$(DRIVER_MAN_SUFFIX) \
47	-D__adminmansuffix__=$(ADMIN_MAN_SUFFIX) \
48	-D__xconfigfile__=xorg.conf \
49	-D__xservername__=Xorg
50
51# Translate XCOMM into pound sign with sed, rather than passing -DXCOMM=XCOMM
52# to cpp, because that trick does not work on all ANSI C preprocessors.
53# Delete line numbers from the cpp output (-P is not portable, I guess).
54# Allow XCOMM to be preceded by whitespace and provide a means of generating
55# output lines with trailing backslashes.
56# Allow XHASH to always be substituted, even in cases where XCOMM isn't.
57
58CPP_SED_MAGIC = $(SED) -e '/^\#  *[0-9][0-9]*  *.*$$/d' \
59                       -e '/^\#line  *[0-9][0-9]*  *.*$$/d' \
60                       -e '/^[         ]*XCOMM$$/s/XCOMM/\#/' \
61                       -e '/^[         ]*XCOMM[^a-zA-Z0-9_]/s/XCOMM/\#/' \
62                       -e '/^[         ]*XHASH/s/XHASH/\#/' \
63                       -e '/\@\@$$/s/\@\@$$/\\/'
64
65SUFFIXES = .$(DRIVER_MAN_SUFFIX) .man
66
67.man.$(DRIVER_MAN_SUFFIX):
68	$(RAWCPP) $(RAWCPPFLAGS) $(MANDEFS) $(EXTRAMANDEFS) < $< | $(CPP_SED_MAGIC) > $@
69
70