project(CoreUI)

remove_sdk_framework(CoreUI
	PRIVATE
)

set(DYLIB_COMPAT_VERSION "1.0.0")
set(DYLIB_CURRENT_VERSION "608.3.0")

set(FRAMEWORK_VERSION "A")

generate_sdk_framework(CoreUI
    VERSION ${FRAMEWORK_VERSION}
    HEADER "include/CoreUI"
	PRIVATE
)

add_framework(CoreUI
    FAT
    CURRENT_VERSION
    PRIVATE
    VERSION ${FRAMEWORK_VERSION}

    SOURCES
        src/CoreUI.m
        src/_CUIThemeSVGRendition.m
        src/CUINamedModel.m
        src/CUINamedVectorGlyph.m
        src/CUIMeshBuffer.m
        src/CUINamedImageAtlas.m
        src/CUINamedColor.m
        src/_CUIThemeTextStyleRendition.m
        src/CUIRuntimeStatistics.m
        src/CUINamedImageDescription.m
        src/_CUIThemeModelMeshRendition.m
        src/CUIShapeEffectPreset.m
        src/CUINamedRecognitionImage.m
        src/CUIMutableCatalog.m
        src/CUINamedRecognitionGroup.m
        src/CUINamedData.m
        src/CUINamedVectorImage.m
        src/CUINamedVectorPDFImage.m
        src/CUINamedVectorSVGImage.m
        src/CUIShapeEffectStack.m
        src/CUIPSDLayerEnumerator.m
        src/CUIScaleClampFilterLocal.m
        src/CUIInnerGlowFilterLocal.m
        src/CUIInnerShadowFilterLocal.m
        src/CUIOuterGlowFilterLocal.m
        src/CUIInnerGlowOrShadowFilterLocal.m
        src/CUIOuterGlowOrShadowFilterLocal.m
        src/CUISmoothEmbossFilterLocal.m
        src/CUIOuterBevelEmbossFilterLocal.m
        src/CUIInnerBevelEmbossFilterLocal.m
        src/CUIOuterShadowFilterLocal.m
        src/CUISmallBlurLocal.m
        src/CUIShapeEffectBlur1Local.m
        src/CUIHueSaturationFilterLocal.m
        src/CUITextEffectStack.m
        src/CUIPerformanceLogManager.m
        src/CUIPerformanceMeasurement.m
        src/CoreUI.m
        src/_CUIThemeMultisizeImageSetRendition.m
        src/CUIPSLayerEffectsPreset.m
        src/CUITextStyle.m
        src/CUIPattern.m
        src/CSIGenerator.m
        src/CSIBitmapWrapper.m
        src/CUIPSDGradient.m
        src/CUIPSDGradientStop.m
        src/CUIPSDGradientColorStop.m
        src/CUIPSDGradientDoubleColorStop.m
        src/CUIPSDGradientOpacityStop.m
        src/CUIPSDGradientDoubleOpacityStop.m
        src/_CUIPSDStopAndMidpointPair.m
        src/CUIPSDGradientEvaluator.m
        src/_CUIPSDSublayerInfo.m
        src/CUIPSDImageRef.m
        src/CUIPSDLayerBaseRef.m
        src/CUIPSDLayerRef.m
        src/CUIPSDLayerGroupRef.m
        src/CUIPSDLayerMaskRef.m
        src/CUIImage.m
        src/CUIColor.m
        src/CUINamedRecognitionObject.m
        src/CUIRenditionLayerReference.m
        src/CUIMutableThemeRendition.m
        src/_CUINineImagePieces.m
        src/_CUIThemeFacetCacheKey.m
        src/CUIThemeFacet.m
        src/CUIThemeGradient.m
        src/_CUIThemePDFRendition.m
        src/CUIMaskedFacetLayer.m
        src/CUICustomFontCacheKey.m
        src/CUICustomFontCacheValue.m
        src/CUICommonAssetStorage.m
        src/CUIMutableCommonAssetStorage.m
        src/CUIRenditionKey.m
        src/CUIRenditionMetrics.m
        src/CUISharedArtCatalog.m
        src/CUIRenditionSliceInformation.m
        src/_CUIThemeColorRendition.m
        src/CUIMutableStructuredThemeStore.m
        src/_CUIExternalLinkRendition.m
        src/CUINamedLayerStack.m
        src/CUINamedLayerImage.m
        src/_CUIKeyTestOrganizer.m
        src/CUIStructuredThemeStore.m
        src/CUISystemStore.m
        src/CUINamedLookup.m
        src/CSIATECHelper.m
        src/CSIHelper.m
        src/_CSIRenditionBlockData.m
        src/_CUIMultisizeImageSetSizeAndIndex.m
        src/_CUIRawPixelRendition.m
        src/_CUIRawDataRendition.m
        src/_CUILayerStackRendition.m
        src/_CUIRecognitionObjectRendition.m
        src/_CUIThinningPlaceholderRendition.m
        src/_CUIThemeTextureRendition.m
        src/CSITextureHelper.m
        src/_CUIThemeTextureImageRendition.m
        src/_CUIInternalLinkRendition.m
        src/_CUINameContentRendition.m
        src/_CUIThemePixelRendition.m
        src/CUIThemeRendition.m
        src/_SchemaRenditionTuple.m
        src/CUIThemeSchema.m
        src/_CUIMacOSThemeSchema.m
        src/_CUIiPhoneOSThemeSchema.m
        src/CUIThemeSchemaRendition.m
        src/CUIThemeSchemaEffectRendition.m
        src/CUIWindowFrameLayer.m
        src/CUITexturedWindowFrameLayer.m
        src/CUIThemeDataEffectPreset.m
        src/CUIThemeSchemaRenditionGroup.m
        src/CUIThemeSchemaPSDLayer.m
        src/CUIThemeSchemaPSDRenditionLayer.m
        src/CUIThemeSchemaPSDLayerGroup.m
        src/CUINamedImage.m
        src/CUINamedMultisizeImageSet.m
        src/CUIPSDLayoutMetricsChannel.m
        src/CUIPSDLayer.m
        src/CUIPSDImageLayer.m
        src/CUIPSDGradientLayer.m
        src/CUIPSDLayerGroupStart.m
        src/CUIPSDLayerGroupEnd.m
        src/CUIMutablePSDImageRef.m
        src/_CUISubrangeData.m
        src/CUIThemeSchemaLayer.m
        src/CUIStyleEffectConfiguration.m
        src/CUINamedExternalLink.m
        src/_CUIThemeEffectRendition.m
        src/CUIPSDLayerEffects.m
        src/CUIPSDLayerEffectComponent.m
        src/CUIPSDLayerEffectDropShadow.m
        src/CUIPSDLayerEffectInnerShadow.m
        src/CUIPSDLayerEffectInnerGlow.m
        src/CUIPSDLayerEffectOuterGlow.m
        src/CUIPSDLayerEffectColorOverlay.m
        src/CUIPSDLayerEffectGradientOverlay.m
        src/CUIPSDLayerEffectBevelEmboss.m
        src/_CUIThemeModelSubmeshRendition.m
        src/CUICatalog.m
        src/CUISystemCatalog.m
        src/CUIBackgroundStyleEffectConfiguration.m
        src/_CUIThemeGradientRendition.m
        src/_CUTextureLink.m
        src/CUINamedTexture.m
        src/_CUIThemeModelAssetRendition.m
        src/CUINamedRenditionInfo.m
        src/CUINamedMultisizeImage.m
        src/CUILayoutInformation.m

    DEPENDENCIES
        system
        objc
        Foundation
)
