# 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 # The variables OS OSRELEASE OSENVIRONMENT were removed from this # list because of windows. See issue 43254 for details. .IMPORT .IGNORE : 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. # !!!! BEWARE - patch by KMX: # !!!! here comes an ugly hack necessary for dmake to work fine with Win32/strawberry perl # !!!! the orifinal line was: .REMOVE :; $(RM) $(RMFLAGS) $(RMTARGET) .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) "