Commit ee8333a5 authored by Dimitri van Heesch's avatar Dimitri van Heesch
Browse files

mods for doxygen-0.49-990829

parent 6aa7383e
Loading
Loading
Loading
Loading
+67 −48
Original line number Original line Diff line number Diff line
DOXYGEN Version 0.49-990728
DOXYGEN Version 0.49-990829

CONTENTS
--------
  - Installation instructions for UNIX
  - Installation instructions for Windows
  - Known configuration problems:
      * HTML related problems
      * LaTeX related problems
      * HP-UX / Digital UNIX problems


INSTALLATION INSTRUCTIONS FOR UNIX:
INSTALLATION INSTRUCTIONS FOR UNIX:
-----------------------------------
-----------------------------------


1.  Unpack the archive, unless you already have:
1.  Unpack the archive, unless you already have:
   
   
    gunzip doxygen-0.49-990728.src.tar.gz    # uncompress the archive
    gunzip doxygen-0.49-990829.src.tar.gz    # uncompress the archive
    tar xf doxygen-0.49-990728.src.tar       # unpack it
    tar xf doxygen-0.49-990829.src.tar       # unpack it

2.  Make sure Qt is installed properly (check the environment variable $QTDIR)


    Note: on some systems (like FreeBSD) it is possible that qt is not
2.  Run the configure script:
    installed in one single directory. In this case I suggest to create a 
    local qt directory to which the QTDIR variable should point. Then
    create two links in that directory like this:
      ln -s <location_of_the_qt_includes> include
      ln -s <location_of_the_qt_libs> lib
 
 
3.  Look at the first two entries of Makefile.config and modify them if needed.
    sh ./configure
    Note: Doxygen requires GNU make to build. On some systems this is 
    known as gmake. If you have such a system, you must edit Makefile.config
    and replace make by gmake in rest of this document.


4.  Compile the program.
    The script tries to determine the platform you use, the location
    of the Qt library, the make tool and the perl interpreter.
    It will report what it finds. Use configure --help 
    to see how to override or change the default settings.


    Type:
3.  Compile the program by running make:


    make
    make


    You'll see a list of all supported platforms/compiler combinations.
    
    To build for the Linux platform with g++ as the compiler for example, type:
 
      make linux-g++

    The program should compile without problems and three binaries (doxygen,
    The program should compile without problems and three binaries (doxygen,
    doxytag, and doxysearch) should be available in the bin directory of the 
    doxytag, and doxysearch) should be available in the bin directory of the 
    distribution.
    distribution.


5.  Generate the user manual.
5.  Generate the user manual.
    
    
    type:
   
    make docs
    make docs


    to let doxygen generate the HTML and LaTeX documentation.
    to let doxygen generate the HTML and LaTeX documentation.
    (you will need the stream editor `sed' for this)
    (you will need the stream editor `sed' for this)


    type:
   
    make ps
    make ps


    to generate a postscript version of the manual. 
    to generate a postscript version of the manual. 
@@ -65,27 +57,40 @@ INSTALLATION INSTRUCTIONS FOR UNIX:
INSTALLATION INSTRUCTIONS FOR WINDOWS:
INSTALLATION INSTRUCTIONS FOR WINDOWS:
--------------------------------------
--------------------------------------


Currently, only Microsoft Visual C++ version 5.0 is supported. For other
Currently, only Microsoft Visual C++ (version 5.0) is supported. 
platforms you may need to edit the Makefiles a bit. Let me know what you
(For other platforms you may need to edit the perl script in wintools/make.pl
had to change if you got Doxygen working with another windows compiler. 
a bit). Let me know what you had to change if you got Doxygen working with 
another windows compiler. 


You will need to install the windows/dos versions of following tools:
You will need to install the windows/dos versions of following tools:
- Perl 5.0+
- Perl 5.0+
- flex (you can use the DJGPP version)
  You can download it at: http://www.ActiveState.com/pw32/
- bison (you can use the DJGPP version, but you need to copy 
- the GNU tools flex, bison and sed.
         lib\bison.sim to c:\djgpp\lib\bison.simple and
  To get these working on Windows you can install the cygwin tools.
         lib\bison.hai to c:\djgpp\lib\bison.hairy.
  You can download them at: http://sourceware.cygnus.com/cygwin/
         The paths seem to be hardcoded in the executable)
  Make sure the BISONLIB environment variable points to the
- Qt (Hint: only the tools section is required, so you can use the free 
  location where bison.simple and bison.hairy are located.
- Qt-1.xx (Qt-2.xx should also work, but I didn't test it for Windows) 
  (Hint: only the tools section is required, so you can use the free 
   X-windows version as well!)
   X-windows version as well!)
- Microsoft Visual C++ version 5.0, use the vcvars32.bat to set the environment
- Microsoft Visual C++ (I only tested with version 5.0).
  variables.
  Use the vcvars32.bat to set the environment variables 
  (if not selected to do this automatically during installation).
- To generate LaTeX documentation or formulas in HTML you need the tools: 
  latex, dvips and gswin32 
  To get these working under Windows install the fpTeX distribution
  You can download it at: 
     ftp://ctan.tug.org/tex-archive/systems/win32/web2c/fptex-0.3/
- If you want to generate compressed HTML help (see GENERATE_HTMLHELP in the 
  config file), then you need the Microsoft HTML help workshop. 
  You can download it at: http://msdn.microsoft.com/workshop/author/htmlhelp
- If you used WinZip to extract the tar archive it will (apparently) not 
- If you used WinZip to extract the tar archive it will (apparently) not 
  create empty folders, so you have to add the folders
  create empty folders, so you have to add the folders
  `objects' and `bin' manually in the root of the distribution before 
  `objects' and `bin' manually in the root of the distribution before 
  compiling.
  compiling.


Make sure all tools are accessible from the command-line.
Make sure all tools are accessible from the command-line (add them to the
PATH environment if needed).


Open a dos box, goto the doxygen root dir and type:
Open a dos box, goto the doxygen root dir and type:


@@ -96,23 +101,37 @@ This should build the executables doxygen.exe, doxytag.exe, and doxysearch.exe


To build the examples type:
To build the examples type:


nmake -f Makefile.windows examples
nmake examples

To generate the HTML documentation type:

nmake docs

The generated docs are located in the html directory.
To generate the postscript manual type:

nmake ps

The manual should now be here latex/doxygen_manual.ps


-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
KNOWN CONFIGURATION PROBLEMS
KNOWN CONFIGURATION PROBLEMS


QT RELATED PROBLEMS:
- Qt-2.01 contains a bug that 


HTML RELATED PROBLEMS:
HTML RELATED PROBLEMS:
- the indent continuously increases.
- the indent continuously increases.
  This seems to be a problem that can be observed with Netscape 4.01.
  This seems to be a problem that can be observed with Netscape 4.01.
  It is not present in many later and earlier versions I tested.
  It is not present in many later and earlier versions I tested.


LATEX RELATED PROBLEMS:
LATEX RELATED PROBLEMS:

- the LaTeX translation of HTML tables doesn't seem to work for all 
- the LaTeX translation of HTML tables doesn't seem to work for all 
  compilers. It is known to work for teTeX (versions 0.4 and 0.9)
  compilers. It is known to work for teTeX (versions 0.4 and 0.9)
- the file a4wide.sty is not available for all distributions. If
- the file a4wide.sty is not available for all distributions. If
  your distribution does not have it please select another paper type
  your distribution does not have it please select another paper type
  in the config file (see PAPER_TYPE)
  in the config file (see the PAPER_TYPE tag in the config file)
- the file fancyheader.sty is known as fancyhdr.sty on some systems.
- the file fancyheader.sty is known as fancyhdr.sty on some systems.
  Please change that in src/latexgen.cpp
  Please change that in src/latexgen.cpp


@@ -154,4 +173,4 @@ The latest version of doxygen can be obtained at


Enjoy,
Enjoy,


Dimitri van Heesch (30 July 1999)
Dimitri van Heesch (29 August 1999)

Makefile

deleted100644 → 0
+0 −183
Original line number Original line Diff line number Diff line
# this Makefile need GNU make

include Makefile.config

variables: Makefile
	@echo
	@echo "Select one of the following targets:"
	@echo
	@echo "aix-g++          aix-xlc        "
	@echo "dgux-g++         freebsd-g++    "
	@echo "gnu-g++          hpux-acc       "
	@echo "hpux-cc          hpux-g++       "
	@echo "irix-64          irix-dcc       "
	@echo "irix-g++         irix-n32       "
	@echo "linux-g++        netbsd-g++     "
	@echo "openbsd-g++      osf1-cxx       "
	@echo "osf1-g++         qnx-g++        "
	@echo "sco-g++          solaris-cc     "
	@echo "solaris-g++      sunos-g++      "
	@echo "ultrix-g++       unixware-g++   "
	@echo 
	@echo "Make any of them to build Doxygen."
	@echo "Make will now abort with an error."
	@exit 1

aix-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/aix-g++ \
	$(MAKE)

aix-xlc: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/aix-xlc \
	$(MAKE)

dgux-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/dgux-g++ \
	$(MAKE)

gnu-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/gnu-g++ \
	$(MAKE)

freebsd-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/freebsd-g++ \
	$(MAKE)

hpux-acc: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/hpux-acc \
	$(MAKE)

hpux-cc: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/hpux-cc \
	$(MAKE)

hpux-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/hpux-g++ \
	$(MAKE)

irix-64: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/irix-64 \
	$(MAKE)

irix-dcc: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/irix-dcc \
	$(MAKE)

irix-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/irix-g++ \
	$(MAKE)

irix-n32: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/irix-n32 \
	$(MAKE)

linux-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/linux-g++ \
	$(MAKE)

netbsd-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/netbsd-g++ \
	$(MAKE)

openbsd-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/openbsd-g++ \
	$(MAKE)

osf1-cxx: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/osf1-cxx \
	$(MAKE)

osf1-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/osf1-g++ \
	$(MAKE)

qnx-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/qnx-g++ \
	$(MAKE)

sco-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/sco-g++ \
	$(MAKE)

solaris-cc: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/solaris-cc \
	$(MAKE)

solaris-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/solaris-g++ \
	$(MAKE)

sunos-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/sunos-g++ \
	$(MAKE)

ultrix-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/ultrix-g++ \
	$(MAKE)

unixware-g++: src/version.cpp
	cd src; \
	TMAKEPATH=../tmake/lib/unixware-g++ \
	$(MAKE)


clean: FORCE
	cd examples ; $(MAKE) clean
	cd doc ; $(MAKE) clean
	-rm -f  src/scanner.cpp \
		src/code.cpp \
		src/config.cpp \
		src/pre.cpp \
		src/tag.cpp \
		src/ce_lex.cpp \
		src/ce_parse.cpp \
		src/ce_parse.h \
		src/doxytag.cpp \
		src/declinfo.cpp \
		src/defargs.cpp \
		src/Makefile.doxygen \
		src/Makefile.doxytag \
		src/Makefile.doxysearch \
		src/version.cpp
	-rm -f bin/doxy*
	-rm -f objects/*.o

docs: FORCE
	cd examples ; $(MAKE)
	cd doc ; $(MAKE)

ps: docs
	cd latex ; $(MAKE)

archive: clean
	$(TAR) zcvf backup/dx`date +%y%m%d`.tgz tmake doc examples bin objects \
	       src Makefile Makefile.windows INSTALL make.bat Makefile.config \
	       LANGUAGE.HOWTO LICENSE

src/version.cpp: FORCE
	echo "char versionString[]=\"$(VERSION)\";" > src/version.cpp

FORCE:

Makefile.config

deleted100644 → 0
+0 −12
Original line number Original line Diff line number Diff line
# name (and path if needed) of the make tool to use
# note that make must really be GNU make, not BSD or some other make
MAKE    = make  

# name (and path if needed) of the perl interpreter
# note that it must be version 5 or higher (check with perl -v)
PERL    = perl  

# The values below should probably be left unmodified
TAR     = tar   # name of the GNU tar tool
TMAKE   = ../tmake/bin/tmake
VERSION = 0.49-990728

Makefile.in

0 → 100644
+34 −0
Original line number Original line Diff line number Diff line
all: src/version.cpp
	cd src ; $(MAKE)

clean: FORCE
	cd examples ; $(MAKE) clean
	cd doc ; $(MAKE) clean
	cd src ; $(MAKE) clean
	-rm -f bin/doxy*
	-rm -f objects/*.o

distclean: clean
	-rm -f src/Makefile.doxygen \
	       src/Makefile.doxytag \
	       src/Makefile.doxysearch
	-rm -f Makefile src/Makefile examples/Makefile doc/Makefile
	-rm -f src/doxygen.pro src/doxytag.pro src/doxysearch.pro
	-rm -f src/version.cpp

docs: FORCE
	cd examples ; $(MAKE)
	cd doc ; $(MAKE)

ps: docs
	cd latex ; $(MAKE)

archive: distclean
	tar zcvf dx`date +%y%m%d`.tgz tmake doc wintools examples bin objects \
	       src configure Makefile.in Makefile.win.in INSTALL make.bat \
	       LANGUAGE.HOWTO LICENSE PLATFORMS VERSION

src/version.cpp: Makefile
	echo "char versionString[]=\"$(VERSION)\";" > src/version.cpp

FORCE:

Makefile.win.in

0 → 100644
+42 −0
Original line number Original line Diff line number Diff line
all: src\version.cpp
	set TMAKEPATH=$(TMAKEPATH)
	cd src 
	$(MAKE)

clean: FORCE
	cd examples
	$(MAKE) clean
	cd ..
	cd doc
	$(MAKE) clean
	cd ..
	cd src
	$(MAKE) clean
	cd ..
	-del bin\doxy*.*
	-del objects\*.o

distclean: clean
	-del src\Makefile.doxygen \
	     src\Makefile.doxytag \
	     src\Makefile.doxysearch
	-del Makefile src\Makefile examples\Makefile doc\Makefile
	-del src\doxygen.pro src\doxytag.pro src\doxysearch.pro
	-del src\version.cpp

docs: FORCE
	cd examples 
	$(MAKE)
	cd ..
	cd doc
	$(MAKE)
	cd ..

ps: docs
	cd latex
	$(MAKE)

src\version.cpp: Makefile
	echo char versionString[]="$(VERSION)"; > src\version.cpp

FORCE:
Loading