Update package for the 4.19 linux kernel.

Change-Id: Ia73559ed3f0eacc998ecad36f8da35fb610ae768
diff --git a/debian/bin/fix-shebang b/debian/bin/fix-shebang
new file mode 100755
index 0000000..edf551f
--- /dev/null
+++ b/debian/bin/fix-shebang
@@ -0,0 +1,12 @@
+#!/usr/bin/perl -pi
+
+# Change "#!/usr/bin/env perl" to "#!/usr/bin/perl" (policy §10.4).
+# Other uses of /usr/bin/env should probably be converted as well, but
+# policy doesn't specify what to do.
+if ($. == 1 && m|^\#!\s*/usr/bin/env\s+(.+)|) {
+    if ($1 eq "perl") {
+	$_ = "#!/usr/bin/perl\n";
+    } else {
+	print STDERR "W: Found #!/usr/bin/env $1 and don't know what to substitute\n";
+    }
+}
diff --git a/debian/changelog b/debian/changelog
index 9286f3c..7ec2d09 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,10 +1,16 @@
-linux-mtk (1.0-1) mendel-chef; urgency=medium
+linux-mtk (2-1) mendel-chef; urgency=medium
+
+  * Update to linux 4.19 linux kernel.
+
+ -- Coral Projects <coral-support@google.com>  Wed, 24 Apr 2019 14:52:26 -0700
+
+linux-mtk (1-2) mendel-chef; urgency=medium
 
   * Lintian fixups
 
  -- Coral Projects <coral-support@google.com>  Mon, 15 Apr 2019 15:42:27 -0700
 
-linux-mtk (1.0) mendel-animal; urgency=high
+linux-mtk (1-1) mendel-animal; urgency=high
 
   * Initial Release.
 
diff --git a/debian/control b/debian/control
index 503d27f..5fbe295 100644
--- a/debian/control
+++ b/debian/control
@@ -2,23 +2,27 @@
 Maintainer: Coral Projects <coral-support@google.com>
 Build-Depends:
     bc,
+    bison,
     boot-keys,
     cpio,
     debhelper (>= 10),
     device-tree-compiler,
     dh-systemd,
+    flex,
     gcc-aarch64-linux-gnu,
     gcc-arm-linux-gnueabihf,
     liblz4-tool,
     libssl-dev,
     libssl-dev:native,
     python,
+    python3,
+    tree,
     u-boot-mkimage
 Section: misc
 Priority: optional
 Standards-Version: 3.9.8
 
-Package: linux-image-4.4.22-mtk
+Package: linux-image-4.19.32-mtk
 Section: misc
 Priority: optional
 Architecture: arm64 armhf
@@ -27,19 +31,19 @@
  Linux Image, modules, System map, config, and device tree blobs for
  the Excelsior board.
 
-Package: linux-headers-4.4.22-mtk
+Package: linux-headers-4.19.32-mtk
 Section: misc
 Priority: optional
 Architecture: arm64 armhf
 Depends: ${misc:Depends},
-         linux-kbuild-4.4.22-mtk [${Arch}]
+         linux-kbuild-4.19.32-mtk [${Arch}]
 Description: Linux kernel headers for the Excelsior board
- Kernel and userspace headers for the 4.4.22-mtk Linux kernel.
+ Kernel and userspace headers for the 4.19.32-mtk Linux kernel.
 
-Package: linux-kbuild-4.4.22-mtk
+Package: linux-kbuild-4.19.32-mtk
 Section: misc
 Priority: optional
 Architecture: arm64 armhf
 Depends: ${misc:Depends}
 Description: Linux kernel build tools for the Excelsior board
- Support tools for building modules against the 4.4.22-mtk Linux kernel.
+ Support tools for building modules against the 4.19.32-mtk Linux kernel.
diff --git a/debian/linux-image-4.4.22-mtk.install b/debian/linux-image-4.19.32-mtk.install
similarity index 100%
rename from debian/linux-image-4.4.22-mtk.install
rename to debian/linux-image-4.19.32-mtk.install
diff --git a/debian/linux-image-4.4.22-mtk.postinst b/debian/linux-image-4.19.32-mtk.postinst
similarity index 95%
rename from debian/linux-image-4.4.22-mtk.postinst
rename to debian/linux-image-4.19.32-mtk.postinst
index 8763152..bb436fe 100644
--- a/debian/linux-image-4.4.22-mtk.postinst
+++ b/debian/linux-image-4.19.32-mtk.postinst
@@ -1,6 +1,6 @@
 #!/bin/sh -e
 
-version=4.4.22-mtk
+version=4.19.32-mtk
 image_path=/boot/vmlinuz-$version
 
 if [ "$1" != configure ]; then
diff --git a/debian/linux-image-4.4.22-mtk.postrm b/debian/linux-image-4.19.32-mtk.postrm
similarity index 97%
rename from debian/linux-image-4.4.22-mtk.postrm
rename to debian/linux-image-4.19.32-mtk.postrm
index b24b4a1..bb9ce18 100644
--- a/debian/linux-image-4.4.22-mtk.postrm
+++ b/debian/linux-image-4.19.32-mtk.postrm
@@ -1,6 +1,6 @@
 #!/bin/sh -e
 
-version=4.4.22-mtk
+version=4.19.32-mtk
 image_path=/boot/vmlinuz-$version
 
 rm -f /lib/modules/$version/.fresh-install
diff --git a/debian/linux-image-4.4.22-mtk.preinst b/debian/linux-image-4.19.32-mtk.preinst
similarity index 95%
rename from debian/linux-image-4.4.22-mtk.preinst
rename to debian/linux-image-4.19.32-mtk.preinst
index 7ebed7e..8035bec 100644
--- a/debian/linux-image-4.4.22-mtk.preinst
+++ b/debian/linux-image-4.19.32-mtk.preinst
@@ -1,6 +1,6 @@
 #!/bin/sh -e
 
-version=4.4.22-mtk
+version=4.19.32-mtk
 image_path=/boot/vmlinuz-$version
 
 if [ "$1" = abort-upgrade ]; then
diff --git a/debian/linux-image-4.4.22-mtk.prerm b/debian/linux-image-4.19.32-mtk.prerm
similarity index 93%
rename from debian/linux-image-4.4.22-mtk.prerm
rename to debian/linux-image-4.19.32-mtk.prerm
index bd98381..868041b 100644
--- a/debian/linux-image-4.4.22-mtk.prerm
+++ b/debian/linux-image-4.19.32-mtk.prerm
@@ -1,6 +1,6 @@
 #!/bin/sh -e
 
-version=4.4.22-mtk
+version=4.19.32-mtk
 image_path=/boot/vmlinuz-$version
 
 if [ "$1" != remove ]; then
diff --git a/debian/rules b/debian/rules
index 776c1bd..3526a27 100755
--- a/debian/rules
+++ b/debian/rules
@@ -4,7 +4,7 @@
 # Uncomment this to turn on verbose mode.
 export DH_VERBOSE = 1
 
-VERSION := 4.4.22-mtk
+VERSION := 4.19.32-mtk
 
 ARCH := arm64
 CROSS_COMPILE := aarch64-linux-gnu-
@@ -68,16 +68,16 @@
 
 	# Clean up any leftover x86 artifacts from the kernel build, and then build scripts
 	find $(CURDIR)/scripts -type f | xargs file | grep 'x86-' | awk '{print $$1}' | tr -d ':' | xargs rm -f
-		mkdir -p $(BUILD_DIR)/build-tools/scripts
-		$(MAKE) $(KERNEL_OPTIONS) \
-			CROSS_COMPILE=$(DEB_HOST_GNU_TYPE)- \
-			-C $(BUILD_DIR)/build-tools/scripts -f $(CURDIR)/debian/rules.d/scripts/Makefile \
-			top_rulesdir=$(CURDIR)/debian/rules.d \
-			top_srcdir=$(CURDIR) \
-			OUTDIR=scripts \
+	mkdir -p $(BUILD_DIR)/build-tools/scripts
+	$(MAKE) $(KERNEL_OPTIONS) \
+		CROSS_COMPILE=$(DEB_HOST_GNU_TYPE)- \
+		-C $(BUILD_DIR)/build-tools/scripts -f $(CURDIR)/debian/rules.d/scripts/Makefile \
+		top_rulesdir=$(CURDIR)/debian/rules.d \
+		top_srcdir=$(CURDIR) \
+		OUTDIR=scripts \
 			install \
-			DESTDIR=$(DESTDIR_KBUILD) \
-			prefix=/usr/lib/linux-kbuild-$(VERSION)
+		DESTDIR=$(DESTDIR_KBUILD) \
+		prefix=/usr/lib/linux-kbuild-$(VERSION)
 
 	install -d $(DESTDIR_HEADERS)/lib/modules/$(VERSION)
 	ln -s /usr/src/linux-headers-$(VERSION) $(DESTDIR_HEADERS)/lib/modules/$(VERSION)/build
diff --git a/debian/rules.d/Makefile.inc b/debian/rules.d/Makefile.inc
index 48f8c2e..719e8ca 100644
--- a/debian/rules.d/Makefile.inc
+++ b/debian/rules.d/Makefile.inc
@@ -44,7 +44,9 @@
 install-local-scripts: $(SCRIPTS_REAL)
 	@for p in $^; do \
 	  echo " install -m755 '$$p' '$(DESTDIR)/$(installdir)'"; \
-	  install -D -m755 "$$p" "$(DESTDIR)/$(installdir)/$$(basename $$p)"; \
+	  install -D -m755 \
+	    -s --strip-program $(top_srcdir)/debian/bin/fix-shebang \
+	    "$$p" "$(DESTDIR)/$(installdir)/$$(basename $$p)"; \
 	done
 
 DATA_REAL = $(wildcard $(addprefix $(top_srcdir)/$(OUTDIR)/,$(DATA)))
diff --git a/debian/rules.d/scripts/Makefile b/debian/rules.d/scripts/Makefile
index fc8c681..a015ddf 100644
--- a/debian/rules.d/scripts/Makefile
+++ b/debian/rules.d/scripts/Makefile
@@ -1,4 +1,5 @@
 PROGS = \
+	bin2c \
 	conmakehash \
 	extract-cert \
 	kallsyms \
@@ -11,7 +12,8 @@
 	Kbuild.include \
 	Makefile.* \
 	mkversion \
-	module-common.lds
+	module-common.lds \
+	subarch.include
 
 SCRIPTS =  \
 	checkincludes.pl \
@@ -22,6 +24,7 @@
 	gen_initramfs_list.sh \
 	headers_install.sh \
 	kernel-doc \
+	ld-version.sh \
 	Lindent \
 	makelst \
 	mksysmap \
diff --git a/debian/rules.d/scripts/basic/Makefile b/debian/rules.d/scripts/basic/Makefile
index 86b86a8..127f53f 100644
--- a/debian/rules.d/scripts/basic/Makefile
+++ b/debian/rules.d/scripts/basic/Makefile
@@ -1,5 +1,4 @@
 PROGS = \
-	bin2c \
 	fixdep
 
 include $(top_rulesdir)/Makefile.inc
diff --git a/debian/rules.d/scripts/genksyms/Makefile b/debian/rules.d/scripts/genksyms/Makefile
index 8e416da..8852456 100644
--- a/debian/rules.d/scripts/genksyms/Makefile
+++ b/debian/rules.d/scripts/genksyms/Makefile
@@ -4,10 +4,13 @@
 
 genksyms: genksyms.o parse.tab.o lex.lex.o
 
-lex.lex.o: keywords.hash.c parse.tab.h
+lex.lex.o: keywords.c parse.tab.h
 
-%.c: %.c_shipped
-	ln -s $< $@
+parse.tab.c: parse.y
+	$(YACC) -o$@ -t -l $<
 
-%.h: %.h_shipped
-	ln -s $< $@
+parse.tab.h: parse.y
+	$(YACC) -o/dev/null --defines=$@ -t -l $<
+
+lex.lex.c: lex.l
+	$(LEX) -o$@ -L $<
diff --git a/debian/rules.d/scripts/kconfig/Makefile b/debian/rules.d/scripts/kconfig/Makefile
index b6e2521..1fc248f 100644
--- a/debian/rules.d/scripts/kconfig/Makefile
+++ b/debian/rules.d/scripts/kconfig/Makefile
@@ -4,10 +4,10 @@
 
 conf: conf.o zconf.tab.o
 
-zconf.tab.c: zconf.hash.c zconf.lex.c
+zconf.tab.c: kconf_id.c zconf.lex.c
 
-%.c: %.c_shipped
-	ln -sf $< $@
+%.lex.c: %.l
+	flex -o$@ -L $<
 
-%.h: %.h_shipped
-	ln -sf $< $@
+%.tab.c: %.y
+	bison -o$@ -t -l $<
diff --git a/debian/rules.d/scripts/mod/Makefile b/debian/rules.d/scripts/mod/Makefile
index e57e262..35bf77c 100644
--- a/debian/rules.d/scripts/mod/Makefile
+++ b/debian/rules.d/scripts/mod/Makefile
@@ -16,7 +16,7 @@
 	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
 
 modpost-opts.h: $(top_srcdir)/scripts/mod/modpost.c
-	python $(wrapperdir)/gendef.py $< > $@
+	$(wrapperdir)/gendef.py $< > $@
 
 modpost.o: modpost.c modpost-opts.h
 	$(CC) $(CFLAGS) -I $(CURDIR) -c -o $@ $<
diff --git a/debian/rules.d/scripts/mod/Makefile.real b/debian/rules.d/scripts/mod/Makefile.real
index 489ea4f..8b097f8 100644
--- a/debian/rules.d/scripts/mod/Makefile.real
+++ b/debian/rules.d/scripts/mod/Makefile.real
@@ -17,7 +17,7 @@
 
 real-$(TYPE)/devicetable-offsets.h: real-$(TYPE)/devicetable-offsets.s
 	echo >$@ "#define __DEVICEVTABLE_OFFSETS_H__"
-	sed -ne "/^->/{s:->#\(.*\):/* \1 */:; \
-		s:^->\([^ ]*\) [\$$#]*\([-0-9]*\) \(.*\):#define \1 \2 /* \3 */:; \
-		s:^->\([^ ]*\) [\$$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; \
-		s:->::; p;}" $< >>$@
+	sed -ne "s:^[[:space:]]*\.ascii[[:space:]]*\"\(.*\)\".*:\1:; \
+		 /^->/{s:->#\(.*\):/* \1 */:; \
+		 s:^->\([^ ]*\) [\$$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; \
+		 s:->::; p;}" $< >>$@
diff --git a/debian/rules.d/scripts/mod/gendef.py b/debian/rules.d/scripts/mod/gendef.py
index 6e1bdf4..55d3fc6 100755
--- a/debian/rules.d/scripts/mod/gendef.py
+++ b/debian/rules.d/scripts/mod/gendef.py
@@ -1,20 +1,20 @@
-#!/usr/bin/python
+#!/usr/bin/python3
 import re
 import sys
 
 for line in open(sys.argv[1]):
-    match = re.search('getopt\(argc, argv, "([\w:]*?)"\)', line)
+    match = re.search(r'getopt\(argc, argv, "([\w:]*?)"\)', line)
     if match:
         options = match.group(1)
         break
 else:
     raise RuntimeError
 
-print '#define GETOPT_OPTIONS "%s"' % options
+print('#define GETOPT_OPTIONS "%s"' % options)
 
-print '#define GETOPT_CASE',
+print('#define GETOPT_CASE', end=' ')
 for c in options:
     if c == ':' or c == 'T':
         continue
-    print "case '%c':" % c,
-print
+    print("case '%c':" % c, end=' ')
+print()
diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides
index c652cac..e9f1363 100644
--- a/debian/source/lintian-overrides
+++ b/debian/source/lintian-overrides
@@ -1 +1,3 @@
 linux-mtk source: file-without-copyright-information *
+linux-mtk source: license-problem-gfdl-invariants *
+