# Copyright (C) 2015 Intel Corporation.   All Rights Reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice (including the next
# paragraph) shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
# IN THE SOFTWARE.

LOADER_SOURCES := \
	swr_loader.cpp

CXX_SOURCES := \
	swr_clear.cpp \
	swr_context.cpp \
	swr_context.h \
	swr_draw.cpp \
	swr_public.h \
	swr_resource.h \
	swr_screen.cpp \
	swr_screen.h \
	swr_state.cpp \
	swr_state.h \
	swr_tex_sample.cpp \
	swr_tex_sample.h \
	swr_scratch.h \
	swr_scratch.cpp \
	swr_shader.cpp \
	swr_shader.h \
	swr_memory.h \
	swr_fence.h \
	swr_fence.cpp \
	swr_fence_work.h \
	swr_fence_work.cpp \
	swr_query.h \
	swr_query.cpp

ARCHRAST_CXX_SOURCES := \
	rasterizer/archrast/archrast.cpp \
	rasterizer/archrast/archrast.h \
	rasterizer/archrast/eventmanager.h

COMMON_CXX_SOURCES := \
	rasterizer/common/formats.cpp \
	rasterizer/common/formats.h \
	rasterizer/common/intrin.h \
	rasterizer/common/isa.hpp \
	rasterizer/common/os.cpp \
	rasterizer/common/os.h \
	rasterizer/common/rdtsc_buckets.cpp \
	rasterizer/common/rdtsc_buckets.h \
	rasterizer/common/rdtsc_buckets_shared.h \
	rasterizer/common/rdtsc_buckets_shared.h \
	rasterizer/common/simd16intrin.h \
	rasterizer/common/simdintrin.h \
	rasterizer/common/simdlib.hpp \
	rasterizer/common/simdlib_128_avx.inl \
	rasterizer/common/simdlib_128_avx2.inl \
	rasterizer/common/simdlib_128_avx512.inl \
	rasterizer/common/simdlib_128_avx512_core.inl \
	rasterizer/common/simdlib_128_avx512_knights.inl \
	rasterizer/common/simdlib_256_avx.inl \
	rasterizer/common/simdlib_256_avx2.inl \
	rasterizer/common/simdlib_256_avx512.inl \
	rasterizer/common/simdlib_256_avx512_core.inl \
	rasterizer/common/simdlib_256_avx512_knights.inl \
	rasterizer/common/simdlib_512_avx512.inl \
	rasterizer/common/simdlib_512_avx512_core.inl \
	rasterizer/common/simdlib_512_avx512_knights.inl \
	rasterizer/common/simdlib_512_avx512_masks.inl \
	rasterizer/common/simdlib_512_avx512_masks_core.inl \
	rasterizer/common/simdlib_512_avx512_masks_knights.inl \
	rasterizer/common/simdlib_512_emu.inl \
	rasterizer/common/simdlib_512_emu_masks.inl \
	rasterizer/common/simdlib_interface.hpp \
	rasterizer/common/simdlib_types.hpp \
	rasterizer/common/swr_assert.cpp \
	rasterizer/common/swr_assert.h

CORE_CXX_SOURCES := \
	rasterizer/core/api.cpp \
	rasterizer/core/api.h \
	rasterizer/core/arena.h \
	rasterizer/core/backend.cpp \
	rasterizer/core/backend_clear.cpp \
	rasterizer/core/backend_sample.cpp \
	rasterizer/core/backend_singlesample.cpp \
	rasterizer/core/backend.h \
	rasterizer/core/backend_impl.h \
	rasterizer/core/binner.cpp \
	rasterizer/core/binner.h \
	rasterizer/core/blend.h \
	rasterizer/core/clip.cpp \
	rasterizer/core/clip.h \
	rasterizer/core/conservativeRast.h \
	rasterizer/core/context.h \
	rasterizer/core/depthstencil.h \
	rasterizer/core/fifo.hpp \
	rasterizer/core/format_conversion.h \
	rasterizer/core/format_traits.h \
	rasterizer/core/format_types.h \
	rasterizer/core/format_utils.h \
	rasterizer/core/frontend.cpp \
	rasterizer/core/frontend.h \
	rasterizer/core/knobs.h \
	rasterizer/core/knobs_init.h \
	rasterizer/core/multisample.h \
	rasterizer/core/pa_avx.cpp \
	rasterizer/core/pa.h \
	rasterizer/core/rasterizer.cpp \
	rasterizer/core/rasterizer.h \
	rasterizer/core/rasterizer_impl.h \
	rasterizer/core/rdtsc_core.cpp \
	rasterizer/core/rdtsc_core.h \
	rasterizer/core/ringbuffer.h \
	rasterizer/core/state.h \
	rasterizer/core/state_funcs.h \
	rasterizer/core/tessellator.h \
	rasterizer/core/threads.cpp \
	rasterizer/core/threads.h \
	rasterizer/core/tilemgr.cpp \
	rasterizer/core/tilemgr.h \
	rasterizer/core/utils.h

JITTER_CXX_SOURCES := \
	rasterizer/jitter/blend_jit.cpp \
	rasterizer/jitter/blend_jit.h \
	rasterizer/jitter/builder.cpp \
	rasterizer/jitter/builder.h \
	rasterizer/jitter/builder_math.h \
	rasterizer/jitter/builder_misc.cpp \
	rasterizer/jitter/builder_misc.h \
	rasterizer/jitter/fetch_jit.cpp \
	rasterizer/jitter/fetch_jit.h \
	rasterizer/jitter/jit_api.h \
	rasterizer/jitter/jit_pch.hpp \
	rasterizer/jitter/JitManager.cpp \
	rasterizer/jitter/JitManager.h \
	rasterizer/jitter/streamout_jit.cpp \
	rasterizer/jitter/streamout_jit.h

MEMORY_CXX_SOURCES := \
	rasterizer/memory/ClearTile.cpp \
	rasterizer/memory/Convert.h \
	rasterizer/memory/LoadTile.cpp \
	rasterizer/memory/LoadTile.h \
	rasterizer/memory/LoadTile_Linear.cpp \
	rasterizer/memory/LoadTile_TileX.cpp \
	rasterizer/memory/LoadTile_TileY.cpp \
	rasterizer/memory/StoreTile.cpp \
	rasterizer/memory/StoreTile.h \
	rasterizer/memory/StoreTile_Linear2.cpp \
	rasterizer/memory/StoreTile_Linear.cpp \
	rasterizer/memory/StoreTile_TileW.cpp \
	rasterizer/memory/StoreTile_TileX2.cpp \
	rasterizer/memory/StoreTile_TileX.cpp \
	rasterizer/memory/StoreTile_TileY2.cpp \
	rasterizer/memory/StoreTile_TileY.cpp \
	rasterizer/memory/TilingFunctions.h \
	rasterizer/memory/tilingtraits.h