Advertisement
rfmonk

GrBoost.cmake

Jun 27th, 2014
248
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Make 4.22 KB | None | 0 0
  1.  1 # Copyright 2010-2011 Free Software Foundation, Inc.
  2.  2 #
  3.  3 # This file is part of GNU Radio
  4.  4 #
  5.  5 # GNU Radio is free software; you can redistribute it and/or modify
  6.  6 # it under the terms of the GNU General Public License as published by
  7.  7 # the Free Software Foundation; either version 3, or (at your option)
  8.  8 # any later version.
  9.  9 #
  10. 10 # GNU Radio is distributed in the hope that it will be useful,
  11. 11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. 12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  13. 13 # GNU General Public License for more details.
  14. 14 #
  15. 15 # You should have received a copy of the GNU General Public License
  16. 16 # along with GNU Radio; see the file COPYING.  If not, write to
  17. 17 # the Free Software Foundation, Inc., 51 Franklin Street,
  18. 18 # Boston, MA 02110-1301, USA.
  19. 19
  20. 20 if(DEFINED __INCLUDED_GR_BOOST_CMAKE)
  21. 21     return()
  22. 22 endif()
  23. 23 set(__INCLUDED_GR_BOOST_CMAKE TRUE)
  24. 24
  25. 25 ########################################################################
  26. 26 # Setup Boost and handle some system specific things
  27. 27 ########################################################################
  28. 28
  29. 29 set(BOOST_REQUIRED_COMPONENTS
  30. 30     date_time
  31. 31     program_options
  32. 32     filesystem
  33. 33     system
  34. 34     thread
  35. 35 )
  36. 36
  37. 37 if(UNIX AND NOT BOOST_ROOT AND EXISTS "/usr/lib64")
  38. 38     list(APPEND BOOST_LIBRARYDIR "/usr/lib64") #fedora 64-bit fix
  39. 39 endif(UNIX AND NOT BOOST_ROOT AND EXISTS "/usr/lib64")
  40. 40
  41. 41 if(MSVC)
  42. 42     set(BOOST_REQUIRED_COMPONENTS ${BOOST_REQUIRED_COMPONENTS} chrono)
  43. 43
  44. 44     if (NOT DEFINED BOOST_ALL_DYN_LINK)
  45. 45         set(BOOST_ALL_DYN_LINK TRUE)
  46. 46     endif()
  47. 47     set(BOOST_ALL_DYN_LINK "${BOOST_ALL_DYN_LINK}" CACHE BOOL "boost enable dynamic linking")
  48. 48     if(BOOST_ALL_DYN_LINK)
  49. 49         add_definitions(-DBOOST_ALL_DYN_LINK) #setup boost auto-linking in msvc
  50. 50     else(BOOST_ALL_DYN_LINK)
  51. 51         unset(BOOST_REQUIRED_COMPONENTS) #empty components list for static link
  52. 52     endif(BOOST_ALL_DYN_LINK)
  53. 53 endif(MSVC)
  54. 54
  55. 55 find_package(Boost "1.35" COMPONENTS ${BOOST_REQUIRED_COMPONENTS})
  56. 56
  57. 57 # This does not allow us to disable specific versions. It is used
  58. 58 # internally by cmake to know the formation newer versions. As newer
  59. 59 # Boost version beyond what is shown here are produced, we must extend
  60. 60 # this list. To disable Boost versions, see below.
  61. 61 set(Boost_ADDITIONAL_VERSIONS
  62. 62     "1.35.0" "1.35" "1.36.0" "1.36" "1.37.0" "1.37" "1.38.0" "1.38" "1.39.0" "1.39"
  63. 63     "1.40.0" "1.40" "1.41.0" "1.41" "1.42.0" "1.42" "1.43.0" "1.43" "1.44.0" "1.44"
  64. 64     "1.45.0" "1.45" "1.46.0" "1.46" "1.47.0" "1.47" "1.48.0" "1.48" "1.49.0" "1.49"
  65. 65     "1.50.0" "1.50" "1.51.0" "1.51" "1.52.0" "1.52" "1.53.0" "1.53" "1.54.0" "1.54"
  66. 66     "1.55.0" "1.55" "1.56.0" "1.56" "1.57.0" "1.57" "1.58.0" "1.58" "1.59.0" "1.59"
  67. 67     "1.60.0" "1.60" "1.61.0" "1.61" "1.62.0" "1.62" "1.63.0" "1.63" "1.64.0" "1.64"
  68. 68     "1.65.0" "1.65" "1.66.0" "1.66" "1.67.0" "1.67" "1.68.0" "1.68" "1.69.0" "1.69"
  69. 69 )
  70. 70
  71. 71 # Boost 1.52 disabled, see https://svn.boost.org/trac/boost/ticket/7669
  72. 72 # Similar problems with Boost 1.46 and 1.47.
  73. 73
  74. 74 #OPTION(ENABLE_BAD_BOOST "Enable known bad versions of Boost" ON)
  75. 75 #if(ENABLE_BAD_BOOST)
  76. 76 #  MESSAGE(STATUS "Enabling use of known bad versions of Boost.")
  77. 77 #endif(ENABLE_BAD_BOOST)
  78. 78
  79. 79 # For any unsuitable Boost version, add the version number below in
  80. 80 # the following format: XXYYZZ
  81. 81 # Where:
  82. 82 #     XX is the major version ('10' for version 1)
  83. 83 #     YY is the minor version number ('46' for 1.46)
  84. 84 #     ZZ is the patcher version number (typically just '00')
  85. 85 #set(Boost_NOGO_VERSIONS
  86. 86
  87. 87 #  )
  88. 88
  89. 89 #foreach(ver ${Boost_NOGO_VERSIONS})
  90. 90 #  if(${Boost_VERSION} EQUAL ${ver})
  91. 91 #    if(NOT ENABLE_BAD_BOOST)
  92. 92 #      MESSAGE(STATUS "WARNING: Found a known bad version of Boost (v${Boost_VERSION}). Disabling.")
  93. 93 #      set(Boost_FOUND FALSE)
  94. 94 #    else(NOT ENABLE_BAD_BOOST)
  95. 95 #      MESSAGE(STATUS "WARNING: Found a known bad version of Boost (v${Boost_VERSION}). Continuing anyw   ay.")
  96. 96 #      set(Boost_FOUND TRUE)
  97. 97 #    endif(NOT ENABLE_BAD_BOOST)
  98. 98 #  endif(${Boost_VERSION} EQUAL ${ver})
  99. 99 #endforeach(ver)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement