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;4You 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 -hPlease report any problems with this executable to: dev@oooovms.dyndns.org.