From: Jens-Ulrik P. <ju...@us...> - 2004-08-19 07:54:30
|
Update of /cvsroot/gtk2hs/gtk2hs/mk In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13198/mk Modified Files: common.mk config.mk.in library.mk recurse.mk Log Message: Update make files and all to support building documentation with haddock. Other minor build fixes. Remove gendoc and doc. * sourceview/Makefile (C2HS_EXTRA_FLAGS): Replaces HIDIRS for c2hs. * mogul/Makefile: Add EXCLUDE_DOCS and PREPROC_DOCS for haddock. * mk/recurse.mk: Remove $(MAKE_DOCS) dependency from all targets. Add html and install-html targets. * mk/library.mk (PKGDOCDIR): New variable to hold package doc dir. (html): New target that builds packages docs with haddock. Just warns if HADDOCK is not defined. (install-html): New target to install packages docs. * mk/config.mk.in: Add HADDOCK and GHC_DOCDIR replacing BUILDDOCS, xml and xslt related variables. * mk/common.mk (INST_DOCDIR): Setup new variable. (C2HSFLAGGED): Add C2HS_EXTRA_FLAGS for finding .chi files. * gtk/multiline/TextView.chs: Fix doc typos at top. * gtk/Makefile: Add EXCLUDE_DOCS and PREPROC_DOCS for haddock. * glade/Makefile (C2HS_EXTRA_FLAGS): Replaces HIDIRS for c2hs only. * gconf/System/Gnome/GConf/GConfClient.chs: Doc tweaks to make haddock happy at top and for gconfAddDir. * gconf/Makefile (C2HS_EXTRA_FLAGS): Replaces HIDIRS for c2hs only. * gtk2hs.spec.in: Use ghc-6.2.1 and define short ghc version %ghcver. Use License instead of Copyright. Update buildrequires. Add separate subpackages for sourceview, gconf and glade Name subpackages with %ghcver. Subpackages now require the appropriate -devel package. Define %ghclibdir and %gtk2hsdir. (%build): Update configure invocation - drop xml options and use --prefix and --libdir. Make html. Use mkdir. Clean demo dirs with find. (%post,%preun): Update and add scripts for new subpackages. (%files): Html docs are now in /usr/share/doc/gtk2hs. * configure.in: Comment out GtkGLExt, HOpenGL checks. Check for haddock instead of xslt. Add --with-ghc-docdir option. Remove xml catalog and xsl checks. Replace missing xml final warning with haddock missing warning. * Makefile: No longer build gendoc or doc. Build mogul after gtk2. Index: recurse.mk =================================================================== RCS file: /cvsroot/gtk2hs/gtk2hs/mk/recurse.mk,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- recurse.mk 16 Aug 2004 07:35:55 -0000 1.6 +++ recurse.mk 19 Aug 2004 07:54:20 -0000 1.7 @@ -5,23 +5,23 @@ # to extra directories that are included when cleaning and tarring. -all : MAKE_GOALS=$(MAKE_TOOLS) $(MAKE_LIBS) $(MAKE_DOCS) $(MAKE_APPS) +all : MAKE_GOALS=$(MAKE_TOOLS) $(MAKE_LIBS) $(MAKE_APPS) all : make-all -inplace : MAKE_GOALS=$(MAKE_TOOLS) $(MAKE_LIBS) $(MAKE_DOCS) +inplace : MAKE_GOALS=$(MAKE_TOOLS) $(MAKE_LIBS) inplace : make-inplace -noinplace : MAKE_GOALS=$(MAKE_TOOLS) $(MAKE_LIBS) $(MAKE_DOCS) +noinplace : MAKE_GOALS=$(MAKE_TOOLS) $(MAKE_LIBS) noinplace : make-noinplace -tarsource : MAKE_GOALS=$(MAKE_TOOLS) $(MAKE_LIBS) $(MAKE_DOCS) $(MAKE_APPS) $(MAKE_VERB) +tarsource : MAKE_GOALS=$(MAKE_TOOLS) $(MAKE_LIBS) $(MAKE_APPS) $(MAKE_VERB) tarsource : make-tarsource -clean : MAKE_GOALS=$(MAKE_TOOLS) $(MAKE_LIBS) $(MAKE_DOCS) $(MAKE_APPS) $(MAKE_VERB) +clean : MAKE_GOALS=$(MAKE_TOOLS) $(MAKE_LIBS) $(MAKE_APPS) $(MAKE_VERB) clean : make-clean $(RM) $(EXTRA_CLEANFILES) -distclean : MAKE_GOALS=$(MAKE_TOOLS) $(MAKE_LIBS) $(MAKE_DOCS) $(MAKE_APPS) $(MAKE_VERB) +distclean : MAKE_GOALS=$(MAKE_TOOLS) $(MAKE_LIBS) $(MAKE_APPS) $(MAKE_VERB) distclean : make-distclean $(RM) $(LOCALPKGCONF) $(LOCALPKGCONF).old $(EXTRA_DISTCLEANFILES) @@ -34,5 +34,11 @@ uninstall : MAKE_GOALS=$(MAKE_LIBS) $(MAKE_APPS) uninstall : make-uninstall +html : MAKE_GOALS=$(MAKE_LIBS) +html : make-html + +install-html : MAKE_GOALS=$(MAKE_LIBS) +install-html : make-install-html + make-% : for dir in $(MAKE_GOALS); do $(MAKE) $* -C$$dir || exit 1; done; Index: common.mk =================================================================== RCS file: /cvsroot/gtk2hs/gtk2hs/mk/common.mk,v retrieving revision 1.31 retrieving revision 1.32 diff -u -d -r1.31 -r1.32 --- common.mk 16 Aug 2004 07:35:55 -0000 1.31 +++ common.mk 19 Aug 2004 07:54:20 -0000 1.32 @@ -24,6 +24,7 @@ INST_HIDIR = $(INST_LIBDIR)/hi INST_INCLDIR = $(INST_HIDIR) INST_BINDIR = $(shell echo $(addsuffix $(INSTALLDIROK),$(bindir)) | $(SEDPIPE)) +INST_DOCDIR = $(datadir)/doc/gtk2hs # these values are used for building a library in-place INPL_HIDIR := $(sort $(patsubst %/.,%,$(patsubst %/,%,\ @@ -122,7 +123,7 @@ # Specify how c2hs should be run. C2HSFLAGGED := $(C2HS) $(C2HSFLAGS) +RTS $(HSTOOLFLAGS) -RTS \ $(addprefix -C,$(EXTRA_CPPFLAGS_ONLY_I) $(CPPFLAGS_ONLY_I)) \ - -i$(HIDIRSOK) + -i$(HIDIRSOK) $(C2HS_EXTRA_FLAGS) # Read in all extra dependencies between .chs files. -include $(ALLCHSFILES:.chs=.dep) Index: config.mk.in =================================================================== RCS file: /cvsroot/gtk2hs/gtk2hs/mk/config.mk.in,v retrieving revision 1.28 retrieving revision 1.29 diff -u -d -r1.28 -r1.29 --- config.mk.in 6 Aug 2004 01:28:18 -0000 1.28 +++ config.mk.in 19 Aug 2004 07:54:20 -0000 1.29 @@ -173,11 +173,5 @@ COMMONINSTALLDIR = gtk2hs # Documentation - -BUILDDOCS = @BUILDDOCS@ -XSLTPROC = @XSLTTRANS@ -CATALOGS = @XML_CATALOG_FILES@ -DO_HTML = @FOUNDHTML@ -XSLTHTML = @XSLTHTML@ -DO_FO = @FOUNDFO@ -XSLTFO = @XSLTFO@ +HADDOCK = @HADDOCK@ +GHC_DOCDIR = @GHC_DOCDIR@ Index: library.mk =================================================================== RCS file: /cvsroot/gtk2hs/gtk2hs/mk/library.mk,v retrieving revision 1.26 retrieving revision 1.27 diff -u -d -r1.26 -r1.27 --- library.mk 16 Aug 2004 07:35:55 -0000 1.26 +++ library.mk 19 Aug 2004 07:54:20 -0000 1.27 @@ -14,6 +14,8 @@ makeTextList = $(addprefix \",$(addsuffix \",\ $(subst $(SPACE),\"$(COMMA)\",$(sort $(1))))) +PKGDOCDIR ?= $(INST_DOCDIR)/$(PACKAGENAME) + noinplace : inplaceinit @if $(PKG) -f $(LOCALPKGCONF) $(LISTLOCAL) | $(GREP) $(PACKAGENAME) \ > /dev/null; then \ @@ -171,3 +173,16 @@ idbg : @echo $(GHCIARCH) + +html : $(ALLHSFILES) +ifneq ($(strip $(HADDOCK)),) + mkdir -p doc + $(foreach i, $(PREPROC_DOCS), $(shell hsc2hs $(EXTRA_CPPFLAGS) -o $(i).uncpp $(i))) + $(HADDOCK) -o doc --title=$(LIBNAME) --package=$(PACKAGENAME) --dump-interface=doc/$(PACKAGENAME).haddock -i$(GHC_DOCDIR)/libraries/base,$(GHC_DOCDIR)/libraries/base/base.haddock $(HADDOCK_EXTRA_FLAGS) --html $(addsuffix .uncpp, $(PREPROC_DOCS)) $(filter-out $(EXCLUDE_DOCS) $(PREPROC_DOCS), $(ALLHSFILES)) +else + echo "You need to install `haddock' to build the documentation!" +endif + +install-html : + $(INSTALL_DIR) $(DESTDIR)$(PKGDOCDIR) + $(INSTALL_DATA) doc/* $(DESTDIR)$(PKGDOCDIR) |