# Copyright 2016 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("//third_party/WebKit/Source/core/core.gni")

blink_core_sources("layout") {
  split_count = 5

  sources = [
    "BidiRun.h",
    "BidiRunForLine.cpp",
    "BidiRunForLine.h",
    "ClipRect.cpp",
    "ClipRect.h",
    "ClipRects.h",
    "ClipRectsCache.h",
    "ColumnBalancer.cpp",
    "ColumnBalancer.h",
    "CounterNode.cpp",
    "CounterNode.h",
    "DepthOrderedLayoutObjectList.cpp",
    "DepthOrderedLayoutObjectList.h",
    "FloatingObjects.cpp",
    "FloatingObjects.h",
    "FragmentainerIterator.cpp",
    "FragmentainerIterator.h",
    "FragmentationContext.h",
    "GeneratedChildren.h",
    "HitTestCache.cpp",
    "HitTestCache.h",
    "HitTestCanvasResult.cpp",
    "HitTestLocation.cpp",
    "HitTestLocation.h",
    "HitTestResult.cpp",
    "HitTestingTransformState.cpp",
    "HitTestingTransformState.h",
    "ImageQualityController.cpp",
    "ImageQualityController.h",
    "LayoutAnalyzer.cpp",
    "LayoutAnalyzer.h",
    "LayoutBR.cpp",
    "LayoutBlock.cpp",
    "LayoutBlockFlow.cpp",
    "LayoutBlockFlowLine.cpp",
    "LayoutBox.cpp",
    "LayoutBoxModelObject.cpp",
    "LayoutButton.cpp",
    "LayoutButton.h",
    "LayoutCounter.cpp",
    "LayoutCounter.h",
    "LayoutDeprecatedFlexibleBox.cpp",
    "LayoutDeprecatedFlexibleBox.h",
    "LayoutDetailsMarker.cpp",
    "LayoutDetailsMarker.h",
    "LayoutEmbeddedObject.cpp",
    "LayoutFieldset.cpp",
    "LayoutFieldset.h",
    "LayoutFileUploadControl.cpp",
    "LayoutFileUploadControl.h",
    "LayoutFlexibleBox.cpp",
    "LayoutFlexibleBox.h",
    "LayoutFlowThread.cpp",
    "LayoutFlowThread.h",
    "LayoutFrame.cpp",
    "LayoutFrame.h",
    "LayoutFrameSet.cpp",
    "LayoutFrameSet.h",
    "LayoutFullScreen.cpp",
    "LayoutFullScreen.h",
    "LayoutGeometryMap.cpp",
    "LayoutGeometryMap.h",
    "LayoutGeometryMapStep.h",
    "LayoutGrid.cpp",
    "LayoutGrid.h",
    "LayoutHTMLCanvas.cpp",
    "LayoutHTMLCanvas.h",
    "LayoutIFrame.cpp",
    "LayoutIFrame.h",
    "LayoutImage.cpp",
    "LayoutImageResource.cpp",
    "LayoutImageResourceStyleImage.cpp",
    "LayoutInline.cpp",
    "LayoutInline.h",
    "LayoutListBox.cpp",
    "LayoutListBox.h",
    "LayoutListItem.cpp",
    "LayoutListMarker.cpp",
    "LayoutListMarker.h",
    "LayoutMedia.cpp",
    "LayoutMedia.h",
    "LayoutMenuList.cpp",
    "LayoutMenuList.h",
    "LayoutMultiColumnFlowThread.cpp",
    "LayoutMultiColumnFlowThread.h",
    "LayoutMultiColumnSet.cpp",
    "LayoutMultiColumnSet.h",
    "LayoutMultiColumnSpannerPlaceholder.cpp",
    "LayoutMultiColumnSpannerPlaceholder.h",
    "LayoutObject.cpp",
    "LayoutObjectChildList.cpp",
    "LayoutPagedFlowThread.cpp",
    "LayoutPagedFlowThread.h",
    "LayoutPart.cpp",
    "LayoutProgress.cpp",
    "LayoutProgress.h",
    "LayoutQuote.cpp",
    "LayoutQuote.h",
    "LayoutReplaced.cpp",
    "LayoutReplica.cpp",
    "LayoutReplica.h",
    "LayoutRuby.cpp",
    "LayoutRuby.h",
    "LayoutRubyBase.cpp",
    "LayoutRubyBase.h",
    "LayoutRubyRun.cpp",
    "LayoutRubyRun.h",
    "LayoutRubyText.cpp",
    "LayoutRubyText.h",
    "LayoutScrollbar.cpp",
    "LayoutScrollbar.h",
    "LayoutScrollbarPart.cpp",
    "LayoutScrollbarPart.h",
    "LayoutScrollbarTheme.cpp",
    "LayoutScrollbarTheme.h",
    "LayoutSearchField.cpp",
    "LayoutSearchField.h",
    "LayoutSlider.cpp",
    "LayoutSlider.h",
    "LayoutSliderContainer.cpp",
    "LayoutSliderContainer.h",
    "LayoutSliderThumb.cpp",
    "LayoutSliderThumb.h",
    "LayoutState.cpp",
    "LayoutTable.cpp",
    "LayoutTable.h",
    "LayoutTableBoxComponent.cpp",
    "LayoutTableBoxComponent.h",
    "LayoutTableCaption.cpp",
    "LayoutTableCaption.h",
    "LayoutTableCell.cpp",
    "LayoutTableCell.h",
    "LayoutTableCol.cpp",
    "LayoutTableCol.h",
    "LayoutTableRow.cpp",
    "LayoutTableRow.h",
    "LayoutTableSection.cpp",
    "LayoutTableSection.h",
    "LayoutText.cpp",
    "LayoutTextCombine.cpp",
    "LayoutTextCombine.h",
    "LayoutTextControl.cpp",
    "LayoutTextControl.h",
    "LayoutTextControlMultiLine.cpp",
    "LayoutTextControlMultiLine.h",
    "LayoutTextControlSingleLine.cpp",
    "LayoutTextControlSingleLine.h",
    "LayoutTextFragment.cpp",
    "LayoutTextFragment.h",
    "LayoutTextTrackContainer.cpp",
    "LayoutTextTrackContainer.h",
    "LayoutTheme.cpp",
    "LayoutTheme.h",
    "LayoutThemeDefault.cpp",
    "LayoutThemeDefault.h",
    "LayoutThemeFontProvider.cpp",
    "LayoutThemeFontProvider.h",
    "LayoutThemeMac.h",
    "LayoutThemeMac.mm",
    "LayoutThemeMobile.cpp",
    "LayoutThemeMobile.h",
    "LayoutTreeAsText.cpp",
    "LayoutVTTCue.cpp",
    "LayoutVTTCue.h",
    "LayoutVideo.cpp",
    "LayoutVideo.h",
    "LayoutView.cpp",
    "LayoutWordBreak.cpp",
    "LayoutWordBreak.h",
    "ListMarkerText.cpp",
    "ListMarkerText.h",
    "MultiColumnFragmentainerGroup.cpp",
    "MultiColumnFragmentainerGroup.h",
    "OrderIterator.cpp",
    "OrderIterator.h",
    "OverflowModel.h",
    "PaintInvalidationState.cpp",
    "PaintInvalidationState.h",
    "PointerEventsHitRules.cpp",
    "PointerEventsHitRules.h",
    "ScrollAlignment.cpp",
    "ScrollAnchor.cpp",
    "ScrollAnchor.h",
    "SubtreeLayoutScope.cpp",
    "SubtreeLayoutScope.h",
    "TableLayoutAlgorithm.h",
    "TableLayoutAlgorithmAuto.cpp",
    "TableLayoutAlgorithmAuto.h",
    "TableLayoutAlgorithmFixed.cpp",
    "TableLayoutAlgorithmFixed.h",
    "TextAutosizer.cpp",
    "TextAutosizer.h",
    "TextRunConstructor.cpp",
    "TextRunConstructor.h",
    "TracedLayoutObject.cpp",
    "TracedLayoutObject.h",
    "VerticalPositionCache.h",
    "ViewFragmentationContext.cpp",
    "ViewFragmentationContext.h",
    "api/HitTestAction.h",
    "api/LayoutAPIShim.h",
    "api/LayoutBlockItem.h",
    "api/LayoutBoxItem.h",
    "api/LayoutBoxModel.h",
    "api/LayoutEmbeddedItem.h",
    "api/LayoutFullScreenItem.h",
    "api/LayoutImageItem.h",
    "api/LayoutItem.h",
    "api/LayoutLIItem.h",
    "api/LayoutMediaItem.h",
    "api/LayoutMenuListItem.h",
    "api/LayoutPartItem.h",
    "api/LayoutProgressItem.h",
    "api/LayoutSliderItem.h",
    "api/LayoutTextControlItem.h",
    "api/LayoutTextFragmentItem.h",
    "api/LayoutTextItem.h",
    "api/LayoutViewItem.h",
    "api/LineLayoutAPIShim.h",
    "api/LineLayoutBR.h",
    "api/LineLayoutBlockFlow.h",
    "api/LineLayoutBox.h",
    "api/LineLayoutBoxModel.h",
    "api/LineLayoutInline.h",
    "api/LineLayoutItem.h",
    "api/LineLayoutListMarker.h",
    "api/LineLayoutRubyBase.h",
    "api/LineLayoutRubyRun.h",
    "api/LineLayoutRubyText.h",
    "api/LineLayoutSVGInline.h",
    "api/LineLayoutSVGInlineText.h",
    "api/LineLayoutSVGTextPath.h",
    "api/LineLayoutText.h",
    "api/LineLayoutTextCombine.h",
    "api/SelectionState.h",
    "compositing/CompositedLayerMapping.cpp",
    "compositing/CompositedLayerMapping.h",
    "compositing/CompositingInputsUpdater.cpp",
    "compositing/CompositingInputsUpdater.h",
    "compositing/CompositingLayerAssigner.cpp",
    "compositing/CompositingLayerAssigner.h",
    "compositing/CompositingReasonFinder.cpp",
    "compositing/CompositingReasonFinder.h",
    "compositing/CompositingRequirementsUpdater.cpp",
    "compositing/CompositingRequirementsUpdater.h",
    "compositing/CompositingState.h",
    "compositing/CompositingTriggers.h",
    "compositing/GraphicsLayerTreeBuilder.cpp",
    "compositing/GraphicsLayerTreeBuilder.h",
    "compositing/GraphicsLayerUpdater.cpp",
    "compositing/GraphicsLayerUpdater.h",
    "compositing/PaintLayerCompositor.cpp",
    "compositing/PaintLayerCompositor.h",
    "line/AbstractInlineTextBox.cpp",
    "line/AbstractInlineTextBox.h",
    "line/BreakingContext.cpp",
    "line/EllipsisBox.cpp",
    "line/EllipsisBox.h",
    "line/GlyphOverflow.h",
    "line/InlineBox.cpp",
    "line/InlineFlowBox.cpp",
    "line/InlineIterator.h",
    "line/InlineTextBox.cpp",
    "line/LineBoxList.cpp",
    "line/LineBreaker.cpp",
    "line/LineBreaker.h",
    "line/LineWidth.cpp",
    "line/LineWidth.h",
    "line/RootInlineBox.cpp",
    "line/TrailingObjects.cpp",
    "line/TrailingObjects.h",
    "ng/layout_ng_block_flow.cc",
    "ng/layout_ng_block_flow.h",
    "ng/ng_block_layout_algorithm.cc",
    "ng/ng_block_layout_algorithm.h",
    "ng/ng_box.cc",
    "ng/ng_box.h",
    "ng/ng_constraint_space.cc",
    "ng/ng_constraint_space.h",
    "ng/ng_direction.cc",
    "ng/ng_direction.h",
    "ng/ng_fragment.cc",
    "ng/ng_fragment.h",
    "ng/ng_fragment_base.cc",
    "ng/ng_fragment_base.h",
    "ng/ng_fragment_builder.cc",
    "ng/ng_fragment_builder.h",
    "ng/ng_layout_input_text.h",
    "ng/ng_length_utils.cc",
    "ng/ng_length_utils.h",
    "ng/ng_physical_constraint_space.cc",
    "ng/ng_physical_constraint_space.h",
    "ng/ng_physical_fragment.h",
    "ng/ng_physical_fragment_base.cc",
    "ng/ng_physical_fragment_base.h",
    "ng/ng_physical_text_fragment.h",
    "ng/ng_text_fragment.cc",
    "ng/ng_text_fragment.h",
    "ng/ng_units.cc",
    "ng/ng_units.h",
    "ng/ng_writing_mode.cc",
    "ng/ng_writing_mode.h",
    "shapes/BoxShape.cpp",
    "shapes/BoxShape.h",
    "shapes/PolygonShape.cpp",
    "shapes/PolygonShape.h",
    "shapes/RasterShape.cpp",
    "shapes/RasterShape.h",
    "shapes/RectangleShape.cpp",
    "shapes/RectangleShape.h",
    "shapes/Shape.cpp",
    "shapes/Shape.h",
    "shapes/ShapeInterval.h",
    "shapes/ShapeOutsideInfo.cpp",
    "shapes/ShapeOutsideInfo.h",
    "svg/line/SVGInlineFlowBox.cpp",
    "svg/line/SVGInlineFlowBox.h",
    "svg/line/SVGInlineTextBox.cpp",
    "svg/line/SVGInlineTextBox.h",
    "svg/line/SVGRootInlineBox.cpp",
    "svg/line/SVGRootInlineBox.h",
  ]

  if (is_win) {
    sources += [
      "LayoutThemeFontProviderWin.cpp",
      "LayoutThemeWin.cpp",
      "LayoutThemeWin.h",
    ]
  } else {  # Not Windows.
    sources += [ "LayoutThemeFontProviderDefault.cpp" ]
  }

  if (is_linux) {
    sources += [
      "LayoutThemeLinux.cpp",
      "LayoutThemeLinux.h",
    ]
  }

  if (is_android) {
    sources += [
      "LayoutThemeAndroid.cpp",
      "LayoutThemeAndroid.h",
    ]
  }

  configs += [
    # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
    "//build/config/compiler:no_size_t_to_int_warning",
  ]
}
