From Michael Bean via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9384 :
[jelmer/wireshark.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        epan/filesystem.c
317
318 else            # HAVE_PLUGINS
319
320 plugin_ldadd =
321 WTAP_PLUGIN_SOURCES =
322
323 endif           # HAVE_PLUGINS
324
325 include Makefile.common
326
327 if ENABLE_STATIC
328 if HAVE_GTK
329 wireshark_LDFLAGS = -Wl,-static -all-static
330 endif
331 if HAVE_Qt
332 wireshark_qt_LDFLAGS = -Wl,-static -all-static
333 endif
334 else
335 if HAVE_GTK
336 wireshark_LDFLAGS = -export-dynamic
337 endif
338 if HAVE_Qt
339 wireshark_qt_LDFLAGS = -export-dynamic
340 endif
341 endif
342
343 # Libraries and plugin flags with which to link wireshark.
344 #
345 # Note that Wireshark, when built with a version of GTK+ that runs
346 # atop X11, doesn't have to be linked with @SOCKET_LIBS@ or @NSL_LIBS@,
347 # as those should also be included in @GTK_LIBS@ (as those are also
348 # needed for X applications, and GTK+ applications are X applications
349 # if the version of GTK+ they're built with runs atop X11).
350 #
351 # However, it *does* have to be linked with @GLIB_LIBS@; not all of
352 # the necessary GLib libraries are included in @GTK_LIBS@.  To quote
353 # Gentoo bug 423743 at
354 #
355 #       https://bugs.gentoo.org/show_bug.cgi?id=423743
356 #
357 # "The Makefile.am claims including GLIB_LIBS when linking wireshark is
358 # unnecessary, because wireshark links to GTK_LIBS which is a superset.
359 # It is not actually a superset: gmodule is included in GLIB_LIBS but
360 # not in GTK_LIBS (unless accidentally on older glibs/gtks)."
361 #
362 # although it's also possible that -lgmodule is in GTK_LIBS but not
363 # GLIB_LIBS (that's the case on my machine right now, for example).
364 #
365 wireshark_ldadd = \
366         ui/libui.a                      \
367         ui/libui_dirty.a                \
368         codecs/libcodec.a               \
369         wiretap/libwiretap.la           \
370         epan/libwireshark.la            \
371         wsutil/libwsutil.la             \
372         @SSL_LIBS@                      \
373         $(plugin_ldadd)                 \
374         @PCAP_LIBS@                     \
375         @C_ARES_LIBS@                   \
376         @ADNS_LIBS@                     \
377         @KRB5_LIBS@                     \
378         @APPLICATIONSERVICES_FRAMEWORKS@        \
379         @SYSTEMCONFIGURATION_FRAMEWORKS@        \
380         @COREFOUNDATION_FRAMEWORKS@     \
381         @PY_LIBS@                       \
382         @LIBGCRYPT_LIBS@                \
383         @LIBGNUTLS_LIBS@                \
384         @LIBSMI_LDFLAGS@                \
385         @PORTAUDIO_LIBS@                \
386         @GLIB_LIBS@                     \
387         -lm
388
389 if HAVE_Qt
390 wireshark_qt_SOURCES = $(WIRESHARK_COMMON_SRC)
391 wireshark_qt_INCLUDES = $(WIRESHARK_COMMON_INCLUDES)
392 wireshark_qt_CFLAGS = $(AM_CLEAN_CFLAGS) $(py_dissectors_dir)
393 wireshark_qt_LDADD =  ui/qt/libqtui.a $(wireshark_ldadd) @Qt_LIBS@
394 #
395 # XXX - this makes wireshark_qt_LDFLAGS not work; we should figure out
396 # another way to get wireshark-qt linked as a C++ program, perhaps by
397 # having a top-level wireshark-qt.cpp file that contains main() and
398 # hthat calls the UI code from ui/qt.
399 #
400 wireshark_qt_LINK = $(CXXLINK)
401 endif
402
403 if HAVE_GTK
404 wireshark_SOURCES = $(WIRESHARK_COMMON_SRC)
405 wireshark_INCLUDES = $(WIRESHARK_COMMON_INCLUDES)
406 wireshark_CFLAGS = $(AM_CLEAN_CFLAGS) $(py_dissectors_dir)
407 wireshark_LDADD = ui/gtk/libgtkui.a $(wireshark_ldadd) @GTK_LIBS@
408 endif
409
410 # Ideally we could trigger automatic c++ linking here with
411 #   nodist_EXTRA_wireshark_SOURCES = dummy.cpp
412 # Unfortunately that check is done by automake and not configure.
413 # We do the following to try to avoid using c++ to link Wireshark at
414 # all times.
415 nodist_EXTRA_wireshark_cxx_SOURCES = dummy.cpp
416 wireshark_cxx_SOURCES =
417
418 if ENABLE_STATIC
419 tshark_LDFLAGS = -Wl,-static -all-static
420 else
421 tshark_LDFLAGS = -export-dynamic
422 endif
423
424 # Libraries and plugin flags with which to link tshark.
425 tshark_LDADD = \
426         ui/cli/libcliui.a               \
427         ui/libui.a                      \
428         wiretap/libwiretap.la           \
429         epan/libwireshark.la            \
430         wsutil/libwsutil.la             \
431         @SSL_LIBS@                      \
432         $(plugin_ldadd)                 \
433         @GLIB_LIBS@ -lm                 \
434         @PCAP_LIBS@                     \
435         @SOCKET_LIBS@                   \
436         @NSL_LIBS@                      \
437         @C_ARES_LIBS@                   \
438         @ADNS_LIBS@                     \
439         @KRB5_LIBS@                     \
440         @SYSTEMCONFIGURATION_FRAMEWORKS@        \
441         @COREFOUNDATION_FRAMEWORKS@     \
442         @PY_LIBS@                       \
443         @LIBGCRYPT_LIBS@                \
444         @LIBGNUTLS_LIBS@                \
445         @LIBSMI_LDFLAGS@
446 tshark_CFLAGS = $(AM_CLEAN_CFLAGS) $(py_dissectors_dir)
447
448 if ENABLE_STATIC
449 rawshark_LDFLAGS = -Wl,-static -all-static
450 else
451 rawshark_LDFLAGS = -export-dynamic
452 endif
453
454 # Libraries and plugin flags with which to link rawshark.
455 rawshark_LDADD = \
456         ui/libui.a                      \
457         wiretap/libwiretap.la           \
458         epan/libwireshark.la            \
459         wsutil/libwsutil.la             \
460         @SSL_LIBS@                      \
461         $(plugin_ldadd)                 \
462         @GLIB_LIBS@ -lm                 \
463         @PCAP_LIBS@                     \
464         @SOCKET_LIBS@                   \
465         @NSL_LIBS@                      \
466         @C_ARES_LIBS@                   \
467         @ADNS_LIBS@                     \
468         @KRB5_LIBS@                     \
469         @SYSTEMCONFIGURATION_FRAMEWORKS@        \
470         @COREFOUNDATION_FRAMEWORKS@     \
471         @PY_LIBS@                       \
472         @LIBGCRYPT_LIBS@                \
473         @LIBGNUTLS_LIBS@                \
474         @LIBSMI_LDFLAGS@
475 rawshark_CFLAGS = $(AM_CLEAN_CFLAGS) $(py_dissectors_dir)
476
477 # Libraries with which to link text2pcap.
478 text2pcap_LDADD = \
479         wsutil/libwsutil.la             \
480         @GLIB_LIBS@ -lm
481 # Don't turn on -Werror for text2pcap: its source includes text2pcap-scanner.c
482 # which is generated (and therefore not always clean).
483 # We could generate text2pcap.o as a library with -Werror but for now it
484 # doesn't seem worth the effort.
485 #text2pcap_CFLAGS = $(AM_CLEAN_CFLAGS)
486
487 # Libraries with which to link mergecap.
488 mergecap_LDADD = \
489         wiretap/libwiretap.la           \
490         wsutil/libwsutil.la             \
491         @GLIB_LIBS@
492 mergecap_CFLAGS = $(AM_CLEAN_CFLAGS)
493
494 # Libraries with which to link capinfos.
495 capinfos_LDADD = \
496         wiretap/libwiretap.la           \
497         wsutil/libwsutil.la             \
498         @GLIB_LIBS@                     \
499         @LIBGCRYPT_LIBS@
500 capinfos_CFLAGS = $(AM_CLEAN_CFLAGS) $(py_dissectors_dir)
501
502 # Libraries with which to link editcap.
503 editcap_LDADD = \
504         wiretap/libwiretap.la           \
505         wsutil/libwsutil.la             \
506         @GLIB_LIBS@
507 editcap_CFLAGS = $(AM_CLEAN_CFLAGS) $(py_dissectors_dir)
508
509 # Libraries with which to link reordercap.
510 reordercap_LDADD = \
511         wiretap/libwiretap.la           \
512         wsutil/libwsutil.la             \
513         @GLIB_LIBS@
514 reordercap_CFLAGS = $(AM_CLEAN_CFLAGS)
515
516 # Libraries with which to link randpkt.
517 randpkt_LDADD = \
518         wiretap/libwiretap.la           \
519         wsutil/libwsutil.la             \
520         @GLIB_LIBS@ -lm                 \
521         @PCAP_LIBS@                     \
522         @SOCKET_LIBS@                   \
523         @NSL_LIBS@                      \
524         @C_ARES_LIBS@                   \
525         @ADNS_LIBS@
526 randpkt_CFLAGS = $(AM_CLEAN_CFLAGS)
527
528 # Libraries and plugin flags with which to link dftest.
529 dftest_LDADD = \
530         ui/libui.a                      \
531         wiretap/libwiretap.la           \
532         wsutil/libwsutil.la             \
533         epan/libwireshark.la            \
534         @SSL_LIBS@                      \
535         $(plugin_ldadd)                 \
536         @GLIB_LIBS@ -lm                 \
537         @PCAP_LIBS@                     \
538         @SOCKET_LIBS@                   \
539         @NSL_LIBS@                      \
540         @C_ARES_LIBS@                   \
541         @ADNS_LIBS@                     \
542         @KRB5_LIBS@                     \
543         @PY_LIBS@                       \
544         @LIBGCRYPT_LIBS@                \
545         @LIBGNUTLS_LIBS@                \
546         @LIBSMI_LDFLAGS@
547 dftest_CFLAGS = $(AM_CLEAN_CFLAGS) $(py_dissectors_dir)
548
549 echld_test_LDADD = \
550         epan/libwireshark.la \
551         echld/libechld.la \
552         wsutil/libwsutil.la \
553         @GLIB_LIBS@ -lm                 \
554         @PCAP_LIBS@                     \
555         @SOCKET_LIBS@                   \
556         @NSL_LIBS@                      \
557         @C_ARES_LIBS@                   \
558         @ADNS_LIBS@
559
560 echld_test_DEPENDENCIES = \
561         echld/libechld.la \
562         epan/libwireshark.la
563
564 echld_test_CFLAGS = $(AM_CLEAN_CFLAGS)
565
566
567 # Libraries with which to link dumpcap.
568 dumpcap_LDADD = \
569         wsutil/libwsutil.la             \
570         @GLIB_LIBS@                     \
571         @PCAP_LIBS@                     \
572         @SOCKET_LIBS@                   \
573         @NSL_LIBS@                      \
574         @SYSTEMCONFIGURATION_FRAMEWORKS@        \
575         @COREFOUNDATION_FRAMEWORKS@     \
576         @LIBCAP_LIBS@
577 dumpcap_CFLAGS = $(AM_CLEAN_CFLAGS) $(PIE_CFLAGS)
578 dumpcap_LDFLAGS = $(PIE_LDFLAGS)
579
580 # Common headers
581 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/wiretap \
582         $(LIBGNUTLS_CFLAGS) $(LIBGCRYPT_CFLAGS) $(LIBSMI_CFLAGS) $(PY_CFLAGS) \
583         @LUA_INCLUDES@ -DTOP_SRCDIR=\"$(abs_top_srcdir)\"
584
585 #
586 # Build the version string
587 #
588 # FORCE is the portable version of .PHONY
589 FORCE:
590
591 AM_V_PERL = $(am__v_PERL_@AM_V@)
592 am__v_PERL_ = $(am__v_PERL_@AM_DEFAULT_V@)
593 am__v_PERL_0 = @echo "  PERL    " $@;
594 am__v_PERL_1 =
595
596 svnversion.h: FORCE
597         $(AM_V_PERL)$(PERL) $(srcdir)/make-version.pl $(srcdir)
598
599 #
600 # Build shell scripts by doing variable substitution.
601 # Taken from autoconf 2.13.
602 #
603 editsh = sed -e 's,@''SHELL''@,$(SHELL),g'
604
605 SUFFIXES = .sh
606 .sh:
607         rm -f $@ $@.tmp
608         $(editsh) $< > $@.tmp && chmod +x $@.tmp && mv $@.tmp $@
609
610 services:
611         $(PYTHON) $(srcdir)/tools/make-services.py
612
613 CLEANFILES =            \
614         *~              \
615         doxygen-core.tag        \
616         vgcore.*
617
618 #
619 # We have to remove svnversion.h with "make distclean", as, otherwise,
620 # "make distcheck" fails.  We still need to make the tarballs work
621 # even if you do "make distclean" and try to rebuild; that's a work in
622 # progress.
623 #
624 # XXX - "ps.c" is distributed in the source tarballs; why is it in the
625 # list of files removed by "make distclean"?  (It's deliberately
626 # included in that list.)
627 #
628 DISTCLEANFILES = \
629         ps.c                    \
630         svnversion.h
631
632 MAINTAINERCLEANFILES =          \
633         $(GENERATED_FILES)      \
634         Makefile.in             \
635         aclocal.m4              \
636         compile                 \
637         config.h.in             \
638         configure               \
639         depcomp                 \
640         install-sh              \
641         ltmain.sh               \
642         missing                 \
643         ylwrap
644
645 EXTRA_DIST = \
646         INSTALL.configure       \
647         Makefile.am.inc         \
648         Makefile.common         \
649         Makefile.nmake          \
650         Makefile.nmake.inc      \
651         README.aix              \
652         README.bsd              \
653         README.DECT             \
654         README.hpux             \
655         README.irix             \
656         README.linux            \
657         README.macos            \
658         README.tru64            \
659         README.vmware           \
660         README.windows          \
661         abi-descriptor.template \
662         aclocal-fallback/libsmi.m4 \
663         aclocal-fallback/libgcrypt.m4 \
664         aclocal-fallback/glib-2.0.m4 \
665         aclocal-fallback/gtk-2.0.m4 \
666         aclocal-fallback/gtk-3.0.m4 \
667         aclocal-flags           \
668         adns_dll.dep            \
669         adns_dll.rc             \
670         autogen.sh              \
671         capinfos.c              \
672         capture_win_ifnames.c   \
673         capture_win_ifnames.h   \
674         capture-wpcap.c         \
675         capture-wpcap.h         \
676         capture_wpcap_packet.c  \
677         capture_wpcap_packet.h  \
678         cfilters                \
679         colorfilters            \
680         config.h.win32          \
681         config.nmake            \
682         debian/changelog        \
683         debian/compat           \
684         debian/control          \
685         debian/copyright        \
686         debian/dirs             \
687         debian/headers-check.c  \
688         debian/patches/00list   \
689         debian/postinst         \
690         debian/pycompat         \
691         debian/pyversions       \
692         debian/rules            \
693         debian/README.source    \
694         debian/tshark.files     \
695         debian/tshark.manpages  \
696         debian/watch            \
697         debian/wireshark-common.files \
698         debian/wireshark-common.manpages \
699         debian/wireshark-common.shlibs \
700         debian/wireshark-dev.docs \
701         debian/wireshark-dev.files \
702         debian/wireshark-dev.header-files \
703         debian/wireshark-dev.manpages \
704         debian/wireshark-dev.prerm \
705         debian/wireshark-root.desktop \
706         debian/wireshark.desktop \
707         debian/wireshark.files \
708         debian/wireshark.manpages \
709         debian/wireshark.menu   \
710         dfilters                \
711         doxygen.cfg.in          \
712         dumpcap.c       \
713         editcap.c               \
714         epan/print.ps           \
715         fix/FIX.xml             \
716         fix/FIX40.xml           \
717         fix/FIX41.xml           \
718         fix/FIX42.xml           \
719         fix/FIX43.xml           \
720         fix/FIX44.xml           \
721         fix/README              \
722         fix/Values.xsl          \
723         fix/hfDecl.xsl          \
724         fix/hfField.xsl         \
725         fix/hfList.xsl          \
726         idl/coseventcomm.idl    \
727         idl/cosnaming.idl       \
728         idl/tango.idl   \
729         idl/parlay/am.idl       \
730         idl/parlay/cccs.idl     \
731         idl/parlay/cm.idl       \
732         idl/parlay/common_cc_data.idl   \
733         idl/parlay/cs.idl       \
734         idl/parlay/dsc.idl      \
735         idl/parlay/fw_data.idl  \
736         idl/parlay/fw_if.idl    \
737         idl/parlay/fw_if_access.idl     \
738         idl/parlay/fw_if_app.idl        \
739         idl/parlay/fw_if_entop.idl      \
740         idl/parlay/fw_if_service.idl    \
741         idl/parlay/gcc_data.idl \
742         idl/parlay/gcc_interfaces.idl   \
743         idl/parlay/gms.idl      \
744         idl/parlay/mm.idl       \
745         idl/parlay/mmccs.idl    \
746         idl/parlay/mmm.idl      \
747         idl/parlay/mpcc_data.idl        \
748         idl/parlay/mpcc_interfaces.idl  \
749         idl/parlay/osa.idl      \
750         idl/parlay/pam_data.idl \
751         idl/parlay/pam_interfaces.idl   \
752         idl/parlay/Parlay.idl   \
753         idl/parlay/policy_data.idl      \
754         idl/parlay/policy_interfaces.idl        \
755         idl/parlay/README.parlay        \
756         idl/parlay/termcap.idl  \
757         idl/parlay/ui_data.idl  \
758         idl/parlay/ui_interfaces.idl    \
759         image/capinfos.rc.in    \
760         image/capture_comment.svg       \
761         image/capture_comment_add.png   \
762         image/capture_comment_disabled.png      \
763         image/capture_comment_update.png        \
764         image/capture_start_24.png              \
765         image/capture_start_active_24.png       \
766         image/capture_stop_24.png               \
767         image/clist_ascend.xpm                  \
768         image/clist_descend.xpm                 \
769         image/copy-8.png                        \
770         image/dfilter_apply_disabled.png        \
771         image/dfilter_apply_hover.png           \
772         image/dfilter_apply_normal.png          \
773         image/dfilter_apply_pressed.png         \
774         image/dfilter_bookmark_disabled.png     \
775         image/dfilter_bookmark_hover.png        \
776         image/dfilter_bookmark_normal.png       \
777         image/dfilter_bookmark_pressed.png      \
778         image/dfilter_dropdown.png              \
779         image/dfilter_erase_active.png          \
780         image/dfilter_erase_normal.png          \
781         image/dfilter_erase_selected.png        \
782         image/dfilter_refresh_active.png        \
783         image/dfilter_refresh_normal.png        \
784         image/display_filter.qrc                \
785         image/dumpcap.rc.in     \
786         image/editcap.rc.in     \
787         image/expert_chat.png   \
788         image/expert_error.png  \
789         image/expert_indicators.svg     \
790         image/expert_none.png   \
791         image/expert_note.png   \
792         image/expert_warn.png   \
793         image/file_dlg_win32.rc \
794         image/hi16-app-wireshark.png    \
795         image/hi32-app-wireshark.png    \
796         image/hi48-app-wireshark.png    \
797         image/layout_1.png              \
798         image/layout_2.png              \
799         image/layout_3.png              \
800         image/layout_4.png              \
801         image/layout_5.png              \
802         image/layout_6.png              \
803         image/libwireshark.rc.in        \
804         image/libwsutil.rc.in           \
805         image/lo16-app-wireshark.png    \
806         image/lo32-app-wireshark.png    \
807         image/lo48-app-wireshark.png    \
808         image/Makefile.nmake                    \
809         image/mergecap.rc.in                    \
810         image/minus-8.png                       \
811         image/nsis-checked.bmp                  \
812         image/nsis-unchecked.bmp                \
813         image/openhand-16.png                   \
814         image/plus-8.png                        \
815         image/rawshark.rc.in                    \
816         image/README.image                      \
817         image/reordercap.rc.in                  \
818         image/rubberband-16.png                 \
819         image/status.qrc                        \
820         image/stock_dialog_error_48.xpm         \
821         image/stock_dialog_info_48.xpm          \
822         image/stock_dialog_question_48.xpm      \
823         image/stock_dialog_stop_48.xpm          \
824         image/stock_dialog_warning_48.xpm       \
825         image/text2pcap.rc.in                   \
826         image/toolbar.qrc                       \
827         image/toolbar/analyze_24.xpm            \
828         image/toolbar/audio_player_24.xpm       \
829         image/toolbar/autoscroll_24.xpm         \
830         image/toolbar/capture_airpcap_16.xpm    \
831         image/toolbar/capture_capture_16.xpm    \
832         image/toolbar/capture_details_16.xpm    \
833         image/toolbar/capture_details_24.xpm    \
834         image/toolbar/capture_ethernet_16.xpm   \
835         image/toolbar/capture_filter_24.xpm     \
836         image/toolbar/capture_interfaces_16.png \
837         image/toolbar/capture_interfaces_24.png \
838         image/toolbar/capture_options_16.png    \
839         image/toolbar/capture_options_24.png    \
840         image/toolbar/capture_prepare_16.xpm    \
841         image/toolbar/capture_restart_16.png    \
842         image/toolbar/capture_restart_24.png    \
843         image/toolbar/capture_start_16.png      \
844         image/toolbar/capture_start_24.png      \
845         image/toolbar/capture_stop_16.png       \
846         image/toolbar/capture_stop_24.png       \
847         image/toolbar/checkbox_16.xpm           \
848         image/toolbar/colorize_24.xpm           \
849         image/toolbar/conversations_16.xpm      \
850         image/toolbar/decode_24.xpm             \
851         image/toolbar/decode_as_16.xpm          \
852         image/toolbar/display_filter_24.xpm     \
853         image/toolbar/endpoints_16.xpm          \
854         image/toolbar/expert_info_16.xpm        \
855         image/toolbar/file_set_list_16.xpm      \
856         image/toolbar/file_set_next_16.xpm      \
857         image/toolbar/file_set_previous_16.xpm  \
858         image/toolbar/flow_graph_16.xpm \
859         image/toolbar/gnome_emblem_web_16.png   \
860         image/toolbar/gnome_emblem_web_24.png   \
861         image/toolbar/graphs_16.xpm     \
862         image/toolbar/icon_color_0.xpm  \
863         image/toolbar/icon_color_1.xpm  \
864         image/toolbar/icon_color_2.xpm  \
865         image/toolbar/icon_color_3.xpm  \
866         image/toolbar/icon_color_4.xpm  \
867         image/toolbar/icon_color_5.xpm  \
868         image/toolbar/icon_color_6.xpm  \
869         image/toolbar/icon_color_7.xpm  \
870         image/toolbar/icon_color_8.xpm  \
871         image/toolbar/icon_color_9.xpm  \
872         image/toolbar/internet_24.xpm   \
873         image/toolbar/modem_16.png      \
874         image/toolbar/modem_16.xpm      \
875         image/toolbar/network_bluetooth_16.png  \
876         image/toolbar/network_usb.svg           \
877         image/toolbar/network_usb_16.png        \
878         image/toolbar/network_virtual_16.xpm    \
879         image/toolbar/network_wired_16.png      \
880         image/toolbar/network_wireless_16.png   \
881         image/toolbar/pipe_16.png       \
882         image/toolbar/remote_arrow_16.png       \
883         image/toolbar/remote_globe_16.png       \
884         image/toolbar/remote_sat_16.png \
885         image/toolbar/resize_columns_24.xpm     \
886         image/toolbar/telephone_16.xpm  \
887         image/toolbar/telephony_16.xpm  \
888         image/toolbar/time_24.xpm       \
889         image/toolbar/toolbar_wireshark_file_16.png     \
890         image/toolbar/toolbar_wireshark_file_24.png     \
891         image/toolbar/voip_flow_24.xpm  \
892         image/toolbar/web_support_24.xpm        \
893         image/toolbar/wep_closed_24.xpm \
894         image/tshark.rc.in      \
895         image/voip_bg.xpm       \
896         image/voip_select.xpm   \
897         image/wireshark.exe.manifest.in \
898         image/wireshark.ico     \
899         image/wireshark.rc.in   \
900         image/wiresharkdoc.ico  \
901         image/wiresharkinst.ico \
902         image/WiresharkDoc-16.png       \
903         image/WiresharkDoc-24.png       \
904         image/WiresharkDoc-32.png       \
905         image/WiresharkDoc-48.png       \
906         image/WiresharkDoc-64.png       \
907         image/WiresharkDoc-128.png      \
908         image/WiresharkDoc-256.png      \
909         image/wiretap.rc.in     \
910         image/wsicon.svg        \
911         image/wsicon16.png      \
912         image/wsicon24.png      \
913         image/wsicon32.png      \
914         image/wsicon48.png      \
915         image/wsicon64.png      \
916         image/wsicon128.png     \
917         image/wsicon256.png     \
918         image/wsicon512.png     \
919         image/wsicon1024.png    \
920         image/wsicon-ask.png    \
921         image/wsicon-ask.svg    \
922         image/wsiconcap.svg     \
923         image/wsiconcap256.png  \
924         image/wsiconcap512.png  \
925         image/wsiconcap1024.png \
926         image/wsiconinst.svg    \
927         image/wsiconinst256.png \
928         image/wslogo-dev.svg    \
929         image/wslogo.eps        \
930         image/wslogo.svg        \
931         image/wssplash_dev.png  \
932         image/wssplash.png      \
933         ipmap.html              \
934         macosx-setup.sh         \
935         macosx-support-lib-patches/glib-gconvert.c.patch \
936         macosx-support-lib-patches/glib-pkgconfig.patch \
937         macosx-support-lib-patches/gnutls-pkgconfig.patch \
938         macosx-support-lib-patches/portaudio-pa_mac_core.h.patch \
939         macosx-support-lib-patches/portaudio-pa_mac_core.c.patch \
940         make-version.pl         \
941         manuf                   \
942         manuf.tmpl              \
943         mergecap.c              \
944         pdml2html.xsl           \
945         reordercap.c            \
946         smi_modules             \
947         text2pcap-scanner.l     \
948         text2pcap.h             \
949         services                \
950         wireshark.desktop       \
951         wireshark-mime-package.xml \
952         wka.tmpl                \
953         CMakeLists.txt          \
954         cmakeconfig.h.in        \
955         wsutil/CMakeLists.txt   \
956         CMakeOptions.txt        \
957         wiretap/CMakeLists.txt  \
958         README.cmake            \
959         ConfigureChecks.cmake   \
960         cmake/modules/CMakeInstallDirs.cmake    \
961         cmake/modules/COPYING-CMAKE-SCRIPTS     \
962         cmake/modules/CheckCLinkerFlag.cmake    \
963         cmake/modules/FeatureSummary.cmake      \
964         cmake/modules/FindADNS.cmake            \
965         cmake/modules/FindCAP.cmake             \
966         cmake/modules/FindCARES.cmake           \
967         cmake/modules/FindFOP.cmake             \
968         cmake/modules/FindGCRYPT.cmake          \
969         cmake/modules/FindGEOIP.cmake           \
970         cmake/modules/FindGLIB2.cmake           \
971         cmake/modules/FindGMODULE2.cmake        \
972         cmake/modules/FindGNUTLS.cmake          \
973         cmake/modules/FindGTHREAD2.cmake        \
974         cmake/modules/FindGTK2.cmake            \
975         cmake/modules/FindGTK3.cmake            \
976         cmake/modules/FindHtmlViewer.cmake      \
977         cmake/modules/FindKERBEROS.cmake        \
978         cmake/modules/FindNL.cmake              \
979         cmake/modules/FindLEX.cmake             \
980         cmake/modules/FindLUA.cmake             \
981         cmake/modules/FindLYNX.cmake            \
982         cmake/modules/FindM.cmake               \
983         cmake/modules/FindPCAP.cmake            \
984         cmake/modules/FindPOD.cmake             \
985         cmake/modules/FindPORTAUDIO.cmake       \
986         cmake/modules/FindSED.cmake             \
987         cmake/modules/FindSH.cmake              \
988         cmake/modules/FindSMI.cmake             \
989         cmake/modules/FindXMLLINT.cmake         \
990         cmake/modules/FindXSLTPROC.cmake        \
991         cmake/modules/FindYACC.cmake            \
992         cmake/modules/FindYAPP.cmake            \
993         cmake/modules/FindZLIB.cmake            \
994         cmake/modules/LICENSE.txt               \
995         cmake/modules/UseLemon.cmake            \
996         cmake/modules/UseMakeDissectorReg.cmake \
997         cmake/modules/UseMakeTapReg.cmake       \
998         cmake/modules/readme.txt                \
999         ui/win32/Makefile.nmake                 \
1000         ui/win32/console_win32.c                \
1001         ui/win32/console_win32.h                \
1002         ui/win32/file_dlg_win32.c               \
1003         ui/win32/file_dlg_win32.h               \
1004         ui/win32/print_win32.c                  \
1005         ui/win32/print_win32.h                  \
1006         ui/win32/settings.ini                   \
1007         CPackConfig.txt                         \
1008         all.vcproj                              \
1009         dumpcap.vcproj                          \
1010         packaging.vcproj                        \
1011         tshark.vcproj                           \
1012         wireshark.vcproj
1013
1014 install-exec-hook:
1015 if HAVE_DUMPCAP_GROUP
1016         -chgrp $(DUMPCAP_GROUP) $(DESTDIR)$(bindir)/dumpcap
1017 endif
1018 if SETCAP_INSTALL
1019         -$(SETCAP) cap_net_raw,cap_net_admin+eip $(DESTDIR)$(bindir)/dumpcap
1020         -chmod o-rws $(DESTDIR)$(bindir)/dumpcap
1021 else
1022 if SETUID_INSTALL
1023         -chmod o-rws $(DESTDIR)$(bindir)/dumpcap
1024         -chmod +s $(DESTDIR)$(bindir)/dumpcap
1025 endif
1026 endif
1027
1028
1029 DIST_SUBDIRS = asn1 codecs doc epan echld ui ui/cli ui/gtk ui/qt help packaging plugins tools wiretap wsutil docbook
1030
1031 if HAVE_PLUGINS
1032 SUBDIRS = tools wsutil wiretap epan @echld_dir@ plugins packaging help ui @wireshark_SUBDIRS@ ui/cli . doc
1033 else
1034 SUBDIRS = tools wsutil wiretap epan @echld_dir@ packaging help ui @wireshark_SUBDIRS@ ui/cli . doc
1035 endif
1036
1037 help/faq.txt: $(srcdir)/help/faq.py
1038         $(AM_V_GEN)(cd help ; \
1039         $(MAKE) faq.txt ;)
1040
1041 libtool: $(LIBTOOL_DEPS)
1042         $(SHELL) ./config.status --recheck
1043
1044
1045 # Used by patch-bzip2
1046 # Trim off any extra version information and find the previous micro release.
1047 BASE_VERSION=`echo "$(VERSION)" | awk -F. '{$$3 = $$3 + 0 ; printf("%d.%d.%d"), $$1, $$2, $$3}'`
1048 PREV_VERSION=`echo "$(VERSION)" | awk -F. '{$$3 = $$3 + 0 ; if ($$3 > 0) $$3-- ; printf("%d.%d.%d"), $$1, $$2, $$3}'`
1049 PREV_DIR="wireshark-$(PREV_VERSION)"
1050 PREV_FILE="$(PREV_DIR).tar.bz2"
1051 PREV_URL="http://www.wireshark.org/download/src/all-versions/$(PREV_FILE)"
1052
1053 patch-bzip2: distdir
1054         if test x$(BASE_VERSION) != x$(PREV_VERSION) ; then \
1055                 curl -z $(PREV_FILE) -o $(PREV_FILE) $(PREV_URL) && \
1056                 tar -xjf $(PREV_FILE) && \
1057                 diff -urN $(PREV_DIR) $(distdir) | bzip2 > patch-wireshark-$(PREV_VERSION)-to-$(VERSION).bz2 && \
1058                 echo "Created patch-bzip2" ; \
1059                 rm -rf "$(PREV_FILE)" "$(PREV_DIR)" ; \
1060         else \
1061                 echo "This appears to be the first micro version ($(PREV_VERSION)). Skipping." ; \
1062         fi
1063         $(am__remove_distdir)
1064
1065 # Install some desktop files (for use with GNOME, KDE, or any other freedesktop.org-compliant desktops)
1066 # No, these do not go into $(datarootdir): the desktop won't look for them there.
1067 # Yes, that violate's autofoo's principle of relocatability.
1068 # What we (probably) should do is check `pkg-config --variable=prefix gtk+-2.0` to know where
1069 # to install this stuff...
1070 install_desktop_files:
1071         mkdir -p $(DESTDIR)/usr/share/{mime/packages,applications}
1072         install -m 644 -T wireshark-mime-package.xml $(DESTDIR)/usr/share/mime/packages/wireshark.xml
1073         if test x$(DESKTOP_FILE_INSTALL) != x ; then \
1074                 $(DESKTOP_FILE_INSTALL) --dir $(DESTDIR)/usr/share/applications wireshark.desktop; \
1075         else \
1076                 install -m 644 -T wireshark.desktop $(DESTDIR)/usr/share/applications/wireshark.desktop; \
1077         fi
1078         for size in 16 24 32 48 64 128 256; \
1079         do \
1080                 mkdir -p $(DESTDIR)/usr/share/icons/hicolor/$${size}x$${size}/{apps,mimetypes} ; \
1081                 install -m 644 image/wsicon$${size}.png  $(DESTDIR)/usr/share/icons/hicolor/$${size}x$${size}/apps/wireshark.png ; \
1082                 install -m 644 -T image/WiresharkDoc-$${size}.png  $(DESTDIR)/usr/share/icons/hicolor/$${size}x$${size}/mimetypes/application-wireshark-doc.png ; \
1083         done
1084         @echo "Don't forget to run \"update-desktop-database\" and \"update-mime-database /usr/share/mime\""
1085
1086 # Used by svr4-package and osx-package
1087 # We load top_stagedir with an explicit path so that libtool doesn't freak.
1088 top_stagedir=`cd $(top_builddir) && pwd`/packaging/staging
1089 stagedir=$(top_stagedir)/$(PACKAGE).inst
1090
1091 host_cpu=@host_cpu@
1092 host_os=@host_os@
1093
1094 svr4-package: $(PROGRAMS) $(SCRIPTS) $(MANS) $(DATA)
1095         @if test x$(HAVE_SVR4_PACKAGING) = xyes ; then \
1096                 rm -rf $(stagedir) ; \
1097                 $(MAKE) DESTDIR=$(stagedir) install; \
1098                 $(srcdir)/packaging/svr4/mkpkg \
1099                         $(PACKAGE) \
1100                         $(PACKAGE)-$(VERSION)-$(host_os)-$(host_cpu)-local \
1101                         $(prefix) \
1102                         $(top_stagedir) ; \
1103         else \
1104                 echo "Error: SVR4 packaging tools not found." ; \
1105                 echo "Package build abandoned." ; \
1106         fi
1107
1108 solaris-package: svr4-package
1109
1110 rpm_topdir=`cd $(top_builddir) && pwd`/packaging/rpm
1111 rpm-package: dist
1112         @if test x$(HAVE_RPM) = xyes ; then \
1113                 cd $(rpm_topdir) ; \
1114                 mkdir -p BUILD RPMS SOURCES SRPMS; \
1115                 cd SOURCES ; \
1116                 ln -sf ../../../$(distdir).tar.bz2 ; \
1117                 cd .. ; \
1118                 rpmbuild --define "_topdir `cd . && pwd`" --define "_prefix $(prefix)" --clean -ba SPECS/wireshark.spec && \
1119                         echo "Package successfully built in `pwd`/RPMS." && \
1120                         rm -f SOURCES/$(distdir).tar.bz2 $(distdir).tar.bz2 ; \
1121         else \
1122                 echo "Error: RPM executable and/or source directory not found." ; \
1123                 false; \
1124         fi
1125
1126 debian-package: debian/rules
1127         @if test x$(HAVE_DPKG_BUILDPACKAGE) = xyes ; then \
1128                 dpkg-buildpackage -rfakeroot -us -uc ; \
1129         else \
1130                 echo "Error: Debian packaging tools not found." ; \
1131                 echo "Package build abandoned." ; \
1132         fi
1133
1134 # XXX - This assumes we're building from the source directory.
1135 osx-app: $(PROGRAMS) $(SCRIPTS) $(MANS) $(DATA) packaging/macosx/Info.plist
1136         @if test x$(HAVE_OSX_PACKAGING) = xyes ; then \
1137                 rm -rf $(stagedir) ; \
1138                 $(MAKE) DESTDIR=$(stagedir) install; \
1139                 cd $(srcdir)/packaging/macosx ;  \
1140                 ./osx-app.sh @OSX_APP_FLAGS@ -bp ../staging/$(PACKAGE).inst$(bindir) ; \
1141         else \
1142                 echo "Error: OS X packaging tools not found." ; \
1143                 echo "Package build abandoned." ; \
1144         fi
1145
1146 packaging/macosx/COPYING.txt: COPYING
1147         (cd packaging/macosx ; \
1148         $(MAKE) COPYING.txt ;)
1149
1150 osx-package: osx-app packaging/macosx/COPYING.txt
1151         @if test x$(HAVE_OSX_PACKAGING) = xyes ; then \
1152                 cd $(srcdir)/packaging/macosx ;  \
1153                 chmod +x ./osx-dmg.sh ; \
1154                 ./osx-dmg.sh @OSX_DMG_FLAGS@ ; \
1155         fi
1156
1157 osx-install: osx-app
1158         @if test x$(HAVE_OSX_PACKAGING) = xyes ; then \
1159                 echo "Copying Wireshark.app to /Applications" ; \
1160                 cp -pr $(srcdir)/packaging/macosx/Wireshark.app /Applications ;  \
1161         fi
1162
1163 clean-local:
1164         rm -rf $(top_stagedir)
1165
1166 dumpabi:
1167         $(MAKE) -C wiretap dumpabi-libwiretap
1168         $(MAKE) -C epan dumpabi-libwireshark
1169         $(MAKE) -C wsutil dumpabi-libwsutil
1170
1171 checkapi_local:
1172         $(PERL) tools/checkAPIs.pl -build \
1173         $(TSHARK_TAP_SRC) \
1174         $(wireshark_SOURCES)
1175 #       $(EXTRA_wireshark_SOURCES)
1176
1177 checkapi: checkapi_local
1178         cd wiretap && $(MAKE) checkapi
1179         cd codecs && $(MAKE) checkapi
1180         cd ui && $(MAKE) checkapi
1181         cd ui/gtk && $(MAKE) checkapi
1182 ##      cd epan && $(MAKE) checkapi
1183 ##      cd epan/crypt && $(MAKE) checkapi
1184         cd epan/dfilter && $(MAKE) checkapi
1185 ##      cd epan/ftypes && $(MAKE) checkapi
1186 ##      cd epan/wslua && $(MAKE) checkapi
1187         cd epan/dissectors && $(MAKE) checkapi
1188         cd plugins && $(MAKE) checkapi
1189         cd wsutil && $(MAKE) checkapi
1190
1191 wsar_html: doxygen.cfg doxygen_global.cfg FORCE
1192 if HAVE_DOXYGEN
1193         rm -rf wsar_html
1194         cd epan && $(MAKE) $@
1195         cd ui && $(MAKE) $@
1196         (umask 022 ; $(DOXYGEN) doxygen.cfg)
1197 endif
1198
1199 wsar-zip: wsar_html
1200 if HAVE_DOXYGEN
1201         rm -f wsar_html.zip
1202         zip -rq wsar_html.zip wsar_html
1203 endif
1204