summaryrefslogtreecommitdiff
path: root/devel/libtool
diff options
context:
space:
mode:
authorjoerg <joerg@pkgsrc.org>2016-02-23 15:17:41 +0000
committerjoerg <joerg@pkgsrc.org>2016-02-23 15:17:41 +0000
commit6dc1177a73179d7e35e2ab88a63ac791f859a7b7 (patch)
treea5aeaa4f82db1cdd55c2c743d2134144811f14ae /devel/libtool
parent627368c16e51423b5c94a57a6ba02c5802588f3d (diff)
downloadpkgsrc-6dc1177a73179d7e35e2ab88a63ac791f859a7b7.tar.gz
The dependency compiler of libtool uses predictable temporary file names
when creating the output dependency file. This is normally not a problem as libtool internally serializes the access. But when a package like games/scid wants to compile the same file both for a library archive and for the main program, two libtool invocations can happen at the same time and therefore, two depcomp invocations as well. Include the PID in the name of the temporary file to avoid this problem. Bump libtool-base revision.
Diffstat (limited to 'devel/libtool')
-rw-r--r--devel/libtool/distinfo3
-rw-r--r--devel/libtool/patches/patch-libltdl_config_depcomp17
2 files changed, 19 insertions, 1 deletions
diff --git a/devel/libtool/distinfo b/devel/libtool/distinfo
index 4627ba79004..f602f079a53 100644
--- a/devel/libtool/distinfo
+++ b/devel/libtool/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.100 2015/11/03 03:27:45 agc Exp $
+$NetBSD: distinfo,v 1.101 2016/02/23 15:17:41 joerg Exp $
SHA1 (libtool-2.4.2.tar.gz) = 22b71a8b5ce3ad86e1094e7285981cae10e6ff88
RMD160 (libtool-2.4.2.tar.gz) = b7153f3f1e1c50d8c04787cafccd4e19af62ec7d
@@ -8,3 +8,4 @@ SHA1 (patch-aa) = 8fa167bebf27b7bc3008edd61408a0aede6bdf69
SHA1 (patch-ab) = 3ab767d3c0413bf30b6e9cce62e9686cd3d53fda
SHA1 (patch-ac) = fa8b0388f8f0469803c5869a23c3a1247eef70a1
SHA1 (patch-ad) = 48c3832e9205777832ef2a6334033ff6099be8a4
+SHA1 (patch-libltdl_config_depcomp) = f8a5247e8c667b896bb426613f1b43d614760097
diff --git a/devel/libtool/patches/patch-libltdl_config_depcomp b/devel/libtool/patches/patch-libltdl_config_depcomp
new file mode 100644
index 00000000000..61a79501e91
--- /dev/null
+++ b/devel/libtool/patches/patch-libltdl_config_depcomp
@@ -0,0 +1,17 @@
+$NetBSD: patch-libltdl_config_depcomp,v 1.1 2016/02/23 15:17:41 joerg Exp $
+
+Sometimes, the same source file is compiled for both PIC and non-PIC use.
+Avoid using the same temporary file in this case as it will result in
+very hard to debug race conditions for parallel builds otherwise.
+
+--- libltdl/config/depcomp.orig 2016-01-25 14:51:26.100348213 +0000
++++ libltdl/config/depcomp
+@@ -65,7 +65,7 @@ fi
+ # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
+ depfile=${depfile-`echo "$object" |
+ sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
+-tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
++tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}.$$
+
+ rm -f "$tmpdepfile"
+