mirror of
				https://github.com/microsoft/playwright.git
				synced 2025-06-26 21:40:17 +00:00 
			
		
		
		
	 e64f66685a
			
		
	
	
		e64f66685a
		
			
		
	
	
	
	
		
			
			Official WebKit no longer supports Mac 10.14. However, since this system is still very much in use, we want to be able to keep it running for a while. This patch adds a new browser that we would compile and maintain specifically for Mac 10.14: `deprecated-webkit-mac-10.14`. This browser is a clone of Webkit r1443 that is the last known revision to compile on Mac 10.14. As we move on, we're free to modify this browser however we want, backporting important patches. References #5833
		
			
				
	
	
		
			78 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| function runOSX() {
 | |
|   # if script is run as-is
 | |
|   if [[ -d $SCRIPT_PATH/checkout/WebKitBuild/Release/Playwright.app ]]; then
 | |
|     DYLIB_PATH="$SCRIPT_PATH/checkout/WebKitBuild/Release"
 | |
|   elif [[ -d $SCRIPT_PATH/Playwright.app ]]; then
 | |
|     DYLIB_PATH="$SCRIPT_PATH"
 | |
|   elif [[ -d $SCRIPT_PATH/WebKitBuild/Release/Playwright.app ]]; then
 | |
|     DYLIB_PATH="$SCRIPT_PATH/WebKitBuild/Release"
 | |
|   else
 | |
|     echo "Cannot find a Playwright.app in neither location" 1>&2
 | |
|     exit 1
 | |
|   fi
 | |
|   PLAYWRIGHT="$DYLIB_PATH/Playwright.app/Contents/MacOS/Playwright"
 | |
|   DYLD_FRAMEWORK_PATH="$DYLIB_PATH" DYLD_LIBRARY_PATH="$DYLIB_PATH" "$PLAYWRIGHT" "$@"
 | |
| }
 | |
| 
 | |
| function runLinux() {
 | |
|   # if script is run as-is
 | |
|   GIO_DIR="";
 | |
|   LD_PATH="";
 | |
|   BUNDLE_DIR="";
 | |
|   DEPENDENCIES_FOLDER="DependenciesGTK";
 | |
|   MINIBROWSER_FOLDER="minibrowser-gtk";
 | |
|   BUILD_FOLDER="WebKitBuild/GTK";
 | |
|   if [[ "$*" == *--headless* ]]; then
 | |
|     DEPENDENCIES_FOLDER="DependenciesWPE";
 | |
|     MINIBROWSER_FOLDER="minibrowser-wpe";
 | |
|     BUILD_FOLDER="WebKitBuild/WPE";
 | |
|   fi
 | |
|   # Setting extra environment variables like LD_LIBRARY_PATH or WEBKIT_INJECTED_BUNDLE_PATH
 | |
|   # is only needed when calling MiniBrowser from the build folder. The MiniBrowser from
 | |
|   # the zip bundle wrapper already sets itself the needed env variables.
 | |
|   if [[ -d $SCRIPT_PATH/$MINIBROWSER_FOLDER ]]; then
 | |
|     MINIBROWSER="$SCRIPT_PATH/$MINIBROWSER_FOLDER/MiniBrowser"
 | |
|   elif [[ -d $SCRIPT_PATH/checkout/$BUILD_FOLDER ]]; then
 | |
|     LD_PATH="$SCRIPT_PATH/checkout/$BUILD_FOLDER/$DEPENDENCIES_FOLDER/Root/lib:$SCRIPT_PATH/checkout/$BUILD_FOLDER/Release/bin"
 | |
|     GIO_DIR="$SCRIPT_PATH/checkout/$BUILD_FOLDER/$DEPENDENCIES_FOLDER/Root/lib/gio/modules"
 | |
|     BUNDLE_DIR="$SCRIPT_PATH/checkout/$BUILD_FOLDER/Release/lib"
 | |
|     MINIBROWSER="$SCRIPT_PATH/checkout/$BUILD_FOLDER/Release/bin/MiniBrowser"
 | |
|   elif [[ -f $SCRIPT_PATH/MiniBrowser ]]; then
 | |
|     MINIBROWSER="$SCRIPT_PATH/MiniBrowser"
 | |
|   elif [[ -d $SCRIPT_PATH/$BUILD_FOLDER ]]; then
 | |
|     LD_PATH="$SCRIPT_PATH/$BUILD_FOLDER/$DEPENDENCIES_FOLDER/Root/lib:$SCRIPT_PATH/$BUILD_FOLDER/Release/bin"
 | |
|     GIO_DIR="$SCRIPT_PATH/$BUILD_FOLDER/$DEPENDENCIES_FOLDER/Root/lib/gio/modules"
 | |
|     BUNDLE_DIR="$SCRIPT_PATH/$BUILD_FOLDER/Release/lib"
 | |
|     MINIBROWSER="$SCRIPT_PATH/$BUILD_FOLDER/Release/bin/MiniBrowser"
 | |
|   else
 | |
|     echo "Cannot find a MiniBrowser.app in neither location" 1>&2
 | |
|     exit 1
 | |
|   fi
 | |
| 
 | |
|   if [[ -n "$GIO_DIR" ]]; then
 | |
|     export GIO_EXTRA_MODULES="$GIO_DIR"
 | |
|   fi
 | |
| 
 | |
|   if [[ -n "$LD_PATH" ]]; then
 | |
|     export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$LD_PATH"
 | |
|   fi
 | |
| 
 | |
|   if [[ -n "$BUNDLE_DIR" ]]; then
 | |
|     export WEBKIT_INJECTED_BUNDLE_PATH="$BUNDLE_DIR"
 | |
|   fi
 | |
| 
 | |
|   WEBKIT_FORCE_COMPLEX_TEXT="1" "$MINIBROWSER" "$@"
 | |
| }
 | |
| 
 | |
| SCRIPT_PATH="$(cd "$(dirname "$0")" ; pwd -P)"
 | |
| if [[ "$(uname)" == "Darwin" ]]; then
 | |
|   runOSX "$@"
 | |
| elif [[ "$(uname)" == "Linux" ]]; then
 | |
|   runLinux "$@"
 | |
| else
 | |
|   echo "ERROR: cannot run on this platform!" 1>&2
 | |
|   exit 1;
 | |
| fi
 |