# Sorting, making sure we don't detach comments.

sources = []

sources = [ "x.cc" ]

sources = [
  "/a",
  "/b",
  "/c",

  # End of block.
]

sources += [
  # Start of block, separate.

  "a",
  "b",
  "c",
]

sources += [
  "a",
  "y.cc",

  # Attached comment.
  "y.h",
  "y.mm",
  "y.rc",
  "z",
  "z2",
]

sources += [
  "z",
  "z2",

  # Block comment.

  "a",
  "y.cc",
  "y.h",
  "y.mm",
  "y.rc",
]

sources += [
  "z",
  "z2",

  #
  # Multiline block comment.
  #

  "a",
  "y.cc",
  "y.h",
  "y.mm",
  "y.rc",
]

# With identifiers.
sources += [
  "a",
  "b",
  "c",
  abcd,
  some_other_thing,
]

# With accessors.
sources += [
  "a",
  "b",
  "c",
  invoker.stuff,
  wee[0],
]

# Various separated blocks.
sources -= [
  # Fix this test to build on Windows.
  "focus_cycler_unittest.cc",

  # All tests for multiple displays: not supported on Windows Ash.
  "wm/drag_window_resizer_unittest.cc",

  # Accelerometer is only available on Chrome OS.
  "wm/maximize_mode/maximize_mode_controller_unittest.cc",

  # Can't resize on Windows Ash. http://crbug.com/165962
  "autoclick/autoclick_unittest.cc",
  "magnifier/magnification_controller_unittest.cc",
  "sticky_keys/sticky_keys_overlay_unittest.cc",
  "system/tray/media_security/multi_profile_media_tray_item_unittest.cc",
  "virtual_keyboard_controller_unittest.cc",

  # Attached 1.
  # Attached 2.
  "wm/workspace/workspace_window_resizer_unittest.cc",

  # Separated at end.
  "zzzzzzzzzzzzzz.cc",
]

sources += [
  "srtp/crypto/include/xfm.h",

  # sources
  "srtp/crypto/rng/prng.c",
  "srtp/crypto/rng/rand_source.c",
  "srtp/srtp/ekt.c",
  "srtp/srtp/srtp.c",
]

# Try "public" too. It should be treated the same.
public = [
  # Let's sort
  "into",
  "salad",
  "this",
  "word",

  # But leave
  "these",
  "two",

  # alone!
]

# Lists with "sources" suffix should also be sorted.
foo_sources = [
  "a",
  "z",
]
