11cb0ef41Sopenharmony_ci#!/usr/bin/env python3
21cb0ef41Sopenharmony_ci# Copyright 2014 the V8 project authors. All rights reserved.
31cb0ef41Sopenharmony_ci# Use of this source code is governed by a BSD-style license that can be
41cb0ef41Sopenharmony_ci# found in the LICENSE file.
51cb0ef41Sopenharmony_ci
61cb0ef41Sopenharmony_ci"""
71cb0ef41Sopenharmony_ciThis file emits the list of reasons why a particular build needs to be clobbered
81cb0ef41Sopenharmony_ci(or a list of 'landmines').
91cb0ef41Sopenharmony_ci"""
101cb0ef41Sopenharmony_ci
111cb0ef41Sopenharmony_ciimport os
121cb0ef41Sopenharmony_ciimport sys
131cb0ef41Sopenharmony_ci
141cb0ef41Sopenharmony_cisys.path.insert(0, os.path.abspath(
151cb0ef41Sopenharmony_ci  os.path.join(os.path.dirname(__file__), '..', 'build')))
161cb0ef41Sopenharmony_ci
171cb0ef41Sopenharmony_ciimport get_landmines as build_get_landmines
181cb0ef41Sopenharmony_ci
191cb0ef41Sopenharmony_ci
201cb0ef41Sopenharmony_cidef print_landmines():  # pylint: disable=invalid-name
211cb0ef41Sopenharmony_ci  """
221cb0ef41Sopenharmony_ci  ALL LANDMINES ARE EMITTED FROM HERE.
231cb0ef41Sopenharmony_ci  """
241cb0ef41Sopenharmony_ci  # DO NOT add landmines as part of a regular CL. Landmines are a last-effort
251cb0ef41Sopenharmony_ci  # bandaid fix if a CL that got landed has a build dependency bug and all bots
261cb0ef41Sopenharmony_ci  # need to be cleaned up. If you're writing a new CL that causes build
271cb0ef41Sopenharmony_ci  # dependency problems, fix the dependency problems instead of adding a
281cb0ef41Sopenharmony_ci  # landmine.
291cb0ef41Sopenharmony_ci  # See the Chromium version in src/build/get_landmines.py for usage examples.
301cb0ef41Sopenharmony_ci  print('Need to clobber after ICU52 roll.')
311cb0ef41Sopenharmony_ci  print('Landmines test.')
321cb0ef41Sopenharmony_ci  print('Activating MSVS 2013.')
331cb0ef41Sopenharmony_ci  print('Revert activation of MSVS 2013.')
341cb0ef41Sopenharmony_ci  print('Activating MSVS 2013 again.')
351cb0ef41Sopenharmony_ci  print('Clobber after ICU roll.')
361cb0ef41Sopenharmony_ci  print('Moar clobbering...')
371cb0ef41Sopenharmony_ci  print('Remove build/android.gypi')
381cb0ef41Sopenharmony_ci  print('Cleanup after windows ninja switch attempt.')
391cb0ef41Sopenharmony_ci  print('Switching to pinned msvs toolchain.')
401cb0ef41Sopenharmony_ci  print('Clobbering to hopefully resolve problem with mksnapshot')
411cb0ef41Sopenharmony_ci  print('Clobber after ICU roll.')
421cb0ef41Sopenharmony_ci  print('Clobber after Android NDK update.')
431cb0ef41Sopenharmony_ci  print('Clober to fix windows build problems.')
441cb0ef41Sopenharmony_ci  print('Clober again to fix windows build problems.')
451cb0ef41Sopenharmony_ci  print('Clobber to possibly resolve failure on win-32 bot.')
461cb0ef41Sopenharmony_ci  print('Clobber for http://crbug.com/668958.')
471cb0ef41Sopenharmony_ci  print('Clobber to possibly resolve build failure on Misc V8 Linux gcc.')
481cb0ef41Sopenharmony_ci  build_get_landmines.print_landmines()
491cb0ef41Sopenharmony_ci  return 0
501cb0ef41Sopenharmony_ci
511cb0ef41Sopenharmony_ci
521cb0ef41Sopenharmony_cidef main():
531cb0ef41Sopenharmony_ci  print_landmines()
541cb0ef41Sopenharmony_ci  return 0
551cb0ef41Sopenharmony_ci
561cb0ef41Sopenharmony_ci
571cb0ef41Sopenharmony_ciif __name__ == '__main__':
581cb0ef41Sopenharmony_ci  sys.exit(main())
59