1# -*- Makefile -*- for gettext
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#   PREFIX=Some\Directory       Base directory for installation
14#   IIPREFIX=Some\\Directory    Same thing with doubled backslashes
15# Note that nmake command line flags are automatically passed to subdirectory
16# Makefiles. Therefore we don't need to pass them explicitly to subdirectory
17# Makefiles, but the subdirectory Makefiles need to have the same defaults.
18!if !defined(DLL)
19DLL=0
20!endif
21!if !defined(DEBUG)
22DEBUG=0
23!endif
24!if !defined(MFLAGS)
25!if !$(DLL)
26MFLAGS=
27!else
28MFLAGS=-MD
29!endif
30!endif
31!if !defined(PREFIX)
32PREFIX = c:\usr
33!endif
34!if !defined(IIPREFIX)
35IIPREFIX = c:\\usr
36!endif
37
38# Directories used by "make install":
39prefix = $(PREFIX)
40exec_prefix = $(prefix)
41bindir = $(exec_prefix)\bin
42libdir = $(exec_prefix)\lib
43includedir = $(prefix)\include
44datadir = $(prefix)\share
45localedir = $(datadir)\locale
46pkgdatadir = $(datadir)\gettext
47mandir = $(datadir)\man
48docdir = $(datadir)\doc\gettext
49emacsdir = $(datadir)\emacs
50lispdir = $(emacsdir)\site-lisp
51
52# Programs used by "make":
53
54CC = cl
55CXX = cl -TP
56
57# Set to -W3 if you want to see maximum amount of warnings, including stupid
58# ones. Set to -W1 to avoid warnings about signed/unsigned combinations.
59WARN_CFLAGS = -W1
60
61!if !$(DLL)
62PICFLAGS =
63!else
64# "-GD" (msvc5) optimizes for DLL.
65# mscv4 doesn't know about this flag and ignores it.
66PICFLAGS = -GD
67!endif
68
69!if $(DEBUG)
70OPTIMFLAGS = -Od -Z7
71!else
72# Some people prefer -O2 -G6 instead of -O1, but -O2 is not reliable in MSVC5.
73OPTIMFLAGS = -D_NDEBUG -O1
74!endif
75
76LN = copy
77RM = -del
78
79# Programs used by "make install":
80INSTALL = copy
81INSTALL_PROGRAM = copy
82INSTALL_DATA = copy
83
84#### End of system configuration section. ####
85
86SHELL = /bin/sh
87
88all : force
89	cd gettext-runtime
90	$(MAKE) -f Makefile.msvc all
91	cd ..
92	cd gettext-tools
93	$(MAKE) -f Makefile.msvc all
94	cd ..
95
96install : force
97	cd gettext-runtime
98	$(MAKE) -f Makefile.msvc install
99	cd ..
100	cd gettext-tools
101	$(MAKE) -f Makefile.msvc install
102	cd ..
103
104installdirs : force
105	cd gettext-runtime
106	$(MAKE) -f Makefile.msvc installdirs
107	cd ..
108	cd gettext-tools
109	$(MAKE) -f Makefile.msvc installdirs
110	cd ..
111
112uninstall : force
113	cd gettext-runtime
114	$(MAKE) -f Makefile.msvc uninstall
115	cd ..
116	cd gettext-tools
117	$(MAKE) -f Makefile.msvc uninstall
118	cd ..
119
120check : all force
121	cd gettext-runtime
122	$(MAKE) -f Makefile.msvc check
123	cd ..
124	cd gettext-tools
125	$(MAKE) -f Makefile.msvc check
126	cd ..
127
128mostlyclean : force
129	cd gettext-runtime
130	$(MAKE) -f Makefile.msvc mostlyclean
131	cd ..
132	cd gettext-tools
133	$(MAKE) -f Makefile.msvc mostlyclean
134	cd ..
135
136clean : force
137	cd gettext-runtime
138	$(MAKE) -f Makefile.msvc clean
139	cd ..
140	cd gettext-tools
141	$(MAKE) -f Makefile.msvc clean
142	cd ..
143
144distclean : force
145	cd gettext-runtime
146	$(MAKE) -f Makefile.msvc distclean
147	cd ..
148	cd gettext-tools
149	$(MAKE) -f Makefile.msvc distclean
150	cd ..
151	$(RM) config.status config.log config.cache Makefile
152
153maintainer-clean : force
154	cd gettext-runtime
155	$(MAKE) -f Makefile.msvc maintainer-clean
156	cd ..
157	cd gettext-tools
158	$(MAKE) -f Makefile.msvc maintainer-clean
159	cd ..
160	$(RM) config.status config.log config.cache Makefile
161
162force :
163