DMAKE installation instructions

DMAKE is the make tool used in the Openoffice suite. It can however be used wihout any other part of Openoffice. As such it can be tested and debugged.
You are invited to test this part of software and give us any feedback we can use to improve the quality of the software.

Use it at your own risc, because we cannot take responsebility for crashes, dumps or even worse: loosing data.

If you want to help us, you can find a usermanual at this location: http://tools.openoffice.org/tools/dmake.html

After you downloaded the executable, you have to setup the DMAKE environment.
You have to define a logical dmakeroot pointing to the DMAKE startup configuration files.
Define a logical OS as "OpenVMS".
Also define a symbol dmake as follows:

$ DEFINE DMAKEROOT "/star/dmake/startup"
$ DEFINE OS "OpenVMS"
$ dmake :== $star:[DMAKE]dmake.exe;4
You can follow everything DMAKE does if you invoke DMAKE with debugging flags. The following command lists all debugging flags, wich, as a result will generate a lot of output.
$!Test with dbug
$
$ dmake -#d,%,cell,dfa,dir,exp,inf,io,mac,make,mem,mod,name,par,pool,rul,stat,str,tc,tok:t:result:o,logfile.log  -vcdfimtw
$

original startup.mk from dmake/startup

# This is the root DMAKE startup file.
#
# Definitions common to all environments are given at the root.
# Definitions parameterized at the root have their parameters specified
# in sub-makefiles which are included based on the values of the three
# make variables:
#
#	OS		- core operating system flavour
#	OSRELEASE	- specific release of the operating system
#	OSENVIRONMENT	- software construction environment in use
# 
# See the file 'summary', found in this directory for a list of
# environments supported by this release.

# Disable warnings for macros given on the command line but redefined here.
__.silent !:= $(.SILENT)	# Preserve user's .SILENT flag
.SILENT   !:= yes

# startup.mk configuration parameters, for each, set it to non-null if you wish
# to enable the named facility.
__.HAVE_RCS  !:= yes 		# yes => RCS  is installed.
__.HAVE_SCCS !:=    		# yes => SCCS is installed.
__.DEFAULTS  !:= yes		# yes => define default construction rules.
__.EXECS     !:= yes            # yes => define how to build executables.

# Grab key definitions from the environment
.IMPORT .IGNORE : OS OSRELEASE OSENVIRONMENT TMPDIR SHELL

# Default DMAKE configuration, if not overriden by environment
.INCLUDE .NOINFER $(!null,$(OS) .IGNORE) : $(INCFILENAME:d)config.mk

# Look for a local defaults configuration
.INCLUDE .NOINFER .IGNORE : $(INCFILENAME:d)local.mk

# Define the directory separator string.
/ *=  $(DIRSEPSTR)

# Customize macro definitions based on setings of OS, OSRELEASE and
# OSENVIRONMENT, this must come before the default macro definitions which
# follow.
.INCLUDE .NOINFER .IGNORE : $(INCFILENAME:d)$(OS)$/macros.mk

# ----------------- Default Control Macro definitions -----------------------
# Select appropriate defaults for basic macros
   MAKE          *=  $(MAKECMD) -S $(MFLAGS)
   TMPDIR        *:= $/tmp
   DIVFILE       *=  $(TMPFILE)
   AUGMAKE       *:= no

# Recipe execution configuration
   SHELL	 *:= $/bin$/sh
   SHELLFLAGS	 *:= -ce
   GROUPSHELL	 *:= $(SHELL)
   GROUPFLAGS	 *:= 
   SHELLMETAS	 *:= |();&<>?*][$$:\\#`'"
   GROUPSUFFIX	 *:=

# Intermediate target removal configuration
   RM            *:= $/bin$/rm
   RMFLAGS       *=  -f
   RMTARGET      *=  $<

# Default recipe that is used to remove intermediate targets.
.REMOVE :; $(RM) $(RMFLAGS) $(RMTARGET)

# Check and enable AUGMAKE extensions for SYSV compatibility
.IF $(AUGMAKE)
   "@B" != $(@:b)
   "@D" != $(@:d)
   "@F" != $(@:f)
   "*B" != $(*:b)
   "*D" != $(*:d)
   "*F" != $(*:f)
   "


We don't know what should be in the startup file. Our first
version of this file is as follows. If you can help us find
the correct settings in this file, please help us and mail
us your suggestions. We certainly will appreciate it!

# This is the root DMAKE startup file.
#
# Definitions common to all environments are given at the root.
# Definitions parameterized at the root have their parameters specified
# in sub-makefiles which are included based on the values of the three
# make variables:
#
#	OS		- core operating system flavour
#	OSRELEASE	- specific release of the operating system
#	OSENVIRONMENT	- software construction environment in use
# 
# See the file 'summary', found in this directory for a list of
# environments supported by this release.

# Disable warnings for macros given on the command line but redefined here.
__.silent !:= $(.SILENT)	# Preserve user's .SILENT flag
.SILENT   !:= yes

# startup.mk configuration parameters, for each, set it to non-null if you wish
# to enable the named facility.
.IF $(OS) == OpenVMS
__.HAVE_RCS  !:= 		# yes => RCS  is installed.
.ELSE
__.HAVE_RCS  !:= yes 		# yes => RCS  is installed.
.ENDIF

__.HAVE_SCCS !:=    		# yes => SCCS is installed.
__.DEFAULTS  !:= yes		# yes => define default construction rules.
__.EXECS     !:= yes            # yes => define how to build executables.

# Grab key definitions from the environment
.IMPORT .IGNORE : OS OSRELEASE OSENVIRONMENT TMPDIR SHELL

# Default DMAKE configuration, if not overriden by environment
.INCLUDE .NOINFER $(!null,$(OS) .IGNORE) : $(INCFILENAME:d)config.mk

# Look for a local defaults configuration
.INCLUDE .NOINFER .IGNORE : $(INCFILENAME:d)local.mk

# Define the directory separator string.
/ *=  $(DIRSEPSTR)

# Customize macro definitions based on setings of OS, OSRELEASE and
# OSENVIRONMENT, this must come before the default macro definitions which
# follow.
.INCLUDE .NOINFER .IGNORE : $(INCFILENAME:d)$(OS)$/macros.mk

# ----------------- Default Control Macro definitions -----------------------
# Select appropriate defaults for basic macros
   MAKE          *=  $(MAKECMD) -S $(MFLAGS)
   TMPDIR        *:= $/tmp
   DIVFILE       *=  $(TMPFILE)
   AUGMAKE       *:= no

# Recipe execution configuration
   SHELL	 *:= $/bin$/bash
.IF $(OS) == vms
   SHELLFLAGS	 *:= -c
.ELSE
   SHELLFLAGS	 *:= -ce
.ENDIF
   GROUPSHELL	 *:= $(SHELL)
   GROUPFLAGS	 *:= 
   SHELLMETAS	 *:= |();&<>?*][$$:\\#`'"
   GROUPSUFFIX	 *:=

# Intermediate target removal configuration
   RM            *:= $/bin$/rm
   RMFLAGS       *=  -f
   RMTARGET      *=  $<

# Default recipe that is used to remove intermediate targets.
.REMOVE :; $(RM) $(RMFLAGS) $(RMTARGET)

# Check and enable AUGMAKE extensions for SYSV compatibility
.IF $(AUGMAKE)
   "@B" != $(@:b)
   "@D" != $(@:d)
   "@F" != $(@:f)
   "*B" != $(*:b)
   "*D" != $(*:d)
   "*F" != $(*:f)
   "

After this you can use dmake. Please remember that due to the some limitations
you can use only a single compile stream.



To get online help type:

$ dmake -h
Please report any problems with this executable to: dev@oooovms.dyndns.org.


Index
Klein 'Powered by Apache' Logotje