--- /dev/null
+--- tvheadend-4.0.8/src/muxer/muxer_libav.c~ 2015-12-16 18:33:33.000000000 +0100
++++ tvheadend-4.0.8/src/muxer/muxer_libav.c 2018-04-29 19:32:22.156055706 +0200
+@@ -160,7 +160,7 @@
+ }
+
+ if(lm->lm_oc->oformat->flags & AVFMT_GLOBALHEADER)
+- c->flags |= CODEC_FLAG_GLOBAL_HEADER;
++ c->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;
+
+ return 0;
+ }
+--- tvheadend-4.0.8/src/plumbing/transcoding.c~ 2018-04-29 19:28:53.000000000 +0200
++++ tvheadend-4.0.8/src/plumbing/transcoding.c 2018-04-29 19:33:35.763344908 +0200
+@@ -19,7 +19,7 @@
+ #include <unistd.h>
+ #include <libavformat/avformat.h>
+ #include <libavcodec/avcodec.h>
+-#include <libavfilter/avfiltergraph.h>
++#include <libavfilter/avfilter.h>
+ #include <libavfilter/buffersink.h>
+ #include <libavfilter/buffersrc.h>
+ #include <libavutil/opt.h>
+@@ -559,12 +559,12 @@
+ break;
+
+ case SCT_AAC:
+- octx->flags |= CODEC_FLAG_BITEXACT;
++ octx->flags |= AV_CODEC_FLAG_BITEXACT;
+ break;
+
+ case SCT_VORBIS:
+- octx->flags |= CODEC_FLAG_QSCALE;
+- octx->flags |= CODEC_FLAG_GLOBAL_HEADER;
++ octx->flags |= AV_CODEC_FLAG_QSCALE;
++ octx->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;
+ octx->global_quality = 4*FF_QP2LAMBDA;
+ break;
+
+@@ -1172,7 +1172,7 @@
+ case SCT_MPEG2VIDEO:
+ octx->codec_id = AV_CODEC_ID_MPEG2VIDEO;
+ octx->pix_fmt = AV_PIX_FMT_YUV420P;
+- octx->flags |= CODEC_FLAG_GLOBAL_HEADER;
++ octx->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;
+
+ // Default settings for quantizer. Best quality unless changed by the streaming profile.
+ octx->qmin = 1;
+@@ -1231,7 +1231,7 @@
+ case SCT_H264:
+ octx->codec_id = AV_CODEC_ID_H264;
+ octx->pix_fmt = AV_PIX_FMT_YUV420P;
+- octx->flags |= CODEC_FLAG_GLOBAL_HEADER;
++ octx->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;
+
+ // Qscale difference between I-frames and P-frames.
+ // Note: -i_qfactor is handled a little differently than --ipratio.
+@@ -1965,7 +1965,7 @@
+ if (!WORKING_ENCODER(p->id))
+ continue;
+
+- if ((p->capabilities & CODEC_CAP_EXPERIMENTAL) && !experimental)
++ if ((p->capabilities & AV_CODEC_CAP_EXPERIMENTAL) && !experimental)
+ continue;
+
+ sct = codec_id2streaming_component_type(p->id);
+@@ -1978,7 +1978,7 @@
+ htsmsg_add_str(m, "name", p->name);
+ snprintf(buf, sizeof(buf), "%s%s",
+ p->long_name ?: "",
+- (p->capabilities & CODEC_CAP_EXPERIMENTAL) ?
++ (p->capabilities & AV_CODEC_CAP_EXPERIMENTAL) ?
+ " (Experimental)" : "");
+ if (buf[0] != '\0')
+ htsmsg_add_str(m, "long_name", buf);
--- /dev/null
+--- tvheadend-4.0.8/Makefile~ 2018-04-29 19:28:53.000000000 +0200
++++ tvheadend-4.0.8/Makefile 2018-04-29 19:31:17.392096527 +0200
+@@ -28,7 +28,7 @@
+ #
+
+ CFLAGS += -g -O2 -Wunused-result
+-CFLAGS += -Wall -Werror -Wwrite-strings -Wno-deprecated-declarations
++CFLAGS += -Wall -Wwrite-strings -Wno-deprecated-declarations
+ CFLAGS += -Wmissing-prototypes
+ CFLAGS += -fms-extensions -funsigned-char -fno-strict-aliasing
+ CFLAGS += -D_FILE_OFFSET_BITS=64