# Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. Import('env', 'env_res', 'env_test') env = env.Clone() env['LIBS'].remove('DelayImp.lib') env_res = env_res.Clone() env_test = env_test.Clone() env_res.Append( CPPPATH = [ "$TARGET_ROOT", ".", "$CHROME_SRC_DIR", ], RCFLAGS = [ ["/l", "0x409"], ], ) resources = env_res.RES('mini_installer.rc') env.Prepend( CPPPATH = [ '$GTEST_DIR/include', '$GTEST_DIR', '$CHROME_SRC_DIR', ], CCFLAGS = [ '/TP', '/GS-', # because we link with /NODEFAULTLIB ], LINKFLAGS = [ '/INCREMENTAL', '/NODEFAULTLIB', '/DEBUG', '/SUBSYSTEM:WINDOWS', '/OPT:NOWIN98', '/ENTRY:"MainEntryPoint"', '/MACHINE:X86', '/FIXED:No', '/SAFESEH:NO', '/NXCOMPAT', '/DYNAMICBASE:NO', '/PDB:${TARGETS[1]}', #'/MAP:${TARGETS[2]}', ], LIBS = [ 'shlwapi.lib', ], ) env['CCFLAGS'].remove('/RTC1') components = [ "$VISUAL_STUDIO/VC/crt/src/intel/mt_lib/memset.obj", "$VISUAL_STUDIO/VC/crt/src/intel/mt_lib/P4_memset.obj", #"$TARGET_ROOT/chrome_dll.lib", "$TARGET_ROOT/chrome.lib", ] input_files = [ "mini_installer.cc", "pe_resource.cc", ] exe = env.ChromeProgram('mini_installer', components + resources + input_files) i = env.Install('$TARGET_ROOT', exe) env.Alias('chrome', i) env.AppendENVPath('PATH', r'C:\WINDOWS\system32') packed = env.Command('$TARGET_ROOT/packed_files.txt', ['$CHROME_DIR/tools/build/win/create_installer_archive.py', '$CHROME_DIR/installer/mini_installer/chrome.release'], ('$PYTHON ${SOURCES[0]}' ' --output_dir=${TARGET.dir}' ' --input_file=${SOURCES[1]}')) env.Depends(packed, '$TARGET_ROOT/setup.exe') env.ChromeVersionRC('mini_installer_exe_version.rc', 'mini_installer_exe_version.rc.version', PWD=Dir('.')) env_test.Prepend( CPPDEFINES = [ 'UNIT_TEST', ], CPPPATH = [ '$GTEST_DIR/include', '$GTEST_DIR', '$CHROME_SRC_DIR', ], LIBS = [ 'gtest', env_test['ICU_LIBS'], # TODO(sgk): '$ICU_LIBS' when scons is fixed 'common', 'base', ], ) env_test.Prepend( LINKFLAGS = [ '/INCREMENTAL', '/DEBUG', '/DELAYLOAD:"dwmapi.dll"', '/DELAYLOAD:"uxtheme.dll"', '/MACHINE:X86', '/FIXED:No', '/safeseh', '/dynamicbase', '/ignore:4199', '/nxcompat', ], LIBS = [ 'comsupp.lib', 'oleacc.lib', 'rpcrt4.lib', 'shlwapi.lib', ], ) input_files = [ '../setup/setup_constants$OBJSUFFIX', '../util/copy_tree_work_item_unittest.cc', '../util/create_dir_work_item_unittest.cc', '../util/create_reg_key_work_item_unittest.cc', '../util/delete_tree_work_item_unittest.cc', '../util/google_chrome_distribution_unittest.cc', '../util/helper_unittest.cc', '../util/run_all_unittests.cc', '../util/set_reg_value_work_item_unittest.cc', '../util/work_item_list_unittest.cc', ] libs = [ '../util/util.lib', ] exe = env_test.ChromeTestProgram('installer_unittests', input_files + libs) i = env_test.Install('$TARGET_ROOT', exe) env.Alias('chrome', i)