2 # Automake file for Wireshark
4 # Wireshark - Network traffic analyzer
5 # By Gerald Combs <gerald@wireshark.org>
6 # Copyright 1998 Gerald Combs
8 # This program is free software; you can redistribute it and/or
9 # modify it under the terms of the GNU General Public License
10 # as published by the Free Software Foundation; either version 2
11 # of the License, or (at your option) any later version.
13 # This program is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 # GNU General Public License for more details.
18 # You should have received a copy of the GNU General Public License
19 # along with this program; if not, write to the Free Software
20 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
22 include ./Makefile.am.inc
24 AM_DISTCHECK_CONFIGURE_FLAGS=@GUI_CONFIGURE_FLAGS@
25 # Make sure to keep ACLOCAL_AMFLAGS in Makefile.am and AC_CONFIG_MACRO_DIRS
26 # in configure.ac in sync, otherwise there will be an error running autogen.sh.
27 ACLOCAL_AMFLAGS = -I m4
32 AM_CPPFLAGS = $(INCLUDEDIRS) $(WS_CPPFLAGS) $(COMMONCPPFLAGS)
50 EXTRA_PROGRAMS = wireshark-gtk wireshark tshark tfshark capinfos captype \
51 editcap mergecap dftest randpkt text2pcap dumpcap reordercap \
55 # Wireshark configuration files are put in $(pkgdatadir).
57 dist_pkgdata_DATA = COPYING manuf services cfilters colorfilters dfilters \
58 smi_modules ipmap.html pdml2html.xsl enterprises.tsv wka
60 pkgconfigdir = $(libdir)/pkgconfig
61 pkgconfig_DATA = wireshark.pc
64 # Install global profiles in the "profiles" subdirectory
66 profilesdir = $(pkgdatadir)
67 nobase_dist_profiles_DATA = \
68 profiles/Bluetooth/colorfilters \
69 profiles/Bluetooth/preferences \
70 profiles/Classic/colorfilters
73 # Install the Diameter DTD and XML files in the "diameter" subdirectory
76 diameterdir = $(pkgdatadir)/diameter
77 include diameter/Custom.make
78 dist_diameter_DATA = $(_CUSTOM_diameter_xml_files_) \
79 diameter/chargecontrol.xml \
81 diameter/CiscoSystems.xml \
83 diameter/dictionary.dtd \
84 diameter/dictionary.xml \
86 diameter/Ericsson.xml \
87 diameter/etsie2e4.xml \
89 diameter/Juniper.xml \
90 diameter/mobileipv4.xml \
91 diameter/mobileipv6.xml \
94 diameter/Starent.xml \
95 diameter/sunping.xml \
98 diameter/Vodafone.xml \
99 diameter/AlcatelLucent.xml \
101 diameter/NokiaSolutionsAndNetworks.xml \
106 # Install the DTDs directory files in the "dtds" subdirectory
109 dtdsdir = $(pkgdatadir)/dtds
114 dtds/pocsettings.dtd \
121 dtds/xcap-error.dtd \
125 # Install the RADIUS directory files in the "radius" subdirectory
128 radiusdir = $(pkgdatadir)/radius
129 include radius/Custom.make
130 dist_radius_DATA = $(_CUSTOM_radius_dict_) \
131 radius/README.radius_dictionary \
132 radius/custom.includes \
134 radius/dictionary.3com \
135 radius/dictionary.3gpp \
136 radius/dictionary.3gpp2 \
137 radius/dictionary.acc \
138 radius/dictionary.acme \
139 radius/dictionary.actelis \
140 radius/dictionary.aerohive \
141 radius/dictionary.airespace \
142 radius/dictionary.alcatel \
143 radius/dictionary.alcatel-lucent.aaa \
144 radius/dictionary.alcatel.esam \
145 radius/dictionary.alcatel.sr \
146 radius/dictionary.alteon \
147 radius/dictionary.altiga \
148 radius/dictionary.alvarion \
149 radius/dictionary.alvarion.wimax.v2_2 \
150 radius/dictionary.apc \
151 radius/dictionary.aptis \
152 radius/dictionary.arbor \
153 radius/dictionary.aruba \
154 radius/dictionary.ascend \
155 radius/dictionary.asn \
156 radius/dictionary.audiocodes \
157 radius/dictionary.avaya \
158 radius/dictionary.azaire \
159 radius/dictionary.bay \
160 radius/dictionary.bintec \
161 radius/dictionary.bluecoat \
162 radius/dictionary.bristol \
163 radius/dictionary.broadsoft \
164 radius/dictionary.brocade \
165 radius/dictionary.bskyb \
166 radius/dictionary.bt \
167 radius/dictionary.cablelabs \
168 radius/dictionary.cabletron \
169 radius/dictionary.camiant \
170 radius/dictionary.chillispot \
171 radius/dictionary.cisco \
172 radius/dictionary.cisco.asa \
173 radius/dictionary.cisco.bbsm \
174 radius/dictionary.cisco.vpn3000 \
175 radius/dictionary.cisco.vpn5000 \
176 radius/dictionary.citrix \
177 radius/dictionary.clavister \
178 radius/dictionary.cnergee \
179 radius/dictionary.colubris \
180 radius/dictionary.columbia_university \
181 radius/dictionary.compat \
182 radius/dictionary.compatible \
183 radius/dictionary.cosine \
184 radius/dictionary.dante \
185 radius/dictionary.dellemc \
186 radius/dictionary.dhcp \
187 radius/dictionary.digium \
188 radius/dictionary.dlink \
189 radius/dictionary.dragonwave \
190 radius/dictionary.efficientip \
191 radius/dictionary.eltex \
192 radius/dictionary.epygi \
193 radius/dictionary.equallogic \
194 radius/dictionary.ericsson \
195 radius/dictionary.ericsson.ab \
196 radius/dictionary.ericsson.packet.core.networks \
197 radius/dictionary.extreme \
198 radius/dictionary.f5 \
199 radius/dictionary.fdxtended \
200 radius/dictionary.fortinet \
201 radius/dictionary.foundry \
202 radius/dictionary.freedhcp \
203 radius/dictionary.freeradius \
204 radius/dictionary.freeradius.internal \
205 radius/dictionary.freeswitch \
206 radius/dictionary.gandalf \
207 radius/dictionary.garderos \
208 radius/dictionary.gemtek \
209 radius/dictionary.h3c \
210 radius/dictionary.hp \
211 radius/dictionary.huawei \
212 radius/dictionary.iana \
213 radius/dictionary.iea \
214 radius/dictionary.infoblox \
215 radius/dictionary.infonet \
216 radius/dictionary.ipunplugged \
217 radius/dictionary.issanni \
218 radius/dictionary.itk \
219 radius/dictionary.jradius \
220 radius/dictionary.juniper \
221 radius/dictionary.karlnet \
222 radius/dictionary.kineto \
223 radius/dictionary.lancom \
224 radius/dictionary.livingston \
225 radius/dictionary.localweb \
226 radius/dictionary.lucent \
227 radius/dictionary.manzara \
228 radius/dictionary.meinberg \
229 radius/dictionary.merit \
230 radius/dictionary.meru \
231 radius/dictionary.microsemi \
232 radius/dictionary.microsoft \
233 radius/dictionary.mikrotik \
234 radius/dictionary.motorola \
235 radius/dictionary.motorola.wimax \
236 radius/dictionary.navini \
237 radius/dictionary.netscreen \
238 radius/dictionary.networkphysics \
239 radius/dictionary.nexans \
240 radius/dictionary.nokia \
241 radius/dictionary.nokia.conflict \
242 radius/dictionary.nomadix \
243 radius/dictionary.nortel \
244 radius/dictionary.ntua \
245 radius/dictionary.openser \
246 radius/dictionary.packeteer \
247 radius/dictionary.paloalto \
248 radius/dictionary.patton \
249 radius/dictionary.perle \
250 radius/dictionary.propel \
251 radius/dictionary.prosoft \
252 radius/dictionary.proxim \
253 radius/dictionary.purewave \
254 radius/dictionary.quiconnect \
255 radius/dictionary.quintum \
256 radius/dictionary.redcreek \
257 radius/dictionary.rfc2865 \
258 radius/dictionary.rfc2866 \
259 radius/dictionary.rfc2867 \
260 radius/dictionary.rfc2868 \
261 radius/dictionary.rfc2869 \
262 radius/dictionary.rfc3162 \
263 radius/dictionary.rfc3576 \
264 radius/dictionary.rfc3580 \
265 radius/dictionary.rfc4072 \
266 radius/dictionary.rfc4372 \
267 radius/dictionary.rfc4603 \
268 radius/dictionary.rfc4675 \
269 radius/dictionary.rfc4679 \
270 radius/dictionary.rfc4818 \
271 radius/dictionary.rfc4849 \
272 radius/dictionary.rfc5090 \
273 radius/dictionary.rfc5176 \
274 radius/dictionary.rfc5447 \
275 radius/dictionary.rfc5580 \
276 radius/dictionary.rfc5607 \
277 radius/dictionary.rfc5904 \
278 radius/dictionary.rfc6519 \
279 radius/dictionary.rfc6572 \
280 radius/dictionary.rfc6677 \
281 radius/dictionary.rfc6911 \
282 radius/dictionary.rfc6929 \
283 radius/dictionary.rfc6930 \
284 radius/dictionary.rfc7055 \
285 radius/dictionary.rfc7155 \
286 radius/dictionary.rfc7268 \
287 radius/dictionary.rfc7499 \
288 radius/dictionary.rfc7930 \
289 radius/dictionary.riverbed \
290 radius/dictionary.riverstone \
291 radius/dictionary.roaringpenguin \
292 radius/dictionary.ruckus \
293 radius/dictionary.ruggedcom \
294 radius/dictionary.sangoma \
295 radius/dictionary.sg \
296 radius/dictionary.shasta \
297 radius/dictionary.shiva \
298 radius/dictionary.siemens \
299 radius/dictionary.slipstream \
300 radius/dictionary.sofaware \
301 radius/dictionary.sonicwall \
302 radius/dictionary.springtide \
303 radius/dictionary.starent \
304 radius/dictionary.starent.vsa1 \
305 radius/dictionary.surfnet \
306 radius/dictionary.symbol \
307 radius/dictionary.t_systems_nova \
308 radius/dictionary.telebit \
309 radius/dictionary.telkom \
310 radius/dictionary.terena \
311 radius/dictionary.trapeze \
312 radius/dictionary.travelping \
313 radius/dictionary.tropos \
314 radius/dictionary.ukerna \
315 radius/dictionary.unisphere \
316 radius/dictionary.unix \
317 radius/dictionary.usr \
318 radius/dictionary.utstarcom \
319 radius/dictionary.valemount \
320 radius/dictionary.versanet \
321 radius/dictionary.vqp \
322 radius/dictionary.walabi \
323 radius/dictionary.waverider \
324 radius/dictionary.wichorus \
325 radius/dictionary.wimax \
326 radius/dictionary.wimax.alvarion \
327 radius/dictionary.wimax.wichorus \
328 radius/dictionary.wispr \
329 radius/dictionary.xedia \
330 radius/dictionary.xylan \
331 radius/dictionary.yubico \
332 radius/dictionary.zeus \
333 radius/dictionary.zte \
334 radius/dictionary.zyxel
337 # Install the tpncp directory files in the "tpncp" subdirectory
340 tpncpdir = $(pkgdatadir)/tpncp
345 # Install the wimaxasncp directory files in the "wimaxasncp" subdirectory
348 wimaxasncpdir = $(pkgdatadir)/wimaxasncp
349 dist_wimaxasncp_DATA = \
350 wimaxasncp/dictionary.xml \
351 wimaxasncp/dictionary.dtd
354 -include plugins/Custom.make
355 plugin_ldadd = $(_CUSTOM_plugin_ldadd_) \
356 -dlopen plugins/docsis/docsis.la \
357 -dlopen plugins/ethercat/ethercat.la \
358 -dlopen plugins/gryphon/gryphon.la \
359 -dlopen plugins/irda/irda.la \
360 -dlopen plugins/mate/mate.la \
361 -dlopen plugins/opcua/opcua.la \
362 -dlopen plugins/profinet/profinet.la \
363 -dlopen plugins/stats_tree/stats_tree.la \
364 -dlopen plugins/unistim/unistim.la \
365 -dlopen plugins/wimax/wimax.la \
366 -dlopen plugins/wimaxmacphy/wimaxmacphy.la
374 # "BUILT_SOURCES" are built before any "make all" or "make check" targets.
375 BUILT_HEADER_FILES = \
380 BUILT_SOURCES = $(BUILT_C_FILES) $(BUILT_HEADER_FILES)
382 # Header files generated from source files.
383 GENERATED_HEADER_FILES = \
384 text2pcap-scanner_lex.h \
385 $(BUILT_HEADER_FILES)
387 # C source files generated from source files.
390 # All the generated files.
391 GENERATED_FILES = $(GENERATED_C_FILES) $(GENERATED_HEADER_FILES)
393 EXTCAP_COMMON_SRC = \
398 # sources common for wireshark, tshark, and rawshark
404 # wireshark specifics
405 WIRESHARK_COMMON_SRC = \
406 $(SHARK_COMMON_SRC) \
415 SHARK_COMMON_SRC += $(EXTCAP_COMMON_SRC)
419 EXTRALINKFLAGS = -Wl,-static -all-static
421 EXTRALINKFLAGS = -export-dynamic
432 # Libraries and plugin flags with which to link wireshark.
434 # GTK_CFLAGS/GTK_LIBS is a strict superset of GLIB_CFLAGS/GLIB_LIBS
435 # (see configure.ac for pkg-config modules used).
437 wireshark_common_ldadd = \
438 capchild/libcapchild.a \
439 caputils/libcaputils.a \
442 codecs/libwscodecs.la \
443 wiretap/libwiretap.la \
444 epan/libwireshark.la \
445 wsutil/libwsutil.la \
448 @APPLICATIONSERVICES_FRAMEWORKS@ \
449 @SYSTEMCONFIGURATION_FRAMEWORKS@ \
450 @COREFOUNDATION_FRAMEWORKS@ \
455 wireshark_SOURCES = $(WIRESHARK_COMMON_SRC) wireshark-qt.cpp
457 wireshark_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS) $(Qt_CFLAGS)
459 wireshark_LDFLAGS = $(AM_LDFLAGS) $(EXTRALINKFLAGS) $(Qt_LDFLAGS)
463 $(wireshark_common_ldadd) \
468 wireshark_LDADD += $(SPEEXDSP_LIBS)
473 wireshark_gtk_SOURCES = $(WIRESHARK_COMMON_SRC)
475 wireshark_gtk_CPPFLAGS = $(AM_CPPFLAGS) $(GTK_CFLAGS)
477 wireshark_gtk_LDFLAGS = $(AM_LDFLAGS) $(EXTRALINKFLAGS)
479 wireshark_gtk_LDADD = \
481 $(wireshark_common_ldadd) \
487 $(SHARK_COMMON_SRC) \
492 tshark_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
494 tshark_LDFLAGS = $(AM_LDFLAGS) $(EXTRALINKFLAGS)
496 # Libraries and plugin flags with which to link tshark.
498 capchild/libcapchild.a \
499 caputils/libcaputils.a \
502 wiretap/libwiretap.la \
503 epan/libwireshark.la \
504 wsutil/libwsutil.la \
509 @SYSTEMCONFIGURATION_FRAMEWORKS@ \
510 @COREFOUNDATION_FRAMEWORKS@
513 $(SHARK_COMMON_SRC) \
517 tfshark_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
519 tfshark_LDFLAGS = $(AM_LDFLAGS) $(EXTRALINKFLAGS)
521 # Libraries and plugin flags with which to link tfshark.
525 wiretap/libwiretap.la \
526 epan/libwireshark.la \
527 wsutil/libwsutil.la \
532 @SYSTEMCONFIGURATION_FRAMEWORKS@ \
533 @COREFOUNDATION_FRAMEWORKS@
536 $(SHARK_COMMON_SRC) \
540 rawshark_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
542 rawshark_LDFLAGS = $(AM_LDFLAGS) $(EXTRALINKFLAGS)
544 # Libraries and plugin flags with which to link rawshark.
546 caputils/libcaputils.a \
548 wiretap/libwiretap.la \
549 epan/libwireshark.la \
550 wsutil/libwsutil.la \
555 @SYSTEMCONFIGURATION_FRAMEWORKS@ \
556 @COREFOUNDATION_FRAMEWORKS@
559 $(SHARK_COMMON_SRC) \
566 sharkd_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
569 sharkd_CPPFLAGS += $(SPEEXDSP_CFLAGS)
572 sharkd_LDFLAGS = $(AM_LDFLAGS) $(EXTRALINKFLAGS)
574 # Libraries and plugin flags with which to link sharkd.
578 codecs/libwscodecs.la \
579 wiretap/libwiretap.la \
580 epan/libwireshark.la \
581 wsutil/libwsutil.la \
586 @SYSTEMCONFIGURATION_FRAMEWORKS@ \
587 @COREFOUNDATION_FRAMEWORKS@
590 sharkd_LDADD += $(SPEEXDSP_LIBS)
593 text2pcap_SOURCES = \
595 text2pcap-scanner.l \
598 text2pcap_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
600 # Don't turn on -Werror for text2pcap: its source includes text2pcap-scanner.c
601 # which is generated (and therefore not always clean).
602 # We could generate text2pcap.o as a library with -Werror but for now it
603 # doesn't seem worth the effort.
604 text2pcap_CFLAGS = $(GENERATED_CFLAGS)
606 # Libraries with which to link text2pcap.
608 writecap/libwritecap.a \
609 wsutil/libwsutil.la \
616 mergecap_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
618 # Libraries with which to link mergecap.
621 wiretap/libwiretap.la \
622 wsutil/libwsutil.la \
629 capinfos_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
631 # Libraries with which to link capinfos.
634 wiretap/libwiretap.la \
635 wsutil/libwsutil.la \
643 captype_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
645 # Libraries with which to link captype.
648 wiretap/libwiretap.la \
649 wsutil/libwsutil.la \
656 editcap_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
658 # Libraries with which to link editcap.
661 wiretap/libwiretap.la \
662 wsutil/libwsutil.la \
666 reordercap_SOURCES = \
670 reordercap_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
672 # Libraries with which to link reordercap.
675 wiretap/libwiretap.la \
676 wsutil/libwsutil.la \
683 randpkt_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
685 # Libraries with which to link randpkt.
687 randpkt_core/librandpkt_core.a \
689 wiretap/libwiretap.la \
690 wsutil/libwsutil.la \
698 dftest_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
700 # Libraries and plugin flags with which to link dftest.
703 wiretap/libwiretap.la \
704 wsutil/libwsutil.la \
705 epan/libwireshark.la \
713 capture_stop_conditions.c \
720 dumpcap_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
722 dumpcap_CFLAGS = $(AM_CFLAGS) $(PIE_CFLAGS)
724 dumpcap_LDFLAGS = $(AM_LDFLAGS) $(PIE_LDFLAGS)
726 # Libraries with which to link dumpcap.
728 caputils/libcaputils.a \
730 writecap/libwritecap.a \
731 wsutil/libwsutil.la \
734 @SYSTEMCONFIGURATION_FRAMEWORKS@ \
735 @COREFOUNDATION_FRAMEWORKS@ \
739 pkginclude_HEADERS = \
749 # this target needed for distribution only
753 capture_stop_conditions.h \
766 # Build the version string
768 # FORCE is the portable version of .PHONY
772 $(AM_V_PERL)$(PERL) $(srcdir)/make-version.pl $(srcdir)
775 # Build shell scripts by doing variable substitution.
776 # Taken from autoconf 2.13.
778 editsh = sed -e 's,@''SHELL''@,$(SHELL),g'
783 $(editsh) $< > $@.tmp && chmod +x $@.tmp && mv $@.tmp $@
786 $(PYTHON) $(srcdir)/tools/make-services.py
794 # We have to remove version.h with "make distclean", as, otherwise,
795 # "make distcheck" fails. We still need to make the tarballs work
796 # even if you do "make distclean" and try to rebuild; that's a work in
799 # XXX - "ps.c" is distributed in the source tarballs; why is it in the
800 # list of files removed by "make distclean"? (It's deliberately
801 # included in that list.)
807 MAINTAINERCLEANFILES = \
833 abi-descriptor.template \
847 macosx-support-lib-patches \
853 text2pcap-scanner.l \
857 wireshark-gtk.desktop \
858 wireshark-mime-package.xml \
859 wireshark.appdata.xml \
863 CMakeListsCustom.txt.example \
866 ConfigureChecks.cmake \
870 if HAVE_DUMPCAP_GROUP
871 chgrp $(DUMPCAP_GROUP) $(DESTDIR)$(bindir)/dumpcap
874 $(SETCAP) cap_net_raw,cap_net_admin+ep $(DESTDIR)$(bindir)/dumpcap
875 chmod o-rws $(DESTDIR)$(bindir)/dumpcap
878 chmod o-rws $(DESTDIR)$(bindir)/dumpcap
879 chmod +s $(DESTDIR)$(bindir)/dumpcap
918 @wireshark_SUBDIRS@ \
925 help/faq.txt: $(srcdir)/help/faq.py
926 $(AM_V_GEN)(cd help ; \
929 libtool: $(LIBTOOL_DEPS)
930 $(SHELL) ./config.status --recheck
934 # Install icons and other desktop files for (for use with GNOME, KDE, or
935 # any other freedesktop.org-compliant desktops).
937 # We use $(datadir). If the desktop doesn't look for them there,
938 # the desktop is broken; the latest XDG Base Directory Specification
941 # http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html
945 # $XDG_DATA_DIRS defines the preference-ordered set of base directories
946 # to search for data files in addition to the $XDG_DATA_HOME base
947 # directory. The directories in $XDG_DATA_DIRS should be seperated with a
950 # If $XDG_DATA_DIRS is either not set or empty, a value equal to
951 # /usr/local/share/:/usr/share/ should be used.
955 # if this is configured to install under /usr, that should Just Work,
956 # unless XDG_DATA_DIRS is set incorrectly or the desktop isn't
957 # compliant with the latest version of the spec;
959 # if this installs under the default /usr/share, that should Just Work,
960 # unless XDG_DATA_DIRS is set incorrectly or the desktop isn't
961 # compliant with the latest version of the spec;
963 # if this is configured to install somewhere else, whoever configured
964 # it should also have made sure that XDG_DATA_DIRS was set correctly
965 # and, if that doesn't work, the desktop isn't compliant with the
966 # latest version of the spec.
968 # We install these as part of the standard installation process, just
969 # as, for example, Inkscape does with its icons. See bug 10737.
971 # Do not use the -T flag to the install command, as it's not portable.
972 # Some versions of install don't support a -T flag at all, and the
973 # FreeBSD install command has a -T flag that takes an argument and
974 # that has completely different semantics.
976 # We neither need nor want any of this on macOS, nor do we want it if
977 # we're not building Wireshark (that being the only desktop app).
980 if BUILDING_WIRESHARK
982 mkdir -p $(DESTDIR)$(datadir)/mime/packages
983 install -m 644 $(srcdir)/wireshark-mime-package.xml $(DESTDIR)$(datadir)/mime/packages/wireshark.xml
984 mkdir -p $(DESTDIR)$(datadir)/appdata
985 install -m 644 $(srcdir)/wireshark.appdata.xml $(DESTDIR)$(datadir)/appdata/wireshark.appdata.xml
986 mkdir -p $(DESTDIR)$(datadir)/applications
987 install -m 644 $(srcdir)/wireshark.desktop $(srcdir)/wireshark-gtk.desktop $(DESTDIR)$(datadir)/applications
988 for size in 16 24 32 48 64 128 256; \
990 mkdir -p $(DESTDIR)$(datadir)/icons/hicolor/$${size}x$${size}/apps ; \
991 install -m 644 $(srcdir)/image/wsicon$${size}.png $(DESTDIR)$(datadir)/icons/hicolor/$${size}x$${size}/apps/wireshark.png ; \
992 mkdir -p $(DESTDIR)$(datadir)/icons/hicolor/$${size}x$${size}/mimetypes ; \
993 install -m 644 $(srcdir)/image/WiresharkDoc-$${size}.png $(DESTDIR)$(datadir)/icons/hicolor/$${size}x$${size}/mimetypes/application-wireshark-doc.png ; \
995 mkdir -p $(DESTDIR)$(datadir)/icons/hicolor/scalable/apps
996 install -m 644 $(srcdir)/image/wsicon.svg $(DESTDIR)$(datadir)/icons/hicolor/scalable/apps/wireshark.svg
1001 if BUILDING_WIRESHARK
1003 rm -f $(DESTDIR)$(datadir)/appdata/wireshark.appdata.xml
1004 rm -f $(DESTDIR)$(datadir)/applications/wireshark.desktop
1005 rm -f $(DESTDIR)$(datadir)/applications/wireshark-gtk.desktop
1006 rm -f $(DESTDIR)$(datadir)/mime/packages/wireshark.xml
1007 for size in 16 24 32 48 64 128 256; \
1009 rm -f $(DESTDIR)$(datadir)/icons/hicolor/$${size}x$${size}/apps/wireshark.png ; \
1010 rm -f $(DESTDIR)$(datadir)/icons/hicolor/$${size}x$${size}/mimetypes/application-wireshark-doc.png ; \
1012 rm -f $(DESTDIR)$(datadir)/icons/hicolor/scalable/apps/wireshark.svg
1016 install-data-hook: update-databases-and-caches-install
1017 uninstall-hook: update-databases-and-caches-uninstall
1020 # ldconfig may be needed to update a shared library. libtool warns about this.
1022 # update-desktop-database and update-mime-database may be needed on
1023 # freedesktop.org desktops.
1025 # gtk-update-icon-cache may be needed only if we're installing a GTK+
1026 # version of Wireshark.
1028 # We neither need nor want any of this on macOS, nor do we want it if
1029 # we're not building Wireshark (that being the only desktop app).
1031 update-databases-and-caches-common:
1032 if BUILDING_WIRESHARK
1034 @echo "-------------------------------------------------------------------------------"
1035 @echo "You may need to run \"ldconfig\" as root"
1036 @echo "You may need to run \"update-desktop-database $(datadir)/applications\""
1037 @echo "You may need to run \"update-mime-database $(datadir)/mime\""
1038 @echo "You may need to run \"gtk-update-icon-cache -f -t $(datadir)/icons/hicolor\""
1039 @echo "-------------------------------------------------------------------------------"
1043 update-databases-and-caches-install: update-databases-and-caches-common
1045 update-databases-and-caches-uninstall: update-databases-and-caches-common
1047 rpm_topdir=`cd $(top_builddir) && pwd`/packaging/rpm
1050 @cd $(rpm_topdir) && \
1051 mkdir -p BUILD RPMS SOURCES SRPMS && \
1053 ln -sf ../../../$(distdir).tar.xz && \
1055 $(RPMBUILD) --define "_topdir `cd . && pwd`" --define "_prefix $(prefix)" \
1056 @RPMBUILD_WITH_ARGS@ --clean -ba SPECS/wireshark.spec && \
1057 echo "Package successfully built in `pwd`/RPMS." ; \
1058 rm -f SOURCES/$(distdir).tar.xz ../../$(distdir).tar.xz
1061 @echo "'rpmbuild' executable not available." ; \
1066 cd epan && $(MAKE) $@
1069 $(MAKE) -C wiretap dumpabi-libwiretap
1070 $(MAKE) -C epan dumpabi-libwireshark
1071 $(MAKE) -C wsutil dumpabi-libwsutil
1074 $(PERL) $(top_srcdir)/tools/checkAPIs.pl -build \
1075 -sourcedir=$(srcdir) \
1077 $(wireshark_gtk_SOURCES)
1078 # $(EXTRA_wireshark_gtk_SOURCES)
1080 checkapi: checkapi_local
1081 cd wiretap && $(MAKE) checkapi
1082 cd codecs && $(MAKE) checkapi
1083 cd capchild && $(MAKE) checkapi
1084 cd caputils && $(MAKE) checkapi
1085 cd ui && $(MAKE) checkapi
1086 cd ui/gtk && $(MAKE) checkapi
1087 cd ui/cli && $(MAKE) checkapi
1088 cd epan && $(MAKE) checkapi
1089 cd epan/crypt && $(MAKE) checkapi
1090 cd epan/dfilter && $(MAKE) checkapi
1091 cd epan/ftypes && $(MAKE) checkapi
1092 cd epan/wmem && $(MAKE) checkapi
1093 cd epan/wslua && $(MAKE) checkapi
1094 cd epan/dissectors && $(MAKE) checkapi
1095 cd plugins && $(MAKE) checkapi
1096 cd randpkt_core && $(MAKE) checkapi
1097 cd writecap && $(MAKE) checkapi
1098 cd wsutil && $(MAKE) checkapi
1100 # --external-sources requires 0.4.0 or later.
1102 cd $(top_srcdir) && \
1103 $(SHELLCHECK) --external-sources \
1104 tools/fuzz-test.sh \
1105 tools/randpkt-test.sh \
1107 tools/test-captures.sh \
1108 tools/valgrind-wireshark.sh
1110 wsar_html: doxygen.cfg doxygen_global.cfg FORCE
1113 cd epan && $(MAKE) $@
1114 cd capchild && $(MAKE) $@
1115 cd caputils && $(MAKE) $@
1116 cd randpkt_core && $(MAKE) $@
1118 (umask 022 ; $(DOXYGEN) doxygen.cfg)
1124 zip -rq wsar_html.zip wsar_html
1127 # Update AUTHORS file with entries from git shortlog
1129 cd $(top_srcdir) && $(PERL) tools/generate_authors.pl AUTHORS.src > AUTHORS
1132 printf "git_description=%s\n" "$$(git -C $(top_srcdir) describe --match 'v[1-9]*')" \
1133 > $(top_distdir)/version.conf