aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar fmalita <fmalita@chromium.org>2016-07-15 10:33:29 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2016-07-15 10:33:29 -0700
commit718df0ae3c9ea824eef3b80984550beb5ef2e1f2 (patch)
tree53c9d104812df7ba73cc4cde83781d6433b3c563
parentcd4051e1c4770edc03b27663c6c96ec8987122bd (diff)
Make XML compilation conditional.
Only enabled for gyp-based builds at this time. R=dogben@google.com,mtklein@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2150353002 Review-Url: https://codereview.chromium.org/2150353002
-rw-r--r--dm/DMSrcSink.cpp9
-rw-r--r--gyp/xml.gyp3
-rw-r--r--tests/SkDOMTest.cpp7
3 files changed, 17 insertions, 2 deletions
diff --git a/dm/DMSrcSink.cpp b/dm/DMSrcSink.cpp
index 258e94e7e6..78fa140b31 100644
--- a/dm/DMSrcSink.cpp
+++ b/dm/DMSrcSink.cpp
@@ -34,7 +34,6 @@
#include "SkSVGCanvas.h"
#include "SkStream.h"
#include "SkTLogic.h"
-#include "SkXMLWriter.h"
#include "SkSwizzler.h"
#include <functional>
@@ -46,6 +45,10 @@
#include "qcms.h"
#endif
+#if defined(SK_XML)
+ #include "SkXMLWriter.h"
+#endif
+
DEFINE_bool(multiPage, false, "For document-type backends, render the source"
" into multiple pages");
DEFINE_bool(RAW_threading, true, "Allow RAW decodes to run on multiple threads?");
@@ -1205,11 +1208,15 @@ Error SKPSink::draw(const Src& src, SkBitmap*, SkWStream* dst, SkString*) const
SVGSink::SVGSink() {}
Error SVGSink::draw(const Src& src, SkBitmap*, SkWStream* dst, SkString*) const {
+#if defined(SK_XML)
SkAutoTDelete<SkXMLWriter> xmlWriter(new SkXMLStreamWriter(dst));
SkAutoTUnref<SkCanvas> canvas(SkSVGCanvas::Create(
SkRect::MakeWH(SkIntToScalar(src.size().width()), SkIntToScalar(src.size().height())),
xmlWriter));
return src.draw(canvas);
+#else
+ return Error("SVG sink is disabled.");
+#endif // SK_XML
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
diff --git a/gyp/xml.gyp b/gyp/xml.gyp
index f7cb429dc0..6529d0c471 100644
--- a/gyp/xml.gyp
+++ b/gyp/xml.gyp
@@ -35,6 +35,9 @@
'include_dirs': [
'../include/xml',
],
+ 'defines' : [
+ 'SK_XML',
+ ],
},
},
],
diff --git a/tests/SkDOMTest.cpp b/tests/SkDOMTest.cpp
index aca2c4870b..34bd8dd8b3 100644
--- a/tests/SkDOMTest.cpp
+++ b/tests/SkDOMTest.cpp
@@ -5,9 +5,12 @@
* found in the LICENSE file.
*/
-#include "SkDOM.h"
#include "Test.h"
+#if defined(SK_XML)
+
+#include "SkDOM.h"
+
DEF_TEST(SkDOM_test, r) {
static const char gDoc[] =
"<root a='1' b='2'>"
@@ -37,3 +40,5 @@ DEF_TEST(SkDOM_test, r) {
REPORTER_ASSERT(r, dom.getFirstChild(root, "elem1"));
REPORTER_ASSERT(r, !dom.getFirstChild(root, "subelem1"));
}
+
+#endif // SK_XML