summaryrefslogtreecommitdiff
path: root/system/ded
diff options
context:
space:
mode:
Diffstat (limited to 'system/ded')
-rw-r--r--system/ded/ded.SlackBuild11
-rw-r--r--system/ded/td_lib_no_write_usr.diff12
2 files changed, 23 insertions, 0 deletions
diff --git a/system/ded/ded.SlackBuild b/system/ded/ded.SlackBuild
index 8918208f93..2d952e6df1 100644
--- a/system/ded/ded.SlackBuild
+++ b/system/ded/ded.SlackBuild
@@ -10,6 +10,12 @@
# This build script was written from scratch for 14.1, without referring
# to the old script.
+# 20170305 bkw:
+# - stop gnulib's long filename test from writing to /usr/lib and /var/lib
+
+# 20150909 bkw:
+# - updated for 20150704 release
+
# 20140826 bkw:
# - updated for 20140722 release
# - added td_lib docs in /usr/doc
@@ -70,6 +76,11 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# "checking for long filenames" wants to create files in /usr/lib and
+# /var/lib. Violates the principle of least surprise: users don't expect
+# configure scripts (or SlackBuilds) to touch their system directories.
+patch -p1 < $CWD/td_lib_no_write_usr.diff
+
# NB: the -j1's are necessary, even on 'make install'.
CFLAGS="$SLKCFLAGS" \
diff --git a/system/ded/td_lib_no_write_usr.diff b/system/ded/td_lib_no_write_usr.diff
new file mode 100644
index 0000000000..455b1a85bf
--- /dev/null
+++ b/system/ded/td_lib_no_write_usr.diff
@@ -0,0 +1,12 @@
+diff -Naur td_lib-20150704/configure td_lib-20150704.patched/configure
+--- td_lib-20150704/configure 2015-07-04 11:20:27.000000000 -0400
++++ td_lib-20150704.patched/configure 2017-03-05 11:29:40.888486013 -0500
+@@ -5031,7 +5031,7 @@
+ else
+ ac_tmpdirs='/tmp /var/tmp /usr/tmp'
+ fi
+-for ac_dir in . $ac_tmpdirs `eval echo $prefix/lib $exec_prefix/lib` ; do
++for ac_dir in . $ac_tmpdirs ; do
+ test -d $ac_dir || continue
+ test -w $ac_dir || continue # It is less confusing to not echo anything here.
+ ac_xdir=$ac_dir/cf$$