Skip to content

Commit

Permalink
Continued buckification: start using buck on the firefox driver.
Browse files Browse the repository at this point in the history
There's a gross series of shortcuts and hacks used to make this "work".
  • Loading branch information
shs96c committed Jan 17, 2014
1 parent fa386b6 commit 29d03d8
Show file tree
Hide file tree
Showing 9 changed files with 161 additions and 7 deletions.
29 changes: 29 additions & 0 deletions cpp/BUCK
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
mozilla_xpt(name = 'native-events-xpt',
src = 'webdriver-firefox/nsINativeEvents.idl',
fallback = 'prebuilt/nsINativeEvents.xpt',
visibility = [ '//javascript/firefox-driver:webdriver' ],
)

mozilla_xpt(name = 'native-mouse-xpt',
src = 'webdriver-firefox/nsINativeMouse.idl',
fallback = 'prebuilt/nsINativeMouse.xpt',
visibility = [ '//javascript/firefox-driver:webdriver' ],
)

mozilla_xpt(name = 'native-keyboard-xpt',
src = 'webdriver-firefox/nsINativeKeyboard.idl',
fallback = 'prebuilt/nsINativeKeyboard.xpt',
visibility = [ '//javascript/firefox-driver:webdriver' ],
)

mozilla_xpt(name = 'native-ime-xpt',
src = 'webdriver-firefox/nsINativeIME.idl',
fallback = 'prebuilt/nsINativeIME.xpt',
visibility = [ '//javascript/firefox-driver:webdriver' ],
)

export_file(name = "imehandler-dll",
src = "prebuilt/Win32/Release/imehandler.dll",
visibility = [ '//javascript/firefox-driver:platform-resources' ],
)

29 changes: 29 additions & 0 deletions cpp/webdriver-firefox/BUCK
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@

export_file(name = 'previous-esr',
src = 'prebuilt/Win32/Release/webdriver-firefox-esr-previous.dll',
visibility = [
'//javascript/firefox-driver:platform-resources',
],
)

export_file(name = 'latest-esr',
src = 'prebuilt/Win32/Release/webdriver-firefox-esr-latest.dll',
visibility = [
'//javascript/firefox-driver:platform-resources',
],
)

export_file(name = 'previous',
src = 'prebuilt/Win32/Release/webdriver-firefox-previous.dll',
visibility = [
'//javascript/firefox-driver:platform-resources',
],
)

export_file(name = 'latest',
src = 'prebuilt/Win32/Release/webdriver-firefox-latest.dll',
visibility = [
'//javascript/firefox-driver:platform-resources',
],
)

Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
1 change: 1 addition & 0 deletions java/client/src/org/openqa/selenium/firefox/BUCK
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ java_library(name = 'firefox',
srcs = glob(['*.java', 'internal/*.java']),
resources = [
':prefs',
'//javascript/firefox-driver:webdriver',
],
deps = [
':prefs',
Expand Down
109 changes: 102 additions & 7 deletions javascript/firefox-driver/BUCK
Original file line number Diff line number Diff line change
Expand Up @@ -7,43 +7,138 @@ export_file(name = 'webdriver_prefs',
)


mozilla_xpt(name = 'command_processor_xpt',
mozilla_extension(name = "webdriver",
content = [
"extension/content/fxdriver.xul",
"extension/content/fx4driver.xul",
] + glob(['extension/content/**/*.js']),
components = [
"extension/components/httpd.js",
":bad-cert-listener",
":command-processor",
":command-processor-xpt",
":coordinates-xpt",
":modifier-keys",
":modifier-keys-xpt",
":driver-component",
":httpd-xpt",
":mouse-xpt",
":prompt-service",
":response-handler-xpt",
":session",
":session-store",
":status-xpt",
":synthetic-mouse",
"//cpp:native-events-xpt",
"//cpp:native-mouse-xpt",
"//cpp:native-keyboard-xpt",
"//cpp:native-ime-xpt",
],
resources = [
':js-resources',
':platform-resources',
# { "//cpp/webdriver-firefox:previous_esr" : "platform/WINNT_x86-msvc/components/webdriver-firefox-esr-previous.dll" },
# { "//cpp/webdriver-firefox:latest_esr" : "platform/WINNT_x86-msvc/components/webdriver-firefox-esr-latest.dll" },
# { "//cpp/webdriver-firefox:previous" : "platform/WINNT_x86-msvc/components/webdriver-firefox-previous.dll" },
# { "//cpp/webdriver-firefox:latest" : "platform/WINNT_x86-msvc/components/webdriver-firefox-latest.dll" },
# { "//cpp:imehandler_dll" : "platform/WINNT_x86-msvc/components/imehandler.dll" },
# { "//cpp:webdriver_firefox_esr_previous" : "platform/Linux_x86-gcc3/components/libwebdriver-firefox-esr-previous.so" },
# { "//cpp:webdriver_firefox_esr_previous_64" : "platform/Linux_x86_64-gcc3/components/libwebdriver-firefox-esr-previous.so" },
# { "//cpp:webdriver_firefox_esr_latest" : "platform/Linux_x86-gcc3/components/libwebdriver-firefox-esr-latest.so" },
# { "//cpp:webdriver_firefox_esr_latest_64" : "platform/Linux_x86_64-gcc3/components/libwebdriver-firefox-esr-latest.so" },
# { "//cpp:webdriver_firefox_previous" : "platform/Linux_x86-gcc3/components/libwebdriver-firefox-previous.so" },
# { "//cpp:webdriver_firefox_latest" : "platform/Linux_x86-gcc3/components/libwebdriver-firefox-latest.so" },
# { "//cpp:webdriver_firefox_previous_64" : "platform/Linux_x86_64-gcc3/components/libwebdriver-firefox-previous.so" },
# { "//cpp:webdriver_firefox_latest_64" : "platform/Linux_x86_64-gcc3/components/libwebdriver-firefox-latest.so" },
# { ":web-element-cache" : "resource/modules/web-element-cache.js" },
# { "js/timer.js" : "resource/modules/timer.js" },
# { "js/evaluate.js" : "resource/evaluate.js" },
# { "js/json2.js" : "resource/json2.js" },
],
chrome = "extension/chrome.manifest",
install = "extension/install.rdf",
visibility = [
'PUBLIC',
]
)

# The following genrules grossly abuse how buck is meant to work, since they create a directory as
# their output rather than a single file.
# TODO(simon): Fix this nonsense.

genrule(name = 'js-resources',
out = 'resource',
bash = 'rm -rf $OUT && mkdir -p $TMP/resource/modules &&\
cp $(location :web-element-cache) $TMP/resource/modules/web-element-cache.js &&\
cp $SRCDIR/js/timer.js $TMP/resource/modules/timer.js &&\
cp $SRCDIR/js/evaluate.js $TMP/resource/evaluate.js &&\
cp $SRCDIR/js/json2.js $TMP/resource/json2.js &&\
mv $TMP $OUT',
srcs = [
'js/evaluate.js',
'js/json2.js',
'js/timer.js',
],
deps = [
':web-element-cache',
],
)

genrule(name = 'platform-resources',
out = 'platform',
bash = 'rm -rf $OUT && mkdir -p $TMP/platform/WINNT_x86-msvc/components && \
cp $(location //cpp/webdriver-firefox:previous-esr) $TMP/platform/WINNT_x86-msvc/components/webdriver-firefox-esr-previous.dll &&\
cp $(location //cpp/webdriver-firefox:latest-esr) $TMP/platform/WINNT_x86-msvc/components/webdriver-firefox-esr-latest.dll &&\
cp $(location //cpp/webdriver-firefox:previous) $TMP/platform/WINNT_x86-msvc/components/webdriver-firefox-previous.dll &&\
cp $(location //cpp/webdriver-firefox:latest) $TMP/platform/WINNT_x86-msvc/components/webdriver-firefox-latest.dll &&\
cp $(location //cpp:imehandler-dll) $TMP/platform/WINNT_x86-msvc/components/imehandler.dll &&\
mv $TMP $OUT',
deps = [
'//cpp:imehandler-dll',
'//cpp/webdriver-firefox:previous-esr',
'//cpp/webdriver-firefox:latest-esr',
'//cpp/webdriver-firefox:previous',
'//cpp/webdriver-firefox:latest',
],
)

mozilla_xpt(name = 'command-processor-xpt',
src = 'extension/idl/nsICommandProcessor.idl',
fallback = 'prebuilt/firefox-driver/nsICommandProcessor.xpt',
)


mozilla_xpt(name = 'response_handler_xpt',
mozilla_xpt(name = 'response-handler-xpt',
src = 'extension/idl/nsIResponseHandler.idl',
fallback = 'prebuilt/firefox-driver/nsIResponseHandler.xpt',
)


mozilla_xpt(name = 'httpd_xpt',
mozilla_xpt(name = 'httpd-xpt',
src = 'extension/idl/nsIHttpServer.idl',
fallback = 'prebuilt/firefox-driver/nsIHttpServer.xpt',
)


mozilla_xpt(name = 'status_xpt',
mozilla_xpt(name = 'status-xpt',
src = 'extension/idl/wdIStatus.idl',
fallback = 'prebuilt/firefox-driver/wdIStatus.xpt',
)


mozilla_xpt(name = 'coordinates_xpt',
mozilla_xpt(name = 'coordinates-xpt',
src = 'extension/idl/wdICoordinate.idl',
fallback = 'prebuilt/firefox-driver/wdICoordinate.xpt',
)


mozilla_xpt(name = 'modifier_keys_xpt',
mozilla_xpt(name = 'modifier-keys-xpt',
src = 'extension/idl/wdIModifierKeys.idl',
fallback = 'prebuilt/firefox-driver/wdIModifierKeys.xpt',
)


mozilla_xpt(name = 'mouse_xpt',
mozilla_xpt(name = 'mouse-xpt',
src = 'extension/idl/wdIMouse.idl',
fallback = 'prebuilt/firefox-driver/wdIMouse.xpt',
)
Expand Down

0 comments on commit 29d03d8

Please sign in to comment.