Warning, /graphics/krita/libs/pigment/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 project(kritapigment) 0002 0003 # we have to repeat platform specifics from top-level 0004 if (WIN32) 0005 include_directories(${CMAKE_SOURCE_DIR}/winquirks) 0006 add_definitions(-D_USE_MATH_DEFINES) 0007 add_definitions(-DNOMINMAX) 0008 set(WIN32_PLATFORM_NET_LIBS ws2_32.lib netapi32.lib) 0009 endif () 0010 0011 include_directories( 0012 ${CMAKE_CURRENT_SOURCE_DIR}/resources 0013 ${CMAKE_CURRENT_SOURCE_DIR}/compositeops) 0014 0015 set(LINK_OPENEXR_LIB) 0016 if(OpenEXR_FOUND) 0017 set(LINK_OPENEXR_LIB ${OPENEXR_LIBRARIES}) 0018 endif() 0019 0020 set(LINK_VC_LIB) 0021 0022 if(HAVE_XSIMD) 0023 ko_compile_for_all_implementations_no_scalar(__per_arch_factory_objs compositeops/KoOptimizedCompositeOpFactoryPerArch.cpp) 0024 ko_compile_for_all_implementations(__per_arch_alpha_applicator_factory_objs KoAlphaMaskApplicatorFactoryImpl.cpp) 0025 ko_compile_for_all_implementations(__per_arch_rgb_scaler_factory_objs KoOptimizedPixelDataScalerU8ToU16FactoryImpl.cpp) 0026 0027 message("Following objects are generated from the per-arch lib") 0028 foreach(_obj IN LISTS __per_arch_factory_objs __per_arch_alpha_applicator_factory_objs __per_arch_rgb_scaler_factory_objs) 0029 message(" * ${_obj}") 0030 endforeach() 0031 else() 0032 set(__per_arch_alpha_applicator_factory_objs KoAlphaMaskApplicatorFactoryImpl.cpp) 0033 set(__per_arch_rgb_scaler_factory_objs KoOptimizedPixelDataScalerU8ToU16FactoryImpl.cpp) 0034 endif() 0035 0036 add_subdirectory(tests) 0037 add_subdirectory(benchmarks) 0038 0039 set(kritapigment_SRCS 0040 DebugPigment.cpp 0041 KoBasicHistogramProducers.cpp 0042 KoAlphaMaskApplicatorBase.cpp 0043 KoOptimizedPixelDataScalerU8ToU16Base.cpp 0044 KoOptimizedPixelDataScalerU8ToU16Factory.cpp 0045 KoColor.cpp 0046 KoColorDisplayRendererInterface.cpp 0047 KoColorConversionAlphaTransformation.cpp 0048 KoColorConversionCache.cpp 0049 KoColorConversions.cpp 0050 KoColorConversionSystem.cpp 0051 KoColorConversionTransformation.cpp 0052 KoColorProofingConversionTransformation.cpp 0053 KoColorConversionTransformationFactory.cpp 0054 KoColorModelStandardIds.cpp 0055 KoColorProfile.cpp 0056 KoColorSpace.cpp 0057 KoColorSpaceEngine.cpp 0058 KoColorSpaceFactory.cpp 0059 KoColorSpaceMaths.cpp 0060 KoCmykColorSpaceMaths.cpp 0061 KoLabColorSpaceMaths.cpp 0062 KoColorSpaceRegistry.cpp 0063 KoColorProfileStorage.cpp 0064 KoColorTransformation.cpp 0065 KoColorTransformationFactory.cpp 0066 KoColorTransformationFactoryRegistry.cpp 0067 KoCompositeColorTransformation.cpp 0068 KoCompositeOp.cpp 0069 KoCompositeOpRegistry.cpp 0070 KoCopyColorConversionTransformation.cpp 0071 KoFallBackColorTransformation.cpp 0072 KoHistogramProducer.cpp 0073 KoMultipleColorConversionTransformation.cpp 0074 KoUniqueNumberForIdServer.cpp 0075 colorspaces/KoAlphaColorSpace.cpp 0076 colorspaces/KoLabColorSpace.cpp 0077 colorspaces/KoRgbU16ColorSpace.cpp 0078 colorspaces/KoRgbU8ColorSpace.cpp 0079 colorspaces/KoSimpleColorSpaceEngine.cpp 0080 compositeops/KoOptimizedCompositeOpFactory.cpp 0081 compositeops/KoOptimizedCompositeOpFactoryPerArch_Scalar.cpp 0082 compositeops/KoAlphaDarkenParamsWrapper.cpp 0083 ${__per_arch_factory_objs} 0084 ${__per_arch_alpha_applicator_factory_objs} 0085 ${__per_arch_rgb_scaler_factory_objs} 0086 KoAlphaMaskApplicatorFactory.cpp 0087 colorprofiles/KoDummyColorProfile.cpp 0088 resources/KoAbstractGradient.cpp 0089 resources/KoColorSet.cpp 0090 resources/KisSwatch.cpp 0091 resources/KisSwatchGroup.cpp 0092 resources/KoPattern.cpp 0093 resources/KoStopGradient.cpp 0094 resources/KoSegmentGradient.cpp 0095 resources/KoCachedGradient.h 0096 resources/KisGradientConversion.cpp 0097 ) 0098 0099 set (EXTRA_LIBRARIES ${LINK_OPENEXR_LIB} kritamultiarch) 0100 0101 if(MSVC OR (WIN32 AND "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel")) 0102 # avoid "cannot open file 'LIBC.lib'" error 0103 set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /NODEFAULTLIB:LIBC.LIB") 0104 endif() 0105 0106 kis_add_library(kritapigment SHARED ${kritapigment_SRCS}) 0107 0108 set_source_files_properties( 0109 ${__per_arch_factory_objs} 0110 ${__per_arch_alpha_applicator_factory_objs} 0111 ${__per_arch_rgb_scaler_factory_objs} 0112 PROPERTIES SKIP_PRECOMPILE_HEADERS TRUE) 0113 0114 generate_export_header(kritapigment) 0115 0116 target_include_directories( kritapigment 0117 PUBLIC 0118 $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/resources> 0119 $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/compositeops> 0120 ) 0121 0122 target_link_libraries( kritapigment 0123 PUBLIC 0124 kritaplugin 0125 kritastore 0126 kritaglobal 0127 kritaresources 0128 ${EXTRA_LIBRARIES} 0129 KF5::I18n 0130 KF5::ConfigCore 0131 Qt5::Core 0132 Qt5::Gui 0133 Qt5::Xml 0134 ${WIN32_PLATFORM_NET_LIBS} 0135 ) 0136 0137 set_target_properties(kritapigment PROPERTIES 0138 VERSION ${GENERIC_KRITA_LIB_VERSION} SOVERSION ${GENERIC_KRITA_LIB_SOVERSION} 0139 ) 0140 0141 install(TARGETS kritapigment ${INSTALL_TARGETS_DEFAULT_ARGS})