# CMakeLists.txt
#
-# $Id$
-#
# Wireshark - Network traffic analyzer
# By Gerald Combs <gerald@wireshark.org>
# Copyright 1998 Gerald Combs
include(UseABICheck)
+include(CMakeListsCustom.txt)
+
if (HAVE_HFI_SECTION_INIT)
add_definitions(
-DHAVE_HFI_SECTION_INIT
endif()
source_group(wslua FILES ${WSLUA_FILES})
-if (HAVE_LIBPYTHON)
- include( wspython/CMakeLists.txt )
-endif()
-source_group(wspython FILES ${WSPYTHON_FILES})
-
add_subdirectory( dissectors/dcerpc )
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}/dissectors
${CMAKE_CURRENT_SOURCE_DIR}/ftypes
${CMAKE_CURRENT_SOURCE_DIR}/wslua
- ${CMAKE_CURRENT_SOURCE_DIR}/wspython
+ ${CMAKE_CURRENT_SOURCE_DIR}/nghttp2
)
set(CRYPT_FILES
crypt/airpdcap_debug.c
crypt/airpdcap_rijndael.c
crypt/airpdcap_tkip.c
+ ${CUSTOM_CRYPT_SRC}
)
source_group(crypt FILES ${CRYPT_FILES})
dissectors/packet-dcerpc-eventlog.c
dissectors/packet-dcerpc-lsa.c
dissectors/packet-dcerpc-mapi.c
+ dissectors/packet-dcerpc-mdssvc.c
dissectors/packet-dcerpc-misc.c
dissectors/packet-dcerpc-winreg.c
)
dissectors/packet-ilp.c
dissectors/packet-inap.c
dissectors/packet-isdn-sup.c
+ dissectors/packet-kerberos.c
dissectors/packet-lcsap.c
dissectors/packet-logotypecertextn.c
dissectors/packet-lpp.c
dissectors/packet-mpeg-audio.c
dissectors/packet-mpeg-pes.c
dissectors/packet-nbap.c
+ dissectors/packet-novell_pkis.c
dissectors/packet-ns_cert_exts.c
dissectors/packet-ocsp.c
dissectors/packet-p22.c
dissectors/packet-pkixproxy.c
dissectors/packet-pkixqualified.c
dissectors/packet-pkixtsp.c
+ dissectors/packet-pktap.c
dissectors/packet-q932.c
dissectors/packet-q932-ros.c
dissectors/packet-qsig.c
dissectors/packet-ansi_map.c
dissectors/packet-coseventcomm.c
dissectors/packet-cosnaming.c
- dissectors/packet-gnm.c
dissectors/packet-gprscdr.c
dissectors/packet-gsm_map.c
dissectors/packet-ldap.c
set(DISSECTOR_SRC
dissectors/file-elf.c
+ dissectors/file-file.c
+ dissectors/file-gif.c
+ dissectors/file-jpeg.c
dissectors/file-mp4.c
+ dissectors/file-png.c
dissectors/packet-2dparityfec.c
dissectors/packet-3com-njack.c
dissectors/packet-3com-xns.c
dissectors/packet-3g-a11.c
dissectors/packet-6lowpan.c
dissectors/packet-9p.c
+ dissectors/packet-a21.c
dissectors/packet-aarp.c
dissectors/packet-aastra-aasp.c
dissectors/packet-acap.c
dissectors/packet-acn.c
+ dissectors/packet-acr122.c
dissectors/packet-actrace.c
+ dissectors/packet-adb_cs.c
dissectors/packet-adwin-config.c
dissectors/packet-adwin.c
dissectors/packet-afp.c
dissectors/packet-aim.c
dissectors/packet-ajp13.c
dissectors/packet-alcap.c
+ dissectors/packet-alljoyn.c
dissectors/packet-amqp.c
dissectors/packet-amr.c
dissectors/packet-ancp.c
dissectors/packet-artnet.c
dissectors/packet-aruba-adp.c
dissectors/packet-aruba-erm.c
+ dissectors/packet-aruba-iap.c
dissectors/packet-aruba-papi.c
dissectors/packet-ar_drone.c
dissectors/packet-asap.c
dissectors/packet-batadv.c
dissectors/packet-bctp.c
dissectors/packet-beep.c
+ dissectors/packet-bencode.c
dissectors/packet-ber.c
dissectors/packet-bfcp.c
dissectors/packet-bfd.c
dissectors/packet-bthfp.c
dissectors/packet-bthid.c
dissectors/packet-bthsp.c
+ dissectors/packet-btle.c
+ dissectors/packet-btle_rf.c
dissectors/packet-btl2cap.c
dissectors/packet-btmcap.c
dissectors/packet-btobex.c
dissectors/packet-ccsds.c
dissectors/packet-cdp.c
dissectors/packet-cell_broadcast.c
+ dissectors/packet-ceph.c
+ dissectors/packet-cfdp.c
dissectors/packet-cfm.c
dissectors/packet-cgmp.c
+ dissectors/packet-chargen.c
dissectors/packet-chdlc.c
dissectors/packet-cigi.c
dissectors/packet-cimd.c
dissectors/packet-collectd.c
dissectors/packet-componentstatus.c
dissectors/packet-cops.c
+ dissectors/packet-corosync-totemnet.c
+ dissectors/packet-corosync-totemsrp.c
dissectors/packet-cosine.c
+ dissectors/packet-cp2179.c
dissectors/packet-cpfi.c
dissectors/packet-cpha.c
dissectors/packet-csm-encaps.c
dissectors/packet-diameter.c
dissectors/packet-diameter_3gpp.c
dissectors/packet-diffserv-mpls-common.c
- dissectors/packet-dis-enums.c
- dissectors/packet-dis-fields.c
- dissectors/packet-dis-pdus.c
dissectors/packet-dis.c
dissectors/packet-distcc.c
dissectors/packet-dlm3.c
dissectors/packet-eigrp.c
dissectors/packet-eiss.c
dissectors/packet-elcom.c
+ dissectors/packet-elmi.c
dissectors/packet-enc.c
dissectors/packet-enip.c
dissectors/packet-enrp.c
dissectors/packet-epl.c
dissectors/packet-epl_v1.c
dissectors/packet-epmd.c
+ dissectors/packet-epon.c
dissectors/packet-erf.c
dissectors/packet-erldp.c
dissectors/packet-esio.c
dissectors/packet-etv.c
dissectors/packet-evrc.c
dissectors/packet-exec.c
+ dissectors/packet-exported_pdu.c
dissectors/packet-extreme.c
dissectors/packet-fc.c
dissectors/packet-fcct.c
dissectors/packet-fw1.c
dissectors/packet-g723.c
dissectors/packet-gadu-gadu.c
+ dissectors/packet-gdb.c
dissectors/packet-gdsdb.c
dissectors/packet-gearman.c
dissectors/packet-ged125.c
+ dissectors/packet-geneve.c
dissectors/packet-gift.c
dissectors/packet-giop.c
dissectors/packet-git.c
dissectors/packet-hazelcast.c
dissectors/packet-hci_h1.c
dissectors/packet-hci_h4.c
+ dissectors/packet-hci_mon.c
dissectors/packet-hci_usb.c
dissectors/packet-hclnfsd.c
dissectors/packet-hdcp.c
dissectors/packet-hdcp2.c
dissectors/packet-hdfs.c
dissectors/packet-hdfsdata.c
+ dissectors/packet-hdmi.c
dissectors/packet-hip.c
+ dissectors/packet-hislip.c
dissectors/packet-homeplug-av.c
dissectors/packet-homeplug.c
dissectors/packet-hp-erm.c
dissectors/packet-idrp.c
dissectors/packet-iec104.c
dissectors/packet-ieee1722.c
+ dissectors/packet-ieee1722a.c
dissectors/packet-ieee17221.c
dissectors/packet-ieee80211-airopeek.c
dissectors/packet-ieee80211-netmon.c
dissectors/packet-igap.c
dissectors/packet-igmp.c
dissectors/packet-igrp.c
- dissectors/packet-image-gif.c
- dissectors/packet-image-jfif.c
- dissectors/packet-image-png.c
dissectors/packet-imap.c
dissectors/packet-imf.c
dissectors/packet-infiniband.c
dissectors/packet-ipars.c
dissectors/packet-ipdc.c
dissectors/packet-ipfc.c
- dissectors/packet-ipmi-session.c
dissectors/packet-ipmi.c
+ dissectors/packet-ipmi-app.c
+ dissectors/packet-ipmi-bridge.c
+ dissectors/packet-ipmi-chassis.c
+ dissectors/packet-ipmi-picmg.c
+ dissectors/packet-ipmi-se.c
+ dissectors/packet-ipmi-session.c
+ dissectors/packet-ipmi-storage.c
+ dissectors/packet-ipmi-trace.c
+ dissectors/packet-ipmi-transport.c
+ dissectors/packet-ipmi-pps.c
+ dissectors/packet-ipmi-update.c
+ dissectors/packet-ipmi-vita.c
dissectors/packet-ipnet.c
dissectors/packet-ipoib.c
dissectors/packet-ipp.c
dissectors/packet-isakmp.c
dissectors/packet-iscsi.c
dissectors/packet-isdn.c
+ dissectors/packet-iser.c
dissectors/packet-isis-clv.c
dissectors/packet-isis-hello.c
dissectors/packet-isis-lsp.c
dissectors/packet-kafka.c
dissectors/packet-kdp.c
dissectors/packet-kdsp.c
- dissectors/packet-kerberos.c
dissectors/packet-kerberos4.c
dissectors/packet-kingfisher.c
dissectors/packet-kink.c
dissectors/packet-kt.c
dissectors/packet-l1-events.c
dissectors/packet-l2tp.c
+ dissectors/packet-lacp.c
dissectors/packet-lanforge.c
dissectors/packet-lapb.c
dissectors/packet-lapbether.c
dissectors/packet-lapdm.c
dissectors/packet-laplink.c
dissectors/packet-lapsat.c
+ dissectors/packet-lbm.c
+ dissectors/packet-lbmc.c
+ dissectors/packet-lbmpdm.c
+ dissectors/packet-lbmpdmtcp.c
+ dissectors/packet-lbmr.c
+ dissectors/packet-lbtrm.c
+ dissectors/packet-lbtru.c
+ dissectors/packet-lbttcp.c
dissectors/packet-ldp.c
dissectors/packet-ldss.c
+ dissectors/packet-lg8979.c
dissectors/packet-lge_monitor.c
+ dissectors/packet-link16.c
dissectors/packet-linx.c
dissectors/packet-lisp-data.c
dissectors/packet-lisp.c
dissectors/packet-lldp.c
dissectors/packet-llrp.c
dissectors/packet-llt.c
+ dissectors/packet-lltd.c
dissectors/packet-lmi.c
dissectors/packet-lmp.c
+ dissectors/packet-logcat.c
+ dissectors/packet-logcat-text.c
dissectors/packet-lon.c
dissectors/packet-loop.c
dissectors/packet-lpd.c
dissectors/packet-lsc.c
dissectors/packet-ltp.c
dissectors/packet-lwapp.c
+ dissectors/packet-lwm.c
dissectors/packet-lwres.c
dissectors/packet-m2pa.c
dissectors/packet-m2tp.c
dissectors/packet-macsec.c
dissectors/packet-mactelnet.c
dissectors/packet-manolito.c
+ dissectors/packet-marker.c
+ dissectors/packet-mausb.c
dissectors/packet-mbim.c
dissectors/packet-mbtcp.c
dissectors/packet-mdshdr.c
dissectors/packet-mq-base.c
dissectors/packet-mq-pcf.c
dissectors/packet-mq.c
+ dissectors/packet-mqtt.c
dissectors/packet-mrcpv2.c
dissectors/packet-mrdisc.c
dissectors/packet-mrp-mmrp.c
dissectors/packet-netbios.c
dissectors/packet-netdump.c
dissectors/packet-netflow.c
- dissectors/packet-netlink.c
+ dissectors/packet-netlink-netfilter.c
dissectors/packet-netlink-route.c
+ dissectors/packet-netlink-sock_diag.c
+ dissectors/packet-netlink.c
dissectors/packet-netperfmeter.c
dissectors/packet-netrom.c
dissectors/packet-netsync.c
dissectors/packet-ntp.c
dissectors/packet-null.c
dissectors/packet-nwmtp.c
+ dissectors/packet-oampdu.c
dissectors/packet-oicq.c
dissectors/packet-oipf.c
dissectors/packet-olsr.c
dissectors/packet-openvpn.c
dissectors/packet-openwire.c
dissectors/packet-opsi.c
+ dissectors/packet-optommp.c
+ dissectors/packet-osc.c
dissectors/packet-osi-options.c
dissectors/packet-osi.c
dissectors/packet-ositp.c
dissectors/packet-ospf.c
+ dissectors/packet-ossp.c
dissectors/packet-ouch.c
dissectors/packet-p_mul.c
+ dissectors/packet-pathport.c
dissectors/packet-packetbb.c
dissectors/packet-packetlogger.c
dissectors/packet-pagp.c
dissectors/packet-paltalk.c
dissectors/packet-pana.c
+ dissectors/packet-pcapng_block.c
dissectors/packet-pcep.c
dissectors/packet-pcli.c
dissectors/packet-pcnfsd.c
dissectors/packet-pcp.c
+ dissectors/packet-pdc.c
dissectors/packet-pdcp-lte.c
dissectors/packet-peekremote.c
dissectors/packet-per.c
dissectors/packet-smb-mailslot.c
dissectors/packet-smb-pipe.c
dissectors/packet-smb-sidsnooping.c
+ dissectors/packet-smb-direct.c
dissectors/packet-smb.c
dissectors/packet-smb2.c
dissectors/packet-sml.c
dissectors/packet-socketcan.c
dissectors/packet-socks.c
dissectors/packet-soupbintcp.c
+ dissectors/packet-spdy.c
dissectors/packet-spice.c
dissectors/packet-spp.c
dissectors/packet-spray.c
dissectors/packet-starteam.c
dissectors/packet-stat-notify.c
dissectors/packet-stat.c
+ dissectors/packet-stt.c
dissectors/packet-stun.c
dissectors/packet-sua.c
+ dissectors/packet-swipe.c
dissectors/packet-symantec.c
dissectors/packet-sync.c
dissectors/packet-synergy.c
dissectors/packet-ua3g.c
dissectors/packet-uasip.c
dissectors/packet-uaudp.c
+ dissectors/packet-ubertooth.c
dissectors/packet-ucp.c
dissectors/packet-udld.c
dissectors/packet-udp.c
dissectors/packet-usb-audio.c
dissectors/packet-usb-ccid.c
dissectors/packet-usb-com.c
+ dissectors/packet-usb-dfu.c
dissectors/packet-usb-hid.c
dissectors/packet-usb-hub.c
dissectors/packet-usb-masstorage.c
dissectors/packet-vmlab.c
dissectors/packet-vnc.c
dissectors/packet-vntag.c
+ dissectors/packet-vp8.c
dissectors/packet-vrrp.c
dissectors/packet-vrt.c
dissectors/packet-vssmonitoring.c
dissectors/packet-ypxfr.c
dissectors/packet-zbee-aps.c
dissectors/packet-zbee-nwk.c
+ dissectors/packet-zbee-nwk-gp.c
dissectors/packet-zbee-security.c
dissectors/packet-zbee-zcl.c
dissectors/packet-zbee-zcl-general.c
dissectors/packet-x11.c
)
-# IPMI sub-parsers for each network function code
-set(IPMI_SUBPARSERS
- dissectors/packet-ipmi-app.c
- dissectors/packet-ipmi-bridge.c
- dissectors/packet-ipmi-chassis.c
- dissectors/packet-ipmi-picmg.c
- dissectors/packet-ipmi-se.c
- dissectors/packet-ipmi-storage.c
- dissectors/packet-ipmi-transport.c
- dissectors/packet-ipmi-pps.c
- dissectors/packet-ipmi-update.c
-)
-
set(DISSECTOR_SUPPORT_SRC
- ${IPMI_SUBPARSERS}
dissectors/packet-dcerpc-nt.c
dissectors/usb.c
register.c
${DIRTY_PIDL_DISSECTOR_SRC}
${ASN1_DISSECTOR_SRC}
${DIRTY_ASN1_DISSECTOR_SRC}
+ ${CUSTOM_DISSECTOR_SRC}
+ ${CUSTOM_DIRTY_ASN1_DISSECTOR_SRC}
)
source_group(dissectors FILES ${DISSECTOR_FILES})
wmem/wmem_array.c
wmem/wmem_core.c
wmem/wmem_allocator_block.c
+ wmem/wmem_allocator_block_fast.c
wmem/wmem_allocator_simple.c
wmem/wmem_allocator_strict.c
wmem/wmem_list.c
+ wmem/wmem_map.c
wmem/wmem_miscutl.c
wmem/wmem_scopes.c
wmem/wmem_stack.c
)
source_group(wmem FILES ${WMEM_FILES})
-ADD_CUSTOM_COMMAND(
- OUTPUT
- sminmpec.c
+set(NGHTTP2_FILES
+ nghttp2/nghttp2_buf.c
+ nghttp2/nghttp2_hd.c
+ nghttp2/nghttp2_hd_huffman.c
+ nghttp2/nghttp2_hd_huffman_data.c
+ nghttp2/nghttp2_helper.c
+)
+source_group(nghttp2 FILES ${NGHTTP2_FILES})
+
+ADD_CUSTOM_TARGET(
+ update-sminmpec
COMMAND ${PERL_EXECUTABLE}
${CMAKE_SOURCE_DIR}/tools/make-sminmpec.pl
- ${CMAKE_CURRENT_SOURCE_DIR}/enterprise-numbers
- sminmpec.c
DEPENDS
enterprise-numbers
${CMAKE_SOURCE_DIR}/tools/make-sminmpec.pl
addr_resolv.c
address_to_str.c
afn.c
+ aftypes.c
app_mem_usage.c
asn1.c
atalk-utils.c
- base64.c
- camel-persistentdata.c
charsets.c
circuit.c
column.c
column-utils.c
conversation.c
+ conversation_table.c
+ crc10-tvb.c
crc16-tvb.c
crc32-tvb.c
+ crc6-tvb.c
crc8-tvb.c
decode_as.c
disabled_protos.c
dissector_filters.c
+ dvb_chartbl.c
dwarf.c
emem.c
epan.c
next_tvb.c
oids.c
osi-utils.c
+ oui.c
packet-range.c
packet.c
print.c
stream.c
t35.c
tap.c
- tcap-persistentdata.c
timestamp.c
timestats.c
tfs.c
to_str.c
tvbparse.c
tvbuff.c
+ tvbuff_base64.c
tvbuff_composite.c
tvbuff_real.c
tvbuff_subset.c
${SMI_LIBRARIES}
${M_LIBRARIES}
${LUA_LIBRARIES}
- ${PYTHON_LIBRARIES}
${WIN_PSAPI_LIBRARY}
)
${DISSECTOR_SUPPORT_SRC}
${LIBWIRESHARK_ASM_FILES}
${WMEM_FILES}
+ ${NGHTTP2_FILES}
${WSLUA_FILES}
- ${WSPYTHON_FILES}
)
if (WERROR)
${DFILTER_FILES}
${FTYPE_FILES}
${WMEM_FILES}
+ ${NGHTTP2_FILES}
${WSLUA_FILES}
- ${WSPYTHON_FILES}
${DISSECTOR_FILES}
${DISSECTOR_SUPPORT_SRC}
${LIBWIRESHARK_ASM_FILES}
+ ../image/libwireshark.rc
)
-add_dependencies(epan svnversion)
-
set(FULL_SO_VERSION "0.0.0")
set_target_properties(epan PROPERTIES COMPILE_DEFINITIONS "WS_BUILD_DLL")
ABICHECK(libwireshark)
+file(GLOB COLUMN_INFO_HEADER column-info.h)
file(GLOB CRYPT_HEADERS crypt/*.h)
file(GLOB DFILTER_HEADERS dfilter/*.h ../tools/lemon/cppmagic.h)
file(GLOB D_HEADERS dissectors/*.h)
file(GLOB FTYPES_HEADERS ftypes/*.h)
file(GLOB WMEM_HEADERS wmem/*.h)
+file(GLOB NGHTTP2_HEADERS nghttp2/*.h)
file(MAKE_DIRECTORY ${ABICHECK_TMPDIR}
${ABICHECK_TMPDIR}/epan
${ABICHECK_TMPDIR}/crypt
${ABICHECK_TMPDIR}/dfilter
${ABICHECK_TMPDIR}/dissectors
${ABICHECK_TMPDIR}/ftypes
- ${ABICHECK_TMPDIR}/wmem)
+ ${ABICHECK_TMPDIR}/wmem
+ ${ABICHECK_TMPDIR}/nghttp2)
file(COPY ../color.h ../register.h DESTINATION ${ABICHECK_TMPDIR})
file(COPY ${HEADERS} DESTINATION ${ABICHECK_TMPDIR}/epan)
file(COPY ${D_HEADERS} DESTINATION ${ABICHECK_TMPDIR}/dissectors)
file(COPY ${FTYPES_HEADERS} DESTINATION ${ABICHECK_TMPDIR}/ftypes)
file(COPY ${WMEM_HEADERS} DESTINATION ${ABICHECK_TMPDIR}/wmem)
+file(COPY ${NGHTTP2_HEADERS} DESTINATION ${ABICHECK_TMPDIR}/nghttp2)
add_custom_command(OUTPUT libwireshark.abi.tar.gz
COMMAND cp ../config.h ${ABICHECK_TMPDIR}
${ABICHECK_TMPDIR}/epan/* ${ABICHECK_TMPDIR}/crypt/*
${ABICHECK_TMPDIR}/dfilter/* ${ABICHECK_TMPDIR}/dissectors/*
${ABICHECK_TMPDIR}/ftypes/* ${ABICHECK_TMPDIR}/wmem/*
+ ${ABICHECK_TMPDIR}/nghttp2/*
DEPENDS ${HEADERS}
${CRYPT_HEADERS} ${DFILTER_HEADERS} ${D_HEADERS}
- ${FTYPES_HEADERS} ${WMEM_HEADERS} epan)
+ ${FTYPES_HEADERS} ${WMEM_HEADERS} ${NGHTTP2_HEADERS} epan)
# By default the name for a library with target name epan will be libepan,
# but Ethereal is now named Wireshark
-SET_TARGET_PROPERTIES(epan PROPERTIES OUTPUT_NAME "wireshark")
-set_target_properties(epan PROPERTIES FOLDER "DLLs")
+SET_TARGET_PROPERTIES(epan PROPERTIES
+ OUTPUT_NAME "wireshark"
+ PREFIX "lib"
+ FOLDER "DLLs"
+)
target_link_libraries(epan ${epan_LIBS})
if(NOT ${ENABLE_STATIC})
install(TARGETS epan
- LIBRARY DESTINATION lib
- RUNTIME DESTINATION lib
- ARCHIVE DESTINATION lib
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
endif()
+add_executable(wmem_test wmem/wmem_test.c ${WMEM_FILES})
+target_link_libraries(wmem_test ${GLIB2_LIBRARIES})
+set_target_properties(wmem_test PROPERTIES FOLDER "Tests")
+
+add_executable(exntest exntest.c except.c)
+target_link_libraries(exntest ${GLIB2_LIBRARIES})
+set_target_properties(exntest PROPERTIES FOLDER "Tests")
+
+add_executable(oids_test oids_test.c)
+target_link_libraries(oids_test epan)
+set_target_properties(oids_test PROPERTIES FOLDER "Tests")
+
+add_executable(reassemble_test reassemble_test.c)
+target_link_libraries(reassemble_test epan)
+set_target_properties(reassemble_test PROPERTIES FOLDER "Tests")
+
+add_executable(tvbtest tvbtest.c)
+target_link_libraries(tvbtest epan)
+set_target_properties(tvbtest PROPERTIES FOLDER "Tests")
+
#
# Editor modelines - http://www.wireshark.org/tools/modelines.html
#