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