1# -*- Makefile -*- for libiconv
2
3#### Start of system configuration section. ####
4
5# Flags that can be set on the nmake command line:
6#   DLL=1     for compiling a .dll with a stub .lib (default is a static .lib)
7#             Note that this works only with MFLAGS=-MD.
8#   MFLAGS={-ML|-MT|-MD} for defining the compilation model
9#     MFLAGS=-ML (the default)  Single-threaded, statically linked - libc.lib
10#     MFLAGS=-MT                Multi-threaded, statically linked  - libcmt.lib
11#     MFLAGS=-MD                Multi-threaded, dynamically linked - msvcrt.lib
12#   DEBUG=1   for compiling with debugging information
13#   NO_NLS=1  do not use Native Language Support
14#   PREFIX=Some\Directory       Base directory for installation
15#   IIPREFIX=Some\\Directory    Same thing with doubled backslashes
16# Note that nmake command line flags are automatically passed to subdirectory
17# Makefiles. Therefore we don't need to pass them explicitly to subdirectory
18# Makefiles, but the subdirectory Makefiles need to have the same defaults.
19!if !defined(DLL)
20DLL=0
21!endif
22!if !defined(DEBUG)
23DEBUG=0
24!endif
25!if !defined(MFLAGS)
26!if !$(DLL)
27MFLAGS=
28!else
29MFLAGS=-MD
30!endif
31!endif
32!if !defined(NO_NLS)
33NO_NLS=0
34!endif
35!if !defined(PREFIX)
36PREFIX = c:\usr
37!endif
38!if !defined(IIPREFIX)
39IIPREFIX = c:\\usr
40!endif
41
42# Directories used by "make install":
43prefix = $(PREFIX)
44exec_prefix = $(prefix)
45bindir = $(exec_prefix)\bin
46libdir = $(exec_prefix)\lib
47includedir = $(prefix)\include
48datadir = $(prefix)\share
49localedir = $(datadir)\locale
50mandir = $(datadir)\man
51docdir = $(datadir)\doc\libiconv
52
53# Programs used by "make":
54LN = copy
55RM = -del
56
57# Programs used by "make install":
58INSTALL = copy
59INSTALL_PROGRAM = copy
60INSTALL_DATA = copy
61
62#### End of system configuration section. ####
63
64SHELL = /bin/sh
65
66all : config.h force
67	cd libcharset
68	$(MAKE) -f Makefile.msvc all
69	cd ..
70	$(LN) libcharset\include\localcharset.h lib\localcharset.h
71!if !$(DLL)
72	$(LN) include\iconv.h.msvc-static include\iconv.h
73!else
74	$(LN) include\iconv.h.msvc-shared include\iconv.h
75!endif
76	cd lib
77	$(MAKE) -f Makefile.msvc all
78	cd ..
79	cd srclib
80	$(MAKE) -f Makefile.msvc all
81	cd ..
82	cd src
83	$(MAKE) -f Makefile.msvc all
84	cd ..
85	cd po
86	$(MAKE) -f Makefile.msvc all
87	cd ..
88	cd man
89	$(MAKE) -f Makefile.msvc all
90	cd ..
91	cd tests
92	$(MAKE) -f Makefile.msvc all
93	cd ..
94
95config.h : config.h.msvc
96	-$(RM) config.h
97	$(LN) config.h.msvc config.h
98
99install : force
100	cd libcharset
101	$(MAKE) -f Makefile.msvc install
102	cd ..
103	cd lib
104	$(MAKE) -f Makefile.msvc install
105	cd ..
106	cd srclib
107	$(MAKE) -f Makefile.msvc install
108	cd ..
109	cd src
110	$(MAKE) -f Makefile.msvc install
111	cd ..
112	cd po
113	$(MAKE) -f Makefile.msvc install
114	cd ..
115	cd man
116	$(MAKE) -f Makefile.msvc install
117	cd ..
118	cd tests
119	$(MAKE) -f Makefile.msvc install
120	cd ..
121	-mkdir $(prefix)
122	-mkdir $(includedir)
123	$(INSTALL_DATA) include\iconv.h $(includedir)\iconv.h
124
125installdirs : force
126	cd libcharset
127	$(MAKE) -f Makefile.msvc installdirs
128	cd ..
129	cd lib
130	$(MAKE) -f Makefile.msvc installdirs
131	cd ..
132	cd srclib
133	$(MAKE) -f Makefile.msvc installdirs
134	cd ..
135	cd src
136	$(MAKE) -f Makefile.msvc installdirs
137	cd ..
138	cd po
139	$(MAKE) -f Makefile.msvc installdirs
140	cd ..
141	cd man
142	$(MAKE) -f Makefile.msvc installdirs
143	cd ..
144	cd tests
145	$(MAKE) -f Makefile.msvc installdirs
146	cd ..
147	-mkdir $(prefix)
148	-mkdir $(includedir)
149
150uninstall : force
151	cd libcharset
152	$(MAKE) -f Makefile.msvc uninstall
153	cd ..
154	cd lib
155	$(MAKE) -f Makefile.msvc uninstall
156	cd ..
157	cd srclib
158	$(MAKE) -f Makefile.msvc uninstall
159	cd ..
160	cd src
161	$(MAKE) -f Makefile.msvc uninstall
162	cd ..
163	cd po
164	$(MAKE) -f Makefile.msvc uninstall
165	cd ..
166	cd man
167	$(MAKE) -f Makefile.msvc uninstall
168	cd ..
169	cd tests
170	$(MAKE) -f Makefile.msvc uninstall
171	cd ..
172	$(RM) $(includedir)\iconv.h
173
174check : all force
175	cd libcharset
176	$(MAKE) -f Makefile.msvc check
177	cd ..
178	cd lib
179	$(MAKE) -f Makefile.msvc check
180	cd ..
181	cd srclib
182	$(MAKE) -f Makefile.msvc check
183	cd ..
184	cd src
185	$(MAKE) -f Makefile.msvc check
186	cd ..
187	cd po
188	$(MAKE) -f Makefile.msvc check
189	cd ..
190	cd man
191	$(MAKE) -f Makefile.msvc check
192	cd ..
193	cd tests
194	$(MAKE) -f Makefile.msvc check
195	cd ..
196
197mostlyclean : force
198	$(RM) config.h
199	cd libcharset
200	$(MAKE) -f Makefile.msvc mostlyclean
201	cd ..
202	$(RM) lib\localcharset.h
203	$(RM) include\iconv.h
204	cd lib
205	$(MAKE) -f Makefile.msvc mostlyclean
206	cd ..
207	cd srclib
208	$(MAKE) -f Makefile.msvc mostlyclean
209	cd ..
210	cd src
211	$(MAKE) -f Makefile.msvc mostlyclean
212	cd ..
213	cd po
214	$(MAKE) -f Makefile.msvc mostlyclean
215	cd ..
216	cd man
217	$(MAKE) -f Makefile.msvc mostlyclean
218	cd ..
219	cd tests
220	$(MAKE) -f Makefile.msvc mostlyclean
221	cd ..
222
223clean : force
224	$(RM) config.h
225	cd libcharset
226	$(MAKE) -f Makefile.msvc clean
227	cd ..
228	$(RM) lib\localcharset.h
229	$(RM) include\iconv.h
230	cd lib
231	$(MAKE) -f Makefile.msvc clean
232	cd ..
233	cd srclib
234	$(MAKE) -f Makefile.msvc clean
235	cd ..
236	cd src
237	$(MAKE) -f Makefile.msvc clean
238	cd ..
239	cd po
240	$(MAKE) -f Makefile.msvc clean
241	cd ..
242	cd man
243	$(MAKE) -f Makefile.msvc clean
244	cd ..
245	cd tests
246	$(MAKE) -f Makefile.msvc clean
247	cd ..
248
249distclean : force
250	$(RM) config.h
251	cd libcharset
252	$(MAKE) -f Makefile.msvc distclean
253	cd ..
254	$(RM) lib\localcharset.h
255	$(RM) include\iconv.h
256	cd lib
257	$(MAKE) -f Makefile.msvc distclean
258	cd ..
259	cd srclib
260	$(MAKE) -f Makefile.msvc distclean
261	cd ..
262	cd src
263	$(MAKE) -f Makefile.msvc distclean
264	cd ..
265	cd po
266	$(MAKE) -f Makefile.msvc distclean
267	cd ..
268	cd man
269	$(MAKE) -f Makefile.msvc distclean
270	cd ..
271	cd tests
272	$(MAKE) -f Makefile.msvc distclean
273	cd ..
274
275maintainer-clean : force
276	$(RM) config.h
277	cd libcharset
278	$(MAKE) -f Makefile.msvc maintainer-clean
279	cd ..
280	$(RM) lib\localcharset.h
281	$(RM) include\iconv.h
282	cd lib
283	$(MAKE) -f Makefile.msvc maintainer-clean
284	cd ..
285	cd srclib
286	$(MAKE) -f Makefile.msvc maintainer-clean
287	cd ..
288	cd src
289	$(MAKE) -f Makefile.msvc maintainer-clean
290	cd ..
291	cd po
292	$(MAKE) -f Makefile.msvc maintainer-clean
293	cd ..
294	cd man
295	$(MAKE) -f Makefile.msvc maintainer-clean
296	cd ..
297	cd tests
298	$(MAKE) -f Makefile.msvc maintainer-clean
299	cd ..
300
301force :
302
303