# Copyright 2008, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
#
#    * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#    * Redistributions in binary form must reproduce the above
# copyright notice, this list of conditions and the following disclaimer
# in the documentation and/or other materials provided with the
# distribution.
#    * Neither the name of Google Inc. nor the names of its
# contributors may be used to endorse or promote products derived from
# this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Import('env')

env = env.Clone()


env.Prepend(
    CPPPATH = [
        '$CHROME_DIR/app/resources',
        #'$OBJ_ROOT/google_update',
        '#/tools/build/win',
        '#/..',
    ],
    CPPDEFINES = [
        'U_STATIC_IMPLEMENTATION',
        'USE_HUNSPELL',
        'HUNSPELL_CHROME_CLIENT',
        'LIBXML_STATIC',
        'PNG_USER_CONFIG',
        'CHROME_PNG_WRITE_SUPPORT',
    ],
    CCFLAGS = [
        '/TP',
    ],
)

env.Append(
    CPPPATH = [
        '$GTEST_DIR/include',

        '$GOOGLE_UPDATE_DIR',
        '$CHROME_DIR/third_party/hunspell/src/hunspell',
        '$CHROME_DIR/third_party/wtl/include',
        '$NPAPI_DIR',
        '$LIBXML_DIR/scons/include',
        '$LIBXML_DIR/include',
        '$ICU38_DIR/public/common',
        '$ICU38_DIR/public/i18n',
        '$CHROME_DIR/app',
        '$WEBKIT_DIR/build/localized_strings',
        '$ZLIB_DIR',
        '$SKIA_DIR/include',
        '$SKIA_DIR/include/corecg',
        '$SKIA_DIR/platform',
        '$LIBPNG_DIR',
        '$BREAKPAD_DIR/src',
    ],
)

input_files = [
    'about_internets_status_view.cc',
    'alternate_nav_url_fetcher.cc',
    'app_modal_dialog_queue.cc',
    'autocomplete/autocomplete.cc',
    'autocomplete/autocomplete_edit.cc',
    'autocomplete/autocomplete_popup.cc',
    'autocomplete/edit_drop_target.cc',
    'autocomplete/history_contents_provider.cc',
    'autocomplete/history_url_provider.cc',
    'autocomplete/keyword_provider.cc',
    'autocomplete/search_provider.cc',
    'automation/automation_provider.cc',
    'automation/automation_provider_list.cc',
    'automation/automation_resource_tracker.cc',
    'automation/ui_controls.cc',
    'automation/url_request_failed_dns_job.cc',
    'automation/url_request_mock_http_job.cc',
    'automation/url_request_mock_net_error_job.cc',
    'automation/url_request_slow_download_job.cc',
    'back_forward_menu_model.cc',
    'base_history_model.cc',
    'bookmark_bar_model.cc',
    'bookmark_codec.cc',
    'bookmark_storage.cc',
    'bookmark_drag_data.cc',
    'browser.cc',
    'browser_about_handler.cc',
    'browser_commands.cc',
    'browser_init.cc',
    'browser_list.cc',
    'browser_main.cc',
    'browser_prefs.cc',
    'browser_process.cc',
    'browser_process_impl.cc',
    'browser_shutdown.cc',
    'browser_url_handler.cc',
    'browsing_data_remover.cc',
    'browsing_instance.cc',
    'cache_manager_host.cc',
    'cancelable_request.cc',
    'cert_store.cc',
    'character_encoding.cc',
    'chrome_plugin_browsing_context.cc',
    'chrome_plugin_host.cc',
    'chrome_thread.cc',
    'controller.cc',
    'cross_site_request_manager.cc',
    'dom_ui/chrome_url_data_manager.cc',
    'dom_ui/dom_ui_host.cc',
    'dom_ui/html_dialog_contents.cc',
    'dom_ui/new_tab_ui.cc',
    'download_exe.cc',
    'download_file.cc',
    'download_item_model.cc',
    'download_manager.cc',
    'download_tab_view.cc',
    'download_util.cc',
    'drag_utils.cc',
    'encoding_menu_controller_delegate.cc',
    'encryptor.cc',
    'external_protocol_dialog.cc',
    'external_protocol_handler.cc',
    'external_tab_container.cc',
    'fav_icon_helper.cc',
    'find_in_page_controller.cc',
    'find_in_page_view.cc',
    'firefox2_importer.cc',
    'firefox3_importer.cc',
    'firefox_importer_utils.cc',
    'firefox_profile_lock.cc',
    'first_run.cc',
    'frame_util.cc',
    'frame_view.cc',
    'gears_integration.cc',
    'google_url_tracker.cc',
    'google_util.cc',
    'hang_monitor/hung_plugin_action.cc',
    'hang_monitor/hung_window_detector.cc',
    'history/archived_database.cc',
    'history/download_database.cc',
    'history/expire_history_backend.cc',
    'history/history.cc',
    'history/history_backend.cc',
    'history/history_database.cc',
    'history/history_types.cc',
    'history/in_memory_database.cc',
    'history/in_memory_history_backend.cc',
    'history/page_usage_data.cc',
    'history/query_parser.cc',
    'history/snippet.cc',
    'history/starred_url_database.cc',
    'history/text_database.cc',
    'history/text_database_manager.cc',
    'history/thumbnail_database.cc',
    'history/url_database.cc',
    'history/visit_database.cc',
    'history/visit_tracker.cc',
    'history/visitsegment_database.cc',
    'history_model.cc',
    'history_tab_ui.cc',
    'history_view.cc',
    'icon_loader.cc',
    'icon_manager.cc',
    'ie7_password.cc',
    'ie_importer.cc',
    'ime_input.cc',
    'importer.cc',
    'ipc_status_view.cc',
    'jankometer.cc',
    'js_before_unload_handler.cc',
    'jsmessage_box_handler.cc',
    'login_prompt.cc',
    'memory_details.cc',
    'meta_table_helper.cc',
    'metrics_log.cc',
    'metrics_response.cc',
    'metrics_service.cc',
    'modal_html_dialog_delegate.cc',
    'mork_reader.cc',
    'native_ui_contents.cc',
    'navigation_controller.cc',
    'navigation_controller_base.cc',
    'navigation_entry.cc',
    'navigation_performance_viewer.cc',
    'navigation_profiler.cc',
    'net/dns_global.cc',
    'net/dns_host_info.cc',
    'net/dns_master.cc',
    'net/dns_slave.cc',
    'network_status_view.cc',
    'google_update.cc',
    'page_info_window.cc',
    'page_load_tracker.cc',
    'page_state.cc',
    'password_form_manager.cc',
    'password_manager.cc',
    'plugin_installer.cc',
    'plugin_process_host.cc',
    'plugin_service.cc',
    'point_buffer.cc',
    'printing/page_number.cc',
    'printing/page_overlays.cc',
    'printing/page_range.cc',
    'printing/page_setup.cc',
    'printing/print_job.cc',
    'printing/print_job_manager.cc',
    'printing/print_job_worker.cc',
    'printing/print_settings.cc',
    'printing/print_view_manager.cc',
    'printing/printed_document.cc',
    'printing/printed_page.cc',
    'printing/printer_query.cc',
    'printing/units.cc',
    'printing/win_printing_context.cc',
    'profile.cc',
    'profile_manager.cc',
    'provisional_load_details.cc',
    'render_process_host.cc',
    'render_view_context_menu.cc',
    'render_view_context_menu_controller.cc',
    'render_view_host.cc',
    'render_view_host_manager.cc',
    'render_widget_helper.cc',
    'render_widget_host.cc',
    'render_widget_host_hwnd.cc',
    'renderer_security_policy.cc',
    'repost_Form_warning_dialog.cc',
    'resource_dispatcher_host.cc',
    'resource_message_filter.cc',
    'rlz/rlz.cc',
    'safe_browsing/bloom_filter.cc',
    'safe_browsing/chunk_range.cc',
    'safe_browsing/protocol_manager.cc',
    'safe_browsing/protocol_parser.cc',
    'safe_browsing/safe_browsing_blocking_page.cc',
    'safe_browsing/safe_browsing_database.cc',
    'safe_browsing/safe_browsing_service.cc',
    'safe_browsing/safe_browsing_util.cc',
    'sandbox_policy.cc',
    'save_file.cc',
    'save_file_manager.cc',
    'save_item.cc',
    'save_package.cc',
    'save_page_model.cc',
    'session_backend.cc',
    'session_crashed_view.cc',
    'session_restore.cc',
    'session_service.cc',
    'session_startup_pref.cc',
    'shell_integration.cc',
    'simple_vista_frame.cc',
    'simple_xp_frame.cc',
    'site_instance.cc',
    'spellcheck_worditerator.cc',
    'spellchecker.cc',
    'ssl_blocking_page.cc',
    'ssl_error_info.cc',
    'ssl_manager.cc',
    'ssl_policy.cc',
    'status_view.cc',
    'suspend_controller.cc',
    'tab_contents.cc',
    'tab_contents_container_view.cc',
    'tab_contents_factory.cc',
    'tab_restore_service.cc',
    'tab_util.cc',
    'tabs/dragged_tab_controller.cc',
    'tabs/dragged_tab_view.cc',
    'tabs/hwnd_photobooth.cc',
    'tabs/tab.cc',
    'tabs/tab_renderer.cc',
    'tabs/tab_strip.cc',
    'tabs/tab_strip_model.cc',
    'tabs/tab_strip_model_order_controller.cc',
    'task_manager.cc',
    'task_manager_resource_providers.cc',
    'template_url.cc',
    'template_url_fetcher.cc',
    'template_url_model.cc',
    'template_url_parser.cc',
    'template_url_prepopulate_data.cc',
    'title_chomper.cc',
    'toolbar_model.cc',
    'url_fetcher.cc',
    'url_fetcher_protect.cc',
    'url_fixer_upper.cc',
    'user_data_dir_dialog.cc',
    'user_metrics.cc',
    'view_source_contents.cc',
    'views/about_chrome_view.cc',
    'views/bookmark_bar_view.cc',
    'views/bookmark_bubble_view.cc',
    'views/bookmark_editor_view.cc',
    'views/bug_report_view.cc',
    'views/clear_browsing_data.cc',
    'views/constrained_window_animation.cc',
    'views/constrained_window_impl.cc',
    'views/delay_view.cc',
    'views/download_item_view.cc',
    'views/download_shelf_view.cc',
    'views/download_started_animation.cc',
    'views/edit_keyword_controller.cc',
    'views/event_utils.cc',
    'views/first_run_bubble.cc',
    'views/first_run_customize_view.cc',
    'views/first_run_view.cc',
    'views/first_run_view_base.cc',
    'views/frame/aero_glass_frame.cc',
    'views/frame/aero_glass_non_client_view.cc',
    'views/frame/browser_view.cc',
    'views/frame/browser_view2.cc',
    'views/frame/browser_window_factory.cc',
    'views/frame/opaque_frame.cc',
    'views/frame/opaque_non_client_view.cc',
    'views/go_button.cc',
    'views/html_dialog_view.cc',
    'views/hung_renderer_view.cc',
    'views/hwnd_html_view.cc',
    'views/importer_lock_view.cc',
    'views/importer_view.cc',
    'views/importing_progress_view.cc',
    'views/info_bar_alternate_nav_url_view.cc',
    'views/info_bar_confirm_view.cc',
    'views/info_bar_item_view.cc',
    'views/info_bar_message_view.cc',
    'views/info_bar_view.cc',
    'views/info_bubble.cc',
    'views/input_window.cc',
    'views/keyword_editor_view.cc',
    'views/location_bar_view.cc',
    'views/login_view.cc',
    'views/options/advanced_contents_view.cc',
    'views/options/advanced_page_view.cc',
    'views/options/content_page_view.cc',
    'views/options/cookies_view.cc',
    'views/options/fonts_languages_window_view.cc',
    'views/options/fonts_page_view.cc',
    'views/options/general_page_view.cc',
    'views/options/language_combobox_model.cc',
    'views/options/languages_page_view.cc',
    'views/options/options_group_view.cc',
    'views/options/options_page_view.cc',
    'views/options/options_window_view.cc',
    'views/password_manager_view.cc',
    'views/restart_message_box.cc',
    'views/sad_tab_view.cc',
    'views/shelf_item_dialog.cc',
    'views/shell_dialogs.cc',
    'views/star_toggle.cc',
    'views/status_bubble.cc',
    'views/tab_icon_view.cc',
    'views/theme_helpers.cc',
    'views/toolbar_star_toggle.cc',
    'views/toolbar_view.cc',
    'visitedlink_master.cc',
    'vista_frame.cc',
    'web_app.cc',
    'web_app_icon_manager.cc',
    'web_app_launcher.cc',
    'web_contents.cc',
    'web_drag_source.cc',
    'web_drop_target.cc',
    'webdata/web_data_service.cc',
    'webdata/web_database.cc',
    'window_clipping_info.cc',
    'window_sizer.cc',
    'wizard/wizard.cc',
    'xp_frame.cc',
]

env.ChromeStaticLibrary('browser', input_files)


SConscript('debugger/SConscript', exports=['env'])