1 #############################################################################
3 # SciTech Multi-platform Graphics Library
5 # ========================================================================
7 # The contents of this file are subject to the SciTech MGL Public
8 # License Version 1.0 (the "License"); you may not use this file
9 # except in compliance with the License. You may obtain a copy of
10 # the License at http://www.scitechsoft.com/mgl-license.txt
12 # Software distributed under the License is distributed on an
13 # "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
14 # implied. See the License for the specific language governing
15 # rights and limitations under the License.
17 # The Original Code is Copyright (C) 1991-1998 SciTech Software, Inc.
19 # The Initial Developer of the Original Code is SciTech Software, Inc.
20 # All Rights Reserved.
22 # ========================================================================
24 # Descripton: Generic DMAKE startup makefile definitions file. Assumes
25 # that the SCITECH environment variable has been set to point
26 # to where all our stuff is installed. You should not need
27 # to change anything in this file.
29 # Common startup script that defines all variables common to
30 # all startup scripts. These define the DMAKE runtime
31 # environment and the values are dependant on the version of
34 #############################################################################
36 # Disable warnings for macros redefined here that were given
37 # on the command line.
38 __.SILENT
:= $(.SILENT
)
41 # Import enivornment variables that we use common to all compilers
42 .IMPORT .IGNORE
: TEMP SHELL COMSPEC INCLUDE LIB SCITECH PRIVATE SCITECH_LIB
43 .IMPORT .IGNORE
: DBG OPT OPT_SIZE SHW BETA USE_WIN32 FPU BUILD_DLL BUILD_FOR_DLL
44 .IMPORT .IGNORE
: IMPORT_DLL USE_TASMX WIN32_GUI USE_WIN16 USE_NASM CHECKED
45 .IMPORT .IGNORE
: OS2_SHELL SOFTICE_PATH MAX_WARN USE_SOFTICE USE_TASM32
46 .IMPORT .IGNORE
: DLL_START_TASM USE_SNAP USE_X11 USE_LINUX STATIC_LIBS LIBC
47 .IMPORT .IGNORE
: SHOW_ARGS BOOT_STRAP_DMAKE
50 # Determine if the host machine is a Windows/DOS or Unix box
58 # Setup to either user NASM or TASM as the assembler
65 # Standard file suffix definitions
67 # NOTE: Linux/Unix does not require any extenion for executeable files, but you
68 # can use an extension if you wish. We use the .exe extension for building
69 # executeable files so that we can use implicit rules to make the
70 # makefiles simpler and more portable between systems (exe also makes it
71 # easier for cross-compile/debugging situations). When you install
72 # the files to a local bin directory, you will probably want to remove
75 E
:= .exe
# Executables for glibc
77 A
:= .asm
# Assembler sources
78 S
:= .s
# GNU assembler sources
79 P
:= .
cpp # C++ sources
81 # File prefix/suffix definitions. The following prefixes are defined, and are
82 # used primarily to abstract between the Unix style libXX.a naming convention
83 # and the DOS/Windows/OS2 naming convention of XX.lib.
84 LP
:= lib
# LP - Library file prefix (name of file on disk)
85 LL
:= -l
# Library link prefix (name of library on link command line)
86 LE
:= # Library link suffix (extension of library on link command line)
88 # We use the Unix shell at all times
93 # Standard file DOS/Win/OS2 suffix definitions
96 E
:= .sxe
# Snap Executables
97 D
:= .sll
# Snap Dynamic Link Library file
99 E
:= .exe
# Executables
100 D
:= .dll
# Dynamic Link Library file
103 A
:= .asm
# Assembler sources
104 P
:= .
cpp # C++ sources
105 R
:= .res
# Compiled resource file
106 S
:= .s
# Assyntax.h style assembler
108 # File prefix/suffix definitions. The following prefixes are defined, and are
109 # used primarily to abstract between the Unix style libXX.a naming convention
110 # and the DOS/Windows/OS2 naming convention of XX.lib.
111 LP
:= # LP - Library file prefix (name of file on disk)
112 LL
:= # Library link prefix (name of library on link command line)
113 LE
:= .lib
# Library link suffix (extension of library on link command line)
115 # We use the DOS/Win/OS2 style shell at all times
117 GROUPSHELL
:= $(SHELL
)
118 SHELLFLAGS
:= $(SWITCHAR
)c
119 GROUPFLAGS
:= $(SHELLFLAGS
)
127 DIVFILE = $(TMPFILE:s,/,\)
131 # Standard Unix style shell commands. Since these do not exist on
132 # regular DOS/Win/OS2 installations we use our own '' versions
133 # instead. To boostrtap a new OS you may wish to use the regular
136 .IF $(BOOT_STRAP_DMAKE)
148 # Definition of $(MAKE) macro for recursive makes.
149 MAKE = $(MAKECMD) $(MFLAGS)
151 # Macro to install a library file
154 # DMAKE uses this recipe to remove intermediate targets
155 .REMOVE :; $(RM) -f $<
157 # Turn warnings back to previous setting.
158 .SILENT := $(__.SILENT)
160 # We dont use TABS in our makefiles