blob: c23336741826c2f069fd4dc79fc1008fcd0d65ad [file] [log] [blame]
# -*- Makefile -*- for libiconv/src
#### Start of system configuration section. ####
# Flags that can be set on the nmake command line:
# DLL=1 for compiling a .dll with a stub .lib (default is a static .lib)
# Note that this works only with MFLAGS=-MD.
# MFLAGS={-ML|-MT|-MD} for defining the compilation model
# MFLAGS=-ML (the default) Single-threaded, statically linked - libc.lib
# MFLAGS=-MT Multi-threaded, statically linked - libcmt.lib
# MFLAGS=-MD Multi-threaded, dynamically linked - msvcrt.lib
# DEBUG=1 for compiling with debugging information
# NO_NLS=1 do not use Native Language Support
# PREFIX=Some\Directory Base directory for installation
# IIPREFIX=Some\\Directory Same thing with doubled backslashes
!if !defined(DLL)
DLL=0
!endif
!if !defined(DEBUG)
DEBUG=0
!endif
!if !defined(MFLAGS)
!if !$(DLL)
MFLAGS=
!else
MFLAGS=-MD
!endif
!endif
!if !defined(NO_NLS)
NO_NLS=0
!endif
!if !defined(PREFIX)
PREFIX = c:\usr
!endif
!if !defined(IIPREFIX)
IIPREFIX = c:\\usr
!endif
!if $(DEBUG)
OPTIMFLAGS = -Od -Z7
DEBUGFLAGS = -Z7
!else
# Some people prefer -O2 -G6 instead of -O1, but -O2 is not reliable in MSVC5.
OPTIMFLAGS = -D_NDEBUG -O1
DEBUGFLAGS =
!endif
# Set to -W3 if you want to see maximum amount of warnings, including stupid
# ones. Set to -W1 to avoid warnings about signed/unsigned combinations.
WARN_CFLAGS = -W1
!if $(NO_NLS)
NLSFLAGS =
INCINTL =
LIBINTL =
!else
NLSFLAGS = -DENABLE_NLS=1
INCINTL = -I$(includedir)
LIBINTL = $(libdir)\intl.lib
!endif
# Directories used by "make":
srcdir = .
# Directories used by "make install":
prefix = $(PREFIX)
exec_prefix = $(prefix)
bindir = $(exec_prefix)\bin
libdir = $(exec_prefix)\lib
includedir = $(prefix)\include
datadir = $(prefix)\share
localedir = $(datadir)\locale
IIprefix = $(IIPREFIX)
IIexec_prefix = $(IIprefix)
IIbindir = $(IIexec_prefix)\\bin
IIlibdir = $(IIexec_prefix)\\lib
IIincludedir = $(IIprefix)\\include
IIdatadir = $(IIprefix)\\share
IIlocaledir = $(IIdatadir)\\locale
# Programs used by "make":
CC = cl
CFLAGS = $(MFLAGS) $(WARN_CFLAGS) $(OPTIMFLAGS) $(NLSFLAGS) -DLOCALEDIR=\"$(IIlocaledir)\"
INCLUDES = -I. -I.. -I..\include -I..\srclib -I..\windows $(INCINTL)
RM = -del
# Programs used by "make install":
INSTALL = copy
INSTALL_PROGRAM = copy
INSTALL_DATA = copy
#### End of system configuration section. ####
SHELL = /bin/sh
all : iconv_no_i18n.exe iconv.exe
# This is the temporary iconv executable, without internationalization.
iconv_no_i18n.exe : $(srcdir)/iconv_no_i18n.c $(srcdir)/iconv.c ../srclib/icrt.lib ../lib/iconv.lib
$(CC) $(INCLUDES) -I..\lib $(CFLAGS) -DINSTALLPREFIX=\"$(IIprefix)\" -DINSTALLDIR=\"$(IIbindir)\" $(srcdir)/iconv_no_i18n.c ../srclib/icrt.lib ../lib/iconv.lib -Feiconv_no_i18n.exe
$(RM) iconv_no_i18n.obj
!if $(DLL)
copy ..\lib\iconv.dll iconv.dll
!endif
iconv.exe : $(srcdir)/iconv.c ../srclib/icrt.lib ../lib/iconv.lib
$(CC) $(INCLUDES) -I..\lib $(CFLAGS) -DINSTALLPREFIX=\"$(IIprefix)\" -DINSTALLDIR=\"$(IIbindir)\" $(srcdir)/iconv.c ../srclib/icrt.lib $(LIBINTL) ../lib/iconv.lib -Feiconv.exe
$(RM) iconv.obj
!if $(DLL)
copy ..\lib\iconv.dll iconv.dll
!endif
install : all force
-mkdir $(prefix)
-mkdir $(exec_prefix)
-mkdir $(bindir)
$(INSTALL_PROGRAM) iconv.exe $(bindir)\iconv.exe
installdirs : force
-mkdir $(prefix)
-mkdir $(exec_prefix)
-mkdir $(bindir)
uninstall : force
$(RM) $(bindir)\iconv.exe
check : all
mostlyclean : clean
clean : force
$(RM) *.obj
$(RM) *.dll
$(RM) *.exe
distclean : clean
maintainer-clean : distclean
force :