package/cups-filters: fix ln -r workaround for older distributions
Add a patch to create the ln-srf script that was not included in the 1.25.6 release tarball. Also add a post-patch hook to ensure that the script is executable, since GNU patch < 2.7 does not handle the git patch permission extensions. Fixes: http://autobuild.buildroot.net/results/c78e7d6d703b1b48ba19d8c4fae32b4e4489cb43/ Signed-off-by: Carlos Santos <unixmania@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
parent
0ee699823b
commit
bef2a36d1f
@ -0,0 +1,71 @@
|
||||
From 6f6fb88077bce7f9dd9d21a286eeec700acff04e Mon Sep 17 00:00:00 2001
|
||||
From: Carlos Santos <unixmania@gmail.com>
|
||||
Date: Mon, 16 Sep 2019 22:22:37 -0300
|
||||
Subject: [PATCH] Build system:: add missing ln-srf script
|
||||
|
||||
It is missing in the 1.25.6 release tarball.
|
||||
|
||||
Signed-off-by: Carlos Santos <unixmania@gmail.com>
|
||||
---
|
||||
ln-srf | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 49 insertions(+)
|
||||
create mode 100755 ln-srf
|
||||
|
||||
diff --git a/ln-srf b/ln-srf
|
||||
new file mode 100755
|
||||
index 00000000..f395a760
|
||||
--- /dev/null
|
||||
+++ b/ln-srf
|
||||
@@ -0,0 +1,49 @@
|
||||
+#!/bin/sh
|
||||
+#
|
||||
+# Author: Carlos Santos <unixmania@gmail.com>
|
||||
+# This file is in public domain.
|
||||
+#
|
||||
+
|
||||
+error() {
|
||||
+ echo "$@" 1>&2
|
||||
+ exit 1
|
||||
+}
|
||||
+
|
||||
+src="$1"
|
||||
+dst="$2"
|
||||
+
|
||||
+check_path() {
|
||||
+ case "$2" in
|
||||
+ */../*|*/./*|*/.|*/..) error "$1 path '$2' must be absolute";;
|
||||
+ */) error "$1 path '$2' must not end with '/'";;
|
||||
+ /?*) ;;
|
||||
+ *) error "$1 path '$2' must start with '/'";;
|
||||
+ esac
|
||||
+}
|
||||
+
|
||||
+check_path "source" "$src"
|
||||
+check_path "destination" "$dst"
|
||||
+
|
||||
+# strip leading '/'
|
||||
+src=${src#/*}
|
||||
+tmp=${dst#/*}
|
||||
+
|
||||
+s_prefix=${src%%/*}
|
||||
+d_prefix=${tmp%%/*}
|
||||
+
|
||||
+# strip leading common
|
||||
+while [ "$s_prefix" = "$d_prefix" ]; do
|
||||
+ src="${src#$s_prefix/}"
|
||||
+ tmp="${tmp#$d_prefix/}"
|
||||
+ s_prefix=${src%%/*}
|
||||
+ d_prefix=${tmp%%/*}
|
||||
+done
|
||||
+
|
||||
+s_prefix="../"
|
||||
+while [ -n "$d_prefix" ] && [ "$tmp" != "$d_prefix" ]; do
|
||||
+ s_prefix="../$s_prefix"
|
||||
+ tmp="${tmp#$d_prefix/}"
|
||||
+ d_prefix=${tmp%%/*}
|
||||
+done
|
||||
+
|
||||
+ln -s -f "$s_prefix$src" "$dst"
|
||||
--
|
||||
2.18.1
|
||||
|
@ -20,6 +20,15 @@ CUPS_FILTERS_CONF_OPTS = --disable-imagefilters \
|
||||
--with-pdftops=pdftops \
|
||||
--with-jpeg
|
||||
|
||||
# 0001-Build-system-add-missing-ln-srf-script.patch adds a ln-srf script
|
||||
# for older distributions, but GNU patch < 2.7 does not handle the git
|
||||
# patch permission extensions - So ensure it is executable
|
||||
define CUPS_FILTERS_MAKE_LN_SRF_EXECUTABLE
|
||||
chmod +x $(@D)/ln-srf
|
||||
endef
|
||||
|
||||
CUPS_FILTERS_POST_PATCH_HOOKS += CUPS_FILTERS_MAKE_LN_SRF_EXECUTABLE
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBPNG),y)
|
||||
CUPS_FILTERS_CONF_OPTS += --with-png
|
||||
CUPS_FILTERS_DEPENDENCIES += libpng
|
||||
|
Loading…
Reference in New Issue
Block a user