aboutsummaryrefslogtreecommitdiff
path: root/sdk/compiler/cmake/modules/FindPxSharedSDK.cmake
diff options
context:
space:
mode:
authorBryan Galdrikian <[email protected]>2018-05-31 11:36:08 -0700
committerBryan Galdrikian <[email protected]>2018-05-31 11:36:08 -0700
commit7115f60b91b5717d90f643fd692010905c7004db (patch)
treeeffd68c6978751c517d54c2f2bb5bb6e7dc93e18 /sdk/compiler/cmake/modules/FindPxSharedSDK.cmake
parentUpdating BlastTool zip (diff)
downloadblast-1.1.3_rc1.tar.xz
blast-1.1.3_rc1.zip
Blast 1.1.3. See docs/release_notes.txt.v1.1.3_rc1
Diffstat (limited to 'sdk/compiler/cmake/modules/FindPxSharedSDK.cmake')
-rwxr-xr-x[-rw-r--r--]sdk/compiler/cmake/modules/FindPxSharedSDK.cmake628
1 files changed, 315 insertions, 313 deletions
diff --git a/sdk/compiler/cmake/modules/FindPxSharedSDK.cmake b/sdk/compiler/cmake/modules/FindPxSharedSDK.cmake
index da540ec..c3a5da1 100644..100755
--- a/sdk/compiler/cmake/modules/FindPxSharedSDK.cmake
+++ b/sdk/compiler/cmake/modules/FindPxSharedSDK.cmake
@@ -1,313 +1,315 @@
-# - Try to find PxShared binary SDK
-# - Sets PXSHAREDSDK_LIBS_DEBUG and PXSHAREDSDK_LIBS_RELEASE - lists of the libraries found
-# - Sets PXSHAREDSDK_INCLUDE_DIRS
-# - Sets PXSHAREDSDK_DLLS - List of the DLLs to copy to the bin directory of projects that depend on this
-
-include(FindPackageHandleStandardArgs)
-
-# Find the includes
-
-# Always try explicit PATH variable first
-find_path(PXSHAREDSDK_PATH include/foundation/Px.h
- PATHS
- $ENV{PM_PxShared_PATH}
- $ENV{PM_PhysX_PATH}/PxShared # multipack
- ${GW_DEPS_ROOT}/$ENV{PM_PxShared_NAME}/${PxSharedSDK_FIND_VERSION}
- ${GW_DEPS_ROOT}/PxShared/${PxSharedSDK_FIND_VERSION}
-)
-
-if (TARGET_BUILD_PLATFORM STREQUAL "Windows")
- # If the project pulling in this dependency needs the static crt, then append that to the path.
- if (STATIC_WINCRT)
- SET(PXSHARED_CRT_SUFFIX "-staticcrt")
- else()
- SET(PXSHARED_CRT_SUFFIX "")
- endif()
-
- if (CMAKE_CL_64)
- SET(PXSHARED_ARCH_FOLDER "win64")
- SET(PXSHARED_ARCH_FILE "_x64")
- else()
- SET(PXSHARED_ARCH_FOLDER "win32")
- SET(PXSHARED_ARCH_FILE "_x86")
- endif()
-
- # What compiler version do we want?
-
- if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 18.0.0.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0.0.0)
- SET(VS_STR "VS2013")
- elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.0.0.0)
- SET(VS_STR "VS2015")
- else()
- MESSAGE(FATAL_ERROR "Failed to find compatible PxSharedSDK - Only supporting VS2013 and VS2015")
- endif()
-
- SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/${VS_STR}${PXSHARED_ARCH_FOLDER}-cmake${PXSHARED_CRT_SUFFIX} ${PXSHAREDSDK_PATH}/lib/${VS_STR}${PXSHARED_ARCH_FOLDER} ${PXSHAREDSDK_PATH}/../lib/${PXSHARED_ARCH_FOLDER}/${VS_STR} ${PXSHAREDSDK_PATH}/../lib)
- SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib" ".dll")
-
-elseif(TARGET_BUILD_PLATFORM STREQUAL "PS4")
- SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/vc14ps4-cmake ${PXSHAREDSDK_PATH}/../lib)
- SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
- SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
-elseif(TARGET_BUILD_PLATFORM STREQUAL "XboxOne")
- SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/vc14xboxone-cmake ${PXSHAREDSDK_PATH}/../Lib)
- SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a" ".lib")
- SET(CMAKE_FIND_LIBRARY_PREFIXES "lib" "")
-elseif(TARGET_BUILD_PLATFORM STREQUAL "linux")
- SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/linux64-cmake ${PXSHAREDSDK_PATH}/../Lib)
- SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
- SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
- SET(PXSHARED_ARCH_FILE "_x64")
-endif()
-
-
-# Now find all of the PxShared libs in the lib directory
-
-
-find_library(PSFASTXML_LIB
- NAMES PsFastXml PsFastXml${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-find_library(PXFOUNDATION_LIB
- NAMES PxFoundation${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-find_library(PXPVDSDK_LIB
- NAMES PxPvdSDK${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-find_library(PXTASK_LIB
- NAMES PxTask PxTask${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-
-find_library(PSFASTXML_LIB_DEBUG
- NAMES PsFastXmlDEBUG PsFastXmlDEBUG${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-find_library(PXFOUNDATION_LIB_DEBUG
- NAMES PxFoundationDEBUG${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-find_library(PXPVDSDK_LIB_DEBUG
- NAMES PxPvdSDKDEBUG${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-find_library(PXTASK_LIB_DEBUG
- NAMES PxTaskDEBUG PxTaskDEBUG${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-
-find_library(PSFASTXML_LIB_CHECKED
- NAMES PsFastXmlCHECKED PsFastXmlCHECKED${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-find_library(PXFOUNDATION_LIB_CHECKED
- NAMES PxFoundationCHECKED${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-find_library(PXPVDSDK_LIB_CHECKED
- NAMES PxPvdSDKCHECKED${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-find_library(PXTASK_LIB_CHECKED
- NAMES PxTaskCHECKED PxTaskCHECKED${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-
-find_library(PSFASTXML_LIB_PROFILE
- NAMES PsFastXmlPROFILE PsFastXmlPROFILE${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-find_library(PXFOUNDATION_LIB_PROFILE
- NAMES PxFoundationPROFILE${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-find_library(PXPVDSDK_LIB_PROFILE
- NAMES PxPvdSDKPROFILE${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-find_library(PXTASK_LIB_PROFILE
- NAMES PxTaskPROFILE PxTaskPROFILE${PXSHARED_ARCH_FILE}
- PATHS ${LIB_PATH}
-)
-
-if (TARGET_BUILD_PLATFORM STREQUAL "Windows")
- SET(DLL_PATH ${PXSHAREDSDK_PATH}/bin/${VS_STR}${PXSHARED_ARCH_FOLDER}-cmake${PXSHARED_CRT_SUFFIX} ${PXSHAREDSDK_PATH}/bin/${VS_STR}${PXSHARED_ARCH_FOLDER} ${PXSHAREDSDK_PATH}/../bin/${PXSHARED_ARCH_FOLDER}/${VS_STR} ${PXSHAREDSDK_PATH}/../bin)
-
- find_library(PXFOUNDATION_DLL
- NAMES PxFoundation${PXSHARED_ARCH_FILE}
- PATHS ${DLL_PATH}
- )
- find_library(PXPVDSDK_DLL
- NAMES PxPvdSDK${PXSHARED_ARCH_FILE}
- PATHS ${DLL_PATH}
- )
-
- find_library(PXFOUNDATION_DLL_DEBUG
- NAMES PxFoundationDEBUG${PXSHARED_ARCH_FILE}
- PATHS ${DLL_PATH}
- )
- find_library(PXPVDSDK_DLL_DEBUG
- NAMES PxPvdSDKDEBUG${PXSHARED_ARCH_FILE}
- PATHS ${DLL_PATH}
- )
-
- find_library(PXFOUNDATION_DLL_CHECKED
- NAMES PxFoundationCHECKED${PXSHARED_ARCH_FILE}
- PATHS ${DLL_PATH}
- )
- find_library(PXPVDSDK_DLL_CHECKED
- NAMES PxPvdSDKCHECKED${PXSHARED_ARCH_FILE}
- PATHS ${DLL_PATH}
- )
-
- find_library(PXFOUNDATION_DLL_PROFILE
- NAMES PxFoundationPROFILE${PXSHARED_ARCH_FILE}
- PATHS ${DLL_PATH}
- )
- find_library(PXPVDSDK_DLL_PROFILE
- NAMES PxPvdSDKPROFILE${PXSHARED_ARCH_FILE}
- PATHS ${DLL_PATH}
- )
-
- #Put the found dll variables in a list if we actually looked for them (windows)
- SET(DLL_VAR_LIST
- PXFOUNDATION_DLL
- PXPVDSDK_DLL
-
- PXFOUNDATION_DLL_DEBUG
- PXPVDSDK_DLL_DEBUG
-
- PXFOUNDATION_DLL_CHECKED
- PXPVDSDK_DLL_CHECKED
-
- PXFOUNDATION_DLL_PROFILE
- PXPVDSDK_DLL_PROFILE
-
- )
-endif()
-
-if (TARGET_BUILD_PLATFORM STREQUAL "linux")
- SET(BIN_PATH ${PXSHAREDSDK_PATH}/bin/linux64-cmake ${PXSHAREDSDK_PATH}/../Bin)
- SET(CMAKE_FIND_LIBRARY_SUFFIXES ".so")
-
- find_library(PXFOUNDATION_LIB
- NAMES PxFoundation${PXSHARED_ARCH_FILE}
- PATHS ${BIN_PATH}
- )
- find_library(PXPVDSDK_LIB
- NAMES PxPvdSDK${PXSHARED_ARCH_FILE}
- PATHS ${BIN_PATH}
- )
-
- find_library(PXFOUNDATION_LIB_CHECKED
- NAMES PxFoundationCHECKED${PXSHARED_ARCH_FILE}
- PATHS ${BIN_PATH}
- )
- find_library(PXPVDSDK_LIB_CHECKED
- NAMES PxPvdSDKCHECKED${PXSHARED_ARCH_FILE}
- PATHS ${BIN_PATH}
- )
-
- find_library(PXFOUNDATION_LIB_DEBUG
- NAMES PxFoundationDEBUG${PXSHARED_ARCH_FILE}
- PATHS ${BIN_PATH}
- )
- find_library(PXPVDSDK_LIB_DEBUG
- NAMES PxPvdSDKDEBUG${PXSHARED_ARCH_FILE}
- PATHS ${BIN_PATH}
- )
-
- find_library(PXFOUNDATION_LIB_PROFILE
- NAMES PxFoundationPROFILE${PXSHARED_ARCH_FILE}
- PATHS ${BIN_PATH}
- )
- find_library(PXPVDSDK_LIB_PROFILE
- NAMES PxPvdSDKPROFILE${PXSHARED_ARCH_FILE}
- PATHS ${BIN_PATH}
- )
-endif()
-
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(PXSHAREDSDK
- DEFAULT_MSG
- PXSHAREDSDK_PATH
-
- PSFASTXML_LIB
- PXFOUNDATION_LIB
- PXPVDSDK_LIB
- PXTASK_LIB
-
- PSFASTXML_LIB_DEBUG
- PXFOUNDATION_LIB_DEBUG
- PXPVDSDK_LIB_DEBUG
- PXTASK_LIB_DEBUG
-
- PSFASTXML_LIB_CHECKED
- PXFOUNDATION_LIB_CHECKED
- PXPVDSDK_LIB_CHECKED
- PXTASK_LIB_CHECKED
-
- PSFASTXML_LIB_PROFILE
- PXFOUNDATION_LIB_PROFILE
- PXPVDSDK_LIB_PROFILE
- PXTASK_LIB_PROFILE
-
-
- ${DLL_VAR_LIST}
-)
-
-if (PXSHAREDSDK_FOUND)
-
- # NOTE: This include list is way too long and reaches into too many internals.
- # Also may not be good enough for all users.
- SET(PXSHAREDSDK_INCLUDE_DIRS
- ${PXSHAREDSDK_PATH}/include
- ${PXSHAREDSDK_PATH}/include/pvd
- ${PXSHAREDSDK_PATH}/include/task
- ${PXSHAREDSDK_PATH}/include/filebuf
- ${PXSHAREDSDK_PATH}/include/foundation
- ${PXSHAREDSDK_PATH}/src/foundation/include
- ${PXSHAREDSDK_PATH}/src/filebuf/include
- ${PXSHAREDSDK_PATH}/src/fastxml/include
- )
-
- SET(PXSHAREDSDK_LIBS_RELEASE ${PSFASTXML_LIB} ${PXFOUNDATION_LIB} ${PXPVDSDK_LIB} ${PXTASK_LIB}
- CACHE STRING ""
- )
- SET(PXSHAREDSDK_LIBS_DEBUG ${PSFASTXML_LIB_DEBUG} ${PXFOUNDATION_LIB_DEBUG} ${PXPVDSDK_LIB_DEBUG} ${PXTASK_LIB_DEBUG}
- CACHE STRING ""
- )
-
- SET(PXSHAREDSDK_LIBS_CHECKED ${PSFASTXML_LIB_CHECKED} ${PXFOUNDATION_LIB_CHECKED} ${PXPVDSDK_LIB_CHECKED} ${PXTASK_LIB_CHECKED}
- CACHE STRING ""
- )
-
- SET(PXSHAREDSDK_LIBS_PROFILE ${PSFASTXML_LIB_PROFILE} ${PXFOUNDATION_LIB_PROFILE} ${PXPVDSDK_LIB_PROFILE} ${PXTASK_LIB_PROFILE}
- CACHE STRING ""
- )
-
- SET(PXSHAREDSDK_DLLS
- ${PXFOUNDATION_DLL}
- ${PXPVDSDK_DLL}
-
- ${PXFOUNDATION_DLL_DEBUG}
- ${PXPVDSDK_DLL_DEBUG}
-
- ${PXFOUNDATION_DLL_CHECKED}
- ${PXPVDSDK_DLL_CHECKED}
-
- ${PXFOUNDATION_DLL_PROFILE}
- ${PXPVDSDK_DLL_PROFILE}
- )
-
- SET(PXSHAREDSDK_LIBRARIES "" CACHE STRING "")
-
- foreach(x ${PXSHAREDSDK_LIBS_RELEASE})
- list(APPEND PXSHAREDSDK_LIBRARIES optimized ${x})
- endforeach()
-
- foreach(x ${PXSHAREDSDK_LIBS_DEBUG})
- list(APPEND PXSHAREDSDK_LIBRARIES debug ${x})
- endforeach()
-endif()
+# - Try to find PxShared binary SDK
+# - Sets PXSHAREDSDK_LIBS_DEBUG and PXSHAREDSDK_LIBS_RELEASE - lists of the libraries found
+# - Sets PXSHAREDSDK_INCLUDE_DIRS
+# - Sets PXSHAREDSDK_DLLS - List of the DLLs to copy to the bin directory of projects that depend on this
+
+include(FindPackageHandleStandardArgs)
+
+# Find the includes
+
+# Always try explicit PATH variable first
+find_path(PXSHAREDSDK_PATH include/foundation/Px.h
+ PATHS
+ $ENV{PM_PxShared_PATH}
+ $ENV{PM_PhysX_PATH}/PxShared # multipack
+ ${GW_DEPS_ROOT}/$ENV{PM_PxShared_NAME}/${PxSharedSDK_FIND_VERSION}
+ ${GW_DEPS_ROOT}/PxShared/${PxSharedSDK_FIND_VERSION}
+)
+
+if (TARGET_BUILD_PLATFORM STREQUAL "Windows")
+ # If the project pulling in this dependency needs the static crt, then append that to the path.
+ if (STATIC_WINCRT)
+ SET(PXSHARED_CRT_SUFFIX "-staticcrt")
+ else()
+ SET(PXSHARED_CRT_SUFFIX "")
+ endif()
+
+ if (CMAKE_CL_64)
+ SET(PXSHARED_ARCH_FOLDER "win64")
+ SET(PXSHARED_ARCH_FILE "_x64")
+ else()
+ SET(PXSHARED_ARCH_FOLDER "win32")
+ SET(PXSHARED_ARCH_FILE "_x86")
+ endif()
+
+ # What compiler version do we want?
+
+ if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 18.0.0.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0.0.0)
+ SET(VS_STR "VS2013")
+ elseif (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.0.0.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.10.0.0)
+ SET(VS_STR "VS2015")
+ elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.10.0.0)
+ SET(VS_STR "VS2017")
+ else()
+ MESSAGE(FATAL_ERROR "Failed to find compatible PxSharedSDK - Only supporting VS2013 and VS2015")
+ endif()
+
+ SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/${VS_STR}${PXSHARED_ARCH_FOLDER}-cmake${PXSHARED_CRT_SUFFIX} ${PXSHAREDSDK_PATH}/lib/${VS_STR}${PXSHARED_ARCH_FOLDER} ${PXSHAREDSDK_PATH}/../lib/${PXSHARED_ARCH_FOLDER}/${VS_STR} ${PXSHAREDSDK_PATH}/../lib)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib" ".dll")
+
+elseif(TARGET_BUILD_PLATFORM STREQUAL "PS4")
+ SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/vc14ps4-cmake ${PXSHAREDSDK_PATH}/../lib)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
+elseif(TARGET_BUILD_PLATFORM STREQUAL "XboxOne")
+ SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/vc14xboxone-cmake ${PXSHAREDSDK_PATH}/../Lib)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a" ".lib")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib" "")
+elseif(TARGET_BUILD_PLATFORM STREQUAL "linux")
+ SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/linux64-cmake ${PXSHAREDSDK_PATH}/../Lib)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
+ SET(PXSHARED_ARCH_FILE "_x64")
+endif()
+
+
+# Now find all of the PxShared libs in the lib directory
+
+
+find_library(PSFASTXML_LIB
+ NAMES PsFastXml PsFastXml${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXFOUNDATION_LIB
+ NAMES PxFoundation${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXPVDSDK_LIB
+ NAMES PxPvdSDK${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXTASK_LIB
+ NAMES PxTask PxTask${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+
+find_library(PSFASTXML_LIB_DEBUG
+ NAMES PsFastXmlDEBUG PsFastXmlDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXFOUNDATION_LIB_DEBUG
+ NAMES PxFoundationDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXPVDSDK_LIB_DEBUG
+ NAMES PxPvdSDKDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXTASK_LIB_DEBUG
+ NAMES PxTaskDEBUG PxTaskDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+
+find_library(PSFASTXML_LIB_CHECKED
+ NAMES PsFastXmlCHECKED PsFastXmlCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXFOUNDATION_LIB_CHECKED
+ NAMES PxFoundationCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXPVDSDK_LIB_CHECKED
+ NAMES PxPvdSDKCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXTASK_LIB_CHECKED
+ NAMES PxTaskCHECKED PxTaskCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+
+find_library(PSFASTXML_LIB_PROFILE
+ NAMES PsFastXmlPROFILE PsFastXmlPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXFOUNDATION_LIB_PROFILE
+ NAMES PxFoundationPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXPVDSDK_LIB_PROFILE
+ NAMES PxPvdSDKPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXTASK_LIB_PROFILE
+ NAMES PxTaskPROFILE PxTaskPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+
+if (TARGET_BUILD_PLATFORM STREQUAL "Windows")
+ SET(DLL_PATH ${PXSHAREDSDK_PATH}/bin/${VS_STR}${PXSHARED_ARCH_FOLDER}-cmake${PXSHARED_CRT_SUFFIX} ${PXSHAREDSDK_PATH}/bin/${VS_STR}${PXSHARED_ARCH_FOLDER} ${PXSHAREDSDK_PATH}/../bin/${PXSHARED_ARCH_FOLDER}/${VS_STR} ${PXSHAREDSDK_PATH}/../bin)
+
+ find_library(PXFOUNDATION_DLL
+ NAMES PxFoundation${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PXPVDSDK_DLL
+ NAMES PxPvdSDK${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+
+ find_library(PXFOUNDATION_DLL_DEBUG
+ NAMES PxFoundationDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PXPVDSDK_DLL_DEBUG
+ NAMES PxPvdSDKDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+
+ find_library(PXFOUNDATION_DLL_CHECKED
+ NAMES PxFoundationCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PXPVDSDK_DLL_CHECKED
+ NAMES PxPvdSDKCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+
+ find_library(PXFOUNDATION_DLL_PROFILE
+ NAMES PxFoundationPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PXPVDSDK_DLL_PROFILE
+ NAMES PxPvdSDKPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+
+ #Put the found dll variables in a list if we actually looked for them (windows)
+ SET(DLL_VAR_LIST
+ PXFOUNDATION_DLL
+ PXPVDSDK_DLL
+
+ PXFOUNDATION_DLL_DEBUG
+ PXPVDSDK_DLL_DEBUG
+
+ PXFOUNDATION_DLL_CHECKED
+ PXPVDSDK_DLL_CHECKED
+
+ PXFOUNDATION_DLL_PROFILE
+ PXPVDSDK_DLL_PROFILE
+
+ )
+endif()
+
+if (TARGET_BUILD_PLATFORM STREQUAL "linux")
+ SET(BIN_PATH ${PXSHAREDSDK_PATH}/bin/linux64-cmake ${PXSHAREDSDK_PATH}/../Bin)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".so")
+
+ find_library(PXFOUNDATION_LIB
+ NAMES PxFoundation${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PXPVDSDK_LIB
+ NAMES PxPvdSDK${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+
+ find_library(PXFOUNDATION_LIB_CHECKED
+ NAMES PxFoundationCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PXPVDSDK_LIB_CHECKED
+ NAMES PxPvdSDKCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+
+ find_library(PXFOUNDATION_LIB_DEBUG
+ NAMES PxFoundationDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PXPVDSDK_LIB_DEBUG
+ NAMES PxPvdSDKDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+
+ find_library(PXFOUNDATION_LIB_PROFILE
+ NAMES PxFoundationPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PXPVDSDK_LIB_PROFILE
+ NAMES PxPvdSDKPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+endif()
+
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(PXSHAREDSDK
+ DEFAULT_MSG
+ PXSHAREDSDK_PATH
+
+ PSFASTXML_LIB
+ PXFOUNDATION_LIB
+ PXPVDSDK_LIB
+ PXTASK_LIB
+
+ PSFASTXML_LIB_DEBUG
+ PXFOUNDATION_LIB_DEBUG
+ PXPVDSDK_LIB_DEBUG
+ PXTASK_LIB_DEBUG
+
+ PSFASTXML_LIB_CHECKED
+ PXFOUNDATION_LIB_CHECKED
+ PXPVDSDK_LIB_CHECKED
+ PXTASK_LIB_CHECKED
+
+ PSFASTXML_LIB_PROFILE
+ PXFOUNDATION_LIB_PROFILE
+ PXPVDSDK_LIB_PROFILE
+ PXTASK_LIB_PROFILE
+
+
+ ${DLL_VAR_LIST}
+)
+
+if (PXSHAREDSDK_FOUND)
+
+ # NOTE: This include list is way too long and reaches into too many internals.
+ # Also may not be good enough for all users.
+ SET(PXSHAREDSDK_INCLUDE_DIRS
+ ${PXSHAREDSDK_PATH}/include
+ ${PXSHAREDSDK_PATH}/include/pvd
+ ${PXSHAREDSDK_PATH}/include/task
+ ${PXSHAREDSDK_PATH}/include/filebuf
+ ${PXSHAREDSDK_PATH}/include/foundation
+ ${PXSHAREDSDK_PATH}/src/foundation/include
+ ${PXSHAREDSDK_PATH}/src/filebuf/include
+ ${PXSHAREDSDK_PATH}/src/fastxml/include
+ )
+
+ SET(PXSHAREDSDK_LIBS_RELEASE ${PSFASTXML_LIB} ${PXFOUNDATION_LIB} ${PXPVDSDK_LIB} ${PXTASK_LIB}
+ CACHE STRING ""
+ )
+ SET(PXSHAREDSDK_LIBS_DEBUG ${PSFASTXML_LIB_DEBUG} ${PXFOUNDATION_LIB_DEBUG} ${PXPVDSDK_LIB_DEBUG} ${PXTASK_LIB_DEBUG}
+ CACHE STRING ""
+ )
+
+ SET(PXSHAREDSDK_LIBS_CHECKED ${PSFASTXML_LIB_CHECKED} ${PXFOUNDATION_LIB_CHECKED} ${PXPVDSDK_LIB_CHECKED} ${PXTASK_LIB_CHECKED}
+ CACHE STRING ""
+ )
+
+ SET(PXSHAREDSDK_LIBS_PROFILE ${PSFASTXML_LIB_PROFILE} ${PXFOUNDATION_LIB_PROFILE} ${PXPVDSDK_LIB_PROFILE} ${PXTASK_LIB_PROFILE}
+ CACHE STRING ""
+ )
+
+ SET(PXSHAREDSDK_DLLS
+ ${PXFOUNDATION_DLL}
+ ${PXPVDSDK_DLL}
+
+ ${PXFOUNDATION_DLL_DEBUG}
+ ${PXPVDSDK_DLL_DEBUG}
+
+ ${PXFOUNDATION_DLL_CHECKED}
+ ${PXPVDSDK_DLL_CHECKED}
+
+ ${PXFOUNDATION_DLL_PROFILE}
+ ${PXPVDSDK_DLL_PROFILE}
+ )
+
+ SET(PXSHAREDSDK_LIBRARIES "" CACHE STRING "")
+
+ foreach(x ${PXSHAREDSDK_LIBS_RELEASE})
+ list(APPEND PXSHAREDSDK_LIBRARIES optimized ${x})
+ endforeach()
+
+ foreach(x ${PXSHAREDSDK_LIBS_DEBUG})
+ list(APPEND PXSHAREDSDK_LIBRARIES debug ${x})
+ endforeach()
+endif()