Guest User

blender-2.65a-CMakeList.patch

a guest
Feb 16th, 2013
85
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --- CMakeLists.txt.orig 2013-02-12 21:04:13.431193134 +0100
  2. +++ CMakeLists.txt      2013-02-13 23:28:58.880561209 +0100
  3. @@ -270,6 +270,8 @@
  4.  
  5.  option(WITH_BOOST                                      "Enable features depending no boost" ON)
  6.  
  7. +option(WITH_STRICT_DEP "Build strictly with external deps, failing when not found" OFF)
  8. +
  9.  
  10.  if(APPLE)
  11.         cmake_minimum_required(VERSION 2.8.8)
  12. @@ -555,33 +558,68 @@
  13.         if(WITH_IMAGE_OPENEXR)
  14.                 find_package_wrapper(OpenEXR)  # our own module
  15.                 if(NOT OPENEXR_FOUND)
  16. +                     if(WITH_STRICT_DEP)
  17. +                         message(FATAL_ERROR "OpenEXR not found.")
  18. +               else()
  19.                         set(WITH_IMAGE_OPENEXR OFF)
  20.                 endif()
  21.         endif()
  22. +       endif()
  23. +
  24. +        if(WITH_BULLET)
  25. +                find_package_wrapper(Bullet)  # our own module
  26. +                if(NOT BULLET_FOUND)
  27. +                      if(WITH_STRICT_DEP)
  28. +                          message(FATAL_ERROR "Bullet not found.")
  29. +                      endif()
  30. +                endif()
  31. +        endif()
  32. +
  33. +        if(WITH_EIGEN)
  34. +                find_package_wrapper(Eigen)  # our own module
  35. +                if(NOT EIGEN_FOUND)
  36. +                      if(WITH_STRICT_DEP)                                                                                      
  37. +                          message(FATAL_ERROR "Eigen not found.")                                                              
  38. +                      endif()                                                                                                  
  39. +                endif()                                                                                                        
  40. +        endif()                                                                                                                
  41. +
  42.  
  43.         if(WITH_IMAGE_OPENJPEG)
  44.                 find_package_wrapper(OpenJPEG)
  45.                 if(NOT OPENJPEG_FOUND)
  46. +      if(WITH_STRICT_DEP)
  47. +        message(FATAL_ERROR "OpenJPEG not found.")
  48. +      else()
  49.                         set(WITH_IMAGE_OPENJPEG OFF)
  50.                 endif()
  51.         endif()
  52. +       endif()
  53.  
  54.         if(WITH_IMAGE_TIFF)
  55.                 # XXX Linking errors with debian static tiff :/
  56.  #              find_package_wrapper(TIFF)
  57.                 find_package(TIFF)
  58.                 if(NOT TIFF_FOUND)
  59. +      if(WITH_STRICT_DEP)
  60. +        message(FATAL_ERROR "Tiff not found.")
  61. +      else()
  62.                         set(WITH_IMAGE_TIFF OFF)
  63.                 endif()
  64.         endif()
  65. +       endif()
  66.  
  67.         # Audio IO
  68.         if(WITH_OPENAL)
  69.                 find_package_wrapper(OpenAL)
  70.                 if(NOT OPENAL_FOUND)
  71. +    if(WITH_STRICT_DEP)
  72. +        message(FATAL_ERROR "OpenAl not found.")
  73. +      else()
  74.                         set(WITH_OPENAL OFF)
  75.                 endif()
  76.         endif()
  77. +       endif()
  78.  
  79.         if(WITH_SDL)
  80.                 find_package_wrapper(SDL)
  81. @@ -593,24 +631,53 @@
  82.                 )
  83.                 # unset(SDLMAIN_LIBRARY CACHE)
  84.                 if(NOT SDL_FOUND)
  85. +      if(WITH_STRICT_DEP)
  86. +        message(FATAL_ERROR "SDL not found.")
  87. +      else()
  88.                         set(WITH_SDL OFF)
  89.                 endif()
  90.         endif()
  91. +       endif()
  92.  
  93.         if(WITH_JACK)
  94.                 find_package_wrapper(Jack)
  95.                 if(NOT JACK_FOUND)
  96. +      if(WITH_STRICT_DEP)
  97. +        message(FATAL_ERROR "Jack not found.")
  98. +      else()
  99.                         set(WITH_JACK OFF)
  100.                 endif()
  101.         endif()
  102. +       endif()
  103. +
  104. +  # Compression
  105. +  if(WITH_STRICT_DEP)
  106. +    if(WITH_LZO)
  107. +      find_package_wrapper(Lzo)
  108. +      if(NOT LZO_FOUND)
  109. +        message(FATAL_ERROR "Lzo not found.")
  110. +      endif()
  111. +    endif()
  112. +    
  113. +    if(WITH_LZMA)
  114. +      find_package_wrapper(Lzma)
  115. +      if(NOT LZMA_FOUND)
  116. +        message(FATAL_ERROR "Lzma not found.")
  117. +      endif()
  118. +    endif()
  119. +       endif()
  120.  
  121.         # Codecs
  122.         if(WITH_CODEC_SNDFILE)
  123.                 find_package_wrapper(SndFile)
  124.                 if(NOT SNDFILE_FOUND)
  125. +      if(WITH_STRICT_DEP)
  126. +        message(FATAL_ERROR "Sndfile not found.")
  127. +      else()
  128.                         set(WITH_CODEC_SNDFILE OFF)
  129.                 endif()
  130.         endif()
  131. +       endif()
  132.  
  133.         if(WITH_CODEC_FFMPEG)
  134.                 set(FFMPEG /usr CACHE PATH "FFMPEG Directory")
  135. @@ -633,9 +700,13 @@
  136.         if(WITH_FFTW3)
  137.                 find_package_wrapper(Fftw3)
  138.                 if(NOT FFTW3_FOUND)
  139. +    if(WITH_STRICT_DEP)
  140. +        message(FATAL_ERROR "FFTW3 not found.")
  141. +      else()
  142.                         set(WITH_FFTW3 OFF)
  143.                 endif()
  144.         endif()
  145. +       endif()
  146.  
  147.         if(WITH_OPENCOLLADA)
  148.                 find_package_wrapper(OpenCOLLADA)
  149. @@ -643,22 +714,34 @@
  150.                         find_package_wrapper(XML2)
  151.                         find_package_wrapper(PCRE)
  152.                 else()
  153. +      if(WITH_STRICT_DEP)
  154. +        message(FATAL_ERROR "OpenCollada not found.")
  155. +      else()
  156.                         set(WITH_OPENCOLLADA OFF)
  157.                 endif()
  158.         endif()
  159. +       endif()
  160.  
  161.         if(WITH_MEM_JEMALLOC)
  162.                 find_package_wrapper(JeMalloc)
  163.                 if(NOT JEMALLOC_FOUND)
  164. +      if(WITH_STRICT_DEP)
  165. +        message(FATAL_ERROR "Jemalloc not found.")
  166. +      else()
  167.                         set(WITH_MEM_JEMALLOC OFF)
  168.                 endif()
  169.         endif()
  170. +       endif()
  171.  
  172.         if (WITH_INPUT_NDOF)
  173.                 find_package_wrapper(Spacenav)
  174.                 if(NOT SPACENAV_FOUND)
  175. +      if(WITH_STRICT_DEP)
  176. +        message(FATAL_ERROR "SpaceNav not found.")
  177. +      else()
  178.                         set(WITH_INPUT_NDOF OFF)
  179.                 endif()
  180. +               endif()
  181.  
  182.                 # use generic names within blenders buildsystem.
  183.                 if(SPACENAV_FOUND)
  184. @@ -707,9 +790,13 @@
  185.  
  186.                 if(NOT OPENIMAGEIO_FOUND)
  187.                         set(WITH_OPENIMAGEIO OFF)
  188. +      if(WITH_STRICT_DEP)
  189. +        message(FATAL_ERROR "OpenImageIO not found, disabling WITH_CYCLES")
  190. +      else()
  191.                         message(STATUS "OpenImageIO not found, disabling WITH_CYCLES")
  192.                 endif()
  193.         endif()
  194. +       endif()
  195.  
  196.         if(WITH_OPENCOLORIO)
  197.                 find_package_wrapper(OpenColorIO)
  198. @@ -720,9 +807,13 @@
  199.  
  200.                 if(NOT OPENCOLORIO_FOUND)
  201.                         set(WITH_OPENCOLORIO OFF)
  202. +      if(WITH_STRICT_DEP)
  203. +        message(FATAL_ERROR "OpenColorIO not found")
  204. +      else()
  205.                         message(STATUS "OpenColorIO not found")
  206.                 endif()
  207.         endif()
  208. +       endif()
  209.  
  210.         # XXX Maybe most of this section should go into an llvm module?
  211.         if(WITH_LLVM)
  212. @@ -798,9 +889,13 @@
  213.                         message(STATUS "OSL library = ${OSL_LIBRARIES}")
  214.                         message(STATUS "OSL compiler = ${OSL_COMPILER}")
  215.                 else()
  216. +      if(WITH_STRICT_DEP)
  217. +        message(FATAL_ERROR "OSL not found")
  218. +      else()
  219.                         message(STATUS "OSL not found")
  220.                 endif()
  221.         endif()
  222. +       endif()
  223.  
  224.         # OpenSuse needs lutil, ArchLinux not, for now keep, can avoid by using --as-needed
  225.         set(PLATFORM_LINKLIBS "-lutil -lc -lm -lpthread -lstdc++")
  226. @@ -836,11 +931,13 @@
  227.                 if(NOT WITH_PYTHON_MODULE)
  228.                         # BSD's dont use libdl.so
  229.                 set(PLATFORM_LINKLIBS "${PLATFORM_LINKLIBS} -ldl")
  230. +      if(NOT WITH_STRICT_DEP)
  231.                         # binreloc is linux only
  232.                         set(BINRELOC_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/binreloc/include)
  233.                         set(WITH_BINRELOC ON)
  234.                 endif()
  235.         endif()
  236. +       endif()
  237.  
  238.         set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -pthread")
  239.  
  240. @@ -964,9 +1061,13 @@
  241.                 if(OSL_INCLUDES AND OSL_LIBRARIES AND OSL_COMPILER)
  242.                         set(OSL_FOUND TRUE)
  243.                 else()
  244. +      if(WITH_STRICT_DEP)
  245. +        message(FATAL_ERROR "OSL not found")
  246. +      else()
  247.                         message(STATUS "OSL not found")
  248.                 endif()
  249.         endif()
  250. +       endif()
  251.  
  252.         if(MSVC)
  253.                 set(PLATFORM_LINKLIBS ws2_32 vfw32 winmm kernel32 user32 gdi32 comdlg32 advapi32 shfolder shell32 ole32 oleaut32 uuid psapi)
  254. @@ -1435,9 +1536,13 @@
  255.                         set(WITH_OPENAL ON)
  256.                         set(OPENAL_INCLUDE_DIR "${LIBDIR}/openal/include")
  257.                 else()
  258. +      if(WITH_STRICT_DEP)
  259. +        message(FATAL_ERROR "OpenAl not found")
  260. +      else()
  261.                         set(WITH_OPENAL OFF)
  262.                 endif()
  263.         endif()
  264. +       endif()
  265.  
  266.         if(WITH_JACK)
  267.                 find_library(JACK_FRAMEWORK
  268. @@ -1705,9 +1810,13 @@
  269.                 if(OSL_INCLUDES AND OSL_LIBRARIES AND OSL_COMPILER)
  270.                         set(OSL_FOUND TRUE)
  271.                 else()
  272. +      if(WITH_STRICT_DEP)
  273. +        message(FATAL_ERROR "OSL not found")
  274. +      else()
  275.                         message(STATUS "OSL not found")
  276.                 endif()
  277.         endif()
  278. +       endif()
  279.  
  280.         set(EXETYPE MACOSX_BUNDLE)
  281.  
  282. @@ -1807,11 +1916,16 @@
  283.         if(WITH_SYSTEM_OPENJPEG)
  284.                 # dealt with above
  285.         else()
  286. +    if(WITH_STRICT_DEP)
  287. +      message(FATAL_ERROR "Can't use nonsystem openjpeg")
  288. +    else()
  289.                 set(OPENJPEG_INCLUDE_DIRS "${CMAKE_SOURCE_DIR}/extern/libopenjpeg")
  290.                 add_definitions(-DOPJ_STATIC)
  291.         endif()
  292. +       endif()
  293.  endif()
  294.  
  295. +#redcode is allowed even WITH_STRICT_DEP as it's strictly a blender lib
  296.  if(WITH_IMAGE_REDCODE)
  297.         set(REDCODE ${CMAKE_SOURCE_DIR}/extern)
  298.         set(REDCODE_INC ${REDCODE})
  299. @@ -1872,7 +1986,11 @@
  300.         )
  301.  else()
  302.         # set(GLEW_LIBRARY "")  # unused
  303. +  if(WITH_STRICT_DEP)
  304. +    message(FATAL_ERROR "Cant use nonsystem glew")
  305. +  else()
  306.         set(GLEW_INCLUDE_PATH "${CMAKE_SOURCE_DIR}/extern/glew/include")
  307. +  endif()
  308.  endif()
  309.  
  310.  
  311. @@ -2085,7 +2203,9 @@
  312.  
  313.  add_subdirectory(source)
  314.  add_subdirectory(intern)
  315. -add_subdirectory(extern)
  316. +#if(NOT WITH_STRICT_DEP)
  317. +  add_subdirectory(extern)
  318. +#endif()
  319.  
  320.  
  321.  #-----------------------------------------------------------------------------
  322. @@ -2192,6 +2312,9 @@
  323.         # debug
  324.         message(STATUS "HAVE_STDBOOL_H = ${HAVE_STDBOOL_H}")
  325.  
  326. +  info_cfg_text("Build method:")
  327. +  info_cfg_option(WITH_STRICT_DEP)
  328. +  
  329.         info_cfg_text("")
  330.  
  331.         message("${_config_msg}")
RAW Paste Data