Tag
Hash :
c2c289ea
Author :
Date :
2005-01-06T16:42:31
Define also INSTALLPREFIX, needed by relocatable.c.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171
# -*- 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 :