Re: Fwd: [Mono-winforms-list] Exception when using monodocer on System.Windows.Forms.dll

latency <[email protected]> Sat, 16 Dec 2006 15:30:04 +0100
Newsgroups gmane.comp.gnome.mono.documentation
Message-ID <[email protected]>
Hello,

thanks for the advice it worked well. But there's still one problem.
I've managed to integrate the System.Windows.Forms documentation into Mondoc 
but this included changing the makefile in the monodoc/class folder and 
adding the System.Windows.Forms Doc into the class folder of mondoc.

The change of the makefile is not very much and I attached it to the email but 
for uploading the docs of SWF by monodocer, well that I can't do since I've 
got no access to the server and I'm not familiar wether this is the right 
thing to do.

However I would still like to see SWF in my monodoc browser so can somebody 
tell me how this can be accomplished without having to hack monodoc after 
each update.

Kind Regards,
Valentin S.

On Friday 15 December 2006 01:52, you wrote:
> On Thu, 2006-12-14 at 19:13 +0100, latency wrote:
> > as I'm working pretty much with the System.Windows.Forms namespace I
> > thought it would be great to have it's documentation in the mondoc
> > browser.
> >
> > So I tried to run monodocer and generate the documentation but monodcer
> > fails and displays the following exception.
> >
> > Updating: System.Windows.Forms.TextBox
> > System.NullReferenceException: Object reference not set to an instance of
> > an object
> >   at CSharpFullMemberFormatter.AppendVisibility
> > (System.Text.StringBuilder buf, System.Reflection.MethodBase method)
> > [0x00000]
>
> You might try using monodocer from svn-HEAD.  There was a change on
> 2006-12-07 to AppendVisibility() which should avoid the
> NullReferenceException.
>
>  - Jon

_______________________________________________
Mono-docs-list maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-docs-list
Makefile (text/x-makefile, 14.4 KB)
# Makefile.in generated by automake 1.9.6 from Makefile.am.
# class/Makefile.  Generated from Makefile.in by configure.

# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005  Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.



srcdir = .
top_srcdir = ..

pkgdatadir = $(datadir)/monodoc
pkglibdir = $(libdir)/monodoc
pkgincludedir = $(includedir)/monodoc
top_builddir = ..
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = /usr/bin/install -c
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = i686-suse-linux
host_triplet = i686-suse-linux
target_triplet = i686-suse-linux
subdir = class
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.in
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
	$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
    *) f=$$p;; \
  esac;
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
am__installdirs = "$(DESTDIR)$(cserrors_sourcesdir)" \
	"$(DESTDIR)$(sourcesdir)"
cserrors_sourcesDATA_INSTALL = $(INSTALL_DATA)
sourcesDATA_INSTALL = $(INSTALL_DATA)
DATA = $(cserrors_sources_DATA) $(sources_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = ${SHELL} /home/latency/mono-dev-env/mono-svn/monodoc/missing --run aclocal-1.9
AMTAR = ${SHELL} /home/latency/mono-dev-env/mono-svn/monodoc/missing --run tar
API_VERSION = 1.0.0.0
AUTOCONF = ${SHELL} /home/latency/mono-dev-env/mono-svn/monodoc/missing --run autoconf
AUTOHEADER = ${SHELL} /home/latency/mono-dev-env/mono-svn/monodoc/missing --run autoheader
AUTOMAKE = ${SHELL} /home/latency/mono-dev-env/mono-svn/monodoc/missing --run automake-1.9
AWK = gawk
BUILD_CSERRORS_FALSE = #
BUILD_CSERRORS_TRUE = 
CSC = /usr/bin/mcs
CYGPATH_W = echo
DEFS = -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"monodoc\" -DVERSION=\"1.2.1\" 
ECHO_C = 
ECHO_N = -n
ECHO_T = 
GACUTIL = /usr/bin/gacutil
INSTALL_DATA = ${INSTALL} -m 644
INSTALL_PROGRAM = ${INSTALL}
INSTALL_SCRIPT = ${INSTALL}
INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s
LIBOBJS = 
LIBS = 
LTLIBOBJS = 
MAINT = 
MAINTAINER_MODE_FALSE = #
MAINTAINER_MODE_TRUE = 
MAKEINFO = ${SHELL} /home/latency/mono-dev-env/mono-svn/monodoc/missing --run makeinfo
PACKAGE = monodoc
PACKAGE_BUGREPORT = 
PACKAGE_NAME = 
PACKAGE_STRING = 
PACKAGE_TARNAME = 
PACKAGE_VERSION = 
PATH_SEPARATOR = :
RUNTIME = /usr/bin/mono
SET_MAKE = 
SHELL = /bin/sh
STRIP = 
USE_CYGPATH_FALSE = 
USE_CYGPATH_TRUE = #
VERSION = 1.2.1
ac_ct_STRIP = 
am__leading_dot = .
am__tar = ${AMTAR} chof - "$$tardir"
am__untar = ${AMTAR} xf -
bindir = ${exec_prefix}/bin
build = i686-suse-linux
build_alias = 
build_cpu = i686
build_os = linux
build_vendor = suse
datadir = ${prefix}/share
exec_prefix = ${prefix}
host = i686-suse-linux
host_alias = 
host_cpu = i686
host_os = linux
host_vendor = suse
includedir = ${prefix}/include
infodir = ${prefix}/info
install_sh = /home/latency/mono-dev-env/mono-svn/monodoc/install-sh
libdir = ${exec_prefix}/lib
libexecdir = ${exec_prefix}/libexec
localstatedir = ${prefix}/var
mandir = ${prefix}/man
mkdir_p = mkdir -p --
monodoc_refdir = ${exec_prefix}/lib/monodoc
monodocdir = ${exec_prefix}/lib/monodoc
oldincludedir = /usr/include
prefix = /home/lateecy/mono-dev-env/mono/monodoc
program_transform_name = s,x,x,
sbindir = ${exec_prefix}/sbin
sharedstatedir = ${prefix}/com
sysconfdir = ${prefix}/etc
target = i686-suse-linux
target_alias = 
target_cpu = i686
target_os = linux
target_vendor = suse
sourcesdir = $(libdir)/monodoc/sources
cserrors_sourcesdir = $(libdir)/monodoc/sources
sources_DATA = \
	ecma334.tree ecma334.zip ecma334.source 		\
	netdocs.tree netdocs.zip netdocs.source			\
	nunit-docs.tree nunit-docs.zip nunit-docs.source	\
	Mono.tree Mono.zip Mono.source 				\
	Novell.source Novell.zip Novell.tree

cserrors_sources_DATA = \
	cs-errors.tree cs-errors.zip cs-errors.source

ASSEMBLER = ../engine/assembler.exe
CLEANFILES = \
	ecma334.tree ecma334.zip 	\
	netdocs.tree netdocs.zip 	\
	nunit-docs.tree nunit-docs.zip 	\
	cs-errors.tree cs-errors.zip 	\
	Mono.tree Mono.zip 		\
	Novell.tree Novell.zip		\
	tmp 

EXTRA_DIST = \
	$(sources_DATA) $(cserrors_sources_DATA)

dirs = \
	corlib System System.Configuration.Install System.Data System.Design 	\
	System.Drawing System.Runtime.Remoting 					\
	System.Runtime.Serialization.Formatters.Soap System.Web 		\
	System.Web.Services System.Windows.Forms System.XML 			\
	nunit Mono.Cairo Mono.GetOptions Mono.Posix Mono.Security Mono.Security.Win32

UPDATE_DIRS = \
	System System.Configuration.Install System.Data System.Design 		\
	System.Drawing System.Runtime.Remoting 					\
	System.Runtime.Serialization.Formatters.Soap System.Web 		\
	System.Web.Services System.Windows.Forms Npgsql 			\
	Mono.Cairo Mono.GetOptions Mono.Posix Mono.Security Mono.Security.Win32

all: all-am

.SUFFIXES:
$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
	@for dep in $?; do \
	  case '$(am__configure_deps)' in \
	    *$$dep*) \
	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
		&& exit 0; \
	      exit 1;; \
	  esac; \
	done; \
	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  class/Makefile'; \
	cd $(top_srcdir) && \
	  $(AUTOMAKE) --gnu  class/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
	@case '$?' in \
	  *config.status*) \
	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
	  *) \
	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
	esac;

$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh

$(top_srcdir)/configure:  $(am__configure_deps)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
uninstall-info-am:
install-cserrors_sourcesDATA: $(cserrors_sources_DATA)
	@$(NORMAL_INSTALL)
	test -z "$(cserrors_sourcesdir)" || $(mkdir_p) "$(DESTDIR)$(cserrors_sourcesdir)"
	@list='$(cserrors_sources_DATA)'; for p in $$list; do \
	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
	  f=$(am__strip_dir) \
	  echo " $(cserrors_sourcesDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(cserrors_sourcesdir)/$$f'"; \
	  $(cserrors_sourcesDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(cserrors_sourcesdir)/$$f"; \
	done

uninstall-cserrors_sourcesDATA:
	@$(NORMAL_UNINSTALL)
	@list='$(cserrors_sources_DATA)'; for p in $$list; do \
	  f=$(am__strip_dir) \
	  echo " rm -f '$(DESTDIR)$(cserrors_sourcesdir)/$$f'"; \
	  rm -f "$(DESTDIR)$(cserrors_sourcesdir)/$$f"; \
	done
install-sourcesDATA: $(sources_DATA)
	@$(NORMAL_INSTALL)
	test -z "$(sourcesdir)" || $(mkdir_p) "$(DESTDIR)$(sourcesdir)"
	@list='$(sources_DATA)'; for p in $$list; do \
	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
	  f=$(am__strip_dir) \
	  echo " $(sourcesDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(sourcesdir)/$$f'"; \
	  $(sourcesDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(sourcesdir)/$$f"; \
	done

uninstall-sourcesDATA:
	@$(NORMAL_UNINSTALL)
	@list='$(sources_DATA)'; for p in $$list; do \
	  f=$(am__strip_dir) \
	  echo " rm -f '$(DESTDIR)$(sourcesdir)/$$f'"; \
	  rm -f "$(DESTDIR)$(sourcesdir)/$$f"; \
	done
tags: TAGS
TAGS:

ctags: CTAGS
CTAGS:


distdir: $(DISTFILES)
	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
	list='$(DISTFILES)'; for file in $$list; do \
	  case $$file in \
	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
	  esac; \
	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
	    dir="/$$dir"; \
	    $(mkdir_p) "$(distdir)$$dir"; \
	  else \
	    dir=''; \
	  fi; \
	  if test -d $$d/$$file; then \
	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
	    fi; \
	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
	  else \
	    test -f $(distdir)/$$file \
	    || cp -p $$d/$$file $(distdir)/$$file \
	    || exit 1; \
	  fi; \
	done
	$(MAKE) $(AM_MAKEFLAGS) \
	  top_distdir="$(top_distdir)" distdir="$(distdir)" \
	  dist-hook
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
	for dir in "$(DESTDIR)$(cserrors_sourcesdir)" "$(DESTDIR)$(sourcesdir)"; do \
	  test -z "$$dir" || $(mkdir_p) "$$dir"; \
	done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am

install-am: all-am
	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am

installcheck: installcheck-am
install-strip:
	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
	  `test -z '$(STRIP)' || \
	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:

clean-generic:
	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)

distclean-generic:
	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)

maintainer-clean-generic:
	@echo "This command is intended for maintainers to use"
	@echo "it deletes files that may require special tools to rebuild."
clean: clean-am

clean-am: clean-generic mostlyclean-am

distclean: distclean-am
	-rm -f Makefile
distclean-am: clean-am distclean-generic

dvi: dvi-am

dvi-am:

html: html-am

info: info-am

info-am:

install-data-am: install-cserrors_sourcesDATA install-sourcesDATA

install-exec-am:

install-info: install-info-am

install-man:

installcheck-am:

maintainer-clean: maintainer-clean-am
	-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic

mostlyclean: mostlyclean-am

mostlyclean-am: mostlyclean-generic

pdf: pdf-am

pdf-am:

ps: ps-am

ps-am:

uninstall-am: uninstall-cserrors_sourcesDATA uninstall-info-am \
	uninstall-sourcesDATA

.PHONY: all all-am check check-am clean clean-generic dist-hook \
	distclean distclean-generic distdir dvi dvi-am html html-am \
	info info-am install install-am install-cserrors_sourcesDATA \
	install-data install-data-am install-exec install-exec-am \
	install-info install-info-am install-man install-sourcesDATA \
	install-strip installcheck installcheck-am installdirs \
	maintainer-clean maintainer-clean-generic mostlyclean \
	mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
	uninstall-cserrors_sourcesDATA uninstall-info-am \
	uninstall-sourcesDATA


#
# Netdocs contains all the .NET Framework documentation
#
netdocs: netdocs.tree

netdocs.tree netdocs.zip: $(srcdir)/*/en/*/*.xml $(srcdir)/*/en/*.xml
	mono --debug $(ASSEMBLER) --ecma $(srcdir)/corlib/en/ --ecma $(srcdir)/System/en/  --ecma $(srcdir)/System.XML/en/ --ecma $(srcdir)/System.Web/en --ecma $(srcdir)/System.Web.Services/en --ecma $(srcdir)/System.Data/en --ecma $(srcdir)/System.DirectoryServices/en --ecma $(srcdir)/System.Drawing/en --ecma $(srcdir)/System.Security/en -o netdocs --ecma $(srcdir)/System.Windows.Forms/en 

#
# All the Mono.* namespaces go into a single package
#
Mono.tree Mono.zip: $(srcdir)/Mono.Cairo/en/*/*.xml  $(srcdir)/Mono.GetOptions/en/*/*.xml $(srcdir)/Mono.Posix/en/*/*.xml $(srcdir)/Mono.Security/en/*/*.xml $(srcdir)/Mono.Security.Win32/en/*/*.xml $(srcdir)/Commons.Xml.Relaxng/en/*/*.xml
	mono --debug $(ASSEMBLER) --ecma $(srcdir)/Mono.Cairo/en --ecma $(srcdir)/Mono.GetOptions/en --ecma $(srcdir)/Mono.Posix/en --ecma $(srcdir)/Mono.Security.Win32/en/ --ecma $(srcdir)/Mono.Security/en/ --ecma $(srcdir)/Commons.Xml.Relaxng/en/ -o Mono

#
# All the Novell namespaces we handle go into a single file (one for now).
#
Novell.tree Novell.zip: $(srcdir)/Novell.Directory.Ldap/en/*/*.xml
	mono --debug $(ASSEMBLER) --ecma $(srcdir)/Novell.Directory.Ldap/en/ -o Novell

#
# These are the NUnit documents, not sure why we have these, if NUnit is well documented
#
nunit-docs.tree nunit-docs.zip: $(srcdir)/nunit/en/*/*.xml $(srcdir)/nunit/en/*.xml
	mono --debug $(ASSEMBLER) --ecma $(srcdir)/nunit/en/ -o nunit-docs

#
# Generation of C# errors, from the mcs source tree
#
cs-errors.tree cs-errors.zip: $(srcdir)/cs-errors.config
	mono --debug $(ASSEMBLER) --error $(srcdir)/cs-errors.config -o cs-errors

#
# The ECMA C# specification, from Jon Jagger.
#
ecma334.tree ecma334.zip: $(srcdir)/../ecma334/*
	mono --debug $(ASSEMBLER) --ecmaspec $(srcdir)/../ecma334 -o ecma334

update:
	for i in $(UPDATE_DIRS); do \
		mono --debug ../generator/updater.exe /home/lateecy/mono-dev-env/mono/monodoc/lib/$$i.dll -o ./$$i/en || exit 1;	\
	done
	mono --debug ../generator/updater.exe /home/lateecy/mono-dev-env/mono/monodoc/lib/mscorlib.dll -o ./corlib/en -f
	mono --debug ../generator/updater.exe /home/lateecy/mono-dev-env/mono/monodoc/lib/System.Xml.dll -o ./System.XML/en -f
	mono --debug ../generator/updater.exe /usr/local/lib/System.Security.dll -o ./System.Security/en -f
	mono --debug ../generator/updater.exe /usr/local/lib/Mono.Security.dll -o ./Mono.Security/en -f
	mono --debug ../generator/updater.exe /usr/local/lib/Mono.Security.Win32.dll -o ./Mono.Security.Win32/en -f
	mono --debug ../generator/updater.exe /home/lateecy/mono-dev-env/mono/monodoc/lib/NUnit.Framework.dll -o ./nunit/en -f

dist-hook:
	find . -name '*.xml' > files
	tar cTf files - | (cd $(distdir); tar xf -)
	cp $(srcdir)/cs-errors.* $(distdir)
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: