summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--content/content.c6
-rw-r--r--content/content.h4
-rw-r--r--content/content_type.h2
-rw-r--r--image/svg.c5
-rw-r--r--utils/config.h1
5 files changed, 17 insertions, 1 deletions
diff --git a/content/content.c b/content/content.c
index 2e5bd5086..1a675c3c4 100644
--- a/content/content.c
+++ b/content/content.c
@@ -43,7 +43,9 @@
#include "image/bmp.h"
#include "image/ico.h"
#endif
+#ifdef WITH_NS_SVG
#include "image/svg.h"
+#endif
#ifdef WITH_SPRITE
#include "riscos/sprite.h"
#endif
@@ -134,8 +136,10 @@ static const struct mime_entry mime_map[] = {
#ifdef WITH_MNG
{"image/png", CONTENT_PNG},
#endif
+#ifdef WITH_NS_SVG
{"image/svg", CONTENT_SVG},
{"image/svg+xml", CONTENT_SVG},
+#endif
#ifdef WITH_BMP
{"image/x-bitmap", CONTENT_BMP},
{"image/x-bmp", CONTENT_BMP},
@@ -302,8 +306,10 @@ static const struct handler_entry handler_map[] = {
{0, 0, artworks_convert,
0, artworks_destroy, 0, artworks_redraw, 0, 0, 0, false},
#endif
+#ifdef WITH_NS_SVG
{svg_create, 0, svg_convert,
0, svg_destroy, 0, svg_redraw, 0, 0, 0, false},
+#endif
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, false}
};
#define HANDLER_MAP_COUNT (sizeof(handler_map) / sizeof(handler_map[0]))
diff --git a/content/content.h b/content/content.h
index 7d543d49a..8cec5a3e7 100644
--- a/content/content.h
+++ b/content/content.h
@@ -46,7 +46,9 @@
#ifdef WITH_ARTWORKS
#include "riscos/artworks.h"
#endif
+#ifdef WITH_NS_SVG
#include "image/svg.h"
+#endif
struct bitmap;
@@ -166,7 +168,9 @@ struct content {
#ifdef WITH_ARTWORKS
struct content_artworks_data artworks;
#endif
+#ifdef WITH_NS_SVG
struct content_svg_data svg;
+#endif
} data;
/**< URL for refresh request, in standard form as from url_join. */
diff --git a/content/content_type.h b/content/content_type.h
index 949712c45..844a5723b 100644
--- a/content/content_type.h
+++ b/content/content_type.h
@@ -53,7 +53,9 @@ typedef enum {
#ifdef WITH_ARTWORKS
CONTENT_ARTWORKS,
#endif
+#ifdef WITH_NS_SVG
CONTENT_SVG,
+#endif
/* these must be the last two */
CONTENT_OTHER,
CONTENT_UNKNOWN /**< content-type not received yet */
diff --git a/image/svg.c b/image/svg.c
index ae465ccbb..91a4ce40f 100644
--- a/image/svg.c
+++ b/image/svg.c
@@ -14,9 +14,10 @@
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
+#include "utils/config.h"
+#ifdef WITH_NS_SVG
#include <libxml/parser.h>
#include <libxml/debugXML.h>
-#include "utils/config.h"
#include "content/content.h"
#include "css/css.h"
#include "desktop/plotters.h"
@@ -676,3 +677,5 @@ void svg_destroy(struct content *c)
if (c->data.svg.doc)
xmlFreeDoc(c->data.svg.doc);
}
+
+#endif /* WITH_NS_SVG */
diff --git a/utils/config.h b/utils/config.h
index afb7fa298..2ca645aa2 100644
--- a/utils/config.h
+++ b/utils/config.h
@@ -39,6 +39,7 @@ char *strndup(const char *s, size_t n);
#define WITH_JPEG
#define WITH_MNG
#define WITH_GIF
+#define WITH_NS_SVG /* internal SVG renderer */
#if defined(riscos) || defined(ncos)
#define WITH_DRAW
#define WITH_SPRITE