diff --git a/ksvg/CMakeLists.txt b/ksvg/CMakeLists.txt new file mode 100644 index 00000000..c9cf25a9 --- /dev/null +++ b/ksvg/CMakeLists.txt @@ -0,0 +1,43 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +include( ConfigureChecks.cmake ) + +add_subdirectory( dom ) +add_subdirectory( impl ) +add_subdirectory( core ) +add_subdirectory( ecma ) +add_subdirectory( plugin ) +add_subdirectory( test ) + +include_directories( + ${TQT_INCLUDE_DIRS} +) + +link_directories( + ${TQT_LIBRARY_DIRS} +) + + +##### ksvg (shared) ############################# + +configure_file( ${CMAKE_SOURCE_DIR}/cmake/modules/template_dummy_cpp.cmake dummy.cpp COPYONLY ) + +tde_add_library( ksvg SHARED + SOURCES dummy.cpp + VERSION 0.0.1 + EMBED + ksvgdom-static ksvgdomimpl-static ksvgcore-static ksvgecma-static + ksvgxrgbrender-static text2path-static ksvgart-static + LINK + khtml-shared ${LCMS_LIBRARY} ${ART_LIBRARIES} ${FRIBIDI_LIBRARIES} + DESTINATION ${LIB_INSTALL_DIR} +) diff --git a/ksvg/ConfigureChecks.cmake b/ksvg/ConfigureChecks.cmake new file mode 100644 index 00000000..00ff78c3 --- /dev/null +++ b/ksvg/ConfigureChecks.cmake @@ -0,0 +1,49 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +# lcms +check_include_file( lcms.h HAVE_LCMS_H ) +if( HAVE_LCMS_H ) + set( LCMS_HEADER "lcms.h" CACHE INTERNAL "" FORCE ) +endif( ) +if( LCMS_HEADER ) + check_library_exists( lcms VEC3init "" HAVE_LCMS ) +endif( ) +if( HAVE_LCMS ) + set( LCMS_LIBRARY lcms ) +else( ) + tde_message_fatal( "lcms is required, but was not found on your system" ) +endif( ) + + +# libart-2.0 +pkg_search_module( ART libart-2.0 ) +if( NOT ART_FOUND ) + tde_message_fatal( "libart-2.0 is required, but was not found on your system" ) +endif( ) + + +# freetype2 +pkg_search_module( FREETYPE freetype2 ) +if( NOT FREETYPE_FOUND ) + tde_message_fatal( "freetype2 is required, but was not found on your system" ) +endif( ) +if( NOT ${FREETYPE_VERSION} VERSION_LESS "2.2" ) + set( HAVE_FREETYPE_2_2_x 1 CACHE INTERNAL "" FORCE ) +endif( ) + + + +# fribidi +pkg_search_module( FRIBIDI fribidi ) +if( NOT FRIBIDI_FOUND ) + tde_message_fatal( "fribidi is required, but was not found on your system" ) +endif( ) diff --git a/ksvg/core/CMakeLists.txt b/ksvg/core/CMakeLists.txt new file mode 100644 index 00000000..0cc444e6 --- /dev/null +++ b/ksvg/core/CMakeLists.txt @@ -0,0 +1,42 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +# FIXME KDE_CXXFLAGS = $(USE_EXCEPTIONS) + +include_directories( + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../dom + ${CMAKE_CURRENT_SOURCE_DIR}/../ecma + ${CMAKE_CURRENT_SOURCE_DIR}/../impl + ${CMAKE_CURRENT_SOURCE_DIR}/../impl/libs/libtext2path/src + ${CMAKE_CURRENT_SOURCE_DIR}/../impl/libs/art_support + ${TDE_INCLUDE_DIR} + ${TQT_INCLUDE_DIRS} + ${FREETYPE_INCLUDE_DIRS} +) + + +##### headers ################################### + +install( FILES + KSVGCanvas.h CanvasItems.h CanvasItem.h + CanvasFactory.h DocumentFactory.h + DESTINATION ${INCLUDE_INSTALL_DIR}/ksvg ) + + +##### ksvgcore (static) ######################### + +tde_add_library( ksvgcore STATIC_PIC AUTOMOC + SOURCES + KSVGLoader.cpp KSVGCanvas.cpp KSVGReader.cc KSVGTextChunk.cpp + CanvasFactory.cpp CanvasItems.cpp KSVGHelper.cpp DocumentFactory.cpp +) diff --git a/ksvg/dom/CMakeLists.txt b/ksvg/dom/CMakeLists.txt new file mode 100644 index 00000000..c95e2854 --- /dev/null +++ b/ksvg/dom/CMakeLists.txt @@ -0,0 +1,124 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../core + ${CMAKE_CURRENT_SOURCE_DIR}/../ecma + ${CMAKE_CURRENT_SOURCE_DIR}/../impl + ${CMAKE_CURRENT_SOURCE_DIR}/../impl/libs/libtext2path/src + ${CMAKE_BINARY_DIR} + ${TDE_INCLUDE_DIR} + ${TQT_INCLUDE_DIRS} +) + + +##### headers ################################### + +install( FILES + SVGAElement.h SVGAltGlyphElement.h SVGAltGlyphDefElement.h + SVGGlyphRefElement.h SVGAngle.h SVGAnimateColorElement.h SVGAnimateElement.h + SVGAnimateMotionElement.h SVGAnimateTransformElement.h SVGAnimatedAngle.h + SVGAnimatedBoolean.h SVGAnimatedEnumeration.h SVGAnimatedInteger.h + SVGAnimatedLength.h SVGAnimatedLengthList.h SVGAnimatedNumber.h + SVGAnimatedNumberList.h SVGAnimatedPathData.h SVGAnimatedPoints.h + SVGAnimatedPreserveAspectRatio.h SVGAnimatedRect.h SVGAnimatedString.h + SVGAnimatedTransformList.h SVGAnimationElement.h SVGCSSRule.h + SVGCircleElement.h SVGClipPathElement.h SVGColor.h SVGColorProfileElement.h + SVGColorProfileRule.h SVGComponentTransferFunctionElement.h + SVGCursorElement.h SVGDefinitionSrcElement.h SVGDefsElement.h + SVGDescElement.h SVGDocument.h SVGElement.h SVGElementInstance.h + SVGElementInstanceList.h SVGEllipseElement.h SVGEvent.h SVGException.h + SVGExternalResourcesRequired.h SVGFEBlendElement.h SVGFEColorMatrixElement.h + SVGFEComponentTransferElement.h SVGFECompositeElement.h + SVGFEConvolveMatrixElement.h SVGFEDiffuseLightingElement.h + SVGFEDisplacementMapElement.h SVGFEDistantLightElement.h SVGFEFloodElement.h + SVGFEFuncAElement.h SVGFEFuncBElement.h SVGFEFuncGElement.h + SVGFEFuncRElement.h SVGFEGaussianBlurElement.h SVGFEImageElement.h + SVGFEMergeElement.h SVGFEMergeNodeElement.h SVGFEMorphologyElement.h + SVGFEOffsetElement.h SVGFEPointLightElement.h SVGFESpecularLightingElement.h + SVGFESpotLightElement.h SVGFETileElement.h SVGFETurbulenceElement.h + SVGFilterElement.h SVGFilterPrimitiveStandardAttributes.h SVGFitToViewBox.h + SVGFontElement.h SVGFontFaceElement.h SVGFontFaceFormatElement.h + SVGFontFaceNameElement.h SVGFontFaceSrcElement.h SVGFontFaceUriElement.h + SVGForeignObjectElement.h SVGGElement.h SVGGlyphElement.h SVGGradientElement.h + SVGHKernElement.h SVGICCColor.h SVGImageElement.h SVGLangSpace.h + SVGLength.h SVGLengthList.h SVGLineElement.h SVGLinearGradientElement.h + SVGLocatable.h SVGMPathElement.h SVGMarkerElement.h SVGMaskElement.h + SVGMatrix.h SVGMetadataElement.h SVGMissingGlyphElement.h SVGNumber.h + SVGNumberList.h SVGPaint.h SVGPathElement.h SVGPathSeg.h SVGPathSegArc.h + SVGPathSegClosePath.h SVGPathSegCurvetoCubic.h SVGPathSegCurvetoCubicSmooth.h + SVGPathSegCurvetoQuadratic.h SVGPathSegCurvetoQuadraticSmooth.h + SVGPathSegLineto.h SVGPathSegLinetoHorizontal.h SVGPathSegLinetoVertical.h + SVGPathSegList.h SVGPathSegMoveto.h SVGPatternElement.h + SVGPoint.h SVGPointList.h SVGPolygonElement.h SVGPolylineElement.h + SVGPreserveAspectRatio.h SVGRadialGradientElement.h SVGRect.h SVGRectElement.h + SVGRenderingIntent.h SVGSVGElement.h SVGScriptElement.h SVGSetElement.h + SVGStopElement.h SVGStringList.h SVGStylable.h SVGStyleElement.h + SVGSwitchElement.h SVGSymbolElement.h SVGTRefElement.h SVGTSpanElement.h + SVGTests.h SVGTextContentElement.h SVGTextElement.h SVGTextPathElement.h + SVGTextPositioningElement.h SVGTitleElement.h SVGTransform.h SVGTransformList.h + SVGTransformable.h SVGURIReference.h SVGUnitTypes.h SVGUseElement.h + SVGVKernElement.h SVGViewElement.h SVGViewSpec.h SVGWindow.h SVGZoomAndPan.h + DESTINATION ${INCLUDE_INSTALL_DIR}/dom ) + + +##### ksvgdom (static) ########################## + +tde_add_library( ksvgdom STATIC_PIC + SOURCES + SVGLength.cc SVGAnimatedLength.cc SVGNumber.cc SVGAnimatedNumber.cc + SVGPoint.cc SVGTSpanElement.cc SVGTRefElement.cc SVGAnimatedLengthList.cc + SVGAnimatedNumberList.cc SVGTransformList.cc SVGAElement.cc + SVGAnimatedTransformList.cc SVGRectElement.cc SVGCircleElement.cc + SVGEllipseElement.cc SVGLineElement.cc SVGPolylineElement.cc + SVGPolygonElement.cc SVGTextPositioningElement.cc SVGTextContentElement.cc + SVGTextElement.cc SVGImageElement.cc SVGUseElement.cc SVGMatrix.cc + SVGTransform.cc SVGPointList.cc SVGDocument.cc SVGAnimatedEnumeration.cc + SVGDefsElement.cc SVGLocatable.cc SVGTransformable.cc SVGStylable.cc + SVGGElement.cc SVGAngle.cc SVGAnimatedAngle.cc SVGColor.cc SVGPathElement.cc + SVGPathSegList.cc SVGTests.cc SVGLangSpace.cc SVGStringList.cc SVGPathSeg.cc + SVGPathSegClosePath.cc SVGPathSegMoveto.cc SVGPathSegLinetoHorizontal.cc + SVGPathSegLinetoVertical.cc SVGPathSegLineto.cc SVGPathSegCurvetoCubic.cc + SVGDescElement.cc SVGTitleElement.cc SVGExternalResourcesRequired.cc + SVGAnimatedBoolean.cc SVGNumberList.cc SVGPathSegCurvetoCubicSmooth.cc + SVGPathSegCurvetoQuadratic.cc SVGAnimatedRect.cc SVGAnimatedString.cc + SVGPathSegCurvetoQuadraticSmooth.cc SVGPathSegArc.cc SVGURIReference.cc + SVGAnimatedInteger.cc SVGLengthList.cc SVGSVGElement.cc SVGRect.cc + SVGFitToViewBox.cc SVGAnimatedPreserveAspectRatio.cc SVGPreserveAspectRatio.cc + SVGElement.cc SVGStyleElement.cc SVGClipPathElement.cc SVGMaskElement.cc + SVGColorProfileElement.cc SVGColorProfileRule.cc SVGZoomAndPan.cc + SVGScriptElement.cc SVGSwitchElement.cc SVGSymbolElement.cc + SVGDefinitionSrcElement.cc SVGFontFaceElement.cc SVGFontFaceFormatElement.cc + SVGFontFaceNameElement.cc SVGFontFaceSrcElement.cc SVGHKernElement.cc + SVGMetadataElement.cc SVGVKernElement.cc SVGCursorElement.cc + SVGForeignObjectElement.cc SVGFontFaceUriElement.cc SVGElementInstance.cc + SVGElementInstanceList.cc SVGAnimatedPoints.cc SVGAnimatedPathData.cc + SVGMarkerElement.cc SVGViewSpec.cc SVGViewElement.cc SVGFilterElement.cc + SVGFilterPrimitiveStandardAttributes.cc SVGFEBlendElement.cc + SVGFEColorMatrixElement.cc SVGFEComponentTransferElement.cc + SVGComponentTransferFunctionElement.cc SVGFEFuncAElement.cc + SVGFEFuncBElement.cc SVGFEFuncGElement.cc SVGFEFuncRElement.cc + SVGFECompositeElement.cc SVGFEConvolveMatrixElement.cc SVGFEFloodElement.cc + SVGFEGaussianBlurElement.cc SVGFEDiffuseLightingElement.cc + SVGFEDistantLightElement.cc SVGFEPointLightElement.cc + SVGFESpotLightElement.cc SVGFEDisplacementMapElement.cc SVGFEMergeElement.cc + SVGFEMergeNodeElement.cc SVGFEImageElement.cc SVGFEMorphologyElement.cc + SVGFEOffsetElement.cc SVGFESpecularLightingElement.cc SVGFETileElement.cc + SVGFETurbulenceElement.cc SVGAnimationElement.cc SVGAnimateElement.cc + SVGSetElement.cc SVGAnimateMotionElement.cc SVGAnimateColorElement.cc + SVGAnimateTransformElement.cc SVGEvent.cc SVGZoomEvent.cc SVGICCColor.cc + SVGCSSRule.cc SVGGradientElement.cc SVGRadialGradientElement.cc + SVGLinearGradientElement.cc SVGStopElement.cc SVGPatternElement.cc + SVGMPathElement.cc SVGFontElement.cc SVGAltGlyphElement.cc + SVGGlyphRefElement.cc SVGAltGlyphDefElement.cc SVGGlyphElement.cc + SVGMissingGlyphElement.cc SVGPaint.cc SVGTextPathElement.cc SVGWindow.cc +) diff --git a/ksvg/ecma/CMakeLists.txt b/ksvg/ecma/CMakeLists.txt new file mode 100644 index 00000000..d70a02c6 --- /dev/null +++ b/ksvg/ecma/CMakeLists.txt @@ -0,0 +1,34 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +# FIXME KDE_CXXFLAGS = $(USE_EXCEPTIONS) + +include_directories( + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../core + ${CMAKE_CURRENT_SOURCE_DIR}/../dom + ${CMAKE_CURRENT_SOURCE_DIR}/../data + ${CMAKE_CURRENT_SOURCE_DIR}/../impl + ${CMAKE_CURRENT_SOURCE_DIR}/../impl/libs/libtext2path/src + ${TDE_INCLUDE_DIR} + ${TQT_INCLUDE_DIRS} + ${FREETYPE_INCLUDE_DIRS} +) + + +##### ksvgecma (static) ######################### + +tde_add_library( ksvgecma STATIC_PIC AUTOMOC + SOURCES + ksvg_scriptinterpreter.cpp ksvg_ecma.cpp ksvg_helper.cpp + ksvg_ecmaeventlistener.cpp ksvg_window.cpp +) diff --git a/ksvg/impl/CMakeLists.txt b/ksvg/impl/CMakeLists.txt new file mode 100644 index 00000000..8b44c254 --- /dev/null +++ b/ksvg/impl/CMakeLists.txt @@ -0,0 +1,92 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +add_subdirectory( libs ) + +include_directories( + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../core + ${CMAKE_CURRENT_SOURCE_DIR}/../dom + ${CMAKE_CURRENT_SOURCE_DIR}/../ecma + ${CMAKE_CURRENT_SOURCE_DIR}/../data + ${CMAKE_CURRENT_SOURCE_DIR}/../impl + ${CMAKE_CURRENT_SOURCE_DIR}/../impl/libs/libtext2path/src + ${CMAKE_BINARY_DIR} + ${TDE_INCLUDE_DIR} + ${TQT_INCLUDE_DIRS} + ${FREETYPE_INCLUDE_DIRS} +) + + +##### ksvgdomimpl (static) ###################### + +tde_add_library( ksvgdomimpl STATIC_PIC AUTOMOC + SOURCES + SVGLengthImpl.cc SVGNumberImpl.cc SVGPointImpl.cc SVGTransformImpl.cc + SVGMatrixImpl.cc SVGRectImpl.cc SVGAngleImpl.cc SVGAnimatedLengthImpl.cc + SVGAnimatedNumberImpl.cc SVGAnimatedIntegerImpl.cc SVGAnimatedBooleanImpl.cc + SVGAnimatedEnumerationImpl.cc SVGAnimatedPreserveAspectRatioImpl.cc + SVGAnimatedRectImpl.cc SVGAnimatedAngleImpl.cc SVGAnimatedPathDataImpl.cc + SVGAnimatedStringImpl.cc SVGLengthListImpl.cc SVGNumberListImpl.cc + SVGPointListImpl.cc SVGTransformListImpl.cc SVGStringListImpl.cc + SVGPathSegListImpl.cc SVGElementInstanceListImpl.cc + SVGAnimatedLengthListImpl.cc SVGAnimatedNumberListImpl.cc + SVGAnimatedPointsImpl.cc SVGAnimatedTransformListImpl.cc + SVGShapeImpl.cc SVGContainerImpl.cc SVGBBoxTarget.cc SVGHelperImpl.cc + SVGStylableImpl.cc SVGTransformableImpl.cc SVGTestsImpl.cc SVGLangSpaceImpl.cc + SVGExternalResourcesRequiredImpl.cc SVGLocatableImpl.cc SVGFitToViewBoxImpl.cc + SVGPreserveAspectRatioImpl.cc SVGZoomAndPanImpl.cc SVGViewSpecImpl.cc + SVGElementImpl.cc SVGElementInstanceImpl.cc SVGDocumentImpl.cc + SVGSVGElementImpl.cc SVGWindowImpl.cc SVGDefsElementImpl.cc + SVGUseElementImpl.cc SVGDescElementImpl.cc SVGTitleElementImpl.cc + SVGGElementImpl.cc SVGSwitchElementImpl.cc SVGSymbolElementImpl.cc + SVGImageElementImpl.cc SVGURIReferenceImpl.cc SVGStyleElementImpl.cc + SVGCSSRuleImpl.cc SVGPathElementImpl.cc SVGPathSegImpl.cc + SVGPathSegClosePathImpl.cc SVGPathSegArcImpl.cc SVGPathSegMovetoImpl.cc + SVGPathSegCurvetoQuadraticImpl.cc SVGPathSegCurvetoQuadraticSmoothImpl.cc + SVGPathSegCurvetoCubicImpl.cc SVGPathSegCurvetoCubicSmoothImpl.cc + SVGPathSegLinetoImpl.cc SVGPathSegLinetoHorizontalImpl.cc + SVGPathSegLinetoVerticalImpl.cc SVGRectElementImpl.cc SVGCircleElementImpl.cc + SVGEllipseElementImpl.cc SVGLineElementImpl.cc SVGPolyElementImpl.cc + SVGPolylineElementImpl.cc SVGPolygonElementImpl.cc SVGTextElementImpl.cc + SVGTSpanElementImpl.cc SVGTRefElementImpl.cc SVGTextPositioningElementImpl.cc + SVGTextContentElementImpl.cc SVGTextPathElementImpl.cc SVGPaintImpl.cc + SVGMarkerElementImpl.cc SVGColorImpl.cc SVGICCColorImpl.cc + SVGColorProfileElementImpl.cc SVGColorProfileRuleImpl.cc SVGPaintServerImpl.cc + SVGGradientElementImpl.cc SVGStopElementImpl.cc SVGLinearGradientElementImpl.cc + SVGRadialGradientElementImpl.cc SVGPatternElementImpl.cc + SVGClipPathElementImpl.cc SVGMaskElementImpl.cc SVGFilterElementImpl.cc + SVGFilterPrimitiveStandardAttributesImpl.cc SVGFEBlendElementImpl.cc + SVGFEColorMatrixElementImpl.cc SVGFEComponentTransferElementImpl.cc + SVGComponentTransferFunctionElementImpl.cc SVGFEFuncAElementImpl.cc + SVGFEFuncBElementImpl.cc SVGFEFuncGElementImpl.cc SVGFEFuncRElementImpl.cc + SVGFECompositeElementImpl.cc SVGFEConvolveMatrixElementImpl.cc + SVGFEFloodElementImpl.cc SVGFEGaussianBlurElementImpl.cc + SVGFEDiffuseLightingElementImpl.cc SVGFEDistantLightElementImpl.cc + SVGFEPointLightElementImpl.cc SVGFESpotLightElementImpl.cc + SVGFEDisplacementMapElementImpl.cc SVGFEMergeElementImpl.cc + SVGFEMergeNodeElementImpl.cc SVGFEImageElementImpl.cc + SVGFEMorphologyElementImpl.cc SVGFEOffsetElementImpl.cc + SVGFESpecularLightingElementImpl.cc SVGFETileElementImpl.cc + SVGFETurbulenceElementImpl.cc SVGCursorElementImpl.cc + SVGAElementImpl.cc SVGViewElementImpl.cc SVGScriptElementImpl.cc + SVGEventImpl.cc SVGZoomEventImpl.cc SVGEcma.cc generateddata.cpp + SVGAnimationElementImpl.cc SVGAnimateElementImpl.cc SVGSetElementImpl.cc + SVGAnimateMotionElementImpl.cc SVGAnimateColorElementImpl.cc + SVGAnimateTransformElementImpl.cc SVGMPathElementImpl.cc SVGTimeScheduler.cc + SVGFontElementImpl.cc SVGAltGlyphElementImpl.cc SVGAltGlyphDefElementImpl.cc + SVGGlyphRefElementImpl.cc SVGGlyphElementImpl.cc SVGMissingGlyphElementImpl.cc + SVGFontFaceElementImpl.cc SVGFontFaceFormatElementImpl.cc + SVGFontFaceNameElementImpl.cc SVGFontFaceSrcElementImpl.cc + SVGFontFaceUriElementImpl.cc SVGDefinitionSrcElementImpl.cc + SVGHKernElementImpl.cc SVGVKernElementImpl.cc SVGMetadataElementImpl.cc + SVGForeignObjectElementImpl.cc svgpathparser.cc +) diff --git a/ksvg/impl/libs/CMakeLists.txt b/ksvg/impl/libs/CMakeLists.txt new file mode 100644 index 00000000..b83b44fe --- /dev/null +++ b/ksvg/impl/libs/CMakeLists.txt @@ -0,0 +1,14 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +add_subdirectory( xrgbrender ) +add_subdirectory( art_support ) +add_subdirectory( libtext2path ) diff --git a/ksvg/impl/libs/art_support/CMakeLists.txt b/ksvg/impl/libs/art_support/CMakeLists.txt new file mode 100644 index 00000000..7aef1d07 --- /dev/null +++ b/ksvg/impl/libs/art_support/CMakeLists.txt @@ -0,0 +1,23 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +include_directories( + ${CMAKE_BINARY_DIR} + ${ART_INCLUDE_DIRS} +) + + +##### ksvgart (static) ########################## + +tde_add_library( ksvgart STATIC_PIC + SOURCES + art_render_misc.c art_rgba_svp.c art_misc.c +) diff --git a/ksvg/impl/libs/libtext2path/CMakeLists.txt b/ksvg/impl/libs/libtext2path/CMakeLists.txt new file mode 100644 index 00000000..7356f221 --- /dev/null +++ b/ksvg/impl/libs/libtext2path/CMakeLists.txt @@ -0,0 +1,12 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +add_subdirectory( src ) diff --git a/ksvg/impl/libs/libtext2path/src/CMakeLists.txt b/ksvg/impl/libs/libtext2path/src/CMakeLists.txt new file mode 100644 index 00000000..7e1cee2c --- /dev/null +++ b/ksvg/impl/libs/libtext2path/src/CMakeLists.txt @@ -0,0 +1,37 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +# FIXME KDE_CXXFLAGS = $(USE_EXCEPTIONS) + +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR} + ${TQT_INCLUDE_DIRS} + ${FREETYPE_INCLUDE_DIRS} + ${FRIBIDI_INCLUDE_DIRS} +) + + +##### headers ################################### + +install( FILES + BezierPath.h Glyph.h GlyphTracer.h + DESTINATION ${INCLUDE_INSTALL_DIR}/libtext2path-0.1 ) + + + +##### text2path (static) ######################## + +tde_add_library( text2path STATIC_PIC + SOURCES + Affine.cpp Rectangle.cpp Font.cpp Glyph.cpp + GlyphTracer.cpp Converter.cpp QtUnicode.cpp +) diff --git a/ksvg/impl/libs/xrgbrender/CMakeLists.txt b/ksvg/impl/libs/xrgbrender/CMakeLists.txt new file mode 100644 index 00000000..36774cbb --- /dev/null +++ b/ksvg/impl/libs/xrgbrender/CMakeLists.txt @@ -0,0 +1,22 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +include_directories( + ${CMAKE_BINARY_DIR} +) + + +##### ksvgxrgbrender (static) ################### + +tde_add_library( ksvgxrgbrender STATIC_PIC + SOURCES + gdk-pixbuf-xlib.c gdk-pixbuf-xlib-drawable.c gdk-pixbuf-xlibrgb.c +) diff --git a/ksvg/plugin/CMakeLists.txt b/ksvg/plugin/CMakeLists.txt new file mode 100644 index 00000000..08078eb5 --- /dev/null +++ b/ksvg/plugin/CMakeLists.txt @@ -0,0 +1,67 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +# FIXME KDE_CXXFLAGS = $(USE_EXCEPTIONS) + +add_subdirectory( backends ) + +include_directories( + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../core + ${CMAKE_CURRENT_SOURCE_DIR}/../dom + ${CMAKE_CURRENT_SOURCE_DIR}/../ecma + ${CMAKE_CURRENT_SOURCE_DIR}/../impl + ${CMAKE_CURRENT_SOURCE_DIR}/../impl/libs/libtext2path/src + ${TDE_INCLUDE_DIR} + ${TQT_INCLUDE_DIRS} + ${FREETYPE_INCLUDE_DIRS} +) + +link_directories( + ${TQT_LIBRARY_DIRS} +) + + +##### headers ################################### + +install( FILES + ksvg_plugin.h + DESTINATION ${INCLUDE_INSTALL_DIR}/ksvg ) + + +##### other data ################################ + +install( FILES + ksvgplugin.desktop svgthumbnail.desktop + DESTINATION ${SERVICES_INSTALL_DIR} ) + +install( FILES + ksvgplugin.rc + DESTINATION ${DATA_INSTALL_DIR}/ksvg ) + + +##### libksvgplugin (module) #################### + +tde_add_kpart( libksvgplugin AUTOMOC + SOURCES + ksvg_plugin.cpp ksvg_factory.cpp ksvg_widget.cpp + LINK ksvg-shared + DESTINATION ${PLUGIN_INSTALL_DIR} +) + + +##### svgthumbnail (module) ##################### + +tde_add_kpart( svgthumbnail AUTOMOC + SOURCES svgcreator.cpp + LINK ksvg-shared + DESTINATION ${PLUGIN_INSTALL_DIR} +) diff --git a/ksvg/plugin/backends/CMakeLists.txt b/ksvg/plugin/backends/CMakeLists.txt new file mode 100644 index 00000000..f7827d52 --- /dev/null +++ b/ksvg/plugin/backends/CMakeLists.txt @@ -0,0 +1,12 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +add_subdirectory( libart ) diff --git a/ksvg/plugin/backends/libart/CMakeLists.txt b/ksvg/plugin/backends/libart/CMakeLists.txt new file mode 100644 index 00000000..68f2871e --- /dev/null +++ b/ksvg/plugin/backends/libart/CMakeLists.txt @@ -0,0 +1,49 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +# FIXME KDE_CXXFLAGS = $(USE_EXCEPTIONS) + +include_directories( + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../../../core + ${CMAKE_CURRENT_SOURCE_DIR}/../../../dom + ${CMAKE_CURRENT_SOURCE_DIR}/../../../ecma + ${CMAKE_CURRENT_SOURCE_DIR}/../../../impl + ${CMAKE_CURRENT_SOURCE_DIR}/../../../impl/libs/libtext2path/src + ${CMAKE_CURRENT_SOURCE_DIR}/../../../impl/libs/art_support + ${CMAKE_BINARY_DIR} + ${TDE_INCLUDE_DIR} + ${TQT_INCLUDE_DIRS} + ${ART_INCLUDE_DIRS} + ${FREETYPE_INCLUDE_DIRS} +) + +link_directories( + ${TQT_LIBRARY_DIRS} +) + + +##### other data ################################ + +install( FILES + ksvglibartcanvas.desktop + DESTINATION ${SERVICES_INSTALL_DIR} ) + + +##### libksvgrendererlibart (module) ############ + +tde_add_kpart( libksvgrendererlibart + SOURCES + BezierPathLibart.cpp GlyphTracerLibart.cpp LibartCanvas.cpp + LibartCanvasItems.cpp LibartCanvasFactory.cpp + LINK ksvg-shared + DESTINATION ${PLUGIN_INSTALL_DIR} +) diff --git a/ksvg/test/CMakeLists.txt b/ksvg/test/CMakeLists.txt new file mode 100644 index 00000000..a92d0204 --- /dev/null +++ b/ksvg/test/CMakeLists.txt @@ -0,0 +1,12 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +add_subdirectory( external ) diff --git a/ksvg/test/external/CMakeLists.txt b/ksvg/test/external/CMakeLists.txt new file mode 100644 index 00000000..69eafac7 --- /dev/null +++ b/ksvg/test/external/CMakeLists.txt @@ -0,0 +1,46 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +# FIXME KDE_CXXFLAGS = $(USE_EXCEPTIONS) + +include_directories( + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../../core + ${CMAKE_CURRENT_SOURCE_DIR}/../../dom + ${CMAKE_CURRENT_SOURCE_DIR}/../../ecma + ${CMAKE_CURRENT_SOURCE_DIR}/../../impl + ${CMAKE_CURRENT_SOURCE_DIR}/../../impl/libs/libtext2path/src + ${TDE_INCLUDE_DIR} + ${TQT_INCLUDE_DIRS} + ${FREETYPE_INCLUDE_DIRS} +) + +link_directories( + ${TQT_LIBRARY_DIRS} +) + + +##### svgdisplay (executable) ################### + +tde_add_executable( svgdisplay AUTOMOC + SOURCES SVGTestWidget.cc svgdisplay.cc + LINK ksvg-shared + DESTINATION ${BIN_INSTALL_DIR} +) + + +##### printnodetest (executable) ################ + +tde_add_executable( printnodetest AUTOMOC + SOURCES printnodetest.cpp + LINK ksvg-shared + DESTINATION ${BIN_INSTALL_DIR} +)