# NMAKE Makefile (Window NT/95/98) for exwise
# A. de Quincey 1998
# based on:

# NMAKE Makefile for Windows NT/Windows 95
#   D. Feinleib 7/92 <t-davefe@microsoft.com>
#   H. Gessau 9/93 <henryg@kullmar.kullmar.se>
#   J. Lee 8/95 (johnnyl@microsoft.com)
#
# Last revised:  9 Mar 97
#
# Tested with VC++ 2.0 for NT for MIPS and Alpha, Visual C++ 2.2 for 
# Intel CPUs
#	


# Nmake macros for building Windows NT applications
# To build with debug info use 'nmake debug=1'
!IFNDEF debug
NODEBUG=1
!ENDIF

!IF "$(CPU)" == ""  &&  "$(PROCESSOR_ARCHITECTURE)" == "x86"
CPU = i386
!ENDIF
!IF "$(CPU)" == ""  &&  "$(PROCESSOR_ARCHITECTURE)" == "MIPS"
CPU = $(PROCESSOR_ARCHITECTURE)
!ENDIF
!IF "$(CPU)" == ""  &&  "$(PROCESSOR_ARCHITECTURE)" == "ALPHA"
CPU = $(PROCESSOR_ARCHITECTURE)
!ENDIF
!IF "$(CPU)" == ""  &&  "$(PROCESSOR_ARCHITECTURE)" == "PPC"
CPU = $(PROCESSOR_ARCHITECTURE)
!ENDIF
!IF "$(CPU)" == ""
CPU = i386
!ENDIF

!include <ntwin32.mak>

# object files
OBJF  = exwise.obj crc32.obj cryptf.obj globalsf.obj inflatef.obj ttyiof.obj

UNZIP_H = unzip.h unzpriv.h globals.h win32/w32cfg.h

cvars = $(cvars) -nologo -DNO_ASM -J

# USER32.LIB is needed for OemToChar and related routines
conlibs=$(conlibs) user32.lib

# Some optimization (if not debugging)
# [GRR 950816:  Steve suggests changing optimization flags to -O2, except for
#  UnZipSFX (-01)]
!IFDEF NODEBUG
!IF "$(CPU)" == "i386"
cdebug = -Ogityb2
!ELSE
cdebug = -Ogitb2
!ENDIF
!ENDIF

# How to compile sources
.c.obj:
	$(cc) $(cdebug) $(cflags) $(cvars) $<

# How to link
.obj.exe:
   $(link) $(ldebug) $(conflags) $(conlibs) $** -out:$@


# Default target is all the executables
all : exwise.exe


exwise.exe:	$(OBJF)


exwise.obj:	exwise.c $(UNZIP_H) crypt.h ttyio.h tables.h
crc32.obj:  crc32.c $(UNZIP_H) zip.h
cryptf.obj:	crypt.c $(UNZIP_H) zip.h crypt.h ttyio.h	# funzip only
	$(cc) $(cdebug) $(cflags) $(cvars) -DFUNZIP crypt.c -Fo$@
globalsf.obj:	globals.c $(UNZIP_H)				# funzip only
	$(cc) $(cdebug) $(cflags) $(cvars) -DFUNZIP globals.c -Fo$@
inflatef.obj:	inflate.c inflate.h $(UNZIP_H) crypt.h		# funzip only
	$(cc) $(cdebug) $(cflags) $(cvars) -DFUNZIP inflate.c -Fo$@
ttyiof.obj:	ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h	# funzip only
	$(cc) $(cdebug) $(cflags) $(cvars) -DFUNZIP ttyio.c -Fo$@

clean:
	del /q $(OBJF) exwise.exe 

