wmem: allow wmem_destroy_list to ignore a NULL list.
[metze/wireshark/wip.git] / wsutil / CMakeLists.txt
index 7ee405a33493c2e0a356d86bc1cf95608503ba37..289a13e58f0906f63737a5e00d400dbd481b8ce1 100644 (file)
@@ -9,20 +9,17 @@
 
 include(UseABICheck)
 
-if(NOT WIN32)
-       add_definitions(-DPLUGIN_DIR=\"${CMAKE_INSTALL_FULL_LIBDIR}/wireshark/plugins\")
-endif()
+add_definitions(-DPLUGIN_DIR=\"${CMAKE_INSTALL_PREFIX}/${PLUGIN_INSTALL_LIBDIR}\")
+add_definitions(-DEXTCAP_DIR=\"${CMAKE_INSTALL_PREFIX}/${EXTCAP_INSTALL_LIBDIR}\")
+add_definitions(-DDATA_DIR=\"${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DATADIR}\")
 
 set(WSUTIL_PUBLIC_HEADERS
        adler32.h
        base32.h
-       base64.h
        bits_count_ones.h
        bits_ctz.h
        bitswap.h
        buffer.h
-       clopts_common.h
-       cmdarg_err.h
        color.h
        copyright_info.h
        cpu_info.h
@@ -35,15 +32,19 @@ set(WSUTIL_PUBLIC_HEADERS
        crc16.h
        crc16-plain.h
        crc32.h
+       curve25519.h
        eax.h
        filesystem.h
        frequency-utils.h
        g711.h
        inet_addr.h
+       inet_ipv4.h
        inet_ipv6.h
        interface.h
        jsmn.h
+       json_dumper.h
        mpeg-audio.h
+       netlink.h
        nstime.h
        os_version_info.h
        pint.h
@@ -75,11 +76,8 @@ set(WSUTIL_PUBLIC_HEADERS
 set(WSUTIL_COMMON_FILES
        adler32.c
        base32.c
-       base64.c
        bitswap.c
        buffer.c
-       clopts_common.c
-       cmdarg_err.c
        copyright_info.c
        crash_info.c
        crc10.c
@@ -90,6 +88,7 @@ set(WSUTIL_COMMON_FILES
        crc7.c
        crc8.c
        crc11.c
+       curve25519.c
        dot11decrypt_wep.c
        eax.c
        filesystem.c
@@ -98,6 +97,7 @@ set(WSUTIL_COMMON_FILES
        inet_addr.c
        interface.c
        jsmn.c
+       json_dumper.c
        mpeg-audio.c
        nstime.c
        cpu_info.c
@@ -217,20 +217,6 @@ if(APPLE)
        FIND_LIBRARY (APPLE_CORE_FOUNDATION_LIBRARY CoreFoundation)
 endif()
 
-set(wsutil_LIBS
-       ${CMAKE_DL_LIBS}
-       ${APPLE_CORE_FOUNDATION_LIBRARY}
-       ${GMODULE2_LIBRARIES}
-       ${GLIB2_LIBRARIES}
-       ${GCRYPT_LIBRARIES}
-       ${ZLIB_LIBRARIES}
-       ${WIN_WSOCK32_LIBRARY}
-       ${GNUTLS_LIBRARIES}
-)
-IF(WIN32)
-       set(wsutil_LIBS ${wsutil_LIBS} "iphlpapi.lib" "ws2_32.lib")
-ENDIF(WIN32)
-
 set_source_files_properties(
        ${WSUTIL_FILES}
        PROPERTIES
@@ -251,22 +237,14 @@ add_library(wsutil
        ${CMAKE_BINARY_DIR}/image/libwsutil.rc
 )
 
-set(FULL_SO_VERSION "0.0.0")
-
 set_target_properties(wsutil PROPERTIES
        PREFIX "lib"
        COMPILE_DEFINITIONS "WS_BUILD_DLL"
        LINK_FLAGS "${WS_LINK_FLAGS}"
-       VERSION ${FULL_SO_VERSION} SOVERSION 0
+       VERSION "0.0.0" SOVERSION 0
        FOLDER "DLLs"
 )
 
-if(ENABLE_APPLICATION_BUNDLE)
-       set_target_properties(wsutil PROPERTIES
-               LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/run/Wireshark.app/Contents/Frameworks
-       )
-endif()
-
 ABICHECK(libwsutil)
 
 add_custom_command(OUTPUT libwsutil.abi.tar.gz
@@ -279,32 +257,45 @@ add_custom_command(OUTPUT libwsutil.abi.tar.gz
        COMMAND rm -rf ${ABICHECK_TMPDIR} ${CMAKE_CURRENT_BINARY_DIR}/abi_dumps
        DEPENDS ${HEADERS} wsutil)
 
-target_link_libraries(wsutil ${wsutil_LIBS})
+target_link_libraries(wsutil
+       PUBLIC
+       ${CMAKE_DL_LIBS}
+       ${APPLE_CORE_FOUNDATION_LIBRARY}
+       ${GMODULE2_LIBRARIES}
+       ${GLIB2_LIBRARIES}
+       ${PCAP_LIBRARIES}
+       ${GCRYPT_LIBRARIES}
+       ${WIN_WSOCK32_LIBRARY}
+       ${GNUTLS_LIBRARIES}
+)
+
+if(WIN32)
+       target_link_libraries(wsutil PRIVATE "iphlpapi.lib" "ws2_32.lib")
+endif(WIN32)
+
+target_include_directories(wsutil SYSTEM
+       PUBLIC
+               ${PCAP_INCLUDE_DIRS}
+               ${GCRYPT_INCLUDE_DIRS}
+               ${GNUTLS_INCLUDE_DIRS}
+)
 
 install(TARGETS wsutil
+       EXPORT WiresharkTargets
+       RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
        LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
-       RUNTIME DESTINATION ${CMAKE_INSTALL_LIBDIR}
        ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
 )
 
-if(NOT WIN32)
-       install(FILES ${WSUTIL_PUBLIC_HEADERS}
-               DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${CPACK_PACKAGE_NAME}/wsutil"
-       )
-endif()
-
-# Export build-time datadir (note: the macro "DATAFILE_DIR" is defined in
-# config.h and points to the install-time data directory, hence the different
-# name).
-set_property(SOURCE filesystem.c APPEND PROPERTY
-       COMPILE_DEFINITIONS BUILD_TIME_DATAFILE_DIR="${DATAFILE_DIR}"
+install(FILES ${WSUTIL_PUBLIC_HEADERS}
+       DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${CPACK_PACKAGE_NAME}/wsutil"
 )
 
 CHECKAPI(
        NAME
          wsutil
        SWITCHES
-         -g termoutput -build
+         --group termoutput:2 --summary-group termoutput --build
        SOURCES
          ${WSUTIL_COMMON_FILES}
 )