--- a/common/glib-gen.mak
+++ b/common/glib-gen.mak
@@ -1,11 +1,13 @@
 # these are the variables your Makefile.am should set
 # the example is based on the colorbalance interface
 
+H := \#
+
 #glib_enum_headers=$(colorbalance_headers)
 #glib_enum_define=GST_COLOR_BALANCE
 #glib_enum_prefix=gst_color_balance
 
-enum_headers=$(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
+enum_headers=$(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
 
 # these are all the rules generating the relevant files
 %-marshal.h: %-marshal.list
--- a/common/gst-glib-gen.mak
+++ b/common/gst-glib-gen.mak
@@ -1,14 +1,16 @@
 # these are the variables your Makefile.am should set
 # the example is based on the colorbalance interface
 
+H := \#
+
 #glib_enum_headers=$(colorbalance_headers)
 #glib_enum_define=GST_COLOR_BALANCE
 #glib_gen_prefix=gst_color_balance
 #glib_gen_basename=colorbalance
 #glib_gen_decl_banner=GST_EXPORT
-#glib_gen_decl_include=\#include <gst/foo/foo-prelude.h>
+#glib_gen_decl_include=$(H)include <gst/foo/foo-prelude.h>
 
-enum_headers=$(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
+enum_headers=$(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
 
 # these are all the rules generating the relevant files
 $(glib_gen_basename)-marshal.h: $(glib_gen_basename)-marshal.list
--- a/gst/encoding/Makefile.in
+++ b/gst/encoding/Makefile.in
@@ -17,12 +17,14 @@
 # these are the variables your Makefile.am should set
 # the example is based on the colorbalance interface
 
+H := \#
+
 #glib_enum_headers=$(colorbalance_headers)
 #glib_enum_define=GST_COLOR_BALANCE
 #glib_gen_prefix=gst_color_balance
 #glib_gen_basename=colorbalance
 #glib_gen_decl_banner=GST_EXPORT
-#glib_gen_decl_include=\#include <gst/foo/foo-prelude.h>
+#glib_gen_decl_include=$(H)include <gst/foo/foo-prelude.h>
 
 
 VPATH = @srcdir@
@@ -638,7 +640,7 @@
 	gstsmartencoder.h	\
 	gststreamcombinerpad.h
 
-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
+enum_headers = $(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
 all: all-am
 
 .SUFFIXES:
--- a/gst-libs/gst/app/Makefile.in
+++ b/gst-libs/gst/app/Makefile.in
@@ -17,13 +17,15 @@
 # these are the variables your Makefile.am should set
 # the example is based on the colorbalance interface
 
+H := \#
+
 #glib_enum_headers=$(colorbalance_headers)
 #glib_enum_define=GST_COLOR_BALANCE
 #glib_gen_prefix=gst_color_balance
 #glib_gen_basename=colorbalance
 #glib_gen_decl_banner=GST_EXPORT
-#glib_gen_decl_include=\#include <gst/foo/foo-prelude.h>
 
+#glib_gen_decl_include=$(H)include <gst/foo/foo-prelude.h>
 
 
 VPATH = @srcdir@
@@ -618,12 +620,12 @@
 glib_gen_prefix = __gst_app
 glib_gen_basename = app
 glib_gen_decl_banner = GST_APP_API
-glib_gen_decl_include = \#include <gst/app/app-prelude.h>
+glib_gen_decl_include = $(H)include <gst/app/app-prelude.h>
 glib_enum_headers = gstappsrc.h
 built_sources = app-enumtypes.c
 built_headers = app-enumtypes.h
 BUILT_SOURCES = $(built_sources) $(built_headers)
-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
+enum_headers = $(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
 libgstapp_@GST_API_VERSION@_la_SOURCES = gstappsrc.c gstappsink.c
 nodist_libgstapp_@GST_API_VERSION@_la_SOURCES = $(BUILT_SOURCES)
 libgstapp_@GST_API_VERSION@_la_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) \
--- a/gst-libs/gst/audio/Makefile.in
+++ b/gst-libs/gst/audio/Makefile.in
@@ -39,13 +39,15 @@
 # these are the variables your Makefile.am should set
 # the example is based on the colorbalance interface
 
+H := \#
+
 #glib_enum_headers=$(colorbalance_headers)
 #glib_enum_define=GST_COLOR_BALANCE
 #glib_gen_prefix=gst_color_balance
 #glib_gen_basename=colorbalance
 #glib_gen_decl_banner=GST_EXPORT
-#glib_gen_decl_include=\#include <gst/foo/foo-prelude.h>
 
+#glib_gen_decl_include=$(H)include <gst/foo/foo-prelude.h>
 
 
 VPATH = @srcdir@
@@ -784,7 +786,7 @@
 glib_gen_prefix = gst_audio
 glib_gen_basename = audio
 glib_gen_decl_banner = GST_AUDIO_API
-glib_gen_decl_include = \#include <gst/audio/audio-prelude.h>
+glib_gen_decl_include = $(H)include <gst/audio/audio-prelude.h>
 built_sources = audio-enumtypes.c
 built_headers = audio-enumtypes.h
 lib_LTLIBRARIES = \
@@ -895,7 +897,7 @@
 @HAVE_X86_TRUE@	$(GST_LIB_LDFLAGS) \
 @HAVE_X86_TRUE@	$(GST_ALL_LDFLAGS)
 
-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
+enum_headers = $(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
 
 # Introspection
 @HAVE_INTROSPECTION_TRUE@BUILT_GIRSOURCES = GstAudio-@GST_API_VERSION@.gir
--- a/gst-libs/gst/pbutils/Makefile.in
+++ b/gst-libs/gst/pbutils/Makefile.in
@@ -17,13 +17,15 @@
 # these are the variables your Makefile.am should set
 # the example is based on the colorbalance interface
 
+H := \#
+
 #glib_enum_headers=$(colorbalance_headers)
 #glib_enum_define=GST_COLOR_BALANCE
 #glib_gen_prefix=gst_color_balance
 #glib_gen_basename=colorbalance
 #glib_gen_decl_banner=GST_EXPORT
-#glib_gen_decl_include=\#include <gst/foo/foo-prelude.h>
 
+#glib_gen_decl_include=$(H)include <gst/foo/foo-prelude.h>
 
 
 VPATH = @srcdir@
@@ -664,6 +666,7 @@
 	gstdiscoverer.h \
 	gstaudiovisualizer.h
 
+H := \#
 
 # variables used for enum/marshal generation
 glib_enum_headers = $(headers_pbutils)
@@ -671,7 +674,7 @@
 glib_gen_prefix = pbutils
 glib_gen_basename = pbutils
 glib_gen_decl_banner = GST_PBUTILS_API
-glib_gen_decl_include = \#include <gst/pbutils/pbutils-prelude.h>
+glib_gen_decl_include = $(H)include <gst/pbutils/pbutils-prelude.h>
 built_headers_configure = \
 	gstpluginsbaseversion.h
 
@@ -719,7 +722,7 @@
 
 # DISTCLEANFILES is for files generated by configure
 DISTCLEANFILES = $(built_headers_configure)
-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
+enum_headers = $(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
 @HAVE_INTROSPECTION_TRUE@BUILT_GIRSOURCES = GstPbutils-@GST_API_VERSION@.gir
 @HAVE_INTROSPECTION_TRUE@gir_headers = $(patsubst %,$(srcdir)/%, \
 @HAVE_INTROSPECTION_TRUE@	$(libgstpbutils_@GST_API_VERSION@include_HEADERS)) \
--- a/gst-libs/gst/rtp/Makefile.in
+++ b/gst-libs/gst/rtp/Makefile.in
@@ -17,13 +17,15 @@
 # these are the variables your Makefile.am should set
 # the example is based on the colorbalance interface
 
+H := \#
+
 #glib_enum_headers=$(colorbalance_headers)
 #glib_enum_define=GST_COLOR_BALANCE
 #glib_gen_prefix=gst_color_balance
 #glib_gen_basename=colorbalance
 #glib_gen_decl_banner=GST_EXPORT
-#glib_gen_decl_include=\#include <gst/foo/foo-prelude.h>
 
+#glib_gen_decl_include=$(H)include <gst/foo/foo-prelude.h>
 
 
 VPATH = @srcdir@
@@ -675,8 +677,8 @@
 glib_enum_headers = $(libgstrtpinclude_HEADERS)
 glib_gen_basename = gstrtp
 glib_gen_decl_banner = GST_RTP_API
-glib_gen_decl_include = \#include <gst/rtp/rtp-prelude.h>
-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
+glib_gen_decl_include = $(H)include <gst/rtp/rtp-prelude.h>
+enum_headers = $(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
 @HAVE_INTROSPECTION_TRUE@BUILT_GIRSOURCES = GstRtp-@GST_API_VERSION@.gir
 @HAVE_INTROSPECTION_TRUE@gir_headers = $(patsubst %,$(srcdir)/%, \
 @HAVE_INTROSPECTION_TRUE@	$(libgstrtpinclude_HEADERS)) \
--- a/gst-libs/gst/rtsp/Makefile.in
+++ b/gst-libs/gst/rtsp/Makefile.in
@@ -17,13 +17,15 @@
 # these are the variables your Makefile.am should set
 # the example is based on the colorbalance interface
 
+H := \#
+
 #glib_enum_headers=$(colorbalance_headers)
 #glib_enum_define=GST_COLOR_BALANCE
 #glib_gen_prefix=gst_color_balance
 #glib_gen_basename=colorbalance
 #glib_gen_decl_banner=GST_EXPORT
-#glib_gen_decl_include=\#include <gst/foo/foo-prelude.h>
 
+#glib_gen_decl_include=$(H)include <gst/foo/foo-prelude.h>
 
 
 VPATH = @srcdir@
@@ -679,8 +681,8 @@
 glib_enum_headers = $(libgstrtspinclude_HEADERS)
 glib_gen_basename = gstrtsp
 glib_gen_decl_banner = GST_RTSP_API
-glib_gen_decl_include = \#include <gst/rtsp/rtsp-prelude.h>
-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
+glib_gen_decl_include = $(H)include <gst/rtsp/rtsp-prelude.h>
+enum_headers = $(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
 @HAVE_INTROSPECTION_TRUE@BUILT_GIRSOURCES = GstRtsp-@GST_API_VERSION@.gir
 @HAVE_INTROSPECTION_TRUE@gir_headers = $(patsubst %,$(srcdir)/%, \
 @HAVE_INTROSPECTION_TRUE@	$(libgstrtspinclude_HEADERS)) \
--- a/gst-libs/gst/tag/Makefile.in
+++ b/gst-libs/gst/tag/Makefile.in
@@ -17,13 +17,15 @@
 # these are the variables your Makefile.am should set
 # the example is based on the colorbalance interface
 
+H := \#
+
 #glib_enum_headers=$(colorbalance_headers)
 #glib_enum_define=GST_COLOR_BALANCE
 #glib_gen_prefix=gst_color_balance
 #glib_gen_basename=colorbalance
 #glib_gen_decl_banner=GST_EXPORT
-#glib_gen_decl_include=\#include <gst/foo/foo-prelude.h>
 
+#glib_gen_decl_include=$(H)include <gst/foo/foo-prelude.h>
 
 
 VPATH = @srcdir@
@@ -680,12 +682,12 @@
 glib_gen_prefix = gst_tag
 glib_gen_basename = tag
 glib_gen_decl_banner = GST_TAG_API
-glib_gen_decl_include = \#include <gst/tag/tag-prelude.h>
+glib_gen_decl_include = $(H)include <gst/tag/tag-prelude.h>
 glib_enum_headers = tag.h gsttagdemux.h
 built_sources = tag-enumtypes.c
 built_headers = tag-enumtypes.h
 BUILT_SOURCES = $(built_sources) $(built_headers)
-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
+enum_headers = $(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
 libgsttaginclude_HEADERS = \
 	tag.h tag-prelude.h gsttagdemux.h gsttagmux.h xmpwriter.h
 
--- a/gst-libs/gst/video/Makefile.in
+++ b/gst-libs/gst/video/Makefile.in
@@ -39,13 +39,15 @@
 # these are the variables your Makefile.am should set
 # the example is based on the colorbalance interface
 
+H := \#
+
 #glib_enum_headers=$(colorbalance_headers)
 #glib_enum_define=GST_COLOR_BALANCE
 #glib_gen_prefix=gst_color_balance
 #glib_gen_basename=colorbalance
 #glib_gen_decl_banner=GST_EXPORT
-#glib_gen_decl_include=\#include <gst/foo/foo-prelude.h>
 
+#glib_gen_decl_include=$(H)include <gst/foo/foo-prelude.h>
 
 
 VPATH = @srcdir@
@@ -740,7 +742,7 @@
 glib_gen_prefix = gst_video
 glib_gen_basename = video
 glib_gen_decl_banner = GST_VIDEO_API
-glib_gen_decl_include = \#include <gst/video/video-prelude.h>
+glib_gen_decl_include = $(H)include <gst/video/video-prelude.h>
 built_sources = video-enumtypes.c
 built_headers = video-enumtypes.h
 lib_LTLIBRARIES = libgstvideo-@GST_API_VERSION@.la
@@ -821,7 +823,7 @@
 
 libgstvideo_@GST_API_VERSION@_la_LIBADD = $(GST_BASE_LIBS) $(GST_LIBS) $(ORC_LIBS) $(LIBM)
 libgstvideo_@GST_API_VERSION@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS) $(GST_LT_LDFLAGS)
-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
+enum_headers = $(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
 @HAVE_INTROSPECTION_TRUE@BUILT_GIRSOURCES = GstVideo-@GST_API_VERSION@.gir
 @HAVE_INTROSPECTION_TRUE@gir_headers = $(patsubst %,$(srcdir)/%, \
 @HAVE_INTROSPECTION_TRUE@	$(libgstvideo_@GST_API_VERSION@include_HEADERS)) \