# -*- Makefile -*- for libcharset/lib #### 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 # PREFIX=Some\Directory Base directory for installation # Note that nmake command line flags are automatically passed to subdirectory # Makefiles. Therefore we don't need to pass them explicitly to subdirectory # Makefiles, but the subdirectory Makefiles need to have the same defaults. !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(PREFIX) PREFIX = c:\usr !endif !if !defined(IIPREFIX) IIPREFIX = c:\\usr !endif # Directories used by "make": srcdir = . # Directories used by "make install": prefix = $(PREFIX) exec_prefix = $(prefix) bindir = $(exec_prefix)\bin libdir = $(exec_prefix)\lib IIprefix = $(IIPREFIX) IIexec_prefix = $(IIprefix) IIbindir = $(IIexec_prefix)\\bin IIlibdir = $(IIexec_prefix)\\lib # Programs used by "make": CC = cl # 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 !$(DLL) PICFLAGS = !else # "-GD" (msvc5) optimizes for DLL. # mscv4 doesn't know about this flag and ignores it. # -DBUILDING_LIBCHARSET: Change expansion of LIBCHARSET_DLL_EXPORTED macro. # -DBUILDING_DLL: Change expansion of RELOCATABLE_DLL_EXPORTED macro. PICFLAGS = -GD -DBUILDING_LIBCHARSET -DBUILDING_DLL -DPIC !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 CFLAGS = $(MFLAGS) $(WARN_CFLAGS) $(OPTIMFLAGS) -DHAVE_CONFIG_H -DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLPREFIX=\"$(IIprefix)\" -DINSTALLDIR=\"$(IIbindir)\" -DNO_XMALLOC -Dset_relocation_prefix=libcharset_set_relocation_prefix -Drelocate=libcharset_relocate INCLUDES = -I. -I.. -I..\include AR = lib AR_FLAGS = /out: LN = copy RM = -del # Programs used by "make install": INSTALL = copy INSTALL_PROGRAM = copy INSTALL_DATA = copy #### End of system configuration section. #### SHELL = /bin/sh OBJECTS = localcharset.obj relocatable.obj RESOURCES = charset.res all : charset.lib localcharset.obj : $(srcdir)/localcharset.c $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c $(srcdir)/localcharset.c relocatable.obj : $(srcdir)/relocatable.c $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c $(srcdir)/relocatable.c !if !$(DLL) charset.lib : $(OBJECTS) -$(RM) charset.lib $(AR) $(AR_FLAGS)charset.lib $(OBJECTS) !else # charset.dll and charset.lib are created together. charset.lib : $(OBJECTS) $(RESOURCES) $(CC) $(MFLAGS) $(DEBUGFLAGS) -LD $(OBJECTS) $(RESOURCES) -Fecharset.dll charset.res : $(srcdir)/../windows/charset.rc rc -Fo charset.res $(srcdir)/../windows/charset.rc !endif install : all force -mkdir $(prefix) -mkdir $(exec_prefix) !if $(DLL) -mkdir $(bindir) $(INSTALL_DATA) charset.dll $(bindir)\charset.dll !endif -mkdir $(libdir) $(INSTALL_DATA) charset.lib $(libdir)\charset.lib installdirs : force -mkdir $(prefix) -mkdir $(exec_prefix) !if $(DLL) -mkdir $(bindir) !endif -mkdir $(libdir) uninstall : force !if $(DLL) $(RM) $(bindir)\charset.dll !endif $(RM) $(libdir)\charset.lib check : all mostlyclean : clean clean : force $(RM) *.obj $(RM) *.lib $(RM) *.exp $(RM) *.dll $(RM) charset.res $(RM) charset.alias distclean : clean maintainer-clean : distclean force :