Blame view

buildroot/buildroot-2016.08.1/package/mpv/0002-wscript-improve-stdatomic-check.patch 1.81 KB
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
  From 5a635a0066b10d2ba25e0ce78cc57b2be619371c Mon Sep 17 00:00:00 2001
  From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
  Date: Mon, 8 Aug 2016 23:34:32 +0200
  Subject: [PATCH] wscript: improve stdatomic check
  
  The current stdatomic check verifies the availability of the function by
  calling atomic_load(). It also uses this test to check if linking
  against libatomic is needed or not.
  
  Unfortunately, on specific architectures (namely SPARC), using
  atomic_load() does *not* require linking against libatomic, while other
  atomic operations do. Due to this, mpv's wscript concludes that
  stdatomic is available, and that linking against libatomic is not
  needed, causing the following link failure:
  
  [190/190] Linking build/mpv
  audio/out/ao.c.13.o: In function `ao_query_and_reset_events':
  /home/peko/autobuild/instance-0/output/build/mpv-0.18.1/build/../audio/out/ao.c:399: undefined reference to `__atomic_fetch_and_4'
  
  In order to fix this, the stdatomic check is adjusted to call
  atomic_fetch_add() instead, which does require libatomic. Thanks to
  this, the wscript realizes that linking against libatomic is needed, and
  the build works fine.
  
  Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
  ---
  Submitted upstream: https://github.com/mpv-player/mpv/pull/3403
  
   wscript | 2 +-
   1 file changed, 1 insertion(+), 1 deletion(-)
  
  diff --git a/wscript b/wscript
  index a18df6f..4c49caf 100644
  --- a/wscript
  +++ b/wscript
  @@ -154,7 +154,7 @@ main_dependencies = [
           'func': check_libs(['atomic'],
               check_statement('stdatomic.h',
                   'atomic_int_least64_t test = ATOMIC_VAR_INIT(123);'
  -                'int test2 = atomic_load(&test)'))
  +                'atomic_fetch_add(&test, 1)'))
       }, {
           'name': 'atomic-builtins',
           'desc': 'compiler support for __atomic built-ins',
  -- 
  2.7.4