Add svn:eol-style.
[metze/wireshark/wip.git] / Makefile.am
1 # Makefile.am
2 # Automake file for Wireshark
3 #
4 # $Id$
5 #
6 # Wireshark - Network traffic analyzer
7 # By Gerald Combs <gerald@wireshark.org>
8 # Copyright 1998 Gerald Combs
9 #
10 # This program is free software; you can redistribute it and/or
11 # modify it under the terms of the GNU General Public License
12 # as published by the Free Software Foundation; either version 2
13 # of the License, or (at your option) any later version.
14 #
15 # This program is distributed in the hope that it will be useful,
16 # but WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 # GNU General Public License for more details.
19 #
20 # You should have received a copy of the GNU General Public License
21 # along with this program; if not, write to the Free Software
22 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
23
24 AM_DISTCHECK_CONFIGURE_FLAGS=@GUI_CONFIGURE_FLAGS@
25 ACLOCAL_AMFLAGS = `./aclocal-flags`
26
27 if HAVE_LIBPY
28 py_dissectors_dir = -DPYTHON_DIR=\"@pythondir@\"
29 else
30 py_dissectors_dir = -DPYTHON_DIR=
31 endif
32
33
34 if HAVE_WARNINGS_AS_ERRORS
35 AM_CLEAN_CFLAGS = -Werror
36 endif
37
38 bin_PROGRAMS = \
39         @wireshark_bin@         \
40         @tshark_bin@            \
41         @text2pcap_bin@         \
42         @mergecap_bin@          \
43         @capinfos_bin@          \
44         @editcap_bin@           \
45         @randpkt_bin@           \
46         @dftest_bin@            \
47         @dumpcap_bin@           \
48         @reordercap_bin@        \
49         @rawshark_bin@          \
50         @echld_test_bin@
51
52 EXTRA_PROGRAMS = wireshark wireshark-qt tshark capinfos editcap mergecap \
53         dftest randpkt text2pcap dumpcap reordercap rawshark wireshark_cxx \
54         echld_test
55
56 #
57 # Wireshark configuration files are put in $(pkgdatadir).
58 #
59 dist_pkgdata_DATA = COPYING manuf services cfilters colorfilters dfilters \
60         smi_modules ipmap.html pdml2html.xsl
61
62 #
63 # Install global profiles in the "profiles" subdirectory
64 #
65 profilesdir = $(pkgdatadir)
66 nobase_dist_profiles_DATA = \
67         profiles/Bluetooth/colorfilters \
68         profiles/Classic/colorfilters
69
70 #
71 # Install the Diameter DTD and XML files in the "diameter" subdirectory
72 # of that directory.
73 #
74 diameterdir = $(pkgdatadir)/diameter
75 include diameter/Custom.make
76 dist_diameter_DATA = $(_CUSTOM_diameter_xml_files_) \
77         diameter/chargecontrol.xml \
78         diameter/ChinaTelecom.xml \
79         diameter/Cisco.xml \
80         diameter/Custom.xml \
81         diameter/dictionary.dtd \
82         diameter/dictionary.xml \
83         diameter/eap.xml \
84         diameter/Ericsson.xml \
85         diameter/etsie2e4.xml \
86         diameter/gqpolicy.xml \
87         diameter/imscxdx.xml \
88         diameter/mobileipv4.xml \
89         diameter/mobileipv6.xml \
90         diameter/nasreq.xml \
91         diameter/sip.xml \
92         diameter/sunping.xml \
93         diameter/TGPPGmb.xml \
94         diameter/TGPPRx.xml \
95         diameter/TGPPS9.xml \
96         diameter/TGPPSh.xml \
97         diameter/Vodafone.xml \
98         diameter/AlcatelLucent.xml \
99         diameter/Nokia.xml \
100         diameter/NokiaSiemensNetworks.xml \
101         diameter/SKT.xml \
102         diameter/VerizonWireless.xml
103
104 #
105 # Install the DTDs directory files in the "dtds" subdirectory
106 # of that directory
107 #
108 dtdsdir = $(pkgdatadir)/dtds
109 dist_dtds_DATA = \
110         dtds/dc.dtd \
111         dtds/itunes.dtd \
112         dtds/mscml.dtd \
113         dtds/pocsettings.dtd \
114         dtds/presence.dtd \
115         dtds/reginfo.dtd \
116         dtds/rlmi.dtd \
117         dtds/rss.dtd \
118         dtds/smil.dtd \
119         dtds/xcap-caps.dtd \
120         dtds/xcap-error.dtd \
121         dtds/watcherinfo.dtd
122
123 #
124 # Install the RADIUS directory files in the "radius" subdirectory
125 # of that directory.
126 #
127 radiusdir = $(pkgdatadir)/radius
128 include radius/Custom.make
129 dist_radius_DATA = $(_CUSTOM_radius_dict_) \
130         radius/README.radius_dictionary  \
131         radius/custom.includes  \
132         radius/dictionary  \
133         radius/dictionary.3com  \
134         radius/dictionary.3gpp  \
135         radius/dictionary.3gpp2  \
136         radius/dictionary.acc  \
137         radius/dictionary.acme \
138         radius/dictionary.airespace \
139         radius/dictionary.alcatel  \
140         radius/dictionary.alcatel.esam \
141         radius/dictionary.alcatel.sr \
142         radius/dictionary.alcatel-lucent.aaa \
143         radius/dictionary.alcatel-lucent.xylan \
144         radius/dictionary.alteon  \
145         radius/dictionary.altiga  \
146         radius/dictionary.alvarion \
147         radius/dictionary.apc \
148         radius/dictionary.aptis  \
149         radius/dictionary.aruba  \
150         radius/dictionary.ascend  \
151         radius/dictionary.asn \
152         radius/dictionary.audiocodes \
153         radius/dictionary.avaya \
154         radius/dictionary.azaire \
155         radius/dictionary.bay  \
156         radius/dictionary.bintec  \
157         radius/dictionary.bristol  \
158         radius/dictionary.cablelabs  \
159         radius/dictionary.cabletron  \
160         radius/dictionary.chillispot \
161         radius/dictionary.cisco  \
162         radius/dictionary.cisco.bbsm  \
163         radius/dictionary.cisco.vpn3000  \
164         radius/dictionary.cisco.vpn5000  \
165         radius/dictionary.clavister \
166         radius/dictionary.colubris  \
167         radius/dictionary.columbia_university  \
168         radius/dictionary.compat  \
169         radius/dictionary.cosine  \
170         radius/dictionary.dhcp \
171         radius/dictionary.digium \
172         radius/dictionary.eltex \
173         radius/dictionary.epygi \
174         radius/dictionary.ericsson  \
175         radius/dictionary.erx  \
176         radius/dictionary.extreme  \
177         radius/dictionary.fortinet \
178         radius/dictionary.foundry  \
179         radius/dictionary.freeradius  \
180         radius/dictionary.freeradius.internal  \
181         radius/dictionary.freeswitch \
182         radius/dictionary.gandalf  \
183         radius/dictionary.garderos  \
184         radius/dictionary.gemtek  \
185         radius/dictionary.h3c \
186         radius/dictionary.hp \
187         radius/dictionary.huawei \
188         radius/dictionary.iea \
189         radius/dictionary.infonet \
190         radius/dictionary.ipunplugged \
191         radius/dictionary.issanni \
192         radius/dictionary.itk  \
193         radius/dictionary.jradius \
194         radius/dictionary.juniper  \
195         radius/dictionary.karlnet  \
196         radius/dictionary.lancom \
197         radius/dictionary.livingston  \
198         radius/dictionary.localweb  \
199         radius/dictionary.lucent \
200         radius/dictionary.manzara \
201         radius/dictionary.merit  \
202         radius/dictionary.microsoft  \
203         radius/dictionary.mikrotik  \
204         radius/dictionary.motorola \
205         radius/dictionary.motorola.wimax \
206         radius/dictionary.navini  \
207         radius/dictionary.netscreen  \
208         radius/dictionary.networkphysics \
209         radius/dictionary.nexans \
210         radius/dictionary.nokia  \
211         radius/dictionary.nokia.conflict \
212         radius/dictionary.nomadix  \
213         radius/dictionary.nortel \
214         radius/dictionary.ntua \
215         radius/dictionary.openser \
216         radius/dictionary.packeteer \
217         radius/dictionary.patton \
218         radius/dictionary.propel  \
219         radius/dictionary.prosoft \
220         radius/dictionary.quiconnect \
221         radius/dictionary.quintum  \
222         radius/dictionary.redback  \
223         radius/dictionary.redcreek  \
224         radius/dictionary.rfc2865 \
225         radius/dictionary.rfc2866 \
226         radius/dictionary.rfc2867 \
227         radius/dictionary.rfc2868 \
228         radius/dictionary.rfc2869 \
229         radius/dictionary.rfc3162 \
230         radius/dictionary.rfc3576 \
231         radius/dictionary.rfc3580 \
232         radius/dictionary.rfc4072 \
233         radius/dictionary.rfc4372 \
234         radius/dictionary.rfc4603 \
235         radius/dictionary.rfc4675 \
236         radius/dictionary.rfc4679 \
237         radius/dictionary.rfc4818 \
238         radius/dictionary.rfc4849 \
239         radius/dictionary.rfc5090 \
240         radius/dictionary.rfc5176 \
241         radius/dictionary.rfc5447 \
242         radius/dictionary.rfc5580 \
243         radius/dictionary.rfc5607 \
244         radius/dictionary.rfc5904 \
245         radius/dictionary.rfc6519 \
246         radius/dictionary.rfc6572 \
247         radius/dictionary.riverstone \
248         radius/dictionary.roaringpenguin \
249         radius/dictionary.shasta  \
250         radius/dictionary.shiva  \
251         radius/dictionary.slipstream \
252         radius/dictionary.sofaware \
253         radius/dictionary.sonicwall  \
254         radius/dictionary.springtide  \
255         radius/dictionary.starent  \
256         radius/dictionary.t_systems_nova  \
257         radius/dictionary.telebit  \
258         radius/dictionary.telkom \
259         radius/dictionary.trapeze  \
260         radius/dictionary.tropos \
261         radius/dictionary.ukerna  \
262         radius/dictionary.unix  \
263         radius/dictionary.usr  \
264         radius/dictionary.utstarcom \
265         radius/dictionary.valemount  \
266         radius/dictionary.versanet  \
267         radius/dictionary.vqp \
268         radius/dictionary.walabi \
269         radius/dictionary.waverider \
270         radius/dictionary.wichorus \
271         radius/dictionary.wimax  \
272         radius/dictionary.wimax.wichorus \
273         radius/dictionary.wispr  \
274         radius/dictionary.xedia \
275         radius/dictionary.zyxel
276
277 #
278 # Install the tpncp directory files in the "tpncp" subdirectory
279 # of that directory
280 #
281 tpncpdir = $(pkgdatadir)/tpncp
282 dist_tpncp_DATA = \
283         tpncp/tpncp.dat
284
285 #
286 # Install the wimaxasncp directory files in the "wimaxasncp" subdirectory
287 # of that directory
288 #
289 wimaxasncpdir = $(pkgdatadir)/wimaxasncp
290 dist_wimaxasncp_DATA = \
291         wimaxasncp/dictionary.xml \
292         wimaxasncp/dictionary.dtd
293
294 PLATFORM_SRC = \
295         capture-pcap-util-unix.c
296
297 if HAVE_PLUGINS
298 -include plugins/Custom.make
299 plugin_ldadd = $(_CUSTOM_plugin_ldadd_) \
300         -dlopen plugins/asn1/asn1.la \
301         -dlopen plugins/docsis/docsis.la \
302         -dlopen plugins/ethercat/ethercat.la \
303         -dlopen plugins/gryphon/gryphon.la \
304         -dlopen plugins/irda/irda.la \
305         -dlopen plugins/m2m/m2m.la \
306         -dlopen plugins/mate/mate.la \
307         -dlopen plugins/opcua/opcua.la \
308         -dlopen plugins/profinet/profinet.la \
309         -dlopen plugins/stats_tree/stats_tree.la \
310         -dlopen plugins/unistim/unistim.la \
311         -dlopen plugins/wimax/wimax.la \
312         -dlopen plugins/wimaxmacphy/wimaxmacphy.la
313
314 WTAP_PLUGIN_SOURCES = \
315        epan/plugins.c
316
317 else            # HAVE_PLUGINS
318
319 plugin_ldadd =
320 WTAP_PLUGIN_SOURCES =
321
322 endif           # HAVE_PLUGINS
323
324 include Makefile.common
325
326 if ENABLE_STATIC
327 if HAVE_GTK
328 wireshark_LDFLAGS = -Wl,-static -all-static
329 endif
330 if HAVE_Qt
331 wireshark_qt_LDFLAGS = -Wl,-static -all-static
332 endif
333 else
334 if HAVE_GTK
335 wireshark_LDFLAGS = -export-dynamic
336 endif
337 if HAVE_Qt
338 wireshark_qt_LDFLAGS = -export-dynamic
339 endif
340 endif
341
342 # Libraries and plugin flags with which to link wireshark.
343 #
344 # Note that Wireshark, when built with a version of GTK+ that runs
345 # atop X11, doesn't have to be linked with @SOCKET_LIBS@ or @NSL_LIBS@,
346 # as those should also be included in @GTK_LIBS@ (as those are also
347 # needed for X applications, and GTK+ applications are X applications
348 # if the version of GTK+ they're built with runs atop X11).
349 #
350 # However, it *does* have to be linked with @GLIB_LIBS@; not all of
351 # the necessary GLib libraries are included in @GTK_LIBS@.  To quote
352 # Gentoo bug 423743 at
353 #
354 #       https://bugs.gentoo.org/show_bug.cgi?id=423743
355 #
356 # "The Makefile.am claims including GLIB_LIBS when linking wireshark is
357 # unnecessary, because wireshark links to GTK_LIBS which is a superset.
358 # It is not actually a superset: gmodule is included in GLIB_LIBS but
359 # not in GTK_LIBS (unless accidentally on older glibs/gtks)."
360 #
361 # although it's also possible that -lgmodule is in GTK_LIBS but not
362 # GLIB_LIBS (that's the case on my machine right now, for example).
363 #
364 wireshark_ldadd = \
365         ui/libui.a                      \
366         ui/libui_dirty.a                \
367         codecs/libcodec.a               \
368         wiretap/libwiretap.la           \
369         epan/libwireshark.la            \
370         wsutil/libwsutil.la             \
371         @SSL_LIBS@                      \
372         $(plugin_ldadd)                 \
373         @PCAP_LIBS@                     \
374         @C_ARES_LIBS@                   \
375         @ADNS_LIBS@                     \
376         @KRB5_LIBS@                     \
377         @APPLICATIONSERVICES_FRAMEWORKS@        \
378         @SYSTEMCONFIGURATION_FRAMEWORKS@        \
379         @COREFOUNDATION_FRAMEWORKS@     \
380         @PY_LIBS@                       \
381         @LIBGCRYPT_LIBS@                \
382         @LIBGNUTLS_LIBS@                \
383         @LIBSMI_LDFLAGS@                \
384         @PORTAUDIO_LIBS@                \
385         @GLIB_LIBS@                     \
386         -lm
387
388 if HAVE_Qt
389 wireshark_qt_SOURCES = $(WIRESHARK_COMMON_SRC)
390 wireshark_qt_INCLUDES = $(WIRESHARK_COMMON_INCLUDES)
391 wireshark_qt_CFLAGS = $(AM_CLEAN_CFLAGS) $(py_dissectors_dir)
392 wireshark_qt_LDADD =  ui/qt/libqtui.a $(wireshark_ldadd) @Qt_LIBS@
393 #
394 # XXX - this makes wireshark_qt_LDFLAGS not work; we should figure out
395 # another way to get wireshark-qt linked as a C++ program, perhaps by
396 # having a top-level wireshark-qt.cpp file that contains main() and
397 # hthat calls the UI code from ui/qt.
398 #
399 wireshark_qt_LINK = $(CXXLINK)
400 endif
401
402 if HAVE_GTK
403 wireshark_SOURCES = $(WIRESHARK_COMMON_SRC)
404 wireshark_INCLUDES = $(WIRESHARK_COMMON_INCLUDES)
405 wireshark_CFLAGS = $(AM_CLEAN_CFLAGS) $(py_dissectors_dir)
406 wireshark_LDADD = ui/gtk/libgtkui.a $(wireshark_ldadd) @GTK_LIBS@
407 endif
408
409 # Ideally we could trigger automatic c++ linking here with
410 #   nodist_EXTRA_wireshark_SOURCES = dummy.cpp
411 # Unfortunately that check is done by automake and not configure.
412 # We do the following to try to avoid using c++ to link Wireshark at
413 # all times.
414 nodist_EXTRA_wireshark_cxx_SOURCES = dummy.cpp
415 wireshark_cxx_SOURCES =
416
417 if ENABLE_STATIC
418 tshark_LDFLAGS = -Wl,-static -all-static
419 else
420 tshark_LDFLAGS = -export-dynamic
421 endif
422
423 # Libraries and plugin flags with which to link tshark.
424 tshark_LDADD = \
425         ui/cli/libcliui.a               \
426         ui/libui.a                      \
427         wiretap/libwiretap.la           \
428         epan/libwireshark.la            \
429         wsutil/libwsutil.la             \
430         @SSL_LIBS@                      \
431         $(plugin_ldadd)                 \
432         @GLIB_LIBS@ -lm                 \
433         @PCAP_LIBS@                     \
434         @SOCKET_LIBS@                   \
435         @NSL_LIBS@                      \
436         @C_ARES_LIBS@                   \
437         @ADNS_LIBS@                     \
438         @KRB5_LIBS@                     \
439         @SYSTEMCONFIGURATION_FRAMEWORKS@        \
440         @COREFOUNDATION_FRAMEWORKS@     \
441         @PY_LIBS@                       \
442         @LIBGCRYPT_LIBS@                \
443         @LIBGNUTLS_LIBS@                \
444         @LIBSMI_LDFLAGS@
445 tshark_CFLAGS = $(AM_CLEAN_CFLAGS) $(py_dissectors_dir)
446
447 if ENABLE_STATIC
448 rawshark_LDFLAGS = -Wl,-static -all-static
449 else
450 rawshark_LDFLAGS = -export-dynamic
451 endif
452
453 # Libraries and plugin flags with which to link rawshark.
454 rawshark_LDADD = \
455         ui/libui.a                      \
456         wiretap/libwiretap.la           \
457         epan/libwireshark.la            \
458         wsutil/libwsutil.la             \
459         @SSL_LIBS@                      \
460         $(plugin_ldadd)                 \
461         @GLIB_LIBS@ -lm                 \
462         @PCAP_LIBS@                     \
463         @SOCKET_LIBS@                   \
464         @NSL_LIBS@                      \
465         @C_ARES_LIBS@                   \
466         @ADNS_LIBS@                     \
467         @KRB5_LIBS@                     \
468         @SYSTEMCONFIGURATION_FRAMEWORKS@        \
469         @COREFOUNDATION_FRAMEWORKS@     \
470         @PY_LIBS@                       \
471         @LIBGCRYPT_LIBS@                \
472         @LIBGNUTLS_LIBS@                \
473         @LIBSMI_LDFLAGS@
474 rawshark_CFLAGS = $(AM_CLEAN_CFLAGS) $(py_dissectors_dir)
475
476 # Libraries with which to link text2pcap.
477 text2pcap_LDADD = \
478         wsutil/libwsutil.la             \
479         @GLIB_LIBS@ -lm
480 # Don't turn on -Werror for text2pcap: its source includes text2pcap-scanner.c
481 # which is generated (and therefore not always clean).
482 # We could generate text2pcap.o as a library with -Werror but for now it
483 # doesn't seem worth the effort.
484 #text2pcap_CFLAGS = $(AM_CLEAN_CFLAGS)
485
486 # Libraries with which to link mergecap.
487 mergecap_LDADD = \
488         wiretap/libwiretap.la           \
489         wsutil/libwsutil.la             \
490         @GLIB_LIBS@
491 mergecap_CFLAGS = $(AM_CLEAN_CFLAGS)
492
493 # Libraries with which to link capinfos.
494 capinfos_LDADD = \
495         wiretap/libwiretap.la           \
496         wsutil/libwsutil.la             \
497         @GLIB_LIBS@                     \
498         @LIBGCRYPT_LIBS@
499 capinfos_CFLAGS = $(AM_CLEAN_CFLAGS) $(py_dissectors_dir)
500
501 # Libraries with which to link editcap.
502 editcap_LDADD = \
503         wiretap/libwiretap.la           \
504         wsutil/libwsutil.la             \
505         @GLIB_LIBS@
506 editcap_CFLAGS = $(AM_CLEAN_CFLAGS) $(py_dissectors_dir)
507
508 # Libraries with which to link reordercap.
509 reordercap_LDADD = \
510         wiretap/libwiretap.la           \
511         wsutil/libwsutil.la             \
512         @GLIB_LIBS@
513 reordercap_CFLAGS = $(AM_CLEAN_CFLAGS)
514
515 # Libraries with which to link randpkt.
516 randpkt_LDADD = \
517         wiretap/libwiretap.la           \
518         wsutil/libwsutil.la             \
519         @GLIB_LIBS@ -lm                 \
520         @PCAP_LIBS@                     \
521         @SOCKET_LIBS@                   \
522         @NSL_LIBS@                      \
523         @C_ARES_LIBS@                   \
524         @ADNS_LIBS@
525 randpkt_CFLAGS = $(AM_CLEAN_CFLAGS)
526
527 # Libraries and plugin flags with which to link dftest.
528 dftest_LDADD = \
529         ui/libui.a                      \
530         wiretap/libwiretap.la           \
531         wsutil/libwsutil.la             \
532         epan/libwireshark.la            \
533         @SSL_LIBS@                      \
534         $(plugin_ldadd)                 \
535         @GLIB_LIBS@ -lm                 \
536         @PCAP_LIBS@                     \
537         @SOCKET_LIBS@                   \
538         @NSL_LIBS@                      \
539         @C_ARES_LIBS@                   \
540         @ADNS_LIBS@                     \
541         @KRB5_LIBS@                     \
542         @PY_LIBS@                       \
543         @LIBGCRYPT_LIBS@                \
544         @LIBGNUTLS_LIBS@                \
545         @LIBSMI_LDFLAGS@
546 dftest_CFLAGS = $(AM_CLEAN_CFLAGS) $(py_dissectors_dir)
547
548 echld_test_LDADD = \
549         epan/libwireshark.la \
550         echld/libechld.la \
551         wsutil/libwsutil.la \
552         @GLIB_LIBS@ -lm                 \
553         @PCAP_LIBS@                     \
554         @SOCKET_LIBS@                   \
555         @NSL_LIBS@                      \
556         @C_ARES_LIBS@                   \
557         @ADNS_LIBS@
558
559 echld_test_DEPENDENCIES = \
560         echld/libechld.la \
561         epan/libwireshark.la
562
563 echld_test_CFLAGS = $(AM_CLEAN_CFLAGS)
564
565
566 # Libraries with which to link dumpcap.
567 dumpcap_LDADD = \
568         wsutil/libwsutil.la             \
569         @GLIB_LIBS@                     \
570         @PCAP_LIBS@                     \
571         @SOCKET_LIBS@                   \
572         @NSL_LIBS@                      \
573         @SYSTEMCONFIGURATION_FRAMEWORKS@        \
574         @COREFOUNDATION_FRAMEWORKS@     \
575         @LIBCAP_LIBS@
576 dumpcap_CFLAGS = $(AM_CLEAN_CFLAGS) $(PIE_CFLAGS)
577 dumpcap_LDFLAGS = $(PIE_LDFLAGS)
578
579 # Common headers
580 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/wiretap \
581         $(LIBGNUTLS_CFLAGS) $(LIBGCRYPT_CFLAGS) $(LIBSMI_CFLAGS) $(PY_CFLAGS) \
582         @LUA_INCLUDES@ -DTOP_SRCDIR=\"$(abs_top_srcdir)\"
583
584 #
585 # Build the version string
586 #
587 # FORCE is the portable version of .PHONY
588 FORCE:
589
590 AM_V_PERL = $(am__v_PERL_@AM_V@)
591 am__v_PERL_ = $(am__v_PERL_@AM_DEFAULT_V@)
592 am__v_PERL_0 = @echo "  PERL    " $@;
593 am__v_PERL_1 =
594
595 svnversion.h: FORCE
596         $(AM_V_PERL)$(PERL) $(srcdir)/make-version.pl $(srcdir)
597
598 #
599 # Build shell scripts by doing variable substitution.
600 # Taken from autoconf 2.13.
601 #
602 editsh = sed -e 's,@''SHELL''@,$(SHELL),g'
603
604 SUFFIXES = .sh
605 .sh:
606         rm -f $@ $@.tmp
607         $(editsh) $< > $@.tmp && chmod +x $@.tmp && mv $@.tmp $@
608
609 services:
610         $(PYTHON) $(srcdir)/tools/make-services.py
611
612 CLEANFILES =            \
613         *~              \
614         doxygen-core.tag        \
615         vgcore.*
616
617 #
618 # We have to remove svnversion.h with "make distclean", as, otherwise,
619 # "make distcheck" fails.  We still need to make the tarballs work
620 # even if you do "make distclean" and try to rebuild; that's a work in
621 # progress.
622 #
623 # XXX - "ps.c" is distributed in the source tarballs; why is it in the
624 # list of files removed by "make distclean"?  (It's deliberately
625 # included in that list.)
626 #
627 DISTCLEANFILES = \
628         ps.c                    \
629         svnversion.h
630
631 MAINTAINERCLEANFILES =          \
632         $(GENERATED_FILES)      \
633         Makefile.in             \
634         aclocal.m4              \
635         compile                 \
636         config.h.in             \
637         configure               \
638         depcomp                 \
639         install-sh              \
640         ltmain.sh               \
641         missing                 \
642         ylwrap
643
644 EXTRA_DIST = \
645         INSTALL.configure       \
646         Makefile.am.inc         \
647         Makefile.common         \
648         Makefile.nmake          \
649         Makefile.nmake.inc      \
650         README.aix              \
651         README.bsd              \
652         README.DECT             \
653         README.hpux             \
654         README.irix             \
655         README.linux            \
656         README.macos            \
657         README.tru64            \
658         README.vmware           \
659         README.windows          \
660         abi-descriptor.template \
661         aclocal-fallback/libsmi.m4 \
662         aclocal-fallback/libgcrypt.m4 \
663         aclocal-fallback/glib-2.0.m4 \
664         aclocal-fallback/gtk-2.0.m4 \
665         aclocal-fallback/gtk-3.0.m4 \
666         aclocal-flags           \
667         adns_dll.dep            \
668         adns_dll.rc             \
669         autogen.sh              \
670         capinfos.c              \
671         capture_win_ifnames.c   \
672         capture_win_ifnames.h   \
673         capture-wpcap.c         \
674         capture-wpcap.h         \
675         capture_wpcap_packet.c  \
676         capture_wpcap_packet.h  \
677         cfilters                \
678         colorfilters            \
679         config.h.win32          \
680         config.nmake            \
681         debian/changelog        \
682         debian/compat           \
683         debian/control          \
684         debian/copyright        \
685         debian/dirs             \
686         debian/headers-check.c  \
687         debian/patches/00list   \
688         debian/postinst         \
689         debian/pycompat         \
690         debian/pyversions       \
691         debian/rules            \
692         debian/README.source    \
693         debian/tshark.files     \
694         debian/tshark.manpages  \
695         debian/watch            \
696         debian/wireshark-common.files \
697         debian/wireshark-common.manpages \
698         debian/wireshark-common.shlibs \
699         debian/wireshark-dev.docs \
700         debian/wireshark-dev.files \
701         debian/wireshark-dev.header-files \
702         debian/wireshark-dev.manpages \
703         debian/wireshark-dev.prerm \
704         debian/wireshark-root.desktop \
705         debian/wireshark.desktop \
706         debian/wireshark.files \
707         debian/wireshark.manpages \
708         debian/wireshark.menu   \
709         dfilters                \
710         doxygen.cfg.in          \
711         dumpcap.c       \
712         editcap.c               \
713         epan/print.ps           \
714         fix/FIX.xml             \
715         fix/FIX40.xml           \
716         fix/FIX41.xml           \
717         fix/FIX42.xml           \
718         fix/FIX43.xml           \
719         fix/FIX44.xml           \
720         fix/README              \
721         fix/Values.xsl          \
722         fix/hfDecl.xsl          \
723         fix/hfField.xsl         \
724         fix/hfList.xsl          \
725         idl/coseventcomm.idl    \
726         idl/cosnaming.idl       \
727         idl/tango.idl   \
728         idl/parlay/am.idl       \
729         idl/parlay/cccs.idl     \
730         idl/parlay/cm.idl       \
731         idl/parlay/common_cc_data.idl   \
732         idl/parlay/cs.idl       \
733         idl/parlay/dsc.idl      \
734         idl/parlay/fw_data.idl  \
735         idl/parlay/fw_if.idl    \
736         idl/parlay/fw_if_access.idl     \
737         idl/parlay/fw_if_app.idl        \
738         idl/parlay/fw_if_entop.idl      \
739         idl/parlay/fw_if_service.idl    \
740         idl/parlay/gcc_data.idl \
741         idl/parlay/gcc_interfaces.idl   \
742         idl/parlay/gms.idl      \
743         idl/parlay/mm.idl       \
744         idl/parlay/mmccs.idl    \
745         idl/parlay/mmm.idl      \
746         idl/parlay/mpcc_data.idl        \
747         idl/parlay/mpcc_interfaces.idl  \
748         idl/parlay/osa.idl      \
749         idl/parlay/pam_data.idl \
750         idl/parlay/pam_interfaces.idl   \
751         idl/parlay/Parlay.idl   \
752         idl/parlay/policy_data.idl      \
753         idl/parlay/policy_interfaces.idl        \
754         idl/parlay/README.parlay        \
755         idl/parlay/termcap.idl  \
756         idl/parlay/ui_data.idl  \
757         idl/parlay/ui_interfaces.idl    \
758         image/capinfos.rc.in    \
759         image/capture_comment.svg       \
760         image/capture_comment_add.png   \
761         image/capture_comment_disabled.png      \
762         image/capture_comment_update.png        \
763         image/capture_start_24.png              \
764         image/capture_start_active_24.png       \
765         image/capture_stop_24.png               \
766         image/clist_ascend.xpm                  \
767         image/clist_descend.xpm                 \
768         image/copy-8.png                        \
769         image/dfilter_apply_disabled.png        \
770         image/dfilter_apply_hover.png           \
771         image/dfilter_apply_normal.png          \
772         image/dfilter_apply_pressed.png         \
773         image/dfilter_bookmark_disabled.png     \
774         image/dfilter_bookmark_hover.png        \
775         image/dfilter_bookmark_normal.png       \
776         image/dfilter_bookmark_pressed.png      \
777         image/dfilter_dropdown.png              \
778         image/dfilter_erase_active.png          \
779         image/dfilter_erase_normal.png          \
780         image/dfilter_erase_selected.png        \
781         image/dfilter_refresh_active.png        \
782         image/dfilter_refresh_normal.png        \
783         image/display_filter.qrc                \
784         image/dumpcap.rc.in     \
785         image/editcap.rc.in     \
786         image/expert_chat.png   \
787         image/expert_error.png  \
788         image/expert_indicators.svg     \
789         image/expert_none.png   \
790         image/expert_note.png   \
791         image/expert_warn.png   \
792         image/file_dlg_win32.rc \
793         image/hi16-app-wireshark.png    \
794         image/hi32-app-wireshark.png    \
795         image/hi48-app-wireshark.png    \
796         image/layout_1.png              \
797         image/layout_2.png              \
798         image/layout_3.png              \
799         image/layout_4.png              \
800         image/layout_5.png              \
801         image/layout_6.png              \
802         image/libwireshark.rc.in        \
803         image/libwsutil.rc.in           \
804         image/lo16-app-wireshark.png    \
805         image/lo32-app-wireshark.png    \
806         image/lo48-app-wireshark.png    \
807         image/Makefile.nmake                    \
808         image/mergecap.rc.in                    \
809         image/minus-8.png                       \
810         image/nsis-checked.bmp                  \
811         image/nsis-unchecked.bmp                \
812         image/openhand-16.png                   \
813         image/plus-8.png                        \
814         image/rawshark.rc.in                    \
815         image/README.image                      \
816         image/reordercap.rc.in                  \
817         image/rubberband-16.png                 \
818         image/status.qrc                        \
819         image/stock_dialog_error_48.xpm         \
820         image/stock_dialog_info_48.xpm          \
821         image/stock_dialog_question_48.xpm      \
822         image/stock_dialog_stop_48.xpm          \
823         image/stock_dialog_warning_48.xpm       \
824         image/text2pcap.rc.in                   \
825         image/toolbar.qrc                       \
826         image/toolbar/analyze_24.xpm            \
827         image/toolbar/audio_player_24.xpm       \
828         image/toolbar/autoscroll_24.xpm         \
829         image/toolbar/capture_airpcap_16.xpm    \
830         image/toolbar/capture_capture_16.xpm    \
831         image/toolbar/capture_details_16.xpm    \
832         image/toolbar/capture_details_24.xpm    \
833         image/toolbar/capture_ethernet_16.xpm   \
834         image/toolbar/capture_filter_24.xpm     \
835         image/toolbar/capture_interfaces_16.png \
836         image/toolbar/capture_interfaces_24.png \
837         image/toolbar/capture_options_16.png    \
838         image/toolbar/capture_options_24.png    \
839         image/toolbar/capture_prepare_16.xpm    \
840         image/toolbar/capture_restart_16.png    \
841         image/toolbar/capture_restart_24.png    \
842         image/toolbar/capture_start_16.png      \
843         image/toolbar/capture_start_24.png      \
844         image/toolbar/capture_stop_16.png       \
845         image/toolbar/capture_stop_24.png       \
846         image/toolbar/checkbox_16.xpm           \
847         image/toolbar/colorize_24.xpm           \
848         image/toolbar/conversations_16.xpm      \
849         image/toolbar/decode_24.xpm             \
850         image/toolbar/decode_as_16.xpm          \
851         image/toolbar/display_filter_24.xpm     \
852         image/toolbar/endpoints_16.xpm          \
853         image/toolbar/expert_info_16.xpm        \
854         image/toolbar/file_set_list_16.xpm      \
855         image/toolbar/file_set_next_16.xpm      \
856         image/toolbar/file_set_previous_16.xpm  \
857         image/toolbar/flow_graph_16.xpm \
858         image/toolbar/gnome_emblem_web_16.png   \
859         image/toolbar/gnome_emblem_web_24.png   \
860         image/toolbar/graphs_16.xpm     \
861         image/toolbar/icon_color_0.xpm  \
862         image/toolbar/icon_color_1.xpm  \
863         image/toolbar/icon_color_2.xpm  \
864         image/toolbar/icon_color_3.xpm  \
865         image/toolbar/icon_color_4.xpm  \
866         image/toolbar/icon_color_5.xpm  \
867         image/toolbar/icon_color_6.xpm  \
868         image/toolbar/icon_color_7.xpm  \
869         image/toolbar/icon_color_8.xpm  \
870         image/toolbar/icon_color_9.xpm  \
871         image/toolbar/internet_24.xpm   \
872         image/toolbar/modem_16.png      \
873         image/toolbar/modem_16.xpm      \
874         image/toolbar/network_bluetooth_16.png  \
875         image/toolbar/network_usb.svg           \
876         image/toolbar/network_usb_16.png        \
877         image/toolbar/network_virtual_16.xpm    \
878         image/toolbar/network_wired_16.png      \
879         image/toolbar/network_wireless_16.png   \
880         image/toolbar/pipe_16.png       \
881         image/toolbar/remote_arrow_16.png       \
882         image/toolbar/remote_globe_16.png       \
883         image/toolbar/remote_sat_16.png \
884         image/toolbar/resize_columns_24.xpm     \
885         image/toolbar/telephone_16.xpm  \
886         image/toolbar/telephony_16.xpm  \
887         image/toolbar/time_24.xpm       \
888         image/toolbar/toolbar_wireshark_file_16.png     \
889         image/toolbar/toolbar_wireshark_file_24.png     \
890         image/toolbar/voip_flow_24.xpm  \
891         image/toolbar/web_support_24.xpm        \
892         image/toolbar/wep_closed_24.xpm \
893         image/tshark.rc.in      \
894         image/voip_bg.xpm       \
895         image/voip_select.xpm   \
896         image/wireshark.exe.manifest.in \
897         image/wireshark.ico     \
898         image/wireshark.rc.in   \
899         image/wiresharkdoc.ico  \
900         image/wiresharkinst.ico \
901         image/WiresharkDoc-16.png       \
902         image/WiresharkDoc-24.png       \
903         image/WiresharkDoc-32.png       \
904         image/WiresharkDoc-48.png       \
905         image/WiresharkDoc-64.png       \
906         image/WiresharkDoc-128.png      \
907         image/WiresharkDoc-256.png      \
908         image/wiretap.rc.in     \
909         image/wsicon.svg        \
910         image/wsicon16.png      \
911         image/wsicon24.png      \
912         image/wsicon32.png      \
913         image/wsicon48.png      \
914         image/wsicon64.png      \
915         image/wsicon128.png     \
916         image/wsicon256.png     \
917         image/wsicon512.png     \
918         image/wsicon1024.png    \
919         image/wsicon-ask.png    \
920         image/wsicon-ask.svg    \
921         image/wsiconcap.svg     \
922         image/wsiconcap256.png  \
923         image/wsiconcap512.png  \
924         image/wsiconcap1024.png \
925         image/wsiconinst.svg    \
926         image/wsiconinst256.png \
927         image/wslogo-dev.svg    \
928         image/wslogo.eps        \
929         image/wslogo.svg        \
930         image/wssplash_dev.png  \
931         image/wssplash.png      \
932         ipmap.html              \
933         macosx-setup.sh         \
934         macosx-support-lib-patches/glib-gconvert.c.patch \
935         macosx-support-lib-patches/glib-pkgconfig.patch \
936         macosx-support-lib-patches/gnutls-pkgconfig.patch \
937         macosx-support-lib-patches/portaudio-pa_mac_core.h.patch \
938         macosx-support-lib-patches/portaudio-pa_mac_core.c.patch \
939         make-version.pl         \
940         manuf                   \
941         manuf.tmpl              \
942         mergecap.c              \
943         pdml2html.xsl           \
944         reordercap.c            \
945         smi_modules             \
946         text2pcap-scanner.l     \
947         text2pcap.h             \
948         services                \
949         wireshark.desktop       \
950         wireshark-mime-package.xml \
951         wka.tmpl                \
952         CMakeLists.txt          \
953         cmakeconfig.h.in        \
954         wsutil/CMakeLists.txt   \
955         CMakeOptions.txt        \
956         wiretap/CMakeLists.txt  \
957         README.cmake            \
958         ConfigureChecks.cmake   \
959         cmake/modules/CMakeInstallDirs.cmake    \
960         cmake/modules/COPYING-CMAKE-SCRIPTS     \
961         cmake/modules/CheckCLinkerFlag.cmake    \
962         cmake/modules/FeatureSummary.cmake      \
963         cmake/modules/FindADNS.cmake            \
964         cmake/modules/FindCAP.cmake             \
965         cmake/modules/FindCARES.cmake           \
966         cmake/modules/FindFOP.cmake             \
967         cmake/modules/FindGCRYPT.cmake          \
968         cmake/modules/FindGEOIP.cmake           \
969         cmake/modules/FindGLIB2.cmake           \
970         cmake/modules/FindGMODULE2.cmake        \
971         cmake/modules/FindGNUTLS.cmake          \
972         cmake/modules/FindGTHREAD2.cmake        \
973         cmake/modules/FindGTK2.cmake            \
974         cmake/modules/FindGTK3.cmake            \
975         cmake/modules/FindHtmlViewer.cmake      \
976         cmake/modules/FindKERBEROS.cmake        \
977         cmake/modules/FindNL.cmake              \
978         cmake/modules/FindLEX.cmake             \
979         cmake/modules/FindLUA.cmake             \
980         cmake/modules/FindLYNX.cmake            \
981         cmake/modules/FindM.cmake               \
982         cmake/modules/FindPCAP.cmake            \
983         cmake/modules/FindPOD.cmake             \
984         cmake/modules/FindPORTAUDIO.cmake       \
985         cmake/modules/FindSED.cmake             \
986         cmake/modules/FindSH.cmake              \
987         cmake/modules/FindSMI.cmake             \
988         cmake/modules/FindXMLLINT.cmake         \
989         cmake/modules/FindXSLTPROC.cmake        \
990         cmake/modules/FindYACC.cmake            \
991         cmake/modules/FindYAPP.cmake            \
992         cmake/modules/FindZLIB.cmake            \
993         cmake/modules/LICENSE.txt               \
994         cmake/modules/UseLemon.cmake            \
995         cmake/modules/UseMakeDissectorReg.cmake \
996         cmake/modules/UseMakeTapReg.cmake       \
997         cmake/modules/readme.txt                \
998         ui/win32/Makefile.nmake                 \
999         ui/win32/console_win32.c                \
1000         ui/win32/console_win32.h                \
1001         ui/win32/file_dlg_win32.c               \
1002         ui/win32/file_dlg_win32.h               \
1003         ui/win32/print_win32.c                  \
1004         ui/win32/print_win32.h                  \
1005         ui/win32/settings.ini                   \
1006         CPackConfig.txt                         \
1007         all.vcproj                              \
1008         dumpcap.vcproj                          \
1009         packaging.vcproj                        \
1010         tshark.vcproj                           \
1011         wireshark.vcproj
1012
1013 install-exec-hook:
1014 if HAVE_DUMPCAP_GROUP
1015         -chgrp $(DUMPCAP_GROUP) $(DESTDIR)$(bindir)/dumpcap
1016 endif
1017 if SETCAP_INSTALL
1018         -$(SETCAP) cap_net_raw,cap_net_admin+eip $(DESTDIR)$(bindir)/dumpcap
1019         -chmod o-rws $(DESTDIR)$(bindir)/dumpcap
1020 else
1021 if SETUID_INSTALL
1022         -chmod o-rws $(DESTDIR)$(bindir)/dumpcap
1023         -chmod +s $(DESTDIR)$(bindir)/dumpcap
1024 endif
1025 endif
1026
1027
1028 DIST_SUBDIRS = asn1 codecs doc epan echld ui ui/cli ui/gtk ui/qt help packaging plugins tools wiretap wsutil docbook
1029
1030 if HAVE_PLUGINS
1031 SUBDIRS = tools wsutil wiretap epan @echld_dir@ plugins packaging help ui @wireshark_SUBDIRS@ ui/cli . doc
1032 else
1033 SUBDIRS = tools wsutil wiretap epan @echld_dir@ packaging help ui @wireshark_SUBDIRS@ ui/cli . doc
1034 endif
1035
1036 help/faq.txt: $(srcdir)/help/faq.py
1037         $(AM_V_GEN)(cd help ; \
1038         $(MAKE) faq.txt ;)
1039
1040 libtool: $(LIBTOOL_DEPS)
1041         $(SHELL) ./config.status --recheck
1042
1043
1044 # Used by patch-bzip2
1045 # Trim off any extra version information and find the previous micro release.
1046 BASE_VERSION=`echo "$(VERSION)" | awk -F. '{$$3 = $$3 + 0 ; printf("%d.%d.%d"), $$1, $$2, $$3}'`
1047 PREV_VERSION=`echo "$(VERSION)" | awk -F. '{$$3 = $$3 + 0 ; if ($$3 > 0) $$3-- ; printf("%d.%d.%d"), $$1, $$2, $$3}'`
1048 PREV_DIR="wireshark-$(PREV_VERSION)"
1049 PREV_FILE="$(PREV_DIR).tar.bz2"
1050 PREV_URL="http://www.wireshark.org/download/src/all-versions/$(PREV_FILE)"
1051
1052 patch-bzip2: distdir
1053         if test x$(BASE_VERSION) != x$(PREV_VERSION) ; then \
1054                 curl -z $(PREV_FILE) -o $(PREV_FILE) $(PREV_URL) && \
1055                 tar -xjf $(PREV_FILE) && \
1056                 diff -urN $(PREV_DIR) $(distdir) | bzip2 > patch-wireshark-$(PREV_VERSION)-to-$(VERSION).bz2 && \
1057                 echo "Created patch-bzip2" ; \
1058                 rm -rf "$(PREV_FILE)" "$(PREV_DIR)" ; \
1059         else \
1060                 echo "This appears to be the first micro version ($(PREV_VERSION)). Skipping." ; \
1061         fi
1062         $(am__remove_distdir)
1063
1064 # Install some desktop files (for use with GNOME, KDE, or any other freedesktop.org-compliant desktops)
1065 # No, these do not go into $(datarootdir): the desktop won't look for them there.
1066 # Yes, that violate's autofoo's principle of relocatability.
1067 # What we (probably) should do is check `pkg-config --variable=prefix gtk+-2.0` to know where
1068 # to install this stuff...
1069 install_desktop_files:
1070         mkdir -p $(DESTDIR)/usr/share/{mime/packages,applications}
1071         install -m 644 -T wireshark-mime-package.xml $(DESTDIR)/usr/share/mime/packages/wireshark.xml
1072         if test x$(DESKTOP_FILE_INSTALL) != x ; then \
1073                 $(DESKTOP_FILE_INSTALL) --dir $(DESTDIR)/usr/share/applications wireshark.desktop; \
1074         else \
1075                 install -m 644 -T wireshark.desktop $(DESTDIR)/usr/share/applications/wireshark.desktop; \
1076         fi
1077         for size in 16 24 32 48 64 128 256; \
1078         do \
1079                 mkdir -p $(DESTDIR)/usr/share/icons/hicolor/$${size}x$${size}/{apps,mimetypes} ; \
1080                 install -m 644 image/wsicon$${size}.png  $(DESTDIR)/usr/share/icons/hicolor/$${size}x$${size}/apps/wireshark.png ; \
1081                 install -m 644 -T image/WiresharkDoc-$${size}.png  $(DESTDIR)/usr/share/icons/hicolor/$${size}x$${size}/mimetypes/application-wireshark-doc.png ; \
1082         done
1083         @echo "Don't forget to run \"update-desktop-database\" and \"update-mime-database /usr/share/mime\""
1084
1085 # Used by svr4-package and osx-package
1086 # We load top_stagedir with an explicit path so that libtool doesn't freak.
1087 top_stagedir=`cd $(top_builddir) && pwd`/packaging/staging
1088 stagedir=$(top_stagedir)/$(PACKAGE).inst
1089
1090 host_cpu=@host_cpu@
1091 host_os=@host_os@
1092
1093 svr4-package: $(PROGRAMS) $(SCRIPTS) $(MANS) $(DATA)
1094         @if test x$(HAVE_SVR4_PACKAGING) = xyes ; then \
1095                 rm -rf $(stagedir) ; \
1096                 $(MAKE) DESTDIR=$(stagedir) install; \
1097                 $(srcdir)/packaging/svr4/mkpkg \
1098                         $(PACKAGE) \
1099                         $(PACKAGE)-$(VERSION)-$(host_os)-$(host_cpu)-local \
1100                         $(prefix) \
1101                         $(top_stagedir) ; \
1102         else \
1103                 echo "Error: SVR4 packaging tools not found." ; \
1104                 echo "Package build abandoned." ; \
1105         fi
1106
1107 solaris-package: svr4-package
1108
1109 rpm_topdir=`cd $(top_builddir) && pwd`/packaging/rpm
1110 rpm-package: dist
1111         @if test x$(HAVE_RPM) = xyes ; then \
1112                 cd $(rpm_topdir) ; \
1113                 mkdir -p BUILD RPMS SOURCES SRPMS; \
1114                 cd SOURCES ; \
1115                 ln -sf ../../../$(distdir).tar.bz2 ; \
1116                 cd .. ; \
1117                 rpmbuild --define "_topdir `cd . && pwd`" --define "_prefix $(prefix)" --clean -ba SPECS/wireshark.spec && \
1118                         echo "Package successfully built in `pwd`/RPMS." && \
1119                         rm -f SOURCES/$(distdir).tar.bz2 $(distdir).tar.bz2 ; \
1120         else \
1121                 echo "Error: RPM executable and/or source directory not found." ; \
1122                 false; \
1123         fi
1124
1125 debian-package: debian/rules
1126         @if test x$(HAVE_DPKG_BUILDPACKAGE) = xyes ; then \
1127                 dpkg-buildpackage -rfakeroot -us -uc ; \
1128         else \
1129                 echo "Error: Debian packaging tools not found." ; \
1130                 echo "Package build abandoned." ; \
1131         fi
1132
1133 # XXX - This assumes we're building from the source directory.
1134 osx-app: $(PROGRAMS) $(SCRIPTS) $(MANS) $(DATA) packaging/macosx/Info.plist
1135         @if test x$(HAVE_OSX_PACKAGING) = xyes ; then \
1136                 rm -rf $(stagedir) ; \
1137                 $(MAKE) DESTDIR=$(stagedir) install; \
1138                 cd $(srcdir)/packaging/macosx ;  \
1139                 ./osx-app.sh @OSX_APP_FLAGS@ -bp ../staging/$(PACKAGE).inst$(bindir) ; \
1140         else \
1141                 echo "Error: OS X packaging tools not found." ; \
1142                 echo "Package build abandoned." ; \
1143         fi
1144
1145 packaging/macosx/COPYING.txt: COPYING
1146         (cd packaging/macosx ; \
1147         $(MAKE) COPYING.txt ;)
1148
1149 osx-package: osx-app packaging/macosx/COPYING.txt
1150         @if test x$(HAVE_OSX_PACKAGING) = xyes ; then \
1151                 cd $(srcdir)/packaging/macosx ;  \
1152                 chmod +x ./osx-dmg.sh ; \
1153                 ./osx-dmg.sh @OSX_DMG_FLAGS@ ; \
1154         fi
1155
1156 osx-install: osx-app
1157         @if test x$(HAVE_OSX_PACKAGING) = xyes ; then \
1158                 echo "Copying Wireshark.app to /Applications" ; \
1159                 cp -pr $(srcdir)/packaging/macosx/Wireshark.app /Applications ;  \
1160         fi
1161
1162 clean-local:
1163         rm -rf $(top_stagedir)
1164
1165 dumpabi:
1166         $(MAKE) -C wiretap dumpabi-libwiretap
1167         $(MAKE) -C epan dumpabi-libwireshark
1168         $(MAKE) -C wsutil dumpabi-libwsutil
1169
1170 checkapi_local:
1171         $(PERL) tools/checkAPIs.pl -build \
1172         $(TSHARK_TAP_SRC) \
1173         $(wireshark_SOURCES)
1174 #       $(EXTRA_wireshark_SOURCES)
1175
1176 checkapi: checkapi_local
1177         cd wiretap && $(MAKE) checkapi
1178         cd codecs && $(MAKE) checkapi
1179         cd ui && $(MAKE) checkapi
1180         cd ui/gtk && $(MAKE) checkapi
1181 ##      cd epan && $(MAKE) checkapi
1182 ##      cd epan/crypt && $(MAKE) checkapi
1183         cd epan/dfilter && $(MAKE) checkapi
1184 ##      cd epan/ftypes && $(MAKE) checkapi
1185 ##      cd epan/wslua && $(MAKE) checkapi
1186         cd epan/dissectors && $(MAKE) checkapi
1187         cd plugins && $(MAKE) checkapi
1188         cd wsutil && $(MAKE) checkapi
1189
1190 wsar_html: doxygen.cfg doxygen_global.cfg FORCE
1191 if HAVE_DOXYGEN
1192         rm -rf wsar_html
1193         cd epan && $(MAKE) $@
1194         cd ui && $(MAKE) $@
1195         (umask 022 ; $(DOXYGEN) doxygen.cfg)
1196 endif
1197
1198 wsar-zip: wsar_html
1199 if HAVE_DOXYGEN
1200         rm -f wsar_html.zip
1201         zip -rq wsar_html.zip wsar_html
1202 endif
1203