| Index: base/base_lib.scons
 | 
| ===================================================================
 | 
| --- base/base_lib.scons	(revision 3638)
 | 
| +++ base/base_lib.scons	(working copy)
 | 
| @@ -2,20 +2,22 @@
 | 
|  # Use of this source code is governed by a BSD-style license that can be
 | 
|  # found in the LICENSE file.
 | 
|  
 | 
| +__doc__ = """
 | 
| +Configuration for building base.lib / libbase.a.
 | 
| +"""
 | 
| +
 | 
|  Import('env')
 | 
|  
 | 
|  env = env.Clone()
 | 
| -env_tests = env.Clone()
 | 
|  
 | 
| +env.SConscript([
 | 
| +    '$ICU38_DIR/using_icu38.scons',
 | 
| +], {'env':env})
 | 
| +
 | 
|  env.Prepend(
 | 
|      CPPPATH = [
 | 
| -        '$ICU38_DIR/public/common',
 | 
| -        '$ICU38_DIR/public/i18n',
 | 
| -        '..',
 | 
| +        '$ROOT_DIR',
 | 
|      ],
 | 
| -    CPPDEFINES = [
 | 
| -        'U_STATIC_IMPLEMENTATION',
 | 
| -    ],
 | 
|  )
 | 
|  
 | 
|  if env['PLATFORM'] == 'win32':
 | 
| @@ -33,13 +35,16 @@
 | 
|      'base_paths.cc',
 | 
|      'base_switches.cc',
 | 
|      'bzip2_error_handler.cc',
 | 
| +    'clipboard_util.cc',
 | 
|      'command_line.cc',
 | 
|      'debug_util.cc',
 | 
| -    'field_trial.cc',
 | 
| +    'event_recorder.cc',
 | 
|      'file_path.cc',
 | 
|      'file_util.cc',
 | 
| +    'file_version_info.cc',
 | 
|      'histogram.cc',
 | 
|      'icu_util.cc',
 | 
| +    'idle_timer.cc',
 | 
|      'json_reader.cc',
 | 
|      'json_writer.cc',
 | 
|      'lazy_instance.cc',
 | 
| @@ -50,10 +55,12 @@
 | 
|      'message_loop.cc',
 | 
|      'message_pump_default.cc',
 | 
|      'non_thread_safe.cc',
 | 
| +    'object_watcher.cc',
 | 
|      'path_service.cc',
 | 
|      'pickle.cc',
 | 
|      'rand_util.cc',
 | 
|      'ref_counted.cc',
 | 
| +    'resource_util.cc',
 | 
|      'revocable_store.cc',
 | 
|      'sha2.cc',
 | 
|      'simple_thread.cc',
 | 
| @@ -63,6 +70,8 @@
 | 
|      'string_util.cc',
 | 
|      'string_util_icu.cc',
 | 
|      'system_monitor.cc',
 | 
| +    'third_party/nspr/prtime.cc',
 | 
| +    'third_party/nss/sha512.cc',
 | 
|      'thread.cc',
 | 
|      'time.cc',
 | 
|      'time_format.cc',
 | 
| @@ -71,17 +80,14 @@
 | 
|      'tracked.cc',
 | 
|      'tracked_objects.cc',
 | 
|      'values.cc',
 | 
| +    'watchdog.cc',
 | 
|      'word_iterator.cc',
 | 
| -    'third_party/nspr/prtime.cc',
 | 
| -    'third_party/nss/sha512.cc',
 | 
|  ]
 | 
|  
 | 
| -if env['PLATFORM'] == 'win32':
 | 
| -  # Some of these aren't really Windows-specific, they're just here until
 | 
| -  # we have the port versions working.
 | 
| -  # TODO: move all these files to either the cross-platform block above or
 | 
| -  # a platform-specific block below.
 | 
| -  input_files.extend([
 | 
| +if env['PLATFORM'] in ('posix', 'darwin'):
 | 
| +  # Remove files that still need to be ported from the input_files list.
 | 
| +  # TODO(port): delete files from this list as they get ported.
 | 
| +  to_be_ported_files = [
 | 
|      'clipboard_util.cc',
 | 
|      'event_recorder.cc',
 | 
|      'file_version_info.cc',
 | 
| @@ -92,7 +98,9 @@
 | 
|      'watchdog.cc',
 | 
|  
 | 
|      'resource_util.cc',  # Uses HMODULE, but may be abstractable.
 | 
| -  ])
 | 
| +  ]
 | 
| +  for remove in to_be_ported_files:
 | 
| +      input_files.remove(remove)
 | 
|  
 | 
|  if env['PLATFORM'] == 'win32':
 | 
|    input_files.extend([
 | 
| @@ -104,7 +112,6 @@
 | 
|        'cpu.cc',
 | 
|        'debug_on_start.cc',
 | 
|        'debug_util_win.cc',
 | 
| -      'directory_watcher_win.cc',
 | 
|        'file_util_win.cc',
 | 
|        'hmac_win.cc',
 | 
|        'iat_patch.cc',
 | 
| @@ -167,7 +174,6 @@
 | 
|    input_files.extend([
 | 
|        'atomicops_internals_x86_gcc.cc',
 | 
|        'base_paths_linux.cc',
 | 
| -      'clipboard_linux.cc',
 | 
|        'file_util_linux.cc',
 | 
|        'hmac_nss.cc',
 | 
|        'message_pump_glib.cc',
 | 
| @@ -178,183 +184,5 @@
 | 
|        'worker_pool.cc',
 | 
|    ])
 | 
|  
 | 
| -env.ChromeStaticLibrary('base', input_files)
 | 
| -
 | 
| -
 | 
| -env_tests.Prepend(
 | 
| -    CPPPATH = [
 | 
| -        '$GTEST_DIR/include',
 | 
| -        '$GTEST_DIR',
 | 
| -        '$SKIA_DIR/include',
 | 
| -        '$SKIA_DIR/include/corecg',
 | 
| -        '$SKIA_DIR/platform',
 | 
| -        '$ZLIB_DIR',
 | 
| -        '$LIBPNG_DIR',
 | 
| -        '$ICU38_DIR/public/common',
 | 
| -        '$ICU38_DIR/public/i18n',
 | 
| -        '..',
 | 
| -    ],
 | 
| -    CPPDEFINES = [
 | 
| -        'UNIT_TEST',
 | 
| -        'PNG_USER_CONFIG',
 | 
| -        'CHROME_PNG_WRITE_SUPPORT',
 | 
| -        'U_STATIC_IMPLEMENTATION',
 | 
| -        'GOOGLE_CHROME_BUILD',
 | 
| -    ],
 | 
| -    LIBS = [
 | 
| -        'base',
 | 
| -        'base_gfx',
 | 
| -        'gtest',
 | 
| -        env_tests['ICU_LIBS'],  # TODO(sgk):  '$ICU_LIBS' when scons is fixed
 | 
| -        'libpng',
 | 
| -        'skia',
 | 
| -        'zlib',
 | 
| -    ]
 | 
| -)
 | 
| -
 | 
| -env_tests.Append(
 | 
| -    CPPPATH = [
 | 
| -        '$GTEST_DIR/include',
 | 
| -    ],
 | 
| -)
 | 
| -
 | 
| -if env['PLATFORM'] == 'win32':
 | 
| -  env_tests.Prepend(
 | 
| -      CCFLAGS = [
 | 
| -          '/TP',
 | 
| -          '/WX',
 | 
| -      ],
 | 
| -      CPPDEFINES = [
 | 
| -        '_WIN32_WINNT=0x0600',
 | 
| -        'WINVER=0x0600',
 | 
| -        '_HAS_EXCEPTIONS=0',
 | 
| -      ],
 | 
| -      LINKFLAGS = [
 | 
| -          '/MANIFEST',
 | 
| -          '/DELAYLOAD:"dwmapi.dll"',
 | 
| -          '/DELAYLOAD:"uxtheme.dll"',
 | 
| -          '/MACHINE:X86',
 | 
| -          '/FIXED:No',
 | 
| -
 | 
| -          '/safeseh',
 | 
| -          '/dynamicbase',
 | 
| -          '/ignore:4199',
 | 
| -          '/nxcompat',
 | 
| -      ],
 | 
| -  )
 | 
| -
 | 
| -if env['PLATFORM'] in ('posix', 'darwin'):
 | 
| -  env_tests.Append(
 | 
| -      LIBS = [
 | 
| -          'event',
 | 
| -      ],
 | 
| -  )
 | 
| -
 | 
| -# These test files work on *all* platforms; tests that don't work
 | 
| -# cross-platform live below.
 | 
| -test_files = [
 | 
| -    'at_exit_unittest.cc',
 | 
| -    'atomicops_unittest.cc',
 | 
| -    'clipboard_unittest.cc',
 | 
| -    'command_line_unittest.cc',
 | 
| -    'condition_variable_unittest.cc',
 | 
| -    'field_trial_unittest.cc',
 | 
| -    'file_path_unittest.cc',
 | 
| -    'file_util_unittest.cc',
 | 
| -    'hmac_unittest.cc',
 | 
| -    'histogram_unittest.cc',
 | 
| -    'json_reader_unittest.cc',
 | 
| -    'json_writer_unittest.cc',
 | 
| -    'lazy_instance_unittest.cc',
 | 
| -    'linked_ptr_unittest.cc',
 | 
| -    'message_loop_unittest.cc',
 | 
| -    'observer_list_unittest.cc',
 | 
| -    'path_service_unittest.cc',
 | 
| -    'pickle_unittest.cc',
 | 
| -    'pr_time_unittest.cc',
 | 
| -    'rand_util_unittest.cc',
 | 
| -    'ref_counted_unittest.cc',
 | 
| -    'run_all_unittests.cc',
 | 
| -    'scoped_ptr_unittest.cc',
 | 
| -    'sha2_unittest.cc',
 | 
| -    'shared_memory_unittest.cc',
 | 
| -    'simple_thread_unittest.cc',
 | 
| -    'singleton_unittest.cc',
 | 
| -    'stack_container_unittest.cc',
 | 
| -    'string_escape_unittest.cc',
 | 
| -    'string_piece_unittest.cc',
 | 
| -    'string_tokenizer_unittest.cc',
 | 
| -    'string_util_unittest.cc',
 | 
| -    'sys_info_unittest.cc',
 | 
| -    'thread_local_unittest.cc',
 | 
| -    'thread_local_storage_unittest.cc',
 | 
| -    'thread_unittest.cc',
 | 
| -    'time_unittest.cc',
 | 
| -    'timer_unittest.cc',
 | 
| -    'tracked_objects_unittest.cc',
 | 
| -    'tuple_unittest.cc',
 | 
| -    'values_unittest.cc',
 | 
| -    'waitable_event_unittest.cc',
 | 
| -    'word_iterator_unittest.cc',
 | 
| -    'worker_pool_unittest.cc',
 | 
| -    'gfx/convolver_unittest.cc',
 | 
| -    'gfx/image_operations_unittest.cc',
 | 
| -    'gfx/png_codec_unittest.cc',
 | 
| -    'gfx/rect_unittest.cc',
 | 
| -]
 | 
| -
 | 
| -if env['PLATFORM'] == 'win32':
 | 
| -  # These tests aren't really Windows-specific, they're just here until
 | 
| -  # we have the port versions working.
 | 
| -  env_tests.ChromeTestProgram('debug_message', ['debug_message.cc'])
 | 
| -
 | 
| -  test_files.extend([
 | 
| -    'directory_watcher_unittest.cc',
 | 
| -    'idletimer_unittest.cc',
 | 
| -    'process_util_unittest.cc',
 | 
| -    'stats_table_unittest.cc',
 | 
| -    'watchdog_unittest.cc',
 | 
| -    'gfx/native_theme_unittest.cc',
 | 
| -    'gfx/uniscribe_unittest.cc',
 | 
| -    'gfx/vector_canvas_unittest.cc',
 | 
| -  ])
 | 
| -
 | 
| -if env['PLATFORM'] == 'win32':
 | 
| -  # Windows-specific tests.
 | 
| -  test_files.extend([
 | 
| -    'file_version_info_unittest.cc',
 | 
| -    'object_watcher_unittest.cc',
 | 
| -    'pe_image_unittest.cc',
 | 
| -    'sys_string_conversions_win_unittest.cc',
 | 
| -    'time_unittest_win.cc',
 | 
| -    'win_util_unittest.cc',
 | 
| -    'wmi_util_unittest.cc',
 | 
| -    ])
 | 
| -
 | 
| -if env['PLATFORM'] == 'darwin':
 | 
| -  test_files.extend([
 | 
| -      'platform_test_mac.mm',
 | 
| -  ])
 | 
| -
 | 
| -base_unittests = env_tests.ChromeTestProgram('base_unittests', test_files)
 | 
| -
 | 
| -# Install up a level to allow unit test path assumptions to be valid.
 | 
| -installed_base_unittests = env.Install('$TARGET_ROOT', base_unittests)
 | 
| -
 | 
| -
 | 
| -sconscript_dirs = [
 | 
| -    'gfx/SConscript',
 | 
| -]
 | 
| -
 | 
| -SConscript(sconscript_dirs, exports=['env'])
 | 
| -
 | 
| -
 | 
| -env.Alias('base', ['.', installed_base_unittests])
 | 
| -
 | 
| -# TODO(sgk) should this be moved into base.lib like everything else?  This will
 | 
| -# require updating a bunch of other SConscripts which link directly against
 | 
| -# this generated object file.
 | 
| -env_tests.StaticObject('perftimer.cc')
 | 
| -
 | 
| -# Since run_all_perftests supplies a main, we cannot have it in base.lib
 | 
| -env_tests.StaticObject('run_all_perftests.cc')
 | 
| +base_lib = env.ChromeStaticLibrary('base', input_files)
 | 
| +env.Alias('base', base_lib)
 | 
| 
 | 
| Property changes on: base/base_lib.scons
 | 
| ___________________________________________________________________
 | 
| Added: svn:mergeinfo
 | 
|    Merged /branches/chrome_webkit_merge_branch/base/SConscript:r69-2775
 | 
| 
 | 
| 
 |