project(AVKit)

remove_sdk_framework(AVKit)

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

set(FRAMEWORK_VERSION "A")

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

add_framework(AVKit
    FAT
    CURRENT_VERSION
    VERSION ${FRAMEWORK_VERSION}

    SOURCES
        src/AVKit.m
        src/AVTrimView.m
        src/AVFunctionBarVideoTrackView.m
        src/AVTrimSelectionEndFocusRingView.m
        src/AVOutputDeviceDiscoverySessionController.m
        src/AVFunctionBarRecordingControlsViewController.m
        src/AVTouchBarPlaybackControlsController.m
        src/AVCaptureControlsRecordingViewController.m
        src/AVProgressEstimator.m
        src/AVShareController.m
        src/AVTouchBarPlaybackControlsViewController.m
        src/AVShadowTimeFormatterLegacy.m
        src/AVFunctionBarScrubberInternal.m
        src/AVTouchBarAudioCaptureDeviceSelectionButtonViewController.m
        src/AVTouchBarAudioTrackView.m
        src/AVMovableView.m
        src/AVTouchBarTrimControlsViewController.m
        src/AVTouchBarScrubberKnobView.m
        src/AVMinimalPlaybackControlsViewController.m
        src/AVFloatingTrimControlsViewController.m
        src/AVTrimIndicatorView.m
        src/AVTouchBarRecordingControlsProvider.m
        src/AVTouchBarCaptureInputSourceItem.m
        src/AVCaptureDeviceSelectionController.m
        src/AVExternalPlaybackIndicatorView.m
        src/AVSlowMotionSlider.m
        src/AVSlowMotionSliderTrackView.m
        src/AVSlowMotionSliderHandleView.m
        src/AVTrackViewController.m
        src/AVRoutePickerRemoteViewController.m
        src/AVShadowTimeFormatter.m
        src/AVTouchBarScrubberInternal.m
        src/AVTrimIndicatorFocusRingView.m
        src/AVCircularProgressIndicator.m
        src/AVStatusOverlayView.m
        src/AVAudioExtractor.m
        src/AVFunctionBarAudioCaptureDeviceSelectionButtonViewController.m
        src/AVFunctionBarScrubberKnobView.m
        src/AVMicaPackage.m
        src/AVPlayerControlsViewController.m
        src/AVScanBackwardTextFieldHiddenValueTransformer.m
        src/AVScanBackwardTextFieldValueValueTransformer.m
        src/AVScanForwardTextFieldHiddenValueTransformer.m
        src/AVScanForwardTextFieldValueValueTransformer.m
        src/AVScrubberValueTransformer.m
        src/AVAtomicCancelationToken.m
        src/AVRoutePickerView.m
        src/AVOutputContextController.m
        src/AVFloatingPlaybackControlsViewController.m
        src/AVTouchBarDescriptionBasedPlayerController.m
        src/AVFunctionBarPlaybackControlsController.m
        src/AVUnsupportedContentIndicatorView.m
        src/AVTrimClipView.m
        src/AVChapterMenuController.m
        src/AVPlayerControllerTimeResolver.m
        src/AVObservationController.m
        src/AVProxyKVOObserver.m
        src/AVKeyValueChange.m
        src/AVInlineDeviceSelectionCaptureControlsViewController.m
        src/AVFunctionBarTrackView.m
        src/AVFunctionBarAudioTrackView.m
        src/AVFunctionBarPlaybackControlsProvider.m
        src/AVFunctionBarMediaSelectionOption.m
        src/AVDraggableImageView.m
        src/AVPlayerView.m
        src/AVIterableCache.m
        src/AVVideoTrackThumbnailManager.m
        src/AVFunctionBarTrackViewController.m
        src/AVTouchBarVideoTrackView.m
        src/AVTimeIndicatorPopover.m
        src/AVTimeIndicatorPopoverContentViewController.m
        src/AVChapter.m
        src/AVTrackView.m
        src/AVTouchBarTrackViewController.m
        src/AVVideoTrackView.m
        src/_AVBundle.m
        src/AVTouchBarMediaSelectionOptionTwoLineButtonCell.m
        src/AVTouchBarMediaSelectionOptionTwoLineButton.m
        src/AVTouchBarMediaSelectionViewController.m
        src/AVTouchBarScrubberController.m
        src/AVAudioLevelIndicatorView.m
        src/AVVideoTrackThumbnail.m
        src/AVNowPlayingInfoController.m
        src/AVCaptureControlsViewController.m
        src/AVValueTiming.m
        src/AVMutableValueTiming.m
        src/AVConcreteValueTiming.m
        src/AVConcreteMutableValueTiming.m
        src/AVInlineTrimControlsViewController.m
        src/AVTrimIndicatorAccessibilityElement.m
        src/AVBindingInfoLegacy.m
        src/AVPlayButtonLegacy.m
        src/AVFunctionBarScrubberExpandButtonCell.m
        src/AVFunctionBarScrubberExpandButton.m
        src/AVFunctionBarScrubber.m
        src/AVFunctionBarPlaybackControlsViewController.m
        src/AVThumbnailCache.m
        src/AVFunctionBarRecordingControlsProvider.m
        src/AVFunctionBarCaptureInputSourceItem.m
        src/AVControlsContainerViewController.m
        src/AVPlayerController.m
        src/AVTrimSelectionStartFocusRingView.m
        src/AVFunctionBarRecordingControlsController.m
        src/AVAudioTrackView.m
        src/AVAnimator.m
        src/AVPooledData.m
        src/AVDataPool.m
        src/AVButton.m
        src/AVAudioAmplitudeExtractionSessionHelper.m
        src/AVAudioAmplitudeExtractionSession.m
        src/AVEstimatedDurationFormatter.m
        src/AVFunctionBarCaptureInputSourceSelectionViewController.m
        src/AVFloatingCaptureControlsViewController.m
        src/AVTouchBarRecordingControlsViewController.m
        src/AVCameraDisabledView.m
        src/AVInlinePlaybackControlsViewController.m
        src/AVTrimSelectionView.m
        src/AVTouchBarCaptureInputSourceSelectionViewController.m
        src/AVControlsViewController.m
        src/AVTouchBarPlaybackControlsProvider.m
        src/AVThumbnail.m
        src/AVTouchBarMediaSelectionOption.m
        src/AVTrimDimmerView.m
        src/AVCaptureController.m
        src/AVCaptureDeviceInputSourceItem.m
        src/AVCaptureQualityItem.m
        src/AVAudioView.m
        src/AVAudioPlaybackControlsViewController.m
        src/AVAudioTrimControlsViewController.m
        src/AVScrubber.m
        src/AVScrubberCell.m
        src/AVInlineCaptureControlsViewController.m
        src/AVTrimControlsViewController.m
        src/AVFoundationExportSession.m
        src/AVAudioOnlyIndicatorView.m
        src/AVOutputDevicePickerButton.m
        src/AVCaptureView.m
        src/AVTimer.m
        src/AVPanoramicStretchHelper.m
        src/AVTouchBarTrackView.m
        src/AVFunctionBarScrubberController.m
        src/AVTouchBarRecordingControlsController.m
        src/AVTouchBarPlaybackControlsItem.m
        src/AVBindingInfo.m
        src/AVTouchBarScrubberExpandButtonCell.m
        src/AVTouchBarScrubberExpandButton.m
        src/AVTouchBarScrubber.m
        src/AVAssetAudioExtractor.m
        src/AVTouchBarMediaSelectionButtonViewController.m
        src/AVLoadingIndicatorView.m
        src/AVFunctionBarMediaSelectionViewController.m
        src/AVAppendableData.m
        src/AVReadOnlyRangeOfAppendableData.m
        src/AVOutputDeviceMenuController.m
        src/AVThumbnailGenerationRequest.m
        src/AVThumbnailGenerator.m
        src/AVOutputDeviceMenuRemoteViewController.m
        src/AVScrollSliderView.m
        src/AVExportProgressWindowController.m
        src/AVAudioAmplitudeSampleExtractionHelper.m
        src/AVWaveformGenerator.m
        src/AVTrimTracksView.m
        src/AVVolumeButton.m
        src/AVVolumeButtonContentView.m
        src/AVVolumeImageValueTransformer.m

    DEPENDENCIES
        system
        objc
        Foundation
        AppKit
)
