1 |
# -*- Mode: makefile -*- |
2 |
# |
3 |
# ***** BEGIN LICENSE BLOCK ***** |
4 |
# Version: MPL 1.1/GPL 2.0/LGPL 2.1 |
5 |
# |
6 |
# The contents of this file are subject to the Mozilla Public License Version |
7 |
# 1.1 (the "License"); you may not use this file except in compliance with |
8 |
# the License. You may obtain a copy of the License at |
9 |
# http://www.mozilla.org/MPL/ |
10 |
# |
11 |
# Software distributed under the License is distributed on an "AS IS" basis, |
12 |
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License |
13 |
# for the specific language governing rights and limitations under the |
14 |
# License. |
15 |
# |
16 |
# The Original Code is Mozilla Communicator client code, released |
17 |
# March 31, 1998. |
18 |
# |
19 |
# The Initial Developer of the Original Code is |
20 |
# Netscape Communications Corporation. |
21 |
# Portions created by the Initial Developer are Copyright (C) 1998 |
22 |
# the Initial Developer. All Rights Reserved. |
23 |
# |
24 |
# Contributor(s): |
25 |
# |
26 |
# Alternatively, the contents of this file may be used under the terms of |
27 |
# either the GNU General Public License Version 2 or later (the "GPL"), or |
28 |
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), |
29 |
# in which case the provisions of the GPL or the LGPL are applicable instead |
30 |
# of those above. If you wish to allow use of your version of this file only |
31 |
# under the terms of either the GPL or the LGPL, and not to allow others to |
32 |
# use your version of this file under the terms of the MPL, indicate your |
33 |
# decision by deleting the provisions above and replace them with the notice |
34 |
# and other provisions required by the GPL or the LGPL. If you do not delete |
35 |
# the provisions above, a recipient may use your version of this file under |
36 |
# the terms of any one of the MPL, the GPL or the LGPL. |
37 |
# |
38 |
# ***** END LICENSE BLOCK ***** |
39 |
|
40 |
# |
41 |
# Config for Windows NT using MS Visual C++ (version?) |
42 |
# |
43 |
|
44 |
CC = cl |
45 |
CXX = cl |
46 |
|
47 |
RANLIB = echo |
48 |
|
49 |
PDBFILE = $(basename $(@F)).pdb |
50 |
|
51 |
#.c.o: |
52 |
# $(CC) -c -MD $*.d $(CFLAGS) $< |
53 |
|
54 |
CPU_ARCH = x86 # XXX fixme |
55 |
GFX_ARCH = win32 |
56 |
|
57 |
# MSVC compiler options for both debug/optimize |
58 |
# -nologo - suppress copyright message |
59 |
# -W3 - Warning level 3 |
60 |
# -Gm - enable minimal rebuild |
61 |
# -Z7 - put debug info into the executable, not in .pdb file |
62 |
# -Zi - put debug info into .pdb file |
63 |
# -YX - automatic precompiled headers |
64 |
# -GX - enable C++ exception support |
65 |
WIN_CFLAGS = -nologo -W3 |
66 |
|
67 |
# MSVC compiler options for debug builds linked to MSVCRTD.DLL |
68 |
# -MDd - link with MSVCRTD.LIB (Dynamically-linked, multi-threaded, debug C-runtime) |
69 |
# -Od - minimal optimization |
70 |
WIN_IDG_CFLAGS = -MDd -Od -Z7 |
71 |
|
72 |
# MSVC compiler options for debug builds linked to MSVCRT.DLL |
73 |
# -MD - link with MSVCRT.LIB (Dynamically-linked, multi-threaded, debug C-runtime) |
74 |
# -Od - minimal optimization |
75 |
WIN_DEBUG_CFLAGS = -MD -Od -Zi -Fd$(OBJDIR)/$(PDBFILE) |
76 |
|
77 |
# MSVC compiler options for release (optimized) builds |
78 |
# -MD - link with MSVCRT.LIB (Dynamically-linked, multi-threaded, C-runtime) |
79 |
# -O2 - Optimize for speed |
80 |
# -G5 - Optimize for Pentium |
81 |
WIN_OPT_CFLAGS = -MD -O2 |
82 |
|
83 |
ifdef BUILD_OPT |
84 |
OPTIMIZER = $(WIN_OPT_CFLAGS) |
85 |
else |
86 |
ifdef BUILD_IDG |
87 |
OPTIMIZER = $(WIN_IDG_CFLAGS) |
88 |
else |
89 |
OPTIMIZER = $(WIN_DEBUG_CFLAGS) |
90 |
endif |
91 |
endif |
92 |
|
93 |
OS_CFLAGS = -D_X86_=1 -DXP_WIN -DXP_WIN32 -DWIN32 -D_WINDOWS -D_WIN32 -DWINVER=0x500 -D_WIN32_WINNT=0x500 $(WIN_CFLAGS) -DAVMPLUS_WIN32 -DAVMPLUS_IA32 |
94 |
JSDLL_CFLAGS = -DEXPORT_JS_API |
95 |
OS_LIBS = -lm -lc |
96 |
|
97 |
PREBUILT_CPUCFG = 1 |
98 |
USE_MSVC = 1 |
99 |
|
100 |
LIB_LINK_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\ |
101 |
advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib oldnames.lib \ |
102 |
winmm.lib \ |
103 |
-nologo\ |
104 |
-subsystem:windows -dll -debug -pdb:$(OBJDIR)/$(PDBFILE)\ |
105 |
-machine:I386\ |
106 |
-opt:ref -opt:noicf |
107 |
|
108 |
EXE_LINK_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\ |
109 |
advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib oldnames.lib -nologo\ |
110 |
-subsystem:console -debug -pdb:$(OBJDIR)/$(PDBFILE)\ |
111 |
-machine:I386\ |
112 |
-opt:ref -opt:noicf |
113 |
|
114 |
# CAFEDIR = t:/cafe |
115 |
# JCLASSPATH = $(CAFEDIR)/Java/Lib/classes.zip |
116 |
# JAVAC = $(CAFEDIR)/Bin/sj.exe |
117 |
# JAVAH = $(CAFEDIR)/Java/Bin/javah.exe |
118 |
# JCFLAGS = -I$(CAFEDIR)/Java/Include -I$(CAFEDIR)/Java/Include/win32 |