aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorignapk <automat.script@gmail.com>2021-01-08 23:13:51 +0100
committerRasmus Thomsen <oss@cogitri.dev>2021-01-10 11:19:55 +0000
commitdaf4965a814328c2863120eb9c331d7d8aee4241 (patch)
tree1b3dc43501147bd97a27b0c18e950b217b89117b
parent163cd09efec94c34f9f40c53cdfb4fbaa7dc88c0 (diff)
main/dtc: increase MAX_SRCFILE_DEPTH
-rw-r--r--main/dtc/APKBUILD7
-rw-r--r--main/dtc/increase_max_srcfile_depth.patch15
2 files changed, 19 insertions, 3 deletions
diff --git a/main/dtc/APKBUILD b/main/dtc/APKBUILD
index d1ec6ef883a..13aaf34ebe6 100644
--- a/main/dtc/APKBUILD
+++ b/main/dtc/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=dtc
pkgver=1.6.0
-pkgrel=0
+pkgrel=1
pkgdesc="Device Tree Compiler"
url="https://git.kernel.org/pub/scm/utils/dtc/dtc.git/"
arch="all"
@@ -10,7 +10,7 @@ makedepends="$depends_dev bison flex"
checkdepends="coreutils"
subpackages="$pkgname-dev libfdt"
source="https://kernel.org/pub/software/utils/dtc/dtc-$pkgver.tar.xz
- "
+ increase_max_srcfile_depth.patch"
prepare() {
default_prepare
@@ -36,4 +36,5 @@ libfdt() {
mv "$pkgdir"/usr/lib/libfdt* "$subpkgdir"/usr/lib/
}
-sha512sums="15433b24f1d6b7ed1f8066d050bd1bcbf988731aa38147564e3dd04b5f69af8d69e03befdc621a768526c620425a9bdd24aad4f9ff135930d6a1eeb0625f7de3 dtc-1.6.0.tar.xz"
+sha512sums="15433b24f1d6b7ed1f8066d050bd1bcbf988731aa38147564e3dd04b5f69af8d69e03befdc621a768526c620425a9bdd24aad4f9ff135930d6a1eeb0625f7de3 dtc-1.6.0.tar.xz
+d30b04d6c177578f000465654d1bb0ebe4509fb290842f14d4dbdcd7c0bbdc8f2c8c73cfac2fc87a1896e17352652090cbac46c4e8d62c4e8cb97d5e9bd99647 increase_max_srcfile_depth.patch"
diff --git a/main/dtc/increase_max_srcfile_depth.patch b/main/dtc/increase_max_srcfile_depth.patch
new file mode 100644
index 00000000000..c821dcde4ba
--- /dev/null
+++ b/main/dtc/increase_max_srcfile_depth.patch
@@ -0,0 +1,15 @@
+Upstream dtc has MAX_SRCFILE_DEPTH set to 100 in srcpos.c, which is max number of includes set to prevent infinite recursion.
+Unfortunately some kernels require this number to be bigger, and since it's just a sanity check to detect infinite recursion it shouldn't hurt increasing it to 200.
+diff --git a/srcpos.c b/srcpos.c
+index f5205fb..4fdb22a 100644
+--- a/srcpos.c
++++ b/srcpos.c
+@@ -20,7 +20,7 @@ struct search_path {
+ static struct search_path *search_path_head, **search_path_tail;
+
+ /* Detect infinite include recursion. */
+-#define MAX_SRCFILE_DEPTH (100)
++#define MAX_SRCFILE_DEPTH (200)
+ static int srcfile_depth; /* = 0 */
+
+ static char *get_dirname(const char *path)