--- a/src/rrd_cgi.c
+++ b/src/rrd_cgi.c
@@ -56,6 +56,7 @@
     const char **);
 
 /* call rrd_graph and insert appropriate image tag */
+#ifdef HAVE_RRD_GRAPH
 char     *drawgraph(
     long,
     const char **);
@@ -64,6 +65,7 @@
 char     *drawprint(
     long,
     const char **);
+#endif /* HAVE_RRD_GRAPH */
 
 /* pretty-print the <last></last> value for some.rrd via strftime() */
 char     *printtimelast(
@@ -542,9 +544,13 @@
         }
         parse(&buffer, i, "<RRD::GETVAR", rrdgetvar);
         parse(&buffer, i, "<RRD::GOODFOR", rrdgoodfor);
+#ifdef HAVE_RRD_GRAPH
         parse(&buffer, i, "<RRD::GRAPH", drawgraph);
+#endif /* HAVE_RRD_GRAPH */
         parse(&buffer, i, "<RRD::INCLUDE", includefile);
+#ifdef HAVE_RRD_GRAPH
         parse(&buffer, i, "<RRD::PRINT", drawprint);
+#endif /* HAVE_RRD_GRAPH */
         parse(&buffer, i, "<RRD::SETCONSTVAR", rrdsetvarconst);
         parse(&buffer, i, "<RRD::SETENV", rrdsetenv);
         parse(&buffer, i, "<RRD::SETVAR", rrdsetvar);
@@ -929,7 +935,7 @@
 }
 
 
-
+#ifdef HAVE_RRD_GRAPH
 char     *drawgraph(
     long argc,
     const char **args)
@@ -961,6 +967,7 @@
     }
     return NULL;
 }
+#endif /* HAVE_RRD_GRAPH */
 
 char     *drawprint(
     long argc,
