Merge revision 762 and revision 764 changes:

- Move devtools resources to a separate devtools_resources.pak file (issue #714).

git-svn-id: https://chromiumembedded.googlecode.com/svn/branches/1180@767 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt
2012-09-06 17:45:55 +00:00
parent 176ce25324
commit 17229f5e15
13 changed files with 561 additions and 557 deletions

View File

@@ -49,6 +49,7 @@
], ],
'mac_bundle_resources': [ 'mac_bundle_resources': [
'<@(cefclient_bundle_resources_mac)', '<@(cefclient_bundle_resources_mac)',
'<(grit_out_dir)/devtools_resources.pak',
], ],
'mac_bundle_resources!': [ 'mac_bundle_resources!': [
# TODO(mark): Come up with a fancier way to do this (mac_info_plist?) # TODO(mark): Come up with a fancier way to do this (mac_info_plist?)
@@ -87,24 +88,6 @@
'<@(locales)', '<@(locales)',
], ],
}, },
{
# On Windows chrome.pak will contain only the inspector resources.
# Other resources are built into libcef.dll.
'action_name': 'repack_resources',
'variables': {
'pak_inputs': [
'<(grit_out_dir)/devtools_resources.pak',
],
},
'inputs': [
'<(repack_path)',
'<@(pak_inputs)',
],
'outputs': [
'<(INTERMEDIATE_DIR)/repack/chrome.pak',
],
'action': ['python', '<(repack_path)', '<@(_outputs)', '<@(pak_inputs)'],
},
], ],
'copies': [ 'copies': [
{ {
@@ -116,7 +99,7 @@
{ {
'destination': '<(PRODUCT_DIR)', 'destination': '<(PRODUCT_DIR)',
'files': [ 'files': [
'<(INTERMEDIATE_DIR)/repack/chrome.pak' '<(grit_out_dir)/devtools_resources.pak'
], ],
}, },
], ],
@@ -175,7 +158,6 @@
'process_outputs_as_mac_bundle_resources': 1, 'process_outputs_as_mac_bundle_resources': 1,
'variables': { 'variables': {
'pak_inputs': [ 'pak_inputs': [
'<(grit_out_dir)/devtools_resources.pak',
'<(SHARED_INTERMEDIATE_DIR)/net/net_resources.pak', '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.pak',
'<(SHARED_INTERMEDIATE_DIR)/ui/ui_resources_standard/ui_resources_standard.pak', '<(SHARED_INTERMEDIATE_DIR)/ui/ui_resources_standard/ui_resources_standard.pak',
'<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.pak', '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.pak',
@@ -255,7 +237,6 @@
'action_name': 'repack_resources', 'action_name': 'repack_resources',
'variables': { 'variables': {
'pak_inputs': [ 'pak_inputs': [
'<(grit_out_dir)/devtools_resources.pak',
'<(SHARED_INTERMEDIATE_DIR)/net/net_resources.pak', '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.pak',
'<(SHARED_INTERMEDIATE_DIR)/ui/ui_resources_standard/ui_resources_standard.pak', '<(SHARED_INTERMEDIATE_DIR)/ui/ui_resources_standard/ui_resources_standard.pak',
'<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.pak', '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.pak',
@@ -282,7 +263,8 @@
{ {
'destination': '<(PRODUCT_DIR)', 'destination': '<(PRODUCT_DIR)',
'files': [ 'files': [
'<(INTERMEDIATE_DIR)/repack/chrome.pak' '<(INTERMEDIATE_DIR)/repack/chrome.pak',
'<(grit_out_dir)/devtools_resources.pak',
], ],
}, },
{ {

View File

@@ -188,18 +188,18 @@ typedef struct _cef_settings_t {
#endif #endif
/// ///
// The fully qualified path for the cef.pak file. If this value is empty // The fully qualified path for the resources directory. If this value is
// the cef.pak file must be located in the module directory. This value is // empty the chrome.pak and/or devtools_resources.pak files must be located in
// ignored on Mac OS X where pack files are always loaded from the app bundle // the module directory on Windows/Linux or the app bundle Resources directory
// resource directory. // on Mac OS X.
/// ///
cef_string_t pack_file_path; cef_string_t resources_dir_path;
/// ///
// The fully qualified path for the locales directory. If this value is empty // The fully qualified path for the locales directory. If this value is empty
// the locales directory must be located in the module directory. This value // the locales directory must be located in the module directory. This value
// is ignored on Mac OS X where pack files are always loaded from the app // is ignored on Mac OS X where pack files are always loaded from the app
// bundle resource directory. // bundle Resources directory.
/// ///
cef_string_t locales_dir_path; cef_string_t locales_dir_path;

View File

@@ -259,7 +259,7 @@ struct CefSettingsTraits {
cef_string_list_free(s->extra_plugin_paths); cef_string_list_free(s->extra_plugin_paths);
cef_string_clear(&s->log_file); cef_string_clear(&s->log_file);
cef_string_clear(&s->javascript_flags); cef_string_clear(&s->javascript_flags);
cef_string_clear(&s->pack_file_path); cef_string_clear(&s->resources_dir_path);
cef_string_clear(&s->locales_dir_path); cef_string_clear(&s->locales_dir_path);
} }
@@ -294,8 +294,8 @@ struct CefSettingsTraits {
src->auto_detect_proxy_settings_enabled; src->auto_detect_proxy_settings_enabled;
#endif #endif
cef_string_set(src->pack_file_path.str, src->pack_file_path.length, cef_string_set(src->resources_dir_path.str, src->resources_dir_path.length,
&target->pack_file_path, copy); &target->resources_dir_path, copy);
cef_string_set(src->locales_dir_path.str, src->locales_dir_path.length, cef_string_set(src->locales_dir_path.str, src->locales_dir_path.length,
&target->locales_dir_path, copy); &target->locales_dir_path, copy);
target->pack_loading_disabled = src->pack_loading_disabled; target->pack_loading_disabled = src->pack_loading_disabled;

View File

@@ -37,31 +37,6 @@ namespace {
// to initialize or reset to the same value. // to initialize or reset to the same value.
const int kNextBrowserIdReset = 1; const int kNextBrowserIdReset = 1;
#if defined(OS_MACOSX)
FilePath GetDefaultPackPath() {
// Start out with the path to the running executable.
FilePath execPath;
PathService::Get(base::FILE_EXE, &execPath);
// Get the main bundle path.
FilePath bundlePath = base::mac::GetAppBundlePath(execPath);
// Go into the Contents/Resources directory.
return bundlePath.Append(FILE_PATH_LITERAL("Contents"))
.Append(FILE_PATH_LITERAL("Resources"));
}
#else // !defined(OS_MACOSX)
FilePath GetDefaultPackPath() {
FilePath pak_dir;
PathService::Get(base::DIR_MODULE, &pak_dir);
return pak_dir;
}
#endif // !defined(OS_MACOSX)
// Used in multi-threaded message loop mode to observe shutdown of the UI // Used in multi-threaded message loop mode to observe shutdown of the UI
// thread. // thread.
class DestructionObserver : public MessageLoop::DestructionObserver { class DestructionObserver : public MessageLoop::DestructionObserver {
@@ -392,14 +367,26 @@ CefRefPtr<CefBrowserImpl> CefContext::GetBrowserByID(int id) {
} }
void CefContext::InitializeResourceBundle() { void CefContext::InitializeResourceBundle() {
FilePath pak_file, locales_dir; #if !defined(OS_WIN)
FilePath chrome_pak_file;
#endif
FilePath devtools_pak_file, locales_dir;
if (!settings_.pack_loading_disabled) { if (!settings_.pack_loading_disabled) {
if (settings_.pack_file_path.length > 0) FilePath resources_dir_path;
pak_file = FilePath(CefString(&settings_.pack_file_path)); if (settings_.resources_dir_path.length > 0)
resources_dir_path = FilePath(CefString(&settings_.resources_dir_path));
if (resources_dir_path.empty())
resources_dir_path = GetResourcesFilePath();
if (pak_file.empty()) if (!resources_dir_path.empty()) {
pak_file = GetDefaultPackPath().Append(FILE_PATH_LITERAL("chrome.pak")); #if !defined(OS_WIN)
chrome_pak_file = resources_dir_path.Append(
FILE_PATH_LITERAL("chrome.pak"));
#endif
devtools_pak_file = resources_dir_path.Append(
FILE_PATH_LITERAL("devtools_resources.pak"));
}
if (settings_.locales_dir_path.length > 0) if (settings_.locales_dir_path.length > 0)
locales_dir = FilePath(CefString(&settings_.locales_dir_path)); locales_dir = FilePath(CefString(&settings_.locales_dir_path));
@@ -420,14 +407,25 @@ void CefContext::InitializeResourceBundle() {
CHECK(!loaded_locale.empty()) << "Locale could not be found for " CHECK(!loaded_locale.empty()) << "Locale could not be found for "
<< locale_str; << locale_str;
if (file_util::PathExists(pak_file)) {
resource_bundle_delegate_->set_allow_pack_file_load(true); resource_bundle_delegate_->set_allow_pack_file_load(true);
// The chrome.pak file is required on non-Windows platforms.
#if !defined(OS_WIN)
if (file_util::PathExists(chrome_pak_file)) {
ResourceBundle::GetSharedInstance().AddDataPack( ResourceBundle::GetSharedInstance().AddDataPack(
pak_file, ui::SCALE_FACTOR_NONE); chrome_pak_file, ui::SCALE_FACTOR_NONE);
resource_bundle_delegate_->set_allow_pack_file_load(false);
} else { } else {
NOTREACHED() << "Could not load chrome.pak"; NOTREACHED() << "Could not load chrome.pak";
} }
#endif
// The devtools_resources.pak file is optional.
if (file_util::PathExists(devtools_pak_file)) {
ResourceBundle::GetSharedInstance().AddDataPack(
devtools_pak_file, ui::SCALE_FACTOR_NONE);
}
resource_bundle_delegate_->set_allow_pack_file_load(false);
} }
} }
@@ -536,25 +534,24 @@ base::StringPiece CefContext::GetDataResource(int resource_id) const {
return value; return value;
} }
#if defined(OS_MACOSX)
FilePath CefContext::GetResourcesFilePath() const { FilePath CefContext::GetResourcesFilePath() const {
FilePath path; #if defined(OS_MACOSX)
// We need to know if we're bundled or not to know which path to use. // Start out with the path to the running executable.
if (base::mac::AmIBundled()) { FilePath execPath;
PathService::Get(base::DIR_EXE, &path); PathService::Get(base::FILE_EXE, &execPath);
path = path.Append(FilePath::kParentDirectory);
return path.AppendASCII("Resources"); // Get the main bundle path.
} else { FilePath bundlePath = base::mac::GetAppBundlePath(execPath);
// TODO(port): Allow the embedder to customize the resource path.
PathService::Get(base::DIR_SOURCE_ROOT, &path); // Go into the Contents/Resources directory.
path = path.AppendASCII("src"); return bundlePath.Append(FILE_PATH_LITERAL("Contents"))
path = path.AppendASCII("cef"); .Append(FILE_PATH_LITERAL("Resources"));
path = path.AppendASCII("tests"); #else
path = path.AppendASCII("cefclient"); FilePath pak_dir;
return path.AppendASCII("res"); PathService::Get(base::DIR_MODULE, &pak_dir);
return pak_dir;
#endif
} }
}
#endif // defined(OS_MACOSX)
std::string CefContext::locale() const { std::string CefContext::locale() const {
std::string localeStr = CefString(&settings_.locale); std::string localeStr = CefString(&settings_.locale);

View File

@@ -59,9 +59,7 @@ class CefContext : public CefBase {
string16 GetLocalizedString(int message_id) const; string16 GetLocalizedString(int message_id) const;
base::StringPiece GetDataResource(int resource_id) const; base::StringPiece GetDataResource(int resource_id) const;
#if defined(OS_MACOSX)
FilePath GetResourcesFilePath() const; FilePath GetResourcesFilePath() const;
#endif
// Retrieve the path at which cache data will be stored on disk. If empty, // Retrieve the path at which cache data will be stored on disk. If empty,
// cache data will be stored in-memory. // cache data will be stored in-memory.

View File

@@ -250,8 +250,8 @@ void AppGetSettings(CefSettings& settings, CefRefPtr<CefApp>& app) {
CefString(&settings.javascript_flags) = CefString(&settings.javascript_flags) =
g_command_line->GetSwitchValue(cefclient::kJavascriptFlags); g_command_line->GetSwitchValue(cefclient::kJavascriptFlags);
CefString(&settings.pack_file_path) = CefString(&settings.resources_dir_path) =
g_command_line->GetSwitchValue(cefclient::kPackFilePath); g_command_line->GetSwitchValue(cefclient::kResourcesDirPath);
CefString(&settings.locales_dir_path) = CefString(&settings.locales_dir_path) =
g_command_line->GetSwitchValue(cefclient::kLocalesDirPath); g_command_line->GetSwitchValue(cefclient::kLocalesDirPath);

View File

@@ -30,7 +30,7 @@ const char kGraphicsImpl_DesktopCmdBuffer[] = "desktop-command-buffer";
const char kLocalStorageQuota[] = "local-storage-quota"; const char kLocalStorageQuota[] = "local-storage-quota";
const char kSessionStorageQuota[] = "session-storage-quota"; const char kSessionStorageQuota[] = "session-storage-quota";
const char kJavascriptFlags[] = "javascript-flags"; const char kJavascriptFlags[] = "javascript-flags";
const char kPackFilePath[] = "pack-file-path"; const char kResourcesDirPath[] = "resources-dir-path";
const char kLocalesDirPath[] = "locales-dir-path"; const char kLocalesDirPath[] = "locales-dir-path";
const char kPackLoadingDisabled[] = "pack-loading-disabled"; const char kPackLoadingDisabled[] = "pack-loading-disabled";

View File

@@ -32,7 +32,7 @@ extern const char kGraphicsImpl_DesktopCmdBuffer[];
extern const char kLocalStorageQuota[]; extern const char kLocalStorageQuota[];
extern const char kSessionStorageQuota[]; extern const char kSessionStorageQuota[];
extern const char kJavascriptFlags[]; extern const char kJavascriptFlags[];
extern const char kPackFilePath[]; extern const char kResourcesDirPath[];
extern const char kLocalesDirPath[]; extern const char kLocalesDirPath[];
extern const char kPackLoadingDisabled[]; extern const char kPackLoadingDisabled[];

View File

@@ -117,8 +117,8 @@ void CefTestSuite::GetSettings(CefSettings& settings) {
javascript_flags += " " + other_javascript_flags; javascript_flags += " " + other_javascript_flags;
CefString(&settings.javascript_flags) = javascript_flags; CefString(&settings.javascript_flags) = javascript_flags;
CefString(&settings.pack_file_path) = CefString(&settings.resources_dir_path) =
commandline_->GetSwitchValueASCII(cefclient::kPackFilePath); commandline_->GetSwitchValueASCII(cefclient::kResourcesDirPath);
CefString(&settings.locales_dir_path) = CefString(&settings.locales_dir_path) =
commandline_->GetSwitchValueASCII(cefclient::kLocalesDirPath); commandline_->GetSwitchValueASCII(cefclient::kLocalesDirPath);

View File

@@ -61,16 +61,24 @@ Required components:
* CEF core library * CEF core library
libcef.so libcef.so
Optional components:
* Localized resources * Localized resources
locales/ locales/
Note: A .pak file is loaded from this folder based on the value of Note: Contains localized strings for WebKit UI controls. A .pak file is loaded
CefSettings.locale. Only configured locales need to be distributed. If no from this folder based on the value of environment variables which are read
locale is configured the default locale of "en-US" will be used. The with the following precedence order: LANGUAGE, LC_ALL, LC_MESSAGES and LANG.
locales folder must exist in the same directory as the executable. Only configured locales need to be distributed. If no locale is configured the
default locale of "en-US" will be used. Locale file loading can be disabled
completely using CefSettings.pack_loading_disabled. The locales folder path
can be customized using CefSettings.locales_dir_path.
* Other resources * Other resources
chrome.pak chrome.pak
Note: The chrome.pak file must exist in the same directory as the executable. devtools_resources.pak
Note: Contains WebKit image and inspector resources. Pack file loading can be
disabled completely using CefSettings.pack_loading_disabled. The resources
directory path can be customized using CefSettings.resources_dir_path.
LICENSING LICENSING

View File

@@ -48,6 +48,10 @@ USAGE
Xcode 3 and 4: Open the cefclient.xcodeproj project and build. Xcode 3 and 4: Open the cefclient.xcodeproj project and build.
When using Xcode 4.2 or newer you will need to change the "Compiler for
C/C++/Objective-C" setting to "LLVM GCC 4.2" under "Build Settings" for
each target.
Please visit the CEF Website for additional usage information. Please visit the CEF Website for additional usage information.
http://code.google.com/p/chromiumembedded http://code.google.com/p/chromiumembedded
@@ -66,19 +70,27 @@ Required components:
* CEF core library * CEF core library
libcef.dylib libcef.dylib
* Localized resources * Cursor resources
Resources/*.lproj/
Note: A .pak file is loaded from this folder based on the value of
CefSettings.locale. Only configured locales need to be distributed. If no
locale is configured the default locale of "en" will be used.
* Other resources
Resources/chrome.pak
Resources/*.png Resources/*.png
Resources/*.tiff Resources/*.tiff
Optional components: Optional components:
* Localized resources
Resources/*.lproj/
Note: Contains localized strings for WebKit UI controls. A .pak file is loaded
from this folder based on the CefSettings.locale value. Only configured
locales need to be distributed. If no locale is configured the default locale
of "en" will be used. Locale file loading can be disabled completely using
CefSettings.pack_loading_disabled.
* Other resources
Resources/chrome.pak
Resources/devtools_resources.pak
Note: Contains WebKit image and inspector resources. Pack file loading can be
disabled completely using CefSettings.pack_loading_disabled. The resources
directory path can be customized using CefSettings.resources_dir_path.
* FFmpeg audio and video support * FFmpeg audio and video support
ffmpegsumo.so ffmpegsumo.so
Note: Without this component HTML5 audio and video will not function. Note: Without this component HTML5 audio and video will not function.

View File

@@ -72,18 +72,22 @@ Required components:
* Unicode support * Unicode support
icudt.dll icudt.dll
Optional components:
* Localized resources * Localized resources
locales/ locales/
Note: A .pak file is loaded from this folder based on the value of Note: Contains localized strings for WebKit UI controls. A .pak file is loaded
CefSettings.locale. Only configured locales need to be distributed. If no from this folder based on the CefSettings.locale value. Only configured
locale is configured the default locale of "en-US" will be used. The locales need to be distributed. If no locale is configured the default locale
locales folder must exist in the same directory as libcef.dll. of "en-US" will be used. Locale file loading can be disabled completely using
CefSettings.pack_loading_disabled. The locales folder path can be customized
using CefSettings.locales_dir_path.
* Other resources * Other resources
chrome.pak devtools_resources.pak
Note: The chrome.pak file must exist in the same directory as libcef.dll. Note: Contains WebKit image and inspector resources. Pack file loading can be
disabled completely using CefSettings.pack_loading_disabled. The resources
Optional components: directory path can be customized using CefSettings.resources_dir_path.
* FFmpeg audio and video support * FFmpeg audio and video support
avcodec-54.dll avcodec-54.dll

View File

@@ -278,7 +278,7 @@ if platform == 'windows':
copy_files(os.path.join(script_dir, 'distrib/win/*.dll'), dst_dir, options.quiet) copy_files(os.path.join(script_dir, 'distrib/win/*.dll'), dst_dir, options.quiet)
copy_files(os.path.join(cef_dir, 'Debug/*.dll'), dst_dir, options.quiet) copy_files(os.path.join(cef_dir, 'Debug/*.dll'), dst_dir, options.quiet)
copy_file(os.path.join(cef_dir, 'Debug/cefclient.exe'), dst_dir, options.quiet) copy_file(os.path.join(cef_dir, 'Debug/cefclient.exe'), dst_dir, options.quiet)
copy_file(os.path.join(cef_dir, 'Debug/chrome.pak'), dst_dir, options.quiet) copy_file(os.path.join(cef_dir, 'Debug/devtools_resources.pak'), dst_dir, options.quiet)
copy_dir(os.path.join(cef_dir, 'Debug/locales'), os.path.join(dst_dir, 'locales'), \ copy_dir(os.path.join(cef_dir, 'Debug/locales'), os.path.join(dst_dir, 'locales'), \
options.quiet) options.quiet)
@@ -296,7 +296,7 @@ if platform == 'windows':
copy_files(os.path.join(script_dir, 'distrib/win/*.dll'), dst_dir, options.quiet) copy_files(os.path.join(script_dir, 'distrib/win/*.dll'), dst_dir, options.quiet)
copy_files(os.path.join(cef_dir, 'Release/*.dll'), dst_dir, options.quiet) copy_files(os.path.join(cef_dir, 'Release/*.dll'), dst_dir, options.quiet)
copy_file(os.path.join(cef_dir, 'Release/cefclient.exe'), dst_dir, options.quiet) copy_file(os.path.join(cef_dir, 'Release/cefclient.exe'), dst_dir, options.quiet)
copy_file(os.path.join(cef_dir, 'Release/chrome.pak'), dst_dir, options.quiet) copy_file(os.path.join(cef_dir, 'Release/devtools_resources.pak'), dst_dir, options.quiet)
copy_dir(os.path.join(cef_dir, 'Release/locales'), os.path.join(dst_dir, 'locales'), \ copy_dir(os.path.join(cef_dir, 'Release/locales'), os.path.join(dst_dir, 'locales'), \
options.quiet) options.quiet)
@@ -371,6 +371,7 @@ elif platform == 'macosx':
make_dir(dst_dir, options.quiet) make_dir(dst_dir, options.quiet)
copy_files(os.path.join(cef_dir, '../third_party/WebKit/Source/WebCore/Resources/*.*'), dst_dir, options.quiet) copy_files(os.path.join(cef_dir, '../third_party/WebKit/Source/WebCore/Resources/*.*'), dst_dir, options.quiet)
copy_file(os.path.join(cef_dir, '../xcodebuild/Release/cefclient.app/Contents/Resources/chrome.pak'), dst_dir, options.quiet) copy_file(os.path.join(cef_dir, '../xcodebuild/Release/cefclient.app/Contents/Resources/chrome.pak'), dst_dir, options.quiet)
copy_file(os.path.join(cef_dir, '../xcodebuild/Release/cefclient.app/Contents/Resources/devtools_resources.pak'), dst_dir, options.quiet)
copy_files(os.path.join(cef_dir, '../xcodebuild/Release/cefclient.app/Contents/Resources/*.lproj'), dst_dir, options.quiet) copy_files(os.path.join(cef_dir, '../xcodebuild/Release/cefclient.app/Contents/Resources/*.lproj'), dst_dir, options.quiet)
remove_dir(os.path.join(dst_dir, 'English.lproj')) remove_dir(os.path.join(dst_dir, 'English.lproj'))
@@ -404,6 +405,7 @@ elif platform == 'linux':
copy_dir(os.path.join(linux_build_dir, 'Debug/lib.target'), os.path.join(dst_dir, 'lib.target'), options.quiet) copy_dir(os.path.join(linux_build_dir, 'Debug/lib.target'), os.path.join(dst_dir, 'lib.target'), options.quiet)
copy_file(os.path.join(linux_build_dir, 'Debug/cefclient'), dst_dir, options.quiet) copy_file(os.path.join(linux_build_dir, 'Debug/cefclient'), dst_dir, options.quiet)
copy_file(os.path.join(linux_build_dir, 'Debug/chrome.pak'), dst_dir, options.quiet) copy_file(os.path.join(linux_build_dir, 'Debug/chrome.pak'), dst_dir, options.quiet)
copy_file(os.path.join(linux_build_dir, 'Debug/devtools_resources.pak'), dst_dir, options.quiet)
copy_dir(os.path.join(linux_build_dir, 'Debug/locales'), os.path.join(dst_dir, 'locales'), options.quiet) copy_dir(os.path.join(linux_build_dir, 'Debug/locales'), os.path.join(dst_dir, 'locales'), options.quiet)
else: else:
@@ -416,6 +418,7 @@ elif platform == 'linux':
copy_dir(os.path.join(linux_build_dir, 'Release/lib.target'), os.path.join(dst_dir, 'lib.target'), options.quiet) copy_dir(os.path.join(linux_build_dir, 'Release/lib.target'), os.path.join(dst_dir, 'lib.target'), options.quiet)
copy_file(os.path.join(linux_build_dir, 'Release/cefclient'), dst_dir, options.quiet) copy_file(os.path.join(linux_build_dir, 'Release/cefclient'), dst_dir, options.quiet)
copy_file(os.path.join(linux_build_dir, 'Release/chrome.pak'), dst_dir, options.quiet) copy_file(os.path.join(linux_build_dir, 'Release/chrome.pak'), dst_dir, options.quiet)
copy_file(os.path.join(linux_build_dir, 'Release/devtools_resources.pak'), dst_dir, options.quiet)
copy_dir(os.path.join(linux_build_dir, 'Release/locales'), os.path.join(dst_dir, 'locales'), options.quiet) copy_dir(os.path.join(linux_build_dir, 'Release/locales'), os.path.join(dst_dir, 'locales'), options.quiet)
else: else: