# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
+include(UseABICheck)
+
if (HAVE_LIBLUA)
include( wslua/CMakeLists.txt )
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 )
crypt/airpdcap_debug.c
crypt/airpdcap_rijndael.c
crypt/airpdcap_tkip.c
- crypt/aes.c
- crypt/des.c
- crypt/eax.c
- crypt/md4.c
- crypt/md5.c
- crypt/rc4.c
- crypt/sha1.c
)
+source_group(crypt FILES ${CRYPT_FILES})
set(DFILTER_FILES
dfilter/dfilter.c
dfilter/sttype-test.c
dfilter/syntax-tree.c
)
+source_group(dfilter FILES ${DFILTER_FILES})
set(DFILTER_CLEAN_FILES
${DFILTER_FILES}
dissectors/packet-h501.c
dissectors/packet-hnbap.c
dissectors/packet-idmp.c
+ dissectors/packet-ilp.c
dissectors/packet-inap.c
+ dissectors/packet-isdn-sup.c
dissectors/packet-lcsap.c
dissectors/packet-logotypecertextn.c
dissectors/packet-lpp.c
dissectors/packet-nbap.c
dissectors/packet-ns_cert_exts.c
dissectors/packet-ocsp.c
- dissectors/packet-opsi.c
dissectors/packet-p22.c
dissectors/packet-p7.c
dissectors/packet-p772.c
dissectors/packet-smrse.c
dissectors/packet-spnego.c
dissectors/packet-sv.c
- dissectors/packet-sysex.c
dissectors/packet-t38.c
dissectors/packet-ulp.c
dissectors/packet-wlancertextn.c
- dissectors/packet-x224.c
dissectors/packet-x2ap.c
dissectors/packet-x509af.c
dissectors/packet-x509ce.c
)
set(DISSECTOR_SRC
+ dissectors/file-mp4.c
dissectors/packet-2dparityfec.c
dissectors/packet-3com-njack.c
dissectors/packet-3com-xns.c
dissectors/packet-aruba-adp.c
dissectors/packet-aruba-erm.c
dissectors/packet-aruba-papi.c
+ dissectors/packet-ar_drone.c
dissectors/packet-asap.c
dissectors/packet-ascend.c
dissectors/packet-asf.c
dissectors/packet-assa_r3.c
+ dissectors/packet-asterix.c
dissectors/packet-at.c
dissectors/packet-atalk.c
dissectors/packet-atm.c
dissectors/packet-bfcp.c
dissectors/packet-bfd.c
dissectors/packet-bgp.c
+ dissectors/packet-bitcoin.c
dissectors/packet-bittorrent.c
dissectors/packet-bjnp.c
dissectors/packet-bmc.c
dissectors/packet-bssgp.c
dissectors/packet-bt-dht.c
dissectors/packet-bt-utp.c
+ dissectors/packet-bt3ds.c
dissectors/packet-btamp.c
dissectors/packet-btatt.c
dissectors/packet-btbnep.c
dissectors/packet-bthci_cmd.c
dissectors/packet-bthci_evt.c
dissectors/packet-bthci_sco.c
+ dissectors/packet-bthcrp.c
dissectors/packet-bthfp.c
dissectors/packet-bthid.c
dissectors/packet-btl2cap.c
+ dissectors/packet-btmcap.c
dissectors/packet-btobex.c
dissectors/packet-btrfcomm.c
dissectors/packet-btsap.c
dissectors/packet-calcappprotocol.c
dissectors/packet-canopen.c
dissectors/packet-capwap.c
+ dissectors/packet-carp.c
dissectors/packet-cast.c
dissectors/packet-catapult-dct2000.c
dissectors/packet-ccsds.c
dissectors/packet-cipmotion.c
dissectors/packet-cipsafety.c
dissectors/packet-cisco-erspan.c
+ dissectors/packet-cisco-metadata.c
dissectors/packet-cisco-oui.c
dissectors/packet-cisco-sm.c
dissectors/packet-cisco-wids.c
dissectors/packet-g723.c
dissectors/packet-gadu-gadu.c
dissectors/packet-gdsdb.c
+ dissectors/packet-gearman.c
dissectors/packet-ged125.c
dissectors/packet-gift.c
dissectors/packet-giop.c
dissectors/packet-homeplug.c
dissectors/packet-hp-erm.c
dissectors/packet-hpext.c
+ dissectors/packet-hpfeeds.c
dissectors/packet-hpsw.c
dissectors/packet-hpteam.c
dissectors/packet-hsr-prp-supervision.c
dissectors/packet-hsr.c
dissectors/packet-hsrp.c
dissectors/packet-http.c
+ dissectors/packet-http2.c
+ dissectors/packet-http-urlencoded.c
dissectors/packet-hyperscsi.c
dissectors/packet-i2c.c
dissectors/packet-iana-oui.c
dissectors/packet-icp.c
dissectors/packet-icq.c
dissectors/packet-idp.c
+ dissectors/packet-idrp.c
dissectors/packet-iec104.c
dissectors/packet-ieee1722.c
dissectors/packet-ieee17221.c
dissectors/packet-iuup.c
dissectors/packet-iwarp-ddp-rdmap.c
dissectors/packet-iwarp-mpa.c
+ dissectors/packet-ixiatrailer.c
dissectors/packet-ixveriwave.c
dissectors/packet-jmirror.c
dissectors/packet-jpeg.c
dissectors/packet-jxta.c
dissectors/packet-k12.c
dissectors/packet-kadm5.c
+ dissectors/packet-kafka.c
dissectors/packet-kdp.c
dissectors/packet-kdsp.c
dissectors/packet-kerberos.c
dissectors/packet-mac-lte-framed.c
dissectors/packet-mac-lte.c
dissectors/packet-maccontrol.c
+ dissectors/packet-macsec.c
dissectors/packet-mactelnet.c
dissectors/packet-manolito.c
+ dissectors/packet-mbim.c
dissectors/packet-mbtcp.c
dissectors/packet-mdshdr.c
dissectors/packet-media.c
dissectors/packet-mikey.c
dissectors/packet-mim.c
dissectors/packet-mime-encap.c
+ dissectors/packet-mint.c
dissectors/packet-miop.c
dissectors/packet-mip.c
dissectors/packet-mip6.c
dissectors/packet-mplstp-oam.c
dissectors/packet-mpls-y1711.c
dissectors/packet-mpls.c
+ dissectors/packet-mq-base.c
dissectors/packet-mq-pcf.c
dissectors/packet-mq.c
dissectors/packet-mrcpv2.c
dissectors/packet-olsr.c
dissectors/packet-omapi.c
dissectors/packet-omron-fins.c
+ dissectors/packet-openflow.c
+ dissectors/packet-openflow_v4.c
dissectors/packet-opensafety.c
+ dissectors/packet-openvpn.c
dissectors/packet-openwire.c
+ dissectors/packet-opsi.c
dissectors/packet-osi-options.c
dissectors/packet-osi.c
dissectors/packet-ositp.c
dissectors/packet-ospf.c
+ dissectors/packet-ouch.c
dissectors/packet-p_mul.c
dissectors/packet-packetbb.c
dissectors/packet-packetlogger.c
dissectors/packet-pptp.c
dissectors/packet-prp.c
dissectors/packet-ptp.c
+ dissectors/packet-ptpip.c
+ dissectors/packet-pulse.c
dissectors/packet-pvfs2.c
dissectors/packet-pw-atm.c
dissectors/packet-pw-cesopsn.c
dissectors/packet-rmi.c
dissectors/packet-rmp.c
dissectors/packet-rmt-alc.c
- dissectors/packet-rmt-common.c
dissectors/packet-rmt-fec.c
dissectors/packet-rmt-lct.c
dissectors/packet-rmt-norm.c
dissectors/packet-roofnet.c
dissectors/packet-rpc.c
dissectors/packet-rpcap.c
+ dissectors/packet-rpki-rtr.c
dissectors/packet-rpl.c
dissectors/packet-rquota.c
dissectors/packet-rsh.c
dissectors/packet-rstat.c
dissectors/packet-rsvp.c
dissectors/packet-rsync.c
+ dissectors/packet-rtacser.c
dissectors/packet-rtcdc.c
dissectors/packet-rtcp.c
dissectors/packet-rtmpt.c
dissectors/packet-rtp-events.c
dissectors/packet-rtp-midi.c
dissectors/packet-rtp.c
+ dissectors/packet-rtpproxy.c
dissectors/packet-rtps.c
- dissectors/packet-rtps2.c
dissectors/packet-rtsp.c
dissectors/packet-rudp.c
dissectors/packet-rwall.c
dissectors/packet-rx.c
- dissectors/packet-s5066.c
+ dissectors/packet-s5066sis.c
dissectors/packet-sadmind.c
dissectors/packet-sametime.c
dissectors/packet-sap.c
dissectors/packet-sdlc.c
dissectors/packet-sdp.c
dissectors/packet-sebek.c
+ dissectors/packet-selfm.c
dissectors/packet-sercosiii.c
dissectors/packet-ses.c
dissectors/packet-sflow.c
dissectors/packet-smb-sidsnooping.c
dissectors/packet-smb.c
dissectors/packet-smb2.c
+ dissectors/packet-sml.c
dissectors/packet-smpp.c
dissectors/packet-smtp.c
dissectors/packet-sna.c
dissectors/packet-sndcp.c
dissectors/packet-socketcan.c
dissectors/packet-socks.c
+ dissectors/packet-soupbintcp.c
dissectors/packet-spice.c
dissectors/packet-spp.c
dissectors/packet-spray.c
dissectors/packet-ssh.c
dissectors/packet-ssl-utils.c
dissectors/packet-ssl.c
+ dissectors/packet-stanag4607.c
dissectors/packet-starteam.c
dissectors/packet-stat-notify.c
dissectors/packet-stat.c
dissectors/packet-sync.c
dissectors/packet-synergy.c
dissectors/packet-synphasor.c
+ dissectors/packet-sysex.c
dissectors/packet-syslog.c
dissectors/packet-t30.c
dissectors/packet-tacacs.c
dissectors/packet-ucp.c
dissectors/packet-udld.c
dissectors/packet-udp.c
+ dissectors/packet-udt.c
+ dissectors/packet-uhd.c
dissectors/packet-uma.c
dissectors/packet-umts_fp.c
dissectors/packet-umts_mac.c
dissectors/packet-usb-audio.c
dissectors/packet-usb-ccid.c
+ dissectors/packet-usb-com.c
dissectors/packet-usb-hid.c
dissectors/packet-usb-hub.c
dissectors/packet-usb-masstorage.c
+ dissectors/packet-usb-video.c
dissectors/packet-usb.c
dissectors/packet-user_encap.c
dissectors/packet-uts.c
dissectors/packet-vcdu.c
dissectors/packet-vicp.c
dissectors/packet-vines.c
- dissectors/packet-vj.c
dissectors/packet-vlan.c
dissectors/packet-vmlab.c
dissectors/packet-vnc.c
dissectors/packet-vntag.c
dissectors/packet-vrrp.c
+ dissectors/packet-vrt.c
dissectors/packet-vssmonitoring.c
dissectors/packet-vtp.c
dissectors/packet-vuze-dht.c
dissectors/packet-websocket.c
dissectors/packet-wfleet-hdlc.c
dissectors/packet-who.c
+ dissectors/packet-wifi-display.c
dissectors/packet-wifi-p2p.c
dissectors/packet-windows-common.c
dissectors/packet-winsrepl.c
dissectors/packet-wsp.c
dissectors/packet-wtls.c
dissectors/packet-wtp.c
+ dissectors/packet-x224.c
dissectors/packet-x25.c
dissectors/packet-x29.c
dissectors/packet-xcsl.c
dissectors/packet-zbee-nwk.c
dissectors/packet-zbee-security.c
dissectors/packet-zbee-zcl.c
+ dissectors/packet-zbee-zcl-general.c
+ dissectors/packet-zbee-zcl-ha.c
+ dissectors/packet-zbee-zcl-meas-sensing.c
+ dissectors/packet-zbee-zcl-se.c
dissectors/packet-zbee-zdp-binding.c
dissectors/packet-zbee-zdp-discovery.c
dissectors/packet-zbee-zdp-management.c
dissectors/usb.c
register.c
)
+source_group(dissector-support FILES ${DISSECTOR_SUPPORT_SRC})
set(LIBWIRESHARK_ASM_FILES
asm_utils.c
${ASN1_DISSECTOR_SRC}
${DIRTY_ASN1_DISSECTOR_SRC}
)
+source_group(dissectors FILES ${DISSECTOR_FILES})
register_dissector_files(register.c
dissectors
ftypes/ftype-time.c
ftypes/ftype-tvbuff.c
)
+source_group(ftype FILES ${FTYPE_FILES})
set(WMEM_FILES
+ wmem/wmem_array.c
wmem/wmem_core.c
wmem/wmem_allocator_block.c
wmem/wmem_allocator_simple.c
wmem/wmem_allocator_strict.c
+ wmem/wmem_list.c
+ wmem/wmem_miscutl.c
wmem/wmem_scopes.c
- wmem/wmem_slab.c
- wmem/wmem_slist.c
wmem/wmem_stack.c
wmem/wmem_strbuf.c
wmem/wmem_strutl.c
+ wmem/wmem_tree.c
+ wmem/wmem_user_cb.c
)
+source_group(wmem FILES ${WMEM_FILES})
ADD_CUSTOM_COMMAND(
OUTPUT
${CMAKE_SOURCE_DIR}/tools/make-sminmpec.pl
)
+ADD_CUSTOM_COMMAND(
+ OUTPUT ps.c
+ COMMAND ${PYTHON_EXECUTABLE}
+ ${CMAKE_SOURCE_DIR}/tools/rdps.py
+ ${CMAKE_CURRENT_SOURCE_DIR}/print.ps
+ ps.c
+ DEPENDS
+ ${CMAKE_SOURCE_DIR}/tools/rdps.py
+ ${CMAKE_CURRENT_SOURCE_DIR}/print.ps
+)
+
set(LIBWIRESHARK_FILES
addr_and_mask.c
addr_resolv.c
address_to_str.c
adler32.c
afn.c
+ app_mem_usage.c
asn1.c
atalk-utils.c
base64.c
crc16-tvb.c
crc32-tvb.c
crc8-tvb.c
+ disabled_protos.c
dissector_filters.c
emem.c
epan.c
ex-opt.c
except.c
expert.c
+ exported_pdu.c
filesystem.c
filter_expressions.c
follow.c
frame_data.c
+ frame_data_sequence.c
frequency-utils.c
funnel.c
gcp.c
ipproto.c
ipv4.c
next_tvb.c
- nstime.c
oids.c
osi-utils.c
+ packet-range.c
packet.c
plugins.c
+ print.c
prefs.c
proto.c
+ ps.c
range.c
reassemble.c
reedsolomon.c
- report_err.c
req_resp_hdrs.c
+ show_exception.c
sigcomp_state_hdlr.c
sigcomp-udvm.c
sminmpec.c
tap.c
tcap-persistentdata.c
timestamp.c
+ timestats.c
tfs.c
to_str.c
tvbparse.c
tvbuff.c
+ tvbuff_composite.c
+ tvbuff_real.c
+ tvbuff_subset.c
uat.c
value_string.c
xdlc.c
${M_LIBRARIES}
${LUA_LIBRARIES}
${PYTHON_LIBRARIES}
+ ${WIN_PSAPI_LIBRARY}
)
set(CLEAN_FILES
${DISSECTOR_SUPPORT_SRC}
${LIBWIRESHARK_ASM_FILES}
)
+
+add_dependencies(epan svnversion)
+
+set(FULL_SO_VERSION "0.0.0")
+
+set_target_properties(epan PROPERTIES COMPILE_DEFINITIONS "WS_BUILD_DLL")
set_target_properties(epan PROPERTIES LINK_FLAGS "${WS_LINK_FLAGS}")
+set_target_properties(epan PROPERTIES VERSION ${FULL_SO_VERSION} SOVERSION 0)
+
+ABICHECK(libwireshark)
+
+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(MAKE_DIRECTORY ${ABICHECK_TMPDIR}
+ ${ABICHECK_TMPDIR}/epan
+ ${ABICHECK_TMPDIR}/crypt
+ ${ABICHECK_TMPDIR}/dfilter
+ ${ABICHECK_TMPDIR}/dissectors
+ ${ABICHECK_TMPDIR}/ftypes
+ ${ABICHECK_TMPDIR}/wmem)
+
+file(COPY ../color.h ../register.h DESTINATION ${ABICHECK_TMPDIR})
+file(COPY ${HEADERS} DESTINATION ${ABICHECK_TMPDIR}/epan)
+file(COPY ${CRYPT_HEADERS} DESTINATION ${ABICHECK_TMPDIR}/crypt)
+file(COPY ${DFILTER_HEADERS} DESTINATION ${ABICHECK_TMPDIR}/dfilter)
+file(COPY ${D_HEADERS} DESTINATION ${ABICHECK_TMPDIR}/dissectors)
+file(COPY ${FTYPES_HEADERS} DESTINATION ${ABICHECK_TMPDIR}/ftypes)
+file(COPY ${WMEM_HEADERS} DESTINATION ${ABICHECK_TMPDIR}/wmem)
+
+add_custom_command(OUTPUT libwireshark.abi.tar.gz
+ COMMAND cp ../config.h ${ABICHECK_TMPDIR}
+ COMMAND rm -f ${ABICHECK_TMPDIR}/dissectors/x11-extension-implementation.h
+ ${ABICHECK_TMPDIR}/dissectors/packet-rtps.h
+ ${ABICHECK_TMPDIR}/dissectors/x11-glx-render-enum.h
+ ${ABICHECK_TMPDIR}/dissectors/x11-register-info.h
+ ${ABICHECK_TMPDIR}/dissectors/packet-idmp.h
+ COMMAND ${ABICHECK_COMMAND}
+ COMMAND cp ${CMAKE_CURRENT_BINARY_DIR}/abi_dumps/libwireshark/libwireshark_* ${CMAKE_CURRENT_BINARY_DIR}/libwireshark.abi.tar.gz
+ COMMAND rm -rf ${CMAKE_CURRENT_BINARY_DIR}/abi_dumps ${ABICHECK_TMPDIR}/config.h
+ ${ABICHECK_TMPDIR}/epan/* ${ABICHECK_TMPDIR}/crypt/*
+ ${ABICHECK_TMPDIR}/dfilter/* ${ABICHECK_TMPDIR}/dissectors/*
+ ${ABICHECK_TMPDIR}/ftypes/* ${ABICHECK_TMPDIR}/wmem/*
+ DEPENDS ${HEADERS}
+ ${CRYPT_HEADERS} ${DFILTER_HEADERS} ${D_HEADERS}
+ ${FTYPES_HEADERS} ${WMEM_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")
target_link_libraries(epan ${epan_LIBS})