On Mon, 23 Dec 2013, Martin Storsjö wrote:
On Mon, 23 Dec 2013, Diego Biurrun wrote:
This avoids printing a detected threading type in the short summary
when threading is disabled overall. To have the information about
whether or not threading is enabled available, move the block after
the global component dependency checking.
---
Fixed the typo noticed by Martin.
configure | 18 ++++++++++--------
1 file changed, 10 insertions(+), 8 deletions(-)
diff --git a/configure b/configure
index 462e3ba..69532d3 100755
--- a/configure
+++ b/configure
@@ -3882,14 +3882,6 @@ if ! disabled pthreads && ! enabled w32threads; then
fi
fi
-for thread in $THREADS_LIST; do
- if enabled $thread; then
- test -n "$thread_type" &&
- die "ERROR: Only one thread type must be selected." ||
- thread_type="$thread"
- fi
-done
-
disabled zlib || check_lib zlib.h zlibVersion -lz || disable
zlib
disabled bzlib || check_lib2 bzlib.h BZ2_bzlibVersion -lbz2 || disable
bzlib
@@ -4205,6 +4197,16 @@ check_deps $CONFIG_LIST \
! enabled_any memalign posix_memalign aligned_malloc &&
enabled_any $need_memalign && enable memalign_hack
+if enabled threads; then
+ for thread in $THREADS_LIST; do
+ if enabled $thread; then
+ test -n "$thread_type" &&
+ die "ERROR: Only one thread type must be selected." ||
+ thread_type="$thread"
+ fi
+ done
+fi
+
echo "install prefix $prefix"
echo "source path $source_path"
echo "C compiler $cc"
--
1.8.3.2
Probably ok.
As for the other patchset - there's yet another detail that I'd like to have
confirmed by Anton before it's ok to go in (and which might be good to think
about before pushing this one as well, in case it requires rethinking
anything): If pthreads (or w32threads) are detected but no atomics are
available, you'd end up with a build with HAVE_THREADS=0 but HAVE_PTHREADS=1
(or HAVE_W32THREADS=1). Most of the normal frame/slice threading is hidden
behind HAVE_THREADS so that would work as expected, but there's some extra
threading code directly behind mainly HAVE_PTHREADS. Does some of the code
behind HAVE_PTHREADS also rely on properly working atomics, or is that only
in the normal frame/slice threading?
That is - if atomics are unavailable, should we also explicitly disable
everything in $THREADS_LIST, not just 'threads' itself?
Since the atomics can use pthread mutexes as well - the only possible
issue (at the moment) would be HAVE_W32THREADS=1 with HAVE_THREADS=0.
Since nothing uses HAVE_W32THREADS on its own outside of the normal
HAVE_THREADS code (contrary to pthreads - we've got some code that uses
HAVE_PTHREADS directly), there probably isn't any issue. But see the
comment on the other patch as well.
// Martin
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel