| # -*- Makefile -*- for libiconv/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 |
| # 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(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_LIBICONV: Change expansion of LIBICONV_DLL_EXPORTED macro. |
| # -DBUILDING_DLL: Change expansion of RELOCATABLE_DLL_EXPORTED macro. |
| PICFLAGS = -GD -DBUILDING_LIBICONV -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=libiconv_set_relocation_prefix -Drelocate=libiconv_relocate |
| |
| INCLUDES = -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 = iconv.obj localcharset.obj relocatable.obj |
| |
| RESOURCES = iconv.res |
| |
| all : iconv.lib |
| |
| config.h : config.h.msvc |
| -$(RM) config.h |
| $(LN) config.h.msvc config.h |
| |
| iconv.obj : $(srcdir)/iconv.c $(srcdir)/encodings.def $(srcdir)/encodings_local.def $(srcdir)/aliases.h config.h |
| $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c $(srcdir)/iconv.c |
| |
| localcharset.obj : $(srcdir)/../libcharset/lib/localcharset.c $(srcdir)/relocatable.h config.h |
| $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c $(srcdir)/../libcharset/lib/localcharset.c |
| |
| relocatable.obj : $(srcdir)/relocatable.c $(srcdir)/relocatable.h config.h |
| $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c $(srcdir)/relocatable.c |
| |
| !if !$(DLL) |
| |
| iconv.lib : $(OBJECTS) |
| -$(RM) iconv.lib |
| $(AR) $(AR_FLAGS)iconv.lib $(OBJECTS) |
| |
| !else |
| |
| # iconv.dll and iconv.lib are created together. |
| iconv.lib : $(OBJECTS) $(RESOURCES) |
| $(CC) $(MFLAGS) $(DEBUGFLAGS) -LD $(OBJECTS) $(RESOURCES) -Feiconv.dll |
| |
| iconv.res : $(srcdir)/../windows/iconv.rc |
| rc -Fo iconv.res $(srcdir)/../windows/iconv.rc |
| |
| !endif |
| |
| install : all force |
| -mkdir $(prefix) |
| -mkdir $(exec_prefix) |
| !if $(DLL) |
| -mkdir $(bindir) |
| $(INSTALL_DATA) iconv.dll $(bindir)\iconv.dll |
| !endif |
| -mkdir $(libdir) |
| $(INSTALL_DATA) iconv.lib $(libdir)\iconv.lib |
| |
| installdirs : force |
| -mkdir $(prefix) |
| -mkdir $(exec_prefix) |
| !if $(DLL) |
| -mkdir $(bindir) |
| !endif |
| -mkdir $(libdir) |
| |
| uninstall : force |
| !if $(DLL) |
| $(RM) $(bindir)\iconv.dll |
| !endif |
| $(RM) $(libdir)\iconv.lib |
| |
| check : all |
| |
| mostlyclean : clean |
| |
| clean : force |
| $(RM) config.h |
| $(RM) *.obj |
| $(RM) *.lib |
| $(RM) *.exp |
| $(RM) *.dll |
| $(RM) iconv.res |
| |
| distclean : clean |
| |
| maintainer-clean : distclean |
| |
| force : |
| |