mirror of
https://github.com/OpenFOAM/ThirdParty-6.git
synced 2025-12-08 06:57:43 +00:00
ParaView-5.0.1: Added the source-tree to ThirdParty-dev and patched as described in the README file
Resolves bug-report http://bugs.openfoam.org/view.php?id=2098
This commit is contained in:
96
ParaView-5.0.1/CMake/FindSeleniumDrivers.cmake
Normal file
96
ParaView-5.0.1/CMake/FindSeleniumDrivers.cmake
Normal file
@ -0,0 +1,96 @@
|
||||
# - Try to find the Selenium browser drivers
|
||||
# Once run, this macro will define the following
|
||||
#
|
||||
# CHROMEDRIVER_EXECUTABLE
|
||||
# FIREFOXDRIVER_EXTENSION
|
||||
# IEDRIVER_EXECUTABLE
|
||||
# SAFARIDRIVER_EXTENSION
|
||||
|
||||
# This is a standard find, as the chromedriver executable is an
|
||||
# external program on the system
|
||||
find_program(CHROMEDRIVER_EXECUTABLE
|
||||
NAMES chromedriver
|
||||
PATHS CHROMEDRIVER_HOME ENV PATH
|
||||
PATH_SUFFIXES chromedriver bin chromedriver/bin
|
||||
)
|
||||
|
||||
# Now check if the firefox selenium driver extension is available
|
||||
set(DO_FIREFOX_DRIVER_EXTENSION_CHECK FALSE)
|
||||
|
||||
# The execute_process which runs python to check for the presence of
|
||||
# the firefox webdriver should only be run if either the
|
||||
# FIREFOXDRIVER_EXTENSION variable is not yet defined or if it came
|
||||
# up NOTFOUND in the past. Because CMake does not seem to do short-
|
||||
# circuit evaluation, we have to do this check in multiple steps.
|
||||
if(NOT DEFINED FIREFOXDRIVER_EXTENSION)
|
||||
set(DO_FIREFOX_DRIVER_EXTENSION_CHECK TRUE)
|
||||
endif()
|
||||
|
||||
if(NOT ${DO_FIREFOX_DRIVER_EXTENSION_CHECK})
|
||||
if(${FIREFOXDRIVER_EXTENSION} MATCHES "NOTFOUND")
|
||||
set(DO_FIREFOX_DRIVER_EXTENSION_CHECK TRUE)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(${DO_FIREFOX_DRIVER_EXTENSION_CHECK})
|
||||
# The selenium firefox driver is not an external program, but rather
|
||||
# a Firefox extension. This approach to finding the firefox selenium
|
||||
# webdriver seems to work, but it pops up a browser window, which is
|
||||
# less than desirable. Improving this is something we will have to
|
||||
# think about in the future.
|
||||
execute_process(COMMAND ${PYTHON_EXECUTABLE}
|
||||
-c
|
||||
"
|
||||
import os
|
||||
|
||||
try :
|
||||
import selenium
|
||||
from selenium import webdriver
|
||||
browser = webdriver.Firefox()
|
||||
browser.quit()
|
||||
except :
|
||||
os._exit(0)
|
||||
|
||||
os._exit(1)
|
||||
"
|
||||
RESULT_VARIABLE HAS_FIREFOXDRIVER_EXTENSION)
|
||||
|
||||
if("1" STREQUAL ${HAS_FIREFOXDRIVER_EXTENSION})
|
||||
set(FIREFOX_EXT_VALUE "FIREFOXDRIVER_EXTENSION-FOUND")
|
||||
else()
|
||||
set(FIREFOX_EXT_VALUE "FIREFOXDRIVER_EXTENSION-NOTFOUND")
|
||||
endif()
|
||||
|
||||
set(FIREFOXDRIVER_EXTENSION
|
||||
${FIREFOX_EXT_VALUE}
|
||||
CACHE
|
||||
STRING
|
||||
"The location or presence of the Selenium Firefox driver extension"
|
||||
FORCE)
|
||||
endif()
|
||||
|
||||
# TODO: Actually find these things
|
||||
set(IEDRIVER_EXECUTABLE
|
||||
"IEDRIVER_EXECUTABLE-NOTFOUND"
|
||||
CACHE
|
||||
STRING
|
||||
"The location of the Selenium Internet Explorer driver executable")
|
||||
|
||||
set(SAFARIDRIVER_EXTENSION
|
||||
"SAFARIDRIVER_EXTENSION-NOTFOUND"
|
||||
CACHE
|
||||
STRING
|
||||
"The location or presence of the Selenium Safari driver executable")
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(SeleniumDrivers
|
||||
DEFAULT_MSG
|
||||
CHROMEDRIVER_EXECUTABLE
|
||||
FIREFOXDRIVER_EXTENSION
|
||||
IEDRIVER_EXECUTABLE
|
||||
SAFARIDRIVER_EXTENSION )
|
||||
|
||||
mark_as_advanced(CHROMEDRIVER_EXECUTABLE)
|
||||
mark_as_advanced(FIREFOXDRIVER_EXTENSION)
|
||||
mark_as_advanced(IEDRIVER_EXECUTABLE)
|
||||
mark_as_advanced(SAFARIDRIVER_EXTENSION)
|
||||
Reference in New Issue
Block a user