Warning, /graphics/krita/libs/flake/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 project(kritaflake)
0002 
0003 include_directories(
0004     ${CMAKE_SOURCE_DIR}/libs/flake/commands
0005     ${CMAKE_SOURCE_DIR}/libs/flake/tools
0006     ${CMAKE_SOURCE_DIR}/libs/flake/svg
0007     ${CMAKE_SOURCE_DIR}/libs/flake/text
0008     ${CMAKE_SOURCE_DIR}/libs/flake/xsimd
0009     ${CMAKE_BINARY_DIR}/libs/flake
0010 )
0011 
0012 add_subdirectory(styles)
0013 add_subdirectory(tests)
0014 add_subdirectory(resources/tests)
0015 
0016 set(DISABLE_CLIP_MASK_PAINTER_ON_MACOS FALSE)
0017 if (APPLE)
0018     set(DISABLE_CLIP_MASK_PAINTER_ON_MACOS TRUE)
0019 endif()
0020 
0021 # generate krita_xsimd_macos_workaround.h
0022 configure_file(krita_xsimd_macos_workaround.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/krita_xsimd_macos_workaround.h)
0023 
0024 if(HAVE_XSIMD AND NOT DISABLE_CLIP_MASK_PAINTER_ON_MACOS)
0025     ko_compile_for_all_implementations(__per_arch_alpha_applicator_factory_objs xsimd/KoClipMaskApplicatorFactoryImpl.cpp)
0026 else()
0027     set(__per_arch_alpha_applicator_factory_objs xsimd/KoClipMaskApplicatorFactoryImpl.cpp)
0028 endif()
0029 
0030 set(kritaflake_SRCS
0031     KoGradientHelper.cpp
0032     KoFlake.cpp
0033     KoCanvasBase.cpp
0034     KoResourceManager_p.cpp
0035     KoDerivedResourceConverter.cpp
0036     KoActiveCanvasResourceDependency.cpp
0037     KoResourceUpdateMediator.cpp
0038     KoCanvasResourceProvider.cpp
0039     KoDocumentResourceManager.cpp
0040     KoCanvasObserverBase.cpp
0041     KoCanvasSupervisor.cpp
0042     KoDockFactoryBase.cpp
0043     KoDockRegistry.cpp
0044     KoInsets.cpp
0045     KoPathShape.cpp
0046     KoPathPoint.cpp
0047     KoPathSegment.cpp
0048     KoSelection.cpp
0049     KoSelectedShapesProxy.cpp
0050     KoSelectedShapesProxySimple.cpp
0051     KoShape.cpp
0052     KoShapeAnchor.cpp
0053     KoShapeControllerBase.cpp
0054     KoShapeApplicationData.cpp
0055     KoShapeContainer.cpp
0056     KoShapeContainerModel.cpp
0057     KoShapeGroup.cpp
0058     KoShapeManager.cpp
0059     KoMarker.cpp
0060     KoMarkerCollection.cpp
0061     KoToolBase.cpp
0062     KoCanvasController.cpp
0063     KoCanvasControllerWidget.cpp
0064     KoCanvasControllerWidgetViewport_p.cpp
0065     KoShapeRegistry.cpp
0066     KoDeferredShapeFactoryBase.cpp
0067     KoToolFactoryBase.cpp
0068     KoPathShapeFactory.cpp
0069     KoShapeFactoryBase.cpp
0070     KoShapeUserData.cpp
0071     KoParameterShape.cpp
0072     KoPointerEvent.cpp
0073     KoShapeController.cpp
0074     KoToolSelection.cpp
0075     KoShapeLayer.cpp
0076     KoInputDevice.cpp
0077     KoToolManager_p.cpp
0078     KoToolManager.cpp
0079     KoToolRegistry.cpp
0080     KoToolProxy.cpp
0081     KoShapeSavingContext.cpp
0082     KoShapeLoadingContext.cpp
0083     KoLoadingShapeUpdater.cpp
0084     KoPathShapeLoader.cpp
0085     KoShapeStrokeModel.cpp
0086     KoShapeStroke.cpp
0087     KoShapeBackground.cpp
0088     KoColorBackground.cpp
0089     KoGradientBackground.cpp
0090     KoMeshGradientBackground.cpp
0091     KoHatchBackground.cpp
0092     KoPatternBackground.cpp
0093     KoVectorPatternBackground.cpp
0094     KoShapeFillWrapper.cpp
0095     KoShapeFillResourceConnector.cpp
0096     KoShapeConfigWidgetBase.cpp
0097     KoDrag.cpp
0098     KoSvgPaste.cpp
0099     KoSnapGuide.cpp
0100     KoSnapProxy.cpp
0101     KoSnapStrategy.cpp
0102     KoSnapData.cpp
0103     KoShapeShadow.cpp
0104     KoSharedLoadingData.cpp
0105     KoSharedSavingData.cpp
0106     KoViewConverter.cpp
0107     KoFilterEffect.cpp
0108     KoFilterEffectStack.cpp
0109     KoFilterEffectFactoryBase.cpp
0110     KoFilterEffectRegistry.cpp
0111     KoFilterEffectConfigWidgetBase.cpp
0112     KoFilterEffectRenderContext.cpp
0113     KoFilterEffectLoadingContext.cpp
0114     KoTextShapeDataBase.cpp
0115     KoTosContainer.cpp
0116     KoTosContainerModel.cpp
0117     KoClipMaskApplicatorBase.cpp
0118     ${__per_arch_alpha_applicator_factory_objs}
0119     KoClipMaskPainter.cpp
0120     KoClipPath.cpp
0121     KoClipMask.cpp
0122     KoCurveFit.cpp
0123 
0124     commands/KoShapeGroupCommand.cpp
0125     commands/KoShapeAlignCommand.cpp
0126     commands/KoShapeBackgroundCommand.cpp
0127     commands/KoShapeCreateCommand.cpp
0128     commands/KoShapeDeleteCommand.cpp
0129     commands/KoShapeDistributeCommand.cpp
0130     commands/KoShapeLockCommand.cpp
0131     commands/KoShapeMoveCommand.cpp
0132     commands/KoShapeResizeCommand.cpp
0133     commands/KoShapeShearCommand.cpp
0134     commands/KoShapeSizeCommand.cpp
0135     commands/KoShapeStrokeCommand.cpp
0136     commands/KoShapeUngroupCommand.cpp
0137     commands/KoShapeReorderCommand.cpp
0138     commands/KoShapeKeepAspectRatioCommand.cpp
0139     commands/KoPathBaseCommand.cpp
0140     commands/KoPathPointMoveCommand.cpp
0141     commands/KoPathControlPointMoveCommand.cpp
0142     commands/KoPathPointTypeCommand.cpp
0143     commands/KoPathPointRemoveCommand.cpp
0144     commands/KoPathPointInsertCommand.cpp
0145     commands/KoPathSegmentBreakCommand.cpp
0146     commands/KoPathBreakAtPointCommand.cpp
0147     commands/KoPathSegmentTypeCommand.cpp
0148     commands/KoPathCombineCommand.cpp
0149     commands/KoSubpathRemoveCommand.cpp
0150     commands/KoSubpathJoinCommand.cpp
0151     commands/KoParameterHandleMoveCommand.cpp
0152     commands/KoParameterToPathCommand.cpp
0153     commands/KoShapeTransformCommand.cpp
0154     commands/KoPathFillRuleCommand.cpp
0155     commands/KoShapeShadowCommand.cpp
0156     commands/KoPathReverseCommand.cpp
0157     commands/KoShapeRenameCommand.cpp
0158     commands/KoShapeRunAroundCommand.cpp
0159     commands/KoPathPointMergeCommand.cpp
0160     commands/KoShapeTransparencyCommand.cpp
0161     commands/KoShapeClipCommand.cpp
0162     commands/KoShapeUnclipCommand.cpp
0163     commands/KoPathShapeMarkerCommand.cpp
0164     commands/KoMultiPathPointMergeCommand.cpp
0165     commands/KoMultiPathPointJoinCommand.cpp
0166     commands/KoKeepShapesSelectedCommand.cpp
0167     commands/KoPathMergeUtils.cpp
0168     commands/KoAddRemoveShapeCommands.cpp
0169     commands/KoShapePaintOrderCommand.cpp
0170 
0171     html/HtmlSavingContext.cpp
0172     html/HtmlWriter.cpp
0173 
0174     tools/KoPathToolFactory.cpp
0175     tools/KoPathTool.cpp
0176     tools/KoPathToolSelection.cpp
0177     tools/KoPathToolHandle.cpp
0178     tools/PathToolOptionWidget.cpp
0179     tools/KoPathPointRubberSelectStrategy.cpp
0180     tools/KoPathPointMoveStrategy.cpp
0181     tools/KoPathControlPointMoveStrategy.cpp
0182     tools/KoParameterChangeStrategy.cpp
0183     tools/KoZoomTool.cpp
0184     tools/KoZoomToolFactory.cpp
0185     tools/KoZoomToolWidget.cpp
0186     tools/KoZoomStrategy.cpp
0187     tools/KoInteractionTool.cpp
0188     tools/KoInteractionStrategy.cpp
0189     tools/KoInteractionStrategyFactory.cpp
0190     tools/KoShapeRubberSelectStrategy.cpp
0191     tools/KoPathSegmentChangeStrategy.cpp
0192 
0193     svg/KoShapePainter.cpp
0194     svg/SvgUtil.cpp
0195     svg/SvgGraphicContext.cpp
0196     svg/SvgSavingContext.cpp
0197     svg/SvgWriter.cpp
0198     svg/SvgStyleWriter.cpp
0199     svg/SvgShape.cpp
0200     svg/SvgParser.cpp
0201     svg/SvgStyleParser.cpp
0202     svg/SvgGradientHelper.cpp
0203     svg/SvgFilterHelper.cpp
0204     svg/SvgCssHelper.cpp
0205     svg/SvgClipPathHelper.cpp
0206     svg/SvgLoadingContext.cpp
0207     svg/parsers/SvgTransformParser.cpp
0208     svg/SvgMeshGradient.cpp
0209     svg/SvgMeshPatch.cpp
0210     svg/SvgMeshArray.cpp
0211 
0212     text/KisTofuGlyph.cpp
0213     text/KoSvgText.cpp
0214     text/KoSvgTextProperties.cpp
0215     text/KoSvgTextContentElement.cpp
0216     text/KoSvgTextShape.cpp
0217     text/KoSvgTextShape_p_glyphs.cpp
0218     text/KoSvgTextShape_p_layout.cpp
0219     text/KoSvgTextShape_p_output.cpp
0220     text/KoSvgTextShapeLayoutFunc_inShape.cpp
0221     text/KoSvgTextShapeLayoutFunc_lines.cpp
0222     text/KoSvgTextShapeMarkupConverter.cpp
0223     text/KoFontRegistry.cpp
0224     text/KoCssTextUtils.cpp
0225     text/KoPolygonUtils.cpp
0226 
0227     resources/KoSvgSymbolCollectionResource.cpp
0228     resources/KoGamutMask.cpp
0229 
0230     FlakeDebug.cpp
0231     tests/MockShapes.cpp
0232 
0233 )
0234 
0235 if (KSeExpr_FOUND)
0236     set(kritaflake_SRCS ${kritaflake_SRCS}
0237         resources/KisSeExprScript.cpp
0238     )
0239 endif()
0240 
0241 ki18n_wrap_ui(kritaflake_SRCS
0242     tools/PathToolOptionWidgetBase.ui
0243     tools/KoZoomToolWidget.ui
0244 )
0245 
0246 kis_add_library(kritaflake SHARED ${kritaflake_SRCS})
0247 generate_export_header(kritaflake BASE_NAME kritaflake)
0248 
0249 target_include_directories(kritaflake
0250     PUBLIC
0251     $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/commands>
0252     $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/tools>
0253     $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/svg>
0254     $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/text>
0255 )
0256 
0257 target_link_libraries(kritaflake
0258     PUBLIC
0259         kritapigment
0260         kritawidgetutils
0261         kritacommand
0262         KF5::WidgetsAddons
0263         Qt5::Svg
0264         KF5::CoreAddons
0265         KF5::ConfigCore
0266         KF5::I18n
0267         Qt5::Gui
0268         Qt5::Xml
0269         Boost::boost
0270         Freetype::Freetype
0271         HarfBuzz::HarfBuzz
0272     PRIVATE
0273         Raqm::Raqm
0274         Fontconfig::Fontconfig
0275         libunibreak::libunibreak
0276 )
0277 
0278 set_target_properties(kritaflake PROPERTIES
0279     VERSION ${GENERIC_KRITA_LIB_VERSION} SOVERSION ${GENERIC_KRITA_LIB_SOVERSION}
0280 )
0281 
0282 install(TARGETS kritaflake  ${INSTALL_TARGETS_DEFAULT_ARGS})
0283