Add GNUTLS to the Windows build.
[obnox/wireshark/wip.git] / packaging / nsis / Makefile.nmake
1 #
2 # $Id$
3 #
4 # NSIS is a free packager/installer/uninstaller program for Win32.
5 # It was originally written for the Winamp package, but various
6 # freeware and non-freeware packages are using it, too.
7 #
8 # http://www.nullsoft.com/free/nsis/
9
10 include ../../config.nmake
11
12 UNIX2DOS=$(PERL) ../../tools/unix2dos.pl
13
14 !IFDEF GTK1_ONLY
15 # define installer name and undefine GTK2_DIR to get a separate 
16 # installer for Wireshark GTK1 version
17 DEST=wireshark-gtk1
18 !IFDEF GTK2_DIR
19 !UNDEF GTK2_DIR
20 !ENDIF
21 !ENDIF
22
23
24 !IFDEF GTK2_ONLY
25 # define installer name and undefine GTK1_DIR to get a separate 
26 # installer for Wireshark GTK2 version
27 DEST=wireshark-gtk2
28 !IFDEF GTK1_DIR
29 !UNDEF GTK1_DIR
30 !ENDIF
31 !ENDIF
32
33 !IFNDEF DEST
34 # define installer name for combined GTK1 and GTK2 installer package
35 DEST=wireshark
36 !ENDIF
37
38 EXE=../../tshark.exe ../../editcap.exe \
39 !IFDEF GTK1_DIR
40         ../../wireshark.exe \
41 !ENDIF
42 !IFDEF GTK2_DIR
43         ../../wireshark-gtk2.exe \
44 !ENDIF
45         ../../text2pcap.exe ../../mergecap.exe ../../capinfos.exe WinPcap_3_1.exe
46 DLL=../../wiretap/wiretap-$(WTAP_VERSION).dll
47 DOC=../../doc/wireshark.html            \
48         ../../doc/tshark.html   \
49         ../../doc/wireshark-filter.html \
50         ../../doc/editcap.html          \
51         ../../doc/text2pcap.html        \
52         ../../doc/mergecap.html         \
53         ../../doc/capinfos.html         \
54         ../../FAQ                       \
55         ../../README                    \
56         ../../README.win32
57 DOC_dos=NEWS.txt
58 GPL=../../COPYING
59 HELP=../../help/toc \
60         ../../help/overview.txt \
61         ../../help/capture_filters.txt \
62         ../../help/display_filters.txt \
63         ../../help/faq.txt
64
65 PLUGINS=../../plugins/acn/acn.dll \
66         ../../plugins/agentx/agentx.dll \
67         ../../plugins/artnet/artnet.dll \
68         ../../plugins/asn1/asn1.dll \
69         ../../plugins/ciscosm/ciscosm.dll \
70         ../../plugins/docsis/docsis.dll \
71         ../../plugins/enttec/enttec.dll \
72         ../../plugins/giop/coseventcomm.dll \
73         ../../plugins/giop/cosnaming.dll \
74         ../../plugins/giop/parlay.dll \
75         ../../plugins/giop/tango.dll \
76         ../../plugins/gryphon/gryphon.dll \
77         ../../plugins/h223/h223.dll \
78         ../../plugins/irda/irda.dll \
79 !IFDEF LUA_DIR
80     ../../plugins/lua/lua.dll \
81 !ENDIF
82         ../../plugins/lwres/lwres.dll \
83         ../../plugins/mate/mate.dll \
84         ../../plugins/megaco/megaco.dll \
85         ../../plugins/mgcp/mgcp.dll \
86         ../../plugins/opsi/opsi.dll \
87         ../../plugins/pcli/pcli.dll \
88         ../../plugins/rdm/rdm.dll \
89         ../../plugins/rlm/rlm.dll \
90         ../../plugins/rtnet/rtnet.dll \
91         ../../plugins/rudp/rudp.dll \
92         ../../plugins/sbus/sbus.dll \
93         ../../plugins/stats_tree/stats_tree.dll \
94         ../../plugins/v5ua/v5ua.dll
95
96 NSI=wireshark.nsi \
97         GetWindowsVersion.nsh \
98         servicelib.nsh \
99         AdditionalTasksPage.ini \
100         WinPcapPage.ini
101
102 DELIVERABLES=$(EXE) $(DLL) $(DOC) $(DOC_dos) $(GPL) $(HELP) $(PLUGINS)
103
104 all: NEWS.txt $(DEST)-setup-$(VERSION).exe
105
106 NEWS.txt: ../../NEWS
107         $(UNIX2DOS) < ../../NEWS > NEWS.txt
108
109 $(DEST)-setup-$(VERSION).exe : $(NSI) $(DELIVERABLES) Makefile.nmake
110         $(MAKENSIS) \
111         /DDEST=$(DEST) \
112 !IF "$(MAKENSIS_MODERN_UI)" != ""
113         /DMAKENSIS_MODERN_UI=$(MAKENSIS_MODERN_UI) \
114 !ENDIF
115 !IF "$(ENABLE_LIBWIRESHARK)" != ""
116         /DENABLE_LIBWIRESHARK=$(ENABLE_LIBWIRESHARK) \
117 !ENDIF
118 !IFDEF GTK1_DIR
119         /DGTK1_DIR=$(GTK1_DIR) \
120 !ENDIF
121 !IFDEF GTK2_DIR
122         /DGTK2_DIR=$(GTK2_DIR) \
123         /DGTK2_LIB_DIR=$(GTK2_LIB_DIR) \
124         /DPANGO_LIB_DIR=$(PANGO_LIB_DIR) \
125 !IFDEF NEED_LIBPNG_DLL
126         /DNEED_LIBPNG_DLL=$(NEED_LIBPNG_DLL) \
127 !ENDIF
128 !IFDEF NEED_CAIRO_DLL
129         /DNEED_CAIRO_DLL=$(NEED_CAIRO_DLL) \
130 !ENDIF
131 !ENDIF  
132 !IFDEF GTK_WIMP_DIR
133         /DGTK_WIMP_DIR=$(GTK_WIMP_DIR) \
134         /DGTK_THEME_DIR=$(GTK_THEME_DIR) \
135 !ENDIF  
136         /DGLIB_DIR=$(GLIB_DIR) \
137         /DICONV_DIR=$(ICONV_DIR) \
138         /DGETTEXT_DIR=$(GETTEXT_DIR) \
139         /DVERSION=$(VERSION) \
140         /DWTAP_VERSION=$(WTAP_VERSION) \
141         /DNET_SNMP_DIR=$(NET_SNMP_DIR) \
142 !IF "$(ADNS_DIR)" != ""
143         /DADNS_DIR=$(ADNS_DIR) \
144 !ENDIF
145 !IF "$(KFW_DIR)" != ""
146         /DKFW_DIR=$(KFW_DIR) \
147 !ENDIF
148 !IF "$(GNUTLS_DIR)" != ""
149         /DGNUTLS_DIR=$(GNUTLS_DIR) \
150 !ENDIF
151 !IF "$(PCRE_DIR)" != ""
152         /DPCRE_DIR=$(PCRE_DIR) \
153 !ENDIF
154 !IF "$(ZLIB_DIR)" != ""
155         /DZLIB_DIR=$(ZLIB_DIR) \
156 !ENDIF
157 !IFDEF LUA_DIR
158         /DLUA_DIR=$(LUA_DIR) \
159 !ENDIF
160 !IFDEF HHC_DIR
161         /DHHC_DIR=$(HHC_DIR) \
162 !ENDIF
163         wireshark.nsi
164
165 clean:
166         rm -f wireshark-setup-$(VERSION).exe
167         rm -f wireshark-gtk1-setup-$(VERSION).exe
168         rm -f wireshark-gtk2-setup-$(VERSION).exe
169         rm -f NEWS.txt
170
171 distclean: clean
172
173 maintainer-clean: distclean
174
175 $(DOC):
176         cd ../../doc
177         $(MAKE) -f makefile.nmake
178         cd ../packaging/nsis
179
180 $(EXE) $(DLL):
181         cd ../..
182         $(MAKE) -f makefile.nmake
183         cd packaging/nsis