mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-02-23 15:37:51 +01:00
Add cmake, include and libcef_dll directories to minimal binary distribution (issue #1897)
This commit is contained in:
parent
666fa77584
commit
f75afa35ed
@ -1,6 +1,13 @@
|
||||
CONTENTS
|
||||
--------
|
||||
|
||||
cmake Contains CMake configuration files shared by all targets.
|
||||
|
||||
include Contains all required CEF header files.
|
||||
|
||||
libcef_dll Contains the source code for the libcef_dll_wrapper static library
|
||||
that all applications using the CEF C++ API must link against.
|
||||
|
||||
Release Contains libcef.so and other components required to run the release
|
||||
version of CEF-based applications. By default these files should be
|
||||
placed in the same directory as the executable.
|
||||
@ -12,6 +19,10 @@ Resources Contains resources required by libcef.so. By default these files
|
||||
USAGE
|
||||
-----
|
||||
|
||||
Building using CMake:
|
||||
CMake can be used to generate project files in many different formats. See
|
||||
usage instructions at the top of the CMakeLists.txt file.
|
||||
|
||||
Please visit the CEF Website for additional usage information.
|
||||
|
||||
https://bitbucket.org/chromiumembedded/cef/
|
||||
|
@ -1,6 +1,13 @@
|
||||
CONTENTS
|
||||
--------
|
||||
|
||||
cmake Contains CMake configuration files shared by all targets.
|
||||
|
||||
include Contains all required CEF header files.
|
||||
|
||||
libcef_dll Contains the source code for the libcef_dll_wrapper static library
|
||||
that all applications using the CEF C++ API must link against.
|
||||
|
||||
Release Contains the "Chromium Embedded Framework.framework" and other
|
||||
components required to run the release version of CEF-based
|
||||
applications.
|
||||
@ -9,6 +16,10 @@ Release Contains the "Chromium Embedded Framework.framework" and other
|
||||
USAGE
|
||||
-----
|
||||
|
||||
Building using CMake:
|
||||
CMake can be used to generate project files in many different formats. See
|
||||
usage instructions at the top of the CMakeLists.txt file.
|
||||
|
||||
Please visit the CEF Website for additional usage information.
|
||||
|
||||
https://bitbucket.org/chromiumembedded/cef/
|
||||
|
@ -1,19 +1,29 @@
|
||||
CONTENTS
|
||||
--------
|
||||
|
||||
cmake Contains CMake configuration files shared by all targets.
|
||||
|
||||
include Contains all required CEF header files.
|
||||
|
||||
libcef_dll Contains the source code for the libcef_dll_wrapper static library
|
||||
that all applications using the CEF C++ API must link against.
|
||||
|
||||
Release Contains libcef.dll, libcef.lib and other components required to
|
||||
build and run the release version of CEF-based applications. By
|
||||
default these files should be placed in the same directory as the
|
||||
executable.
|
||||
|
||||
Resources Contains resources required by libcef.dll. By default these files
|
||||
should be placed in the same directory as libcef.dll. By default
|
||||
these files should be placed in the same directory as libcef.dll.
|
||||
should be placed in the same directory as libcef.dll.
|
||||
|
||||
|
||||
USAGE
|
||||
-----
|
||||
|
||||
Building using CMake:
|
||||
CMake can be used to generate project files in many different formats. See
|
||||
usage instructions at the top of the CMakeLists.txt file.
|
||||
|
||||
Please visit the CEF Website for additional usage information.
|
||||
|
||||
https://bitbucket.org/chromiumembedded/cef/
|
||||
|
@ -98,9 +98,9 @@ def create_readme():
|
||||
'section of this document for licensing terms and conditions.'
|
||||
elif mode == 'minimal':
|
||||
distrib_type = 'Minimal'
|
||||
distrib_desc = 'This distribution contains only the components required to distribute an\n' \
|
||||
'application using CEF on the ' + platform_str + ' platform. Please see the LICENSING\n' \
|
||||
'section of this document for licensing terms and conditions.'
|
||||
distrib_desc = 'This distribution contains the minimial components necessary to build and\n' \
|
||||
'distribute an application using CEF on the ' + platform_str + ' platform. Please see\n' \
|
||||
'the LICENSING section of this document for licensing terms and conditions.'
|
||||
elif mode == 'client':
|
||||
distrib_type = 'Client'
|
||||
distrib_desc = 'This distribution contains a release build of the cefclient sample application\n' \
|
||||
@ -137,7 +137,7 @@ def normalize_headers(file, new_path = ''):
|
||||
"// Include path modified for CEF Binary Distribution.\n#include \""+new_path+"\\1\"", data)
|
||||
write_file(file, data)
|
||||
|
||||
def transfer_files(cef_dir, script_dir, transfer_cfg, output_dir, quiet):
|
||||
def eval_transfer_file(cef_dir, script_dir, transfer_cfg, output_dir, quiet):
|
||||
""" Transfer files based on the specified configuration. """
|
||||
if not path_exists(transfer_cfg):
|
||||
return
|
||||
@ -168,6 +168,14 @@ def transfer_files(cef_dir, script_dir, transfer_cfg, output_dir, quiet):
|
||||
new_path = cfg['new_header_path']
|
||||
normalize_headers(dst, new_path)
|
||||
|
||||
def transfer_files(cef_dir, script_dir, transfer_cfg_dir, mode, output_dir, quiet):
|
||||
# Non-mode-specific transfers.
|
||||
transfer_cfg = os.path.join(transfer_cfg_dir, 'transfer.cfg')
|
||||
eval_transfer_file(cef_dir, script_dir, transfer_cfg, output_dir, quiet)
|
||||
# Mode-specific transfers.
|
||||
transfer_cfg = os.path.join(transfer_cfg_dir, 'transfer_%s.cfg' % mode)
|
||||
eval_transfer_file(cef_dir, script_dir, transfer_cfg, output_dir, quiet)
|
||||
|
||||
def combine_libs(build_dir, libs, dest_lib):
|
||||
""" Combine multiple static libraries into a single static library. """
|
||||
cmdline = 'msvs_env.bat python combine_libs.py -o "%s"' % dest_lib
|
||||
@ -341,19 +349,11 @@ cef_paths = cef_paths['variables']
|
||||
cef_paths2 = eval_file(os.path.join(cef_dir, 'cef_paths2.gypi'))
|
||||
cef_paths2 = cef_paths2['variables']
|
||||
|
||||
if mode == 'standard':
|
||||
if mode == 'standard' or mode == 'minimal':
|
||||
# create the include directory
|
||||
include_dir = os.path.join(output_dir, 'include')
|
||||
make_dir(include_dir, options.quiet)
|
||||
|
||||
# create the cefclient directory
|
||||
cefclient_dir = os.path.join(output_dir, 'cefclient')
|
||||
make_dir(cefclient_dir, options.quiet)
|
||||
|
||||
# create the cefsimple directory
|
||||
cefsimple_dir = os.path.join(output_dir, 'cefsimple')
|
||||
make_dir(cefsimple_dir, options.quiet)
|
||||
|
||||
# create the cmake directory
|
||||
cmake_dir = os.path.join(output_dir, 'cmake')
|
||||
make_dir(cmake_dir, options.quiet)
|
||||
@ -374,20 +374,6 @@ if mode == 'standard':
|
||||
transfer_gypi_files(cef_dir, cef_paths['autogen_capi_includes'], \
|
||||
'include/', include_dir, options.quiet)
|
||||
|
||||
# transfer common cefclient files
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefclient_sources_browser'], \
|
||||
'tests/cefclient/', cefclient_dir, options.quiet)
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefclient_sources_common'], \
|
||||
'tests/cefclient/', cefclient_dir, options.quiet)
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefclient_sources_renderer'], \
|
||||
'tests/cefclient/', cefclient_dir, options.quiet)
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefclient_sources_resources'], \
|
||||
'tests/cefclient/', cefclient_dir, options.quiet)
|
||||
|
||||
# transfer common cefsimple files
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefsimple_sources_common'], \
|
||||
'tests/cefsimple/', cefsimple_dir, options.quiet)
|
||||
|
||||
# transfer common libcef_dll_wrapper files
|
||||
transfer_gypi_files(cef_dir, cef_paths2['libcef_dll_wrapper_sources_base'], \
|
||||
'libcef_dll/', libcef_dll_dir, options.quiet)
|
||||
@ -396,19 +382,9 @@ if mode == 'standard':
|
||||
transfer_gypi_files(cef_dir, cef_paths['autogen_client_side'], \
|
||||
'libcef_dll/', libcef_dll_dir, options.quiet)
|
||||
|
||||
# transfer gyp files
|
||||
copy_file(os.path.join(script_dir, 'distrib/cefclient.gyp'), output_dir, options.quiet)
|
||||
paths_gypi = os.path.join(cef_dir, 'cef_paths2.gypi')
|
||||
data = read_file(paths_gypi)
|
||||
data = data.replace('tests/cefclient/', 'cefclient/')
|
||||
data = data.replace('tests/cefsimple/', 'cefsimple/')
|
||||
write_file(os.path.join(output_dir, 'cef_paths2.gypi'), data)
|
||||
copy_file(os.path.join(cef_dir, 'cef_paths.gypi'), \
|
||||
os.path.join(output_dir, 'cef_paths.gypi'), options.quiet)
|
||||
|
||||
# transfer additional files
|
||||
transfer_files(cef_dir, script_dir, os.path.join(script_dir, 'distrib/transfer.cfg'), \
|
||||
output_dir, options.quiet)
|
||||
transfer_files(cef_dir, script_dir, os.path.join(script_dir, 'distrib'), \
|
||||
mode, output_dir, options.quiet)
|
||||
|
||||
# process cmake templates
|
||||
variables = dict(cef_paths.items() + cef_paths2.items())
|
||||
@ -427,6 +403,31 @@ if mode == 'standard':
|
||||
process_cmake_template(os.path.join(cef_dir, 'libcef_dll', 'CMakeLists.txt.in'), \
|
||||
os.path.join(libcef_dll_dir, 'CMakeLists.txt'), \
|
||||
variables, options.quiet)
|
||||
|
||||
if mode == 'standard':
|
||||
# create the cefclient directory
|
||||
cefclient_dir = os.path.join(output_dir, 'cefclient')
|
||||
make_dir(cefclient_dir, options.quiet)
|
||||
|
||||
# create the cefsimple directory
|
||||
cefsimple_dir = os.path.join(output_dir, 'cefsimple')
|
||||
make_dir(cefsimple_dir, options.quiet)
|
||||
|
||||
# transfer common cefclient files
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefclient_sources_browser'], \
|
||||
'tests/cefclient/', cefclient_dir, options.quiet)
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefclient_sources_common'], \
|
||||
'tests/cefclient/', cefclient_dir, options.quiet)
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefclient_sources_renderer'], \
|
||||
'tests/cefclient/', cefclient_dir, options.quiet)
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefclient_sources_resources'], \
|
||||
'tests/cefclient/', cefclient_dir, options.quiet)
|
||||
|
||||
# transfer common cefsimple files
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefsimple_sources_common'], \
|
||||
'tests/cefsimple/', cefsimple_dir, options.quiet)
|
||||
|
||||
# process cmake templates
|
||||
process_cmake_template(os.path.join(cef_dir, 'tests', 'cefclient', 'CMakeLists.txt.in'), \
|
||||
os.path.join(cefclient_dir, 'CMakeLists.txt'), \
|
||||
variables, options.quiet)
|
||||
@ -434,6 +435,17 @@ if mode == 'standard':
|
||||
os.path.join(cefsimple_dir, 'CMakeLists.txt'), \
|
||||
variables, options.quiet)
|
||||
|
||||
# transfer gyp files
|
||||
copy_file(os.path.join(script_dir, 'distrib/cefclient.gyp'), output_dir, options.quiet)
|
||||
paths_gypi = os.path.join(cef_dir, 'cef_paths2.gypi')
|
||||
data = read_file(paths_gypi)
|
||||
data = data.replace('tests/cefclient/', 'cefclient/')
|
||||
data = data.replace('tests/cefsimple/', 'cefsimple/')
|
||||
write_file(os.path.join(output_dir, 'cef_paths2.gypi'), data)
|
||||
copy_file(os.path.join(cef_dir, 'cef_paths.gypi'), \
|
||||
os.path.join(output_dir, 'cef_paths.gypi'), options.quiet)
|
||||
|
||||
|
||||
if platform == 'windows':
|
||||
binaries = [
|
||||
'd3dcompiler_47.dll',
|
||||
@ -526,11 +538,16 @@ if platform == 'windows':
|
||||
copy_file(os.path.join(build_dir, 'icudtl.dat'), dst_dir, options.quiet)
|
||||
copy_dir(os.path.join(build_dir, 'locales'), os.path.join(dst_dir, 'locales'), options.quiet)
|
||||
|
||||
if mode == 'standard':
|
||||
if mode == 'standard' or mode == 'minimal':
|
||||
# transfer include files
|
||||
transfer_gypi_files(cef_dir, cef_paths2['includes_win'], \
|
||||
'include/', include_dir, options.quiet)
|
||||
|
||||
# transfer additional files, if any
|
||||
transfer_files(cef_dir, script_dir, os.path.join(script_dir, 'distrib', 'win'), \
|
||||
mode, output_dir, options.quiet)
|
||||
|
||||
if mode == 'standard':
|
||||
# transfer cefclient files
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefclient_sources_win'], \
|
||||
'tests/cefclient/', cefclient_dir, options.quiet)
|
||||
@ -539,10 +556,6 @@ if platform == 'windows':
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefsimple_sources_win'], \
|
||||
'tests/cefsimple/', cefsimple_dir, options.quiet)
|
||||
|
||||
# transfer additional files, if any
|
||||
transfer_files(cef_dir, script_dir, os.path.join(script_dir, 'distrib/win/transfer.cfg'), \
|
||||
output_dir, options.quiet)
|
||||
|
||||
if not options.nodocs:
|
||||
# generate doc files
|
||||
os.popen('make_cppdocs.bat '+cef_rev)
|
||||
@ -593,11 +606,16 @@ elif platform == 'macosx':
|
||||
dst_path = os.path.join(symbol_output_dir, '%s.dSYM' % framework_name)
|
||||
run('dsymutil "%s" -o "%s"' % (src_path, dst_path), cef_dir)
|
||||
|
||||
if mode == 'standard':
|
||||
if mode == 'standard' or mode == 'minimal':
|
||||
# transfer include files
|
||||
transfer_gypi_files(cef_dir, cef_paths2['includes_mac'], \
|
||||
'include/', include_dir, options.quiet)
|
||||
|
||||
# transfer additional files, if any
|
||||
transfer_files(cef_dir, script_dir, os.path.join(script_dir, 'distrib', 'mac'), \
|
||||
mode, output_dir, options.quiet)
|
||||
|
||||
if mode == 'standard':
|
||||
# transfer cefclient files
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefclient_sources_mac'], \
|
||||
'tests/cefclient/', cefclient_dir, options.quiet)
|
||||
@ -623,10 +641,6 @@ elif platform == 'macosx':
|
||||
copy_dir(os.path.join(cef_dir, 'tests/cefsimple/mac/'), os.path.join(output_dir, 'cefsimple/mac/'), \
|
||||
options.quiet)
|
||||
|
||||
# transfer additional files, if any
|
||||
transfer_files(cef_dir, script_dir, os.path.join(script_dir, 'distrib/mac/transfer.cfg'), \
|
||||
output_dir, options.quiet)
|
||||
|
||||
elif platform == 'linux':
|
||||
out_dir = os.path.join(src_dir, 'out')
|
||||
lib_dir_name = 'lib'
|
||||
@ -686,11 +700,16 @@ elif platform == 'linux':
|
||||
copy_file(os.path.join(build_dir, 'icudtl.dat'), dst_dir, options.quiet)
|
||||
copy_dir(os.path.join(build_dir, 'locales'), os.path.join(dst_dir, 'locales'), options.quiet)
|
||||
|
||||
if mode == 'standard':
|
||||
if mode == 'standard' or mode == 'minimal':
|
||||
# transfer include files
|
||||
transfer_gypi_files(cef_dir, cef_paths2['includes_linux'], \
|
||||
'include/', include_dir, options.quiet)
|
||||
|
||||
# transfer additional files, if any
|
||||
transfer_files(cef_dir, script_dir, os.path.join(script_dir, 'distrib', 'linux'), \
|
||||
mode, output_dir, options.quiet)
|
||||
|
||||
if mode == 'standard':
|
||||
# transfer cefclient files
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefclient_sources_linux'], \
|
||||
'tests/cefclient/', cefclient_dir, options.quiet)
|
||||
@ -701,20 +720,16 @@ elif platform == 'linux':
|
||||
transfer_gypi_files(cef_dir, cef_paths2['cefsimple_sources_linux'], \
|
||||
'tests/cefsimple/', cefsimple_dir, options.quiet)
|
||||
|
||||
# transfer additional files, if any
|
||||
transfer_files(cef_dir, script_dir, os.path.join(script_dir, 'distrib/linux/transfer.cfg'), \
|
||||
output_dir, options.quiet)
|
||||
|
||||
if not options.noarchive:
|
||||
# create an archive for each output directory
|
||||
archive_extenstion = '.zip'
|
||||
archive_extension = '.zip'
|
||||
if os.getenv('CEF_COMMAND_7ZIP', '') != '':
|
||||
archive_extenstion = '.7z'
|
||||
archive_extension = '.7z'
|
||||
for dir in archive_dirs:
|
||||
zip_file = os.path.split(dir)[1] + archive_extenstion
|
||||
zip_file = os.path.split(dir)[1] + archive_extension
|
||||
if not options.quiet:
|
||||
sys.stdout.write('Creating '+zip_file+"...\n")
|
||||
if archive_extenstion == '.zip':
|
||||
if archive_extension == '.zip':
|
||||
create_archive(dir, os.path.join(dir, os.pardir, zip_file))
|
||||
else:
|
||||
create_7z_archive(dir, os.path.join(dir, os.pardir, zip_file))
|
||||
|
Loading…
x
Reference in New Issue
Block a user