summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorJörg Mayer <jmayer@loplof.de>2013-09-23 21:45:55 +0000
committerJörg Mayer <jmayer@loplof.de>2013-09-23 21:45:55 +0000
commitd456079b7e928007d4130ffb4ab5ccf49c98481e (patch)
treedba40805065d07057c21b5b77dbb76ec1419bd05 /cmake
parentd74564d6cf9d5e5d5927b51d31220db1c51409e7 (diff)
downloadwireshark-d456079b7e928007d4130ffb4ab5ccf49c98481e.tar.gz
Beginnings of win cmake support (not yet working), created by Graham Bloice,
some smaller changes by me. - README.cmake Document how to (one day) run on Windows - CMakeLists.txt Use MSVC compiler flags for MSVC instead of gcc flags - FindWSWinLibs.cmake New: Creates HINTS for finding includes and libraries inside the Wireshark support library installation. - FindXXX.cmake Make use of HINTS generated by FindWSWinLibs.cmake This has not really been tested on Windows as my installation seems to have automagically downloaded some fixes and is in an inconsistent state since. Will probably need to reinstall. svn path=/trunk/; revision=52194
Diffstat (limited to 'cmake')
-rw-r--r--cmake/modules/FindCARES.cmake9
-rw-r--r--cmake/modules/FindGCRYPT.cmake11
-rw-r--r--cmake/modules/FindGEOIP.cmake9
-rw-r--r--cmake/modules/FindGLIB2.cmake8
-rw-r--r--cmake/modules/FindGMODULE2.cmake22
-rw-r--r--cmake/modules/FindGNUTLS.cmake8
-rw-r--r--cmake/modules/FindGTHREAD2.cmake28
-rw-r--r--cmake/modules/FindGTK2.cmake12
-rw-r--r--cmake/modules/FindKERBEROS.cmake9
-rw-r--r--cmake/modules/FindLUA.cmake4
-rw-r--r--cmake/modules/FindPCAP.cmake9
-rw-r--r--cmake/modules/FindPORTAUDIO.cmake5
-rw-r--r--cmake/modules/FindSMI.cmake9
-rw-r--r--cmake/modules/FindWSWinLibs.cmake26
14 files changed, 128 insertions, 41 deletions
diff --git a/cmake/modules/FindCARES.cmake b/cmake/modules/FindCARES.cmake
index e4552d7bd0..ae552517fb 100644
--- a/cmake/modules/FindCARES.cmake
+++ b/cmake/modules/FindCARES.cmake
@@ -14,10 +14,13 @@ IF (CARES_INCLUDE_DIRS)
SET(CARES_FIND_QUIETLY TRUE)
ENDIF (CARES_INCLUDE_DIRS)
-FIND_PATH(CARES_INCLUDE_DIR ares.h)
+INCLUDE(FindWSWinLibs)
+FindWSWinLibs("c-ares-.*" "CARES_HINTS")
-SET(CARES_NAMES cares)
-FIND_LIBRARY(CARES_LIBRARY NAMES ${CARES_NAMES} )
+FIND_PATH(CARES_INCLUDE_DIR ares.h HINTS "${CARES_HINTS}/include" )
+
+SET(CARES_NAMES cares libcares-2)
+FIND_LIBRARY(CARES_LIBRARY NAMES ${CARES_NAMES} HINTS "${CARES_HINTS}/lib" )
# handle the QUIETLY and REQUIRED arguments and set CARES_FOUND to TRUE if
# all listed variables are TRUE
diff --git a/cmake/modules/FindGCRYPT.cmake b/cmake/modules/FindGCRYPT.cmake
index 2a01cad8cf..aa48f16053 100644
--- a/cmake/modules/FindGCRYPT.cmake
+++ b/cmake/modules/FindGCRYPT.cmake
@@ -14,11 +14,14 @@ IF (GCRYPT_INCLUDE_DIRS)
SET(GCRYPT_FIND_QUIETLY TRUE)
ENDIF (GCRYPT_INCLUDE_DIRS)
-FIND_PATH(GCRYPT_INCLUDE_DIR gcrypt.h)
+INCLUDE(FindWSWinLibs)
+FindWSWinLibs("gnutls-.*" "GCRYPT_HINTS")
-SET(GCRYPT_NAMES gcrypt)
-FIND_LIBRARY(GCRYPT_LIBRARY NAMES ${GCRYPT_NAMES} )
-FIND_LIBRARY(GCRYPT_ERROR_LIBRARY NAMES gpg-error )
+FIND_PATH(GCRYPT_INCLUDE_DIR gcrypt.h HINTS "${GCRYPT_HINTS}/include")
+
+SET(GCRYPT_NAMES gcrypt libgcrypt-11)
+FIND_LIBRARY(GCRYPT_LIBRARY NAMES ${GCRYPT_NAMES} HINTS "${GCRYPT_HINTS}/bin")
+FIND_LIBRARY(GCRYPT_ERROR_LIBRARY NAMES gpg-error libgpg-error-0 HINTS "${GCRYPT_HINTS}/bin")
# handle the QUIETLY and REQUIRED arguments and set GCRYPT_FOUND to TRUE if
# all listed variables are TRUE
diff --git a/cmake/modules/FindGEOIP.cmake b/cmake/modules/FindGEOIP.cmake
index 09a763ea23..bfd4c933f4 100644
--- a/cmake/modules/FindGEOIP.cmake
+++ b/cmake/modules/FindGEOIP.cmake
@@ -14,10 +14,13 @@ IF (GEOIP_INCLUDE_DIRS)
SET(GEOIP_FIND_QUIETLY TRUE)
ENDIF (GEOIP_INCLUDE_DIRS)
-FIND_PATH(GEOIP_INCLUDE_DIR GeoIP.h)
+INCLUDE(FindWSWinLibs)
+FindWSWinLibs("GeoIP-.*" "GEOIP_HINTS")
-SET(GEOIP_NAMES GeoIP)
-FIND_LIBRARY(GEOIP_LIBRARY NAMES ${GEOIP_NAMES} )
+FIND_PATH(GEOIP_INCLUDE_DIR GeoIP.h HINTS "${GEOIP_HINTS}/include" )
+
+SET(GEOIP_NAMES GeoIP libGeoIP-1)
+FIND_LIBRARY(GEOIP_LIBRARY NAMES ${GEOIP_NAMES} HINTS "${GEOIP_HINTS}/lib" )
# handle the QUIETLY and REQUIRED arguments and set GEOIP_FOUND to TRUE if
# all listed variables are TRUE
diff --git a/cmake/modules/FindGLIB2.cmake b/cmake/modules/FindGLIB2.cmake
index 03be273b2b..08bb950d42 100644
--- a/cmake/modules/FindGLIB2.cmake
+++ b/cmake/modules/FindGLIB2.cmake
@@ -23,6 +23,8 @@
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
#
+INCLUDE(FindWSWinLibs)
+FindWSWinLibs("gtk2" "GLIB2_HINTS")
IF (GLIB2_LIBRARIES AND GLIB2_INCLUDE_DIRS )
# in cache already
@@ -69,6 +71,8 @@ ELSE (GLIB2_LIBRARIES AND GLIB2_INCLUDE_DIRS )
${CMAKE_LIBRARY_PATH}
PATH_SUFFIXES
glib-2.0/include
+ HINTS
+ "${GLIB2_HINTS}/lib"
)
FIND_PATH(
@@ -84,6 +88,8 @@ ELSE (GLIB2_LIBRARIES AND GLIB2_INCLUDE_DIRS )
/usr/local/include
PATH_SUFFIXES
glib-2.0
+ HINTS
+ "${GLIB2_HINTS}/include"
)
#MESSAGE(STATUS "Glib headers: ${_glib2_include_DIR}")
@@ -101,6 +107,8 @@ ELSE (GLIB2_LIBRARIES AND GLIB2_INCLUDE_DIRS )
/sw/lib
/usr/lib
/usr/local/lib
+ HINTS
+ "${GLIB2_HINTS}/lib"
)
IF ( _glib2_include_DIR AND _glib2_link_DIR )
SET ( _glib2_FOUND TRUE )
diff --git a/cmake/modules/FindGMODULE2.cmake b/cmake/modules/FindGMODULE2.cmake
index bb99067a02..2367bb6e26 100644
--- a/cmake/modules/FindGMODULE2.cmake
+++ b/cmake/modules/FindGMODULE2.cmake
@@ -1,12 +1,12 @@
#
# $Id$
#
-# - Try to find GModule2
+# - Try to find GModule2
# Find GModule headers, libraries and the answer to all questions.
#
# GMODULE2_FOUND True if GMODULE2 got found
-# GMODULE2_INCLUDE_DIRS Location of GMODULE2 headers
-# GMODULE2_LIBRARIES List of libraries to use GMODULE2
+# GMODULE2_INCLUDE_DIRS Location of GMODULE2 headers
+# GMODULE2_LIBRARIES List of libraries to use GMODULE2
#
# Copyright (c) 2008 Bjoern Ricks <bjoern.ricks@googlemail.com>
#
@@ -20,7 +20,7 @@ INCLUDE( FindPkgConfig )
IF ( GMODULE2_FIND_REQUIRED )
SET( _pkgconfig_REQUIRED "REQUIRED" )
ELSE( GMODULE2_FIND_REQUIRED )
- SET( _pkgconfig_REQUIRED "" )
+ SET( _pkgconfig_REQUIRED "" )
ENDIF ( GMODULE2_FIND_REQUIRED )
IF ( GMODULE2_MIN_VERSION )
@@ -31,26 +31,30 @@ ENDIF ( GMODULE2_MIN_VERSION )
IF( NOT GMODULE2_FOUND AND NOT PKG_CONFIG_FOUND )
- FIND_PATH( GMODULE2_INCLUDE_DIRS gmodule.h PATH_SUFFIXES glib-2.0 )
+
+ INCLUDE(FindWSWinLibs)
+ FindWSWinLibs("gtk2" "GMODULE2_HINTS")
+
+ FIND_PATH( GMODULE2_INCLUDE_DIRS gmodule.h PATH_SUFFIXES glib-2.0 HINTS "${GMODULE2_HINTS}/include" )
IF ( APPLE )
FIND_LIBRARY( GMODULE2_LIBRARIES glib )
ELSE ( APPLE )
- FIND_LIBRARY( GMODULE2_LIBRARIES NAMES gmodule-2.0 gmodule )
+ FIND_LIBRARY( GMODULE2_LIBRARIES NAMES gmodule-2.0 gmodule HINTS "${GMODULE2_HINTS}/lib" )
ENDIF (APPLE)
# Report results
- IF ( GMODULE2_LIBRARIES AND GMODULE2_INCLUDE_DIRS )
+ IF ( GMODULE2_LIBRARIES AND GMODULE2_INCLUDE_DIRS )
SET( GMODULE2_FOUND 1 )
IF ( NOT GMODULE2_FIND_QUIETLY )
MESSAGE( STATUS "Found GMODULE2: ${GMODULE2_LIBRARIES} ${GMODULE2_INCLUDE_DIRS}" )
ENDIF ( NOT GMODULE2_FIND_QUIETLY )
- ELSE ( GMODULE2_LIBRARIES AND GMODULE2_INCLUDE_DIRS )
+ ELSE ( GMODULE2_LIBRARIES AND GMODULE2_INCLUDE_DIRS )
IF ( GMODULE2_FIND_REQUIRED )
MESSAGE( SEND_ERROR "Could NOT find GMODULE2" )
ELSE ( GMODULE2_FIND_REQUIRED )
IF ( NOT GMODULE2_FIND_QUIETLY )
- MESSAGE( STATUS "Could NOT find GMODULE2" )
+ MESSAGE( STATUS "Could NOT find GMODULE2" )
ENDIF ( NOT GMODULE2_FIND_QUIETLY )
ENDIF ( GMODULE2_FIND_REQUIRED )
ENDIF ( GMODULE2_LIBRARIES AND GMODULE2_INCLUDE_DIRS )
diff --git a/cmake/modules/FindGNUTLS.cmake b/cmake/modules/FindGNUTLS.cmake
index 91f105881d..fe5c521f0a 100644
--- a/cmake/modules/FindGNUTLS.cmake
+++ b/cmake/modules/FindGNUTLS.cmake
@@ -14,15 +14,19 @@ IF (GNUTLS_INCLUDE_DIRS)
SET(GNUTLS_FIND_QUIETLY TRUE)
ENDIF (GNUTLS_INCLUDE_DIRS)
+INCLUDE(FindWSWinLibs)
+FindWSWinLibs("gnutls-.*" "GNUTLS_HINTS")
+
FIND_PATH(GNUTLS_INCLUDE_DIR
NAMES
gnutls.h
gnutls/gnutls.h
# PATHS
+ HINTS "${GNUTLS_HINTS}/include"
)
-SET(GNUTLS_NAMES gnutls)
-FIND_LIBRARY(GNUTLS_LIBRARY NAMES ${GNUTLS_NAMES} )
+SET(GNUTLS_NAMES gnutls libgnutls-26)
+FIND_LIBRARY(GNUTLS_LIBRARY NAMES ${GNUTLS_NAMES} HINTS "${GNUTLS_HINTS}/bin" )
# handle the QUIETLY and REQUIRED arguments and set GNUTLS_FOUND to TRUE if
# all listed variables are TRUE
diff --git a/cmake/modules/FindGTHREAD2.cmake b/cmake/modules/FindGTHREAD2.cmake
index 8bcbacac72..9b89f55eb9 100644
--- a/cmake/modules/FindGTHREAD2.cmake
+++ b/cmake/modules/FindGTHREAD2.cmake
@@ -1,12 +1,12 @@
-# - Try to find GThread2
+# - Try to find GThread2
#
# $Id$
#
# Find GThread headers, libraries and the answer to all questions.
#
# GTHREAD2_FOUND True if GTHREAD2 got found
-# GTHREAD2_INCLUDE_DIRS Location of GTHREAD2 headers
-# GTHREAD2_LIBRARIES List of libraries to use GTHREAD2
+# GTHREAD2_INCLUDE_DIRS Location of GTHREAD2 headers
+# GTHREAD2_LIBRARIES List of libraries to use GTHREAD2
#
# Copyright (c) 2008 Bjoern Ricks <bjoern.ricks@googlemail.com>
#
@@ -20,7 +20,7 @@ INCLUDE( FindPkgConfig )
IF ( GTHREAD2_FIND_REQUIRED )
SET( _pkgconfig_REQUIRED "REQUIRED" )
ELSE( GTHREAD2_FIND_REQUIRED )
- SET( _pkgconfig_REQUIRED "" )
+ SET( _pkgconfig_REQUIRED "" )
ENDIF ( GTHREAD2_FIND_REQUIRED )
IF ( GTHREAD2_MIN_VERSION )
@@ -31,28 +31,32 @@ ENDIF ( GTHREAD2_MIN_VERSION )
IF( NOT GTHREAD2_FOUND AND NOT PKG_CONFIG_FOUND )
- FIND_PATH( GTHREAD2_INCLUDE_DIRS gthread.h PATH_SUFFIXES glib-2.0 glib GLib.framework/Headers/glib )
- IF ( APPLE )
+
+ INCLUDE(FindWSWinLibs)
+ FindWSWinLibs("gtk2" "GTHREAD2_HINTS")
+
+ FIND_PATH( GTHREAD2_INCLUDE_DIRS gthread.h PATH_SUFFIXES glib-2.0 glib GLib.framework/Headers/glib glib-2.0/glib HINTS "${GTHREAD2_HINTS}/include" )
+ IF ( APPLE )
FIND_LIBRARY( GTHREAD2_LIBRARIES glib )
ELSE ( APPLE )
- FIND_LIBRARY( GTHREAD2_LIBRARIES gthread-2.0 )
+ FIND_LIBRARY( GTHREAD2_LIBRARIES gthread-2.0 HINTS "${GTHREAD2_HINTS}/lib" )
ENDIF ( APPLE )
-
+
#MESSAGE( STATUS "Gthread headers: ${GTHREAD2_INCLUDE_DIRS}" )
#MESSAGE( STATUS "Gthread libs: ${GTHREAD2_LIBRARIES}" )
-
+
# Report results
- IF ( GTHREAD2_LIBRARIES AND GTHREAD2_INCLUDE_DIRS )
+ IF ( GTHREAD2_LIBRARIES AND GTHREAD2_INCLUDE_DIRS )
SET( GTHREAD2_FOUND 1 )
IF ( NOT GTHREAD2_FIND_QUIETLY )
MESSAGE( STATUS "Found GTHREAD2: ${GTHREAD2_LIBRARIES} ${GTHREAD2_INCLUDE_DIRS}" )
ENDIF ( NOT GTHREAD2_FIND_QUIETLY )
- ELSE ( GTHREAD2_LIBRARIES AND GTHREAD2_INCLUDE_DIRS )
+ ELSE ( GTHREAD2_LIBRARIES AND GTHREAD2_INCLUDE_DIRS )
IF ( GTHREAD2_FIND_REQUIRED )
MESSAGE( SEND_ERROR "Could NOT find GTHREAD2" )
ELSE ( GTHREAD2_FIND_REQUIRED )
IF ( NOT GTHREAD2_FIND_QUIETLY )
- MESSAGE( STATUS "Could NOT find GTHREAD2" )
+ MESSAGE( STATUS "Could NOT find GTHREAD2" )
ENDIF ( NOT GTHREAD2_FIND_QUIETLY )
ENDIF ( GTHREAD2_FIND_REQUIRED )
ENDIF ( GTHREAD2_LIBRARIES AND GTHREAD2_INCLUDE_DIRS )
diff --git a/cmake/modules/FindGTK2.cmake b/cmake/modules/FindGTK2.cmake
index 1569f53dfb..9e02412dbd 100644
--- a/cmake/modules/FindGTK2.cmake
+++ b/cmake/modules/FindGTK2.cmake
@@ -105,6 +105,9 @@
# Version 0.5 (12/19/08)
# Second release to cmake mailing list
+INCLUDE(FindWSWinLibs)
+FindWSWinLibs("gtk2" "GTK2_HINTS")
+
#=============================================================
# _GTK2_GET_VERSION
# Internal function to parse the version number in gtkversion.h
@@ -206,6 +209,9 @@ function(_GTK2_FIND_INCLUDE_DIR _var _hdr)
[HKEY_LOCAL_MACHINE\\SOFTWARE\\gtkmm\\2.4;Path]/lib
PATH_SUFFIXES
${_suffixes}
+ HINTS
+ "${GTK2_HINTS}/include"
+ "${GTK2_HINTS}/lib"
)
if(${_var})
@@ -313,6 +319,8 @@ function(_GTK2_FIND_LIBRARY _var _lib _expand_vc _append_version)
$ENV{GTKMM_BASEPATH}/lib
[HKEY_CURRENT_USER\\SOFTWARE\\gtkmm\\2.4;Path]/lib
[HKEY_LOCAL_MACHINE\\SOFTWARE\\gtkmm\\2.4;Path]/lib
+ HINTS
+ "${GTK2_HINTS}/lib"
)
if(_expand_vc AND MSVC)
@@ -419,7 +427,9 @@ endif()
find_package(Freetype)
list(APPEND GTK2_INCLUDE_DIRS ${FREETYPE_INCLUDE_DIRS})
-list(APPEND GTK2_LIBRARIES ${FREETYPE_LIBRARIES})
+if(NOT WIN32)
+ list(APPEND GTK2_LIBRARIES ${FREETYPE_LIBRARIES})
+endif(NOT WIN32)
foreach(_GTK2_component ${GTK2_FIND_COMPONENTS})
if(_GTK2_component STREQUAL "gtk")
diff --git a/cmake/modules/FindKERBEROS.cmake b/cmake/modules/FindKERBEROS.cmake
index 1c255350ff..4cd312c7f4 100644
--- a/cmake/modules/FindKERBEROS.cmake
+++ b/cmake/modules/FindKERBEROS.cmake
@@ -14,10 +14,13 @@ IF (KERBEROS_INCLUDE_DIRS)
SET(KERBEROS_FIND_QUIETLY TRUE)
ENDIF (KERBEROS_INCLUDE_DIRS)
-FIND_PATH(KERBEROS_INCLUDE_DIR krb5.h)
+INCLUDE(FindWSWinLibs)
+FindWSWinLibs("kfw-.*" "KERBOROS_HINTS")
-SET(KERBEROS_NAMES krb5)
-FIND_LIBRARY(KERBEROS_LIBRARY NAMES ${KERBEROS_NAMES} )
+FIND_PATH(KERBEROS_INCLUDE_DIR krb5.h HINTS "${KERBOROS_HINTS}/include" )
+
+SET(KERBEROS_NAMES krb5 krb5_32)
+FIND_LIBRARY(KERBEROS_LIBRARY NAMES ${KERBEROS_NAMES} HINTS "${KERBOROS_HINTS}/lib" )
# handle the QUIETLY and REQUIRED arguments and set KERBEROS_FOUND to TRUE if
# all listed variables are TRUE
diff --git a/cmake/modules/FindLUA.cmake b/cmake/modules/FindLUA.cmake
index 4c5577e9ea..d0a46a973f 100644
--- a/cmake/modules/FindLUA.cmake
+++ b/cmake/modules/FindLUA.cmake
@@ -14,10 +14,13 @@
# This is because, the lua location is not standardized and may exist
# in locations other than lua/
+INCLUDE(FindWSWinLibs)
+FindWSWinLibs("lua5*" "LUA_HINTS")
FIND_PATH(LUA_INCLUDE_DIR lua.h
HINTS
$ENV{LUA_DIR}
+ ${LUA_HINTS}
PATH_SUFFIXES include/lua52 include/lua5.2 include/lua51 include/lua5.1 include/lua include
PATHS
~/Library/Frameworks
@@ -49,6 +52,7 @@ FIND_LIBRARY(LUA_LIBRARY
NAMES lua${LUA_INC_SUFFIX} lua52 lua5.2 lua51 lua5.1 lua
HINTS
$ENV{LUA_DIR}
+ ${LUA_HINTS}
PATH_SUFFIXES lib64 lib
PATHS
~/Library/Frameworks
diff --git a/cmake/modules/FindPCAP.cmake b/cmake/modules/FindPCAP.cmake
index 1d3c1b6c0d..bd7fafaca1 100644
--- a/cmake/modules/FindPCAP.cmake
+++ b/cmake/modules/FindPCAP.cmake
@@ -68,15 +68,24 @@ IF(EXISTS $ENV{PCAPDIR})
ELSE(EXISTS $ENV{PCAPDIR})
+
+ INCLUDE(FindWSWinLibs)
+ FindWSWinLibs("WpdPack" "PCAP_HINTS")
+
FIND_PATH(PCAP_INCLUDE_DIR
NAMES
pcap/pcap.h
pcap.h
+ HINTS
+ "${PCAP_HINTS}/include"
)
FIND_LIBRARY(PCAP_LIBRARY
NAMES
pcap
+ wpcap
+ HINTS
+ "${PCAP_HINTS}/lib"
)
ENDIF(EXISTS $ENV{PCAPDIR})
diff --git a/cmake/modules/FindPORTAUDIO.cmake b/cmake/modules/FindPORTAUDIO.cmake
index 29f831185c..3735ddb7f7 100644
--- a/cmake/modules/FindPORTAUDIO.cmake
+++ b/cmake/modules/FindPORTAUDIO.cmake
@@ -14,7 +14,10 @@ IF (PORTAUDIO_INCLUDE_DIRS)
SET(PORTAUDIO_FIND_QUIETLY TRUE)
ENDIF (PORTAUDIO_INCLUDE_DIRS)
-FIND_PATH(PORTAUDIO_INCLUDE_DIR portaudio.h)
+INCLUDE(FindWSWinLibs)
+FindWSWinLibs("portaudio_.*" "PORTAUDIO_HINTS")
+
+FIND_PATH(PORTAUDIO_INCLUDE_DIR portaudio.h HINTS "${PORTAUDIO_HINTS}/include" )
SET(PORTAUDIO_NAMES portaudio)
FIND_LIBRARY(PORTAUDIO_LIBRARY NAMES ${PORTAUDIO_NAMES} )
diff --git a/cmake/modules/FindSMI.cmake b/cmake/modules/FindSMI.cmake
index 8850cb65d9..a483ebf051 100644
--- a/cmake/modules/FindSMI.cmake
+++ b/cmake/modules/FindSMI.cmake
@@ -14,10 +14,13 @@ IF (SMI_INCLUDE_DIR)
SET(SMI_FIND_QUIETLY TRUE)
ENDIF (SMI_INCLUDE_DIR)
-FIND_PATH(SMI_INCLUDE_DIR smi.h)
+INCLUDE(FindWSWinLibs)
+FindWSWinLibs("libsmi-.*" "SMI_HINTS")
-SET(SMI_NAMES smi)
-FIND_LIBRARY(SMI_LIBRARY NAMES ${SMI_NAMES} )
+FIND_PATH(SMI_INCLUDE_DIR smi.h HINTS "${SMI_HINTS}/include" )
+
+SET(SMI_NAMES smi libsmi-2)
+FIND_LIBRARY(SMI_LIBRARY NAMES ${SMI_NAMES} HINTS "${SMI_HINTS}/lib" )
# handle the QUIETLY and REQUIRED arguments and set SMI_FOUND to TRUE if
# all listed variables are TRUE
diff --git a/cmake/modules/FindWSWinLibs.cmake b/cmake/modules/FindWSWinLibs.cmake
new file mode 100644
index 0000000000..3442e84ed0
--- /dev/null
+++ b/cmake/modules/FindWSWinLibs.cmake
@@ -0,0 +1,26 @@
+#
+# $Id$
+#
+# - Find WSWin Libs
+# Due to the layout of the Wireshark Win support libs,
+# CMake needs some support to find them
+#
+# The function is passed the directory name to search for and the variable
+# to set in the callers scope.
+
+function(FindWSWinLibs _WS_LIB_SEARCH_PATH _LIB_HINT_VAR)
+ if (WIN32)
+ set( _WS_BASE_DIR $ENV{WIRESHARK_BASE_DIR} )
+ set( _WS_TARGET_PLATFORM $ENV{WIRESHARK_TARGET_PLATFORM} )
+ set( _PROJECT_LIB_DIR "${_WS_BASE_DIR}/wireshark-${_WS_TARGET_PLATFORM}-libs" )
+ file( GLOB _SUBDIR "${_PROJECT_LIB_DIR}/*" )
+ foreach( _DIR ${_SUBDIR} )
+ if( IS_DIRECTORY ${dir} )
+ if( "${_DIR}" matches ".*/${_WS_LIB_SEARCH_PATH}" )
+ set( ${_LIB_HINT_VAR} ${_DIR} PARENT_SCOPE )
+ endif()
+ endif()
+ endforeach()
+ endif()
+endfunction(FindWSWinLibs)
+