diff --git a/libs/libcanfestival/Makefile b/libs/libcanfestival/Makefile
index 9758ef32c..9b2821db7 100644
--- a/libs/libcanfestival/Makefile
+++ b/libs/libcanfestival/Makefile
@@ -8,20 +8,22 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=libcanfestival
-PKG_RELEASE:=3
+PKG_RELEASE:=5
 
-PKG_SOURCE_PROTO:=hg
-PKG_SOURCE_URL:=http://dev.automforge.net/CanFestival-3
-PKG_SOURCE_SUBDIR:=$(PKG_NAME)
 PKG_SOURCE_VERSION:=8bfe0ac00cdb
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.bz2
+PKG_SOURCE_URL:=http://dev.automforge.net/CanFestival-3/archive/$(PKG_SOURCE_VERSION).tar.bz2?_dummyfilename=
+PKG_SOURCE:=CanFestival-3-$(PKG_SOURCE_VERSION).tar.bz2
+PKG_SOURCE_SUBDIR:=CanFestival-3-$(PKG_SOURCE_VERSION)
+PKG_MIRROR_HASH:=0bee7aaef266fc579922ca159b7acbe9cdc9a936ac1f30402814844b007f7185
 
 PKG_MAINTAINER:=Anton Glukhov <anton.a.glukhov@gmail.com>
+
 PKG_LICENSE:=LGPL-2.1+
 PKG_LICENSE_FILES:=LICENCE
 
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_SOURCE_SUBDIR)
 
+TAR_OPTIONS+= -m
 PKG_FIXUP:=autoreconf
 PKG_INSTALL:=1
 
diff --git a/libs/libcanfestival/patches/004-honour-copts.patch b/libs/libcanfestival/patches/004-honour-copts.patch
new file mode 100644
index 000000000..117bd2f21
--- /dev/null
+++ b/libs/libcanfestival/patches/004-honour-copts.patch
@@ -0,0 +1,44 @@
+--- a/drivers/can_socket/Makefile.in
++++ b/drivers/can_socket/Makefile.in
+@@ -23,7 +23,7 @@
+ 
+ CC = SUB_CC
+ OPT_CFLAGS = -O2
+-CFLAGS = SUB_OPT_CFLAGS
++CFLAGS = SUB_OPT_CFLAGS -fhonour-copts
+ PROG_CFLAGS = SUB_PROG_CFLAGS
+ PREFIX = SUB_PREFIX
+ TARGET = SUB_TARGET
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -101,7 +101,7 @@ uninstall:
+ 	rm -rf $(DESTDIR)$(PREFIX)/include/canfestival
+ 
+ else
+-CFLAGS = SUB_OPT_CFLAGS
++CFLAGS = SUB_OPT_CFLAGS -fhonour-copts
+ 
+ ifeq ($(TARGET),none)
+ canfestival: libcanfestival.o
+--- a/drivers/unix/Makefile.in
++++ b/drivers/unix/Makefile.in
+@@ -85,7 +85,7 @@ install:
+ 
+ 
+ else
+-CFLAGS = SUB_OPT_CFLAGS
++CFLAGS = SUB_OPT_CFLAGS -fhonour-copts
+ 
+ driver: libcanfestival_$(TARGET).a
+ 
+--- a/drivers/timers_unix/Makefile.in
++++ b/drivers/timers_unix/Makefile.in
+@@ -23,7 +23,7 @@
+ 
+ CC = SUB_CC
+ OPT_CFLAGS = -O2
+-CFLAGS = SUB_OPT_CFLAGS
++CFLAGS = SUB_OPT_CFLAGS -fhonour-copts
+ PROG_CFLAGS = SUB_PROG_CFLAGS
+ OS_NAME = SUB_OS_NAME
+ ARCH_NAME = SUB_ARCH_NAME