1# $Id: nmake.opt,v 1.16 2006/03/23 14:54:01 dron Exp $
2#
3# Copyright (C) 2004, Andrey Kiselev <dron@ak4719.spb.edu>
4#
5# Permission to use, copy, modify, distribute, and sell this software and
6# its documentation for any purpose is hereby granted without fee, provided
7# that (i) the above copyright notices and this permission notice appear in
8# all copies of the software and related documentation, and (ii) the names of
9# Sam Leffler and Silicon Graphics may not be used in any advertising or
10# publicity relating to the software without the specific, prior written
11# permission of Sam Leffler and Silicon Graphics.
12#
13# THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
14# EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
15# WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
16#
17# IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
18# ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
19# OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
20# WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
21# LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
22# OF THIS SOFTWARE.
23
24# Compile time parameters for MS Visual C++ compiler.
25# You may edit this file to specify building options.
26
27#
28###### Edit the following lines to choose a feature set you need. #######
29#
30
31#
32# Select WINMODE_CONSOLE to build a library which reports errors to stderr, or
33# WINMODE_WINDOWED to build such that errors are reported via MessageBox().
34#
35WINMODE_CONSOLE = 1
36#WINMODE_WINDOWED = 1
37
38#
39# Comment out the following lines to disable internal codecs.
40#
41# Support for CCITT Group 3 & 4 algorithms
42CCITT_SUPPORT	= 1
43# Support for Macintosh PackBits algorithm
44PACKBITS_SUPPORT = 1
45# Support for LZW algorithm
46LZW_SUPPORT	= 1
47# Support for ThunderScan 4-bit RLE algorithm
48THUNDER_SUPPORT	= 1
49# Support for NeXT 2-bit RLE algorithm
50NEXT_SUPPORT	= 1
51# Support for LogLuv high dynamic range encoding
52LOGLUV_SUPPORT	= 1
53
54#
55# Uncomment and edit following lines to enable JPEG support.
56#
57#JPEG_SUPPORT	= 1
58#JPEGDIR 	= d:/projects/jpeg-6b
59#JPEG_INCLUDE	= -I$(JPEGDIR)
60#JPEG_LIB 	= $(JPEGDIR)/Release/jpeg.lib
61
62#
63# Uncomment following lines to enable Old JPEG support
64# (modified IJG JPEG library required, read the contrib\ojpeg\README first).
65#
66#OJPEG_SUPPORT = 1
67
68#
69# Uncomment and edit following lines to enable ZIP support
70# (required for Deflate compression and Pixar log-format)
71#
72#ZIP_SUPPORT	= 1
73#ZLIBDIR 	= d:/projects/zlib-1.2.1
74#ZLIB_INCLUDE	= -I$(ZLIBDIR)
75#ZLIB_LIB 	= $(ZLIBDIR)/zlib.lib
76
77#
78# Uncomment following line to enable Pixar log-format algorithm
79# (Zlib required).
80#
81#PIXARLOG_SUPPORT = 1
82
83#
84# Comment out the following lines to disable strip chopping
85# (whether or not to convert single-strip uncompressed images to mutiple
86# strips of specified size to reduce memory usage). Default strip size
87# is 8192 bytes, it can be configured via the STRIP_SIZE_DEFAULT parameter
88#
89STRIPCHOP_SUPPORT = 1
90STRIP_SIZE_DEFAULT = 8192
91
92#
93# Comment out the following lines to disable treating the fourth sample with
94# no EXTRASAMPLE_ value as being ASSOCALPHA. Many packages produce RGBA
95# files but don't mark the alpha properly.
96#
97EXTRASAMPLE_AS_ALPHA_SUPPORT = 1
98
99#
100# Comment out the following lines to disable picking up YCbCr subsampling
101# info from the JPEG data stream to support files lacking the tag.
102# See Bug 168 in Bugzilla, and JPEGFixupTestSubsampling() for details.
103#
104CHECK_JPEG_YCBCR_SUBSAMPLING = 1
105
106#
107####################### Compiler related options. #######################
108#
109
110#
111# Pick debug or optimized build flags.  We default to an optimized build
112# with no debugging information.
113# NOTE: /GX option required if you want to build the C++ stream API
114#
115OPTFLAGS =	/Ox /MD /GX /W3
116#OPTFLAGS = 	/Zi
117
118#
119# Uncomment following line to enable using Windows Common RunTime Library
120# instead of Windows specific system calls. See notes on top of tif_unix.c
121# module for details.
122#
123USE_WIN_CRT_LIB = 1
124
125# Compiler specific options. You may probably want to adjust compilation
126# parameters in CFLAGS variable. Refer to your compiler documentation
127# for the option reference.
128#
129MAKE	=	nmake /nologo
130CC	=	cl /nologo
131CXX	=	cl /nologo
132AR	=	lib /nologo
133LD	=	link /nologo
134
135CFLAGS  =	$(OPTFLAGS) $(INCL) $(EXTRAFLAGS)
136CXXFLAGS =	$(OPTFLAGS) $(INCL) $(EXTRAFLAGS)
137EXTRAFLAGS =
138LIBS	=
139
140# Name of the output shared library
141DLLNAME	= libtiff.dll
142
143#
144########### There is nothing to edit below this line normally. ###########
145#
146
147# Set the native cpu bit order
148EXTRAFLAGS	= -DFILLODER_LSB2MSB $(EXTRAFLAGS)
149
150!IFDEF WINMODE_WINDOWED
151EXTRAFLAGS	= -DTIF_PLATFORM_WINDOWED $(EXTRAFLAGS)
152LIBS		= user32.lib $(LIBS)
153!ELSE
154EXTRAFLAGS	= -DTIF_PLATFORM_CONSOLE $(EXTRAFLAGS)
155!ENDIF
156
157# Codec stuff
158!IFDEF CCITT_SUPPORT
159EXTRAFLAGS	= -DCCITT_SUPPORT $(EXTRAFLAGS)
160!ENDIF
161
162!IFDEF PACKBITS_SUPPORT
163EXTRAFLAGS	= -DPACKBITS_SUPPORT $(EXTRAFLAGS)
164!ENDIF
165
166!IFDEF LZW_SUPPORT
167EXTRAFLAGS	=  -DLZW_SUPPORT $(EXTRAFLAGS)
168!ENDIF
169
170!IFDEF THUNDER_SUPPORT
171EXTRAFLAGS	= -DTHUNDER_SUPPORT $(EXTRAFLAGS)
172!ENDIF
173
174!IFDEF NEXT_SUPPORT
175EXTRAFLAGS	= -DNEXT_SUPPORT $(EXTRAFLAGS)
176!ENDIF
177
178!IFDEF LOGLUV_SUPPORT
179EXTRAFLAGS	= -DLOGLUV_SUPPORT $(EXTRAFLAGS)
180!ENDIF
181
182!IFDEF JPEG_SUPPORT
183LIBS		= $(LIBS) $(JPEG_LIB)
184EXTRAFLAGS	= -DJPEG_SUPPORT $(EXTRAFLAGS)
185!IFDEF OJPEG_SUPPORT
186EXTRAFLAGS	= -DOJPEG_SUPPORT $(EXTRAFLAGS)
187!ENDIF
188!ENDIF
189
190!IFDEF ZIP_SUPPORT
191LIBS		= $(LIBS) $(ZLIB_LIB)
192EXTRAFLAGS	= -DZIP_SUPPORT $(EXTRAFLAGS)
193!IFDEF PIXARLOG_SUPPORT
194EXTRAFLAGS	= -DPIXARLOG_SUPPORT $(EXTRAFLAGS)
195!ENDIF
196!ENDIF
197
198!IFDEF STRIPCHOP_SUPPORT
199EXTRAFLAGS	= -DSTRIPCHOP_DEFAULT=TIFF_STRIPCHOP -DSTRIP_SIZE_DEFAULT=$(STRIP_SIZE_DEFAULT) $(EXTRAFLAGS)
200!ENDIF
201
202!IFDEF EXTRASAMPLE_AS_ALPHA_SUPPORT
203EXTRAFLAGS	= -DDEFAULT_EXTRASAMPLE_AS_ALPHA $(EXTRAFLAGS)
204!ENDIF
205
206!IFDEF CHECK_JPEG_YCBCR_SUBSAMPLING
207EXTRAFLAGS	= -DCHECK_JPEG_YCBCR_SUBSAMPLING $(EXTRAFLAGS)
208!ENDIF
209
210!IFDEF USE_WIN_CRT_LIB
211EXTRAFLAGS	= -DAVOID_WIN32_FILEIO $(EXTRAFLAGS)
212!ELSE
213EXTRAFLAGS	= -DUSE_WIN32_FILEIO $(EXTRAFLAGS)
214!ENDIF
215