#Build the gui ?
if(BUILD_wireshark)
- set(PACKAGELIST ${PACKAGELIST} GTK2)
- set(GTK2_OPTIONS COMPONENTS gtk)
- set(GTK2_DEBUG false)
+ if(ENABLE_GTK3)
+ set(PACKAGELIST ${PACKAGELIST} GTK3)
+ set(UI_MANAGER ON)
+ else()
+ set(PACKAGELIST ${PACKAGELIST} GTK2)
+ set(GTK2_OPTIONS COMPONENTS gtk)
+ set(GTK2_DEBUG false)
+ endif()
endif()
if(BUILD_dumpcap)
if(ENABLE_AIRPCAP)
set(HAVE_AIRPCAP 1)
endif()
+# No matter which version of GTK is present
+if(GTK2_FOUND OR GTK3_FOUND)
+ set(GTK_FOUND ON)
+endif()
# That's the name autofoo uses
if(HAVE_LIBZLIB)
set(HAVE_LIBZ 1)
add_subdirectory( wiretap )
add_subdirectory( wsutil )
-if(BUILD_wireshark AND GTK2_FOUND)
+if(BUILD_wireshark AND GTK_FOUND)
add_subdirectory( gtk )
endif()
${M_LIBRARIES}
)
-if(BUILD_wireshark AND GTK2_FOUND)
+if(BUILD_wireshark AND GTK_FOUND)
set(wireshark_LIBS
ui
${GTK2_LIBRARIES}
+ ${GTK3_LIBRARIES}
codecs
${PORTAUDIO_LIBRARIES}
${LIBEPAN_LIBS}
option(DISABLE_WERROR "Do not treat Warnings as errors" OFF)
option(ENABLE_EXTRA_GCC_CHECKS "Do additional -W checks in GCC (disables -Werror)" OFF)
+option(ENABLE_GTK3 "Use GTK3 instead of GTK2" OFF)
option(ENABLE_AIRPCAP "Enable Airpcap support" ON)
# todo
option(ENABLE_STATIC "Build a static version of Wireshark (not yet working)" OFF)
--- /dev/null
+# - Try to find GTK3
+#
+# $Id$
+#
+# Once done this will define
+#
+# GTK3_FOUND - System has GTK3
+# GTK3_INCLUDE_DIRS - The GTK3 include directory
+# GTK3_LIBRARIES - The libraries needed to use GTK3
+# GTK3_DEFINITIONS - Compiler switches required for using GTK3
+#=============================================================================
+# Copyright 2011 Duncan Mac-Vicar P. <duncan@kde.org>
+#
+# Distributed under the OSI-approved BSD License (the "License");
+# see accompanying file Copyright.txt for details.
+#
+# This software is distributed WITHOUT ANY WARRANTY; without even the
+# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# See the License for more information.
+#=============================================================================
+# (To distribute this file outside of CMake, substitute the full
+# License text for the above reference.)
+
+# use pkg-config to get the directories and then use these values
+# in the FIND_PATH() and FIND_LIBRARY() calls
+FIND_PACKAGE(PkgConfig)
+PKG_CHECK_MODULES(PC_GTK3 gtk+-3.0 QUIET)
+SET(GTK3_DEFINITIONS ${PC_GTK3_CFLAGS_OTHER})
+
+FIND_PATH(GTK3_INCLUDE_DIR NAMES "gtk/gtk.h"
+ HINTS
+ ${PC_GTK3_INCLUDEDIR}
+ ${PC_GTK3_INCLUDE_DIRS}
+ PATH_SUFFIXES "gtk-3.0"
+ )
+SET(GTK3_INCLUDE_DIRS ${PC_GTK3_INCLUDE_DIRS})
+
+FIND_LIBRARY(GTK3_LIBRARIES NAMES gtk-3 gtk3
+ HINTS
+ ${PC_GTK3_LIBDIR}
+ ${PC_GTK3_LIBRARY_DIRS}
+ )
+
+# handle the QUIETLY and REQUIRED arguments and set GTK3_FOUND to TRUE if
+# all listed variables are TRUE
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(GTK3 DEFAULT_MSG GTK3_LIBRARIES GTK3_INCLUDE_DIRS)
+
+MARK_AS_ADVANCED(GTK3_INCLUDE_DIRS GTK3_LIBRARIES)
+