# SPDX-License-Identifier: BSD-3-Clause
# Copyright (c) Contributors to the OpenEXR Project.

openexr_define_library(OpenEXR
  PRIV_EXPORT OPENEXR_EXPORTS
  CURDIR ${CMAKE_CURRENT_SOURCE_DIR}
  SOURCES
    b44ExpLogTable.h
    dwaLookups.h
    ImfAcesFile.cpp
    ImfAttribute.cpp
    ImfB44Compressor.cpp
    ImfBoxAttribute.cpp
    ImfChannelList.cpp
    ImfChannelListAttribute.cpp
    ImfChromaticities.cpp
    ImfChromaticitiesAttribute.cpp
    ImfCompositeDeepScanLine.cpp
    ImfCompressionAttribute.cpp
    ImfCompressor.cpp
    ImfConvert.cpp
    ImfCRgbaFile.cpp
    ImfDeepCompositing.cpp
    ImfDeepFrameBuffer.cpp
    ImfDeepImageStateAttribute.cpp
    ImfDeepScanLineInputFile.cpp
    ImfDeepScanLineInputPart.cpp
    ImfDeepScanLineOutputFile.cpp
    ImfDeepScanLineOutputPart.cpp
    ImfDeepTiledInputFile.cpp
    ImfDeepTiledInputPart.cpp
    ImfDeepTiledOutputFile.cpp
    ImfDeepTiledOutputPart.cpp
    ImfDoubleAttribute.cpp
    ImfDwaCompressor.cpp
    ImfEnvmap.cpp
    ImfEnvmapAttribute.cpp
    ImfFastHuf.cpp
    ImfFloatAttribute.cpp
    ImfFloatVectorAttribute.cpp
    ImfFrameBuffer.cpp
    ImfFramesPerSecond.cpp
    ImfGenericInputFile.cpp
    ImfGenericOutputFile.cpp
    ImfHeader.cpp
    ImfHuf.cpp
    ImfIDManifest.cpp
    ImfIDManifestAttribute.cpp
    ImfInputFile.cpp
    ImfInputPart.cpp
    ImfInputPartData.cpp
    ImfIntAttribute.cpp
    ImfIO.cpp
    ImfKeyCode.cpp
    ImfKeyCodeAttribute.cpp
    ImfLineOrderAttribute.cpp
    ImfLut.cpp
    ImfMatrixAttribute.cpp
    ImfMisc.cpp
    ImfMultiPartInputFile.cpp
    ImfMultiPartOutputFile.cpp
    ImfMultiView.cpp
    ImfOpaqueAttribute.cpp
    ImfOutputFile.cpp
    ImfOutputPart.cpp
    ImfOutputPartData.cpp
    ImfPartType.cpp
    ImfPizCompressor.cpp
    ImfPreviewImage.cpp
    ImfPreviewImageAttribute.cpp
    ImfPxr24Compressor.cpp
    ImfRational.cpp
    ImfRationalAttribute.cpp
    ImfRgbaFile.cpp
    ImfRgbaYca.cpp
    ImfRle.cpp
    ImfRleCompressor.cpp
    ImfScanLineInputFile.cpp
    ImfStandardAttributes.cpp
    ImfStdIO.cpp
    ImfStringAttribute.cpp
    ImfStringVectorAttribute.cpp
    ImfSystemSpecific.cpp
    ImfTestFile.cpp
    ImfThreading.cpp
    ImfTileDescriptionAttribute.cpp
    ImfTiledInputFile.cpp
    ImfTiledInputPart.cpp
    ImfTiledMisc.cpp
    ImfTiledOutputFile.cpp
    ImfTiledOutputPart.cpp
    ImfTiledRgbaFile.cpp
    ImfTileOffsets.cpp
    ImfTimeCode.cpp
    ImfTimeCodeAttribute.cpp
    ImfVecAttribute.cpp
    ImfVersion.cpp
    ImfWav.cpp
    ImfZip.cpp
    ImfZipCompressor.cpp
  HEADERS
    ImfAcesFile.h
    ImfArray.h
    ImfAttribute.h
    ImfBoxAttribute.h
    ImfChannelList.h
    ImfChannelListAttribute.h
    ImfChromaticities.h
    ImfChromaticitiesAttribute.h
    ImfCompositeDeepScanLine.h
    ImfCompression.h
    ImfCompressionAttribute.h
    ImfConvert.h
    ImfCRgbaFile.h
    ImfDeepCompositing.h
    ImfDeepFrameBuffer.h
    ImfDeepImageState.h
    ImfDeepImageStateAttribute.h
    ImfDeepScanLineInputFile.h
    ImfDeepScanLineInputPart.h
    ImfDeepScanLineOutputFile.h
    ImfDeepScanLineOutputPart.h
    ImfDeepTiledInputFile.h
    ImfDeepTiledInputPart.h
    ImfDeepTiledOutputFile.h
    ImfDeepTiledOutputPart.h
    ImfDoubleAttribute.h
    ImfEnvmap.h
    ImfEnvmapAttribute.h
    ImfExport.h
    ImfFloatAttribute.h
    ImfFloatVectorAttribute.h
    ImfForward.h
    ImfFrameBuffer.h
    ImfFramesPerSecond.h
    ImfGenericInputFile.h
    ImfGenericOutputFile.h
    ImfHeader.h
    ImfHuf.h
    ImfIDManifest.h
    ImfIDManifestAttribute.h
    ImfInputFile.h
    ImfInputPart.h
    ImfInt64.h
    ImfIntAttribute.h
    ImfIO.h
    ImfKeyCode.h
    ImfKeyCodeAttribute.h
    ImfLineOrder.h
    ImfLineOrderAttribute.h
    ImfLut.h
    ImfMatrixAttribute.h
    ImfMultiPartInputFile.h
    ImfMultiPartOutputFile.h
    ImfMultiView.h
    ImfName.h
    ImfNamespace.h
    ImfOpaqueAttribute.h
    ImfOutputFile.h
    ImfOutputPart.h
    ImfPartHelper.h
    ImfPartType.h
    ImfPixelType.h
    ImfPreviewImage.h
    ImfPreviewImageAttribute.h
    ImfRational.h
    ImfRationalAttribute.h
    ImfRgba.h
    ImfRgbaFile.h
    ImfRgbaYca.h
    ImfStandardAttributes.h
    ImfStdIO.h
    ImfStringAttribute.h
    ImfStringVectorAttribute.h
    ImfTestFile.h
    ImfThreading.h
    ImfTileDescription.h
    ImfTileDescriptionAttribute.h
    ImfTiledInputFile.h
    ImfTiledInputPart.h
    ImfTiledOutputFile.h
    ImfTiledOutputPart.h
    ImfTiledRgbaFile.h
    ImfTimeCode.h
    ImfTimeCodeAttribute.h
    ImfVecAttribute.h
    ImfVersion.h
    ImfWav.h
    ImfXdr.h
  DEPENDENCIES
    Imath::Imath
    OpenEXR::Config
    OpenEXR::Iex
    OpenEXR::IlmThread
    ZLIB::ZLIB
  )
