瀏覽代碼

CMake: Fix several modules' search behavior

This makes these modules behave better when encountering
the makepanda thirdparty/ directory.
Sam Edwards 6 年之前
父節點
當前提交
afe7ffb964

+ 34 - 53
cmake/modules/FindCg.cmake

@@ -23,6 +23,13 @@
 
 # Find Cg for OpenGL
 macro(find_cggl)
+  if(APPLE)
+    # GL support is built-in on Apple
+    set(CGGL_LIBRARY "${CG_LIBRARY}")
+    set(CGGL_LIBRARY_DIR "${CG_LIBRARY_DIR}")
+    set(CGGL_INCLUDE_DIR "${CG_INCLUDE_DIR}")
+  endif()
+
   if(Cg_FIND_QUIETLY)
     set(CgGL_FIND_QUIETLY TRUE)
   endif()
@@ -114,59 +121,33 @@ endmacro()
 
 # Find base Nvidia Cg
 if(NOT CG_LIBRARY_DIR OR NOT CG_INCLUDE_DIRS)
-  # On OSX default to using the framework version of Cg.
-  if(APPLE)
-    include(${CMAKE_ROOT}/Modules/CMakeFindFrameworks.cmake)
-    set(CG_INCLUDES)
-
-    cmake_find_frameworks(Cg)
-    if(Cg_FRAMEWORKS)
-      foreach(dir ${Cg_FRAMEWORKS})
-        list(APPEND CG_INCLUDES ${dir}/Headers ${dir}/PrivateHeaders)
-      endforeach(dir)
-      unset(Cg_FRAMEWORKS)
-
-      # Find the include dir
-      find_path(CG_INCLUDE_DIR
-        NAMES "cg.h"
-        PATHS ${CG_INCLUDES}
-        DOC "The path to NvidiaCg's include directory."
-      )
-      unset(CG_INCLUDES)
-
-      # Set the library dir (TODO: Check the correctness on Mac OS X)
-      set(CG_LIBRARY_DIR "/Library/Frameworks/Cg.framework" CACHE PATH "The path to NvidiaCg's library directory.")
-    endif()
-
-  else()
-    # Find the include directory
-    find_path(CG_INCLUDE_DIR
-      NAMES "cg.h"
-      PATHS "C:/Program Files/Cg"
-            "C:/Program Files/NVIDIA Corporation/Cg/include"
-            "/usr/include"
-            "/usr/local/include"
-            "/opt/Cg"
-            "/opt/nvidia-cg-toolkit/include" # Gentoo
-      PATH_SUFFIXES "" "Cg" "cg"
-      DOC "The path to NvidiaCg's include directory."
-    )
-
-    # Find the library directory
-    find_library(CG_LIBRARY
-      NAMES "Cg" "libCg"
-      PATHS "C:/Program Files/Cg"
-            "C:/Program Files/NVIDIA Corporation/Cg"
-            "/usr"
-            "/usr/lib/x86_64-linux-gnu"
-            "/usr/local"
-            "/opt/Cg"
-            "/opt/nvidia-cg-toolkit" # Gentoo
-      PATH_SUFFIXES "" "lib" "lib32" "lib64"
-    )
-    get_filename_component(CG_LIBRARY_DIR "${CG_LIBRARY}" PATH)
-    set(CG_LIBRARY_DIR "${CG_LIBRARY_DIR}" CACHE PATH "The path to NvidiaCG's library directory.") # Library path
-  endif()
+  # Find the include directory
+  find_path(CG_INCLUDE_DIR
+    NAMES "Cg/cg.h"
+    PATHS "C:/Program Files/Cg"
+          "C:/Program Files/NVIDIA Corporation/Cg/include"
+          "/usr/include"
+          "/usr/local/include"
+          "/opt/Cg"
+          "/opt/nvidia-cg-toolkit/include" # Gentoo
+    PATH_SUFFIXES "" "Cg" "cg"
+    DOC "The path to NvidiaCg's include directory."
+  )
+
+  # Find the library directory
+  find_library(CG_LIBRARY
+    NAMES "Cg" "libCg"
+    PATHS "C:/Program Files/Cg"
+          "C:/Program Files/NVIDIA Corporation/Cg"
+          "/usr"
+          "/usr/lib/x86_64-linux-gnu"
+          "/usr/local"
+          "/opt/Cg"
+          "/opt/nvidia-cg-toolkit" # Gentoo
+    PATH_SUFFIXES "" "lib" "lib32" "lib64"
+  )
+  get_filename_component(CG_LIBRARY_DIR "${CG_LIBRARY}" PATH)
+  set(CG_LIBRARY_DIR "${CG_LIBRARY_DIR}" CACHE PATH "The path to NvidiaCG's library directory.") # Library path
 
   string(REGEX REPLACE "/Cg$" "" CG_BASE_INCLUDE_DIR "${CG_INCLUDE_DIR}")
   set(CG_INCLUDE_DIRS ${CG_BASE_INCLUDE_DIR} ${CG_INCLUDE_DIR})

+ 2 - 2
cmake/modules/FindFMODEx.cmake

@@ -32,7 +32,7 @@ find_path(FMODEX_INCLUDE_DIR
 
 # Find the 32-bit library
 find_library(FMODEX_32_LIBRARY
-  NAMES "fmodex_vc" "fmodex_bc" "fmodex" "fmodexL" "libfmodex" "libfmodexL"
+  NAMES "fmodex_vc" "fmodex_bc" "fmodex" "fmodexL" "libfmodex" "libfmodexL" "fmodex_vc" "fmodexL_vc"
   PATHS "/usr"
         "/usr/local"
         "/usr/X11R6"
@@ -49,7 +49,7 @@ find_library(FMODEX_32_LIBRARY
 
 # Find the 64-bit library
 find_library(FMODEX_64_LIBRARY
-  NAMES "fmodex64" "libfmodex64" "fmodexL64" "libfmodexL64"
+  NAMES "fmodex64" "libfmodex64" "fmodexL64" "libfmodexL64" "fmodex64_vc" "fmodexL64_vc"
   PATHS "/usr"
         "/usr/local"
         "/usr/X11R6"

+ 1 - 1
cmake/modules/FindOgg.cmake

@@ -12,7 +12,7 @@
 
 find_path(OGG_INCLUDE_DIR NAMES "ogg/ogg.h")
 
-find_library(OGG_LIBRARY NAMES "ogg")
+find_library(OGG_LIBRARY NAMES "ogg" "libogg_static")
 
 mark_as_advanced(OGG_INCLUDE_DIR OGG_LIBRARY)
 

+ 1 - 1
cmake/modules/FindSWScale.cmake

@@ -47,4 +47,4 @@ endif()
 mark_as_advanced(SWSCALE_LIBRARY_DIR)
 
 include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(SWSCALE DEFAULT_MSG SWSCALE_LIBRARY SWSCALE_INCLUDE_DIR SWSCALE_LIBRARY_DIR)
+find_package_handle_standard_args(SWScale DEFAULT_MSG SWSCALE_LIBRARY SWSCALE_INCLUDE_DIR SWSCALE_LIBRARY_DIR)

+ 2 - 2
cmake/modules/FindVorbisFile.cmake

@@ -16,8 +16,8 @@ find_package(Ogg QUIET)
 # Find Vorbis
 find_path(VORBIS_INCLUDE_DIR NAMES "vorbis/vorbisfile.h")
 
-find_library(VORBIS_vorbis_LIBRARY NAMES "vorbis")
-find_library(VORBIS_vorbisfile_LIBRARY NAMES "vorbisfile")
+find_library(VORBIS_vorbis_LIBRARY NAMES "vorbis" "libvorbis_static")
+find_library(VORBIS_vorbisfile_LIBRARY NAMES "vorbisfile" "libvorbisfile_static")
 
 mark_as_advanced(VORBIS_INCLUDE_DIR VORBIS_vorbis_LIBRARY VORBIS_vorbisfile_LIBRARY)