source: nscp/build/cmake/FindGoogleBreakpad.cmake @ 1f24a1c

0.4.00.4.10.4.2
Last change on this file since 1f24a1c was 1f24a1c, checked in by Michael Medin <michael@…>, 2 years ago

Syncronized streams so all new 0.3.9 features are now in 0.4.x as well

  • Property mode set to 100644
File size: 2.5 KB
Line 
1# -*- cmake -*-
2
3# - Find Google BreakPad
4# Find the Google BreakPad includes and library
5# This module defines
6#  BREAKPAD_EXCEPTION_HANDLER_INCLUDE_DIR, where to find exception_handler.h, etc.
7#  BREAKPAD_EXCEPTION_HANDLER_LIBRARIES, the libraries needed to use Google BreakPad.
8#  BREAKPAD_EXCEPTION_HANDLER_FOUND, If false, do not try to use Google BreakPad.
9# also defined, but not for general use are
10#  BREAKPAD_EXCEPTION_HANDLER_LIBRARY, where to find the Google BreakPad library.
11
12FIND_PATH(BREAKPAD_INCLUDE_DIR google_breakpad/client/breakpad_types.h)
13
14IF(NOT GoogleBreakpad_FIND_COMPONENTS)
15        SET(GoogleBreakpad_FIND_COMPONENTS common exception_handler)
16ENDIF(NOT GoogleBreakpad_FIND_COMPONENTS)
17IF(NOT BREAKPAD_LIBRARY_PREFIX)
18        SET(BREAKPAD_LIBRARY_PREFIX "")
19ENDIF(NOT BREAKPAD_LIBRARY_PREFIX)
20IF(NOT BREAKPAD_LIBRARY_SUFFIX)
21        SET(BREAKPAD_LIBRARY_SUFFIX "")
22ENDIF(NOT BREAKPAD_LIBRARY_SUFFIX)
23IF(NOT BREAKPAD_LIBRARY_PREFIX_DEBUG)
24        SET(BREAKPAD_LIBRARY_PREFIX_DEBUG ${BREAKPAD_LIBRARY_PREFIX})
25ENDIF(NOT BREAKPAD_LIBRARY_PREFIX_DEBUG)
26IF(NOT BREAKPAD_LIBRARY_SUFFIX_DEBUG)
27        SET(BREAKPAD_LIBRARY_SUFFIX_DEBUG ${BREAKPAD_LIBRARY_SUFFIX})
28ENDIF(NOT BREAKPAD_LIBRARY_SUFFIX_DEBUG)
29
30MESSAGE(STATUS "Breakpad config: ${BREAKPAD_LIBRARY_PREFIX}...${BREAKPAD_LIBRARY_SUFFIX}, ${BREAKPAD_LIBRARY_PREFIX_DEBUG}...${BREAKPAD_LIBRARY_SUFFIX_DEBUG}" )
31SET(BREAKPAD_FOUND TRUE)
32FOREACH(COMPONENT ${GoogleBreakpad_FIND_COMPONENTS})
33    string(TOUPPER ${COMPONENT} UPPERCOMPONENT)
34        FIND_LIBRARY(BREAKPAD_${UPPERCOMPONENT}_LIBRARY_RELEASE NAMES ${BREAKPAD_LIBRARY_PREFIX}${COMPONENT}${BREAKPAD_LIBRARY_SUFFIX})
35        FIND_LIBRARY(BREAKPAD_${UPPERCOMPONENT}_LIBRARY_DEBUG NAMES ${BREAKPAD_LIBRARY_PREFIX_DEBUG}${COMPONENT}${BREAKPAD_LIBRARY_SUFFIX_DEBUG})
36        IF(BREAKPAD_${UPPERCOMPONENT}_LIBRARY_RELEASE AND BREAKPAD_${UPPERCOMPONENT}_LIBRARY_DEBUG)
37                SET(BREAKPAD_${UPPERCOMPONENT}_FOUND TRUE)
38                SET(BREAKPAD_${UPPERCOMPONENT}_LIBRARY optimized ${BREAKPAD_${UPPERCOMPONENT}_LIBRARY_RELEASE} debug ${BREAKPAD_${UPPERCOMPONENT}_LIBRARY_DEBUG})
39                set(BREAKPAD_${UPPERCOMPONENT}_LIBRARY ${BREAKPAD_${UPPERCOMPONENT}_LIBRARY} CACHE FILEPATH "The breakpad ${UPPERCOMPONENT} library")
40        ELSE(BREAKPAD_${UPPERCOMPONENT}_LIBRARY_RELEASE AND BREAKPAD_${UPPERCOMPONENT}_LIBRARY_DEBUG)
41                SET(BREAKPAD_FOUND FALSE)
42                SET(BREAKPAD_${UPPERCOMPONENT}_FOUND FALSE)
43                SET(BREAKPAD_${UPPERCOMPONENT}_LIBRARY "${BREAKPAD_${UPPERCOMPONENT}_LIBRARY_RELEASE-NOTFOUND}")
44        ENDIF(BREAKPAD_${UPPERCOMPONENT}_LIBRARY_RELEASE AND BREAKPAD_${UPPERCOMPONENT}_LIBRARY_DEBUG)
45ENDFOREACH(COMPONENT)
Note: See TracBrowser for help on using the repository browser.