Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Alex D
GHC
Commits
852373b7
Commit
852373b7
authored
Nov 19, 2009
by
Ian Lynagh
Browse files
Add support for the man page to the new build system
parent
367e603d
Changes
2
Hide whitespace changes
Inline
Side-by-side
docs/man/
Makefile
→
docs/man/
ghc.mk
View file @
852373b7
TOP
=
../..
include
$(TOP)/mk/boilerplate.mk
ifneq
"$(strip $(XSLTPROC))" ""
ifeq
"$(BUILD_MAN)" ""
ifeq
"$(strip $(XSLTPROC))" ""
BUILD_MAN
=
NO
else
BUILD_MAN
=
YES
endif
endif
# The commands which should be mentioned in the man page
GHC_COMMANDS
=
ghc ghci
MAN_
GHC_COMMANDS
=
ghc ghci
# The man page we are generating
MAN_PAGE
=
ghc
...
...
@@ -12,39 +16,41 @@ MAN_PAGE = ghc
# The manual section
MAN_SECTION
=
1
CLEAN_FILES
+=
$(MAN_PAGE)
.
$(MAN_SECTION)
flags.xsl flags.xml
ifneq
"$(DOING_BIN_DIST)" "YES"
all
::
$(MAN_PAGE).$(MAN_SECTION)
MAN_PATH
=
docs/man/
$(MAN_PAGE)
.
$(MAN_SECTION)
$(MAN_PAGE).$(MAN_SECTION)
:
flags.xsl flags.xml
$(XSLTPROC)
$(XSLTPROC_OPTS)
flags.xsl flags.xml
>
$@
ifneq
"$(BINDIST)" "YES"
$(MAN_PATH)
:
docs/man/flags.xsl docs/man/flags.xml
$(XSLTPROC)
$(XSLTPROC_OPTS)
$^
>
$@
endif
# Insert the commands and the library directory into the man page
flags.xsl
:
gen_flags.xsl.pl
$(PERL)
gen_flags.xsl.pl
"
$(
GHC_COMMANDS)
"
"
$(libdir)
"
>
$@
docs/man/
flags.xsl
:
docs/man/
gen_flags.xsl.pl
$(PERL)
$<
"
$(MAN_
GHC_COMMANDS)
"
"
$(libdir)
"
>
$@
# Re-use the flags documentation from the user's guide by injecting some
# entities after the XML declaration to make it a stand-alone document.
flags.xml
:
..
/users_guide/flags.xml
$(RM)
$@
docs/man/
flags.xml
:
docs
/users_guide/flags.xml
"
$(RM)
"
$(RM_OPTS)
$@
head
-n
1
$<
>>
$@
echo
"<!DOCTYPE sect1 [<!ENTITY ndash
\"
-
\"
>
\
<!ENTITY ldquo
\"\`\"
>
\
<!ENTITY rdquo
\"
'
\"
>]>"
>>
$@
# "sed 1d" == "tail -n +2", but Solaris apparently rejects the latter
# "sed 1d" == "tail -n +2", but Solaris apparently rejects the latter
sed
1d
$<
>>
$@
endif
ifeq
"$(BUILD_MAN)" "YES"
$(eval
$(call
all-target,docs/man,$(MAN_PATH)))
INSTALL_MANPAGES
+=
$(MAN_PATH)
install-docs
::
$(MAN_PAGE).$(MAN_SECTION)
$(INSTALL_DIR)
$(DESTDIR)$(mandir)
$(INSTALL_DIR)
$(DESTDIR)$(mandir)
/man
$(MAN_SECTION)
$(INSTALL_MAN)
$(INSTALL_OPTS)
$(MAN_PAGE)
.
$(MAN_SECTION)
$(DESTDIR)$(mandir)
/man
$(MAN_SECTION)
install
:
install_man
.PHONY
:
install_man
install_man
:
$(MAN_PATH)
$(INSTALL_DIR)
"
$(DESTDIR)$(mandir)
"
$(INSTALL_DIR)
"
$(DESTDIR)$(mandir)
/man
$(MAN_SECTION)
"
$(INSTALL_MAN)
$(INSTALL_OPTS)
$(MAN_PATH)
"
$(DESTDIR)$(mandir)
/man
$(MAN_SECTION)
"
endif
include
$(TOP)/mk/bindist.mk
$(eval
$(call
clean-target,docs/man,,$(MAN_PATH)
docs/man/flags.xsl
docs/man/flags.xml))
include
$(TOP)/mk/target.mk
ghc.mk
View file @
852373b7
...
...
@@ -492,6 +492,7 @@ endif
BUILD_DIRS
+=
\
docs/users_guide
\
docs/man
\
libraries/Cabal/doc
\
$(GHC_UNLIT_DIR)
\
$(GHC_HP2PS_DIR)
...
...
@@ -915,6 +916,7 @@ $(eval $(call bindist,.,\
$(INSTALL_TOPDIRS)
\
$(INSTALL_TOPDIR_SCRIPTS)
\
$(INSTALL_BINS)
\
$(INSTALL_MANPAGES)
\
$(INSTALL_DOCS)
\
$(INSTALL_LIBRARY_DOCS)
\
$(addsuffix
/*,$(INSTALL_HTML_DOC_DIRS))
\
...
...
@@ -946,6 +948,7 @@ unix-binary-dist-prep:
echo
"BUILD_DOCBOOK_HTML =
$(BUILD_DOCBOOK_HTML)
"
>>
$(BIN_DIST_MK)
echo
"BUILD_DOCBOOK_PS =
$(BUILD_DOCBOOK_PS)
"
>>
$(BIN_DIST_MK)
echo
"BUILD_DOCBOOK_PDF =
$(BUILD_DOCBOOK_PDF)
"
>>
$(BIN_DIST_MK)
echo
"BUILD_MAN =
$(BUILD_MAN)
"
>>
$(BIN_DIST_MK)
ln
-s
../../distrib/configure-bin.ac
$(BIN_DIST_PREP_DIR)
/configure.ac
cd
$(BIN_DIST_PREP_DIR)
&&
autoreconf
"
$(RM)
"
$(RM_OPTS)
$(BIN_DIST_PREP_TAR)
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment