Index: third_party/opus/opus.gyp |
diff --git a/third_party/opus/opus.gyp b/third_party/opus/opus.gyp |
index b64f9903ca006a15117cd437afbe14adc69f58e0..a4744865e21a1d3f316bab42ff9f4701470d4fa5 100644 |
--- a/third_party/opus/opus.gyp |
+++ b/third_party/opus/opus.gyp |
@@ -24,6 +24,33 @@ |
}], |
], |
}, |
+ 'target_defaults': { |
+ 'target_conditions': [ |
+ ['_type=="executable"', { |
+ # All of the executable targets depend on 'opus'. Unfortunately the |
+ # 'dependencies' block cannot be inherited via 'target_defaults'. |
+ 'include_dirs': [ |
+ 'src/celt', |
+ 'src/silk', |
+ ], |
+ 'conditions': [ |
+ ['OS == "win"', { |
+ 'defines': [ |
+ 'inline=__inline', |
+ ], |
+ }], |
+ ['OS=="android"', { |
+ 'libraries': [ |
+ '-llog', |
+ ], |
+ }], |
+ ['clang==1', { |
+ 'cflags': [ '-Wno-absolute-value' ], |
+ }] |
+ ], |
+ }], |
+ ], |
+ }, |
'targets': [ |
{ |
'target_name': 'opus', |
@@ -134,30 +161,9 @@ |
'dependencies': [ |
'opus' |
], |
- 'conditions': [ |
- ['OS == "win"', { |
- 'defines': [ |
- 'inline=__inline', |
- ], |
- }], |
- ['OS=="android"', { |
- 'link_settings': { |
- 'libraries': [ |
- '-llog', |
- ], |
- }, |
- }], |
- ['clang==1', { |
- 'cflags': [ '-Wno-absolute-value' ], |
- }] |
- ], |
'sources': [ |
'src/src/opus_compare.c', |
], |
- 'include_dirs': [ |
- 'src/celt', |
- 'src/silk', |
- ], |
}, # target opus_compare |
{ |
'target_name': 'opus_demo', |
@@ -165,30 +171,63 @@ |
'dependencies': [ |
'opus' |
], |
+ 'sources': [ |
+ 'src/src/opus_demo.c', |
+ ], |
+ }, # target opus_demo |
+ { |
+ 'target_name': 'test_opus_api', |
+ 'type': 'executable', |
+ 'dependencies': [ |
+ 'opus' |
+ ], |
+ 'sources': [ |
+ 'src/tests/test_opus_api.c', |
+ ], |
+ }, # target test_opus_api |
+ { |
+ 'target_name': 'test_opus_encode', |
+ 'type': 'executable', |
+ 'dependencies': [ |
+ 'opus' |
+ ], |
+ 'sources': [ |
+ 'src/tests/test_opus_encode.c', |
+ ], |
+ }, # target test_opus_encode |
+ { |
+ 'target_name': 'test_opus_decode', |
+ 'type': 'executable', |
+ 'dependencies': [ |
+ 'opus' |
+ ], |
+ 'sources': [ |
+ 'src/tests/test_opus_decode.c', |
+ ], |
+ # test_opus_decode passes a null pointer to opus_decode() for an argument |
+ # marked as requiring a non-null value by the nonnull function attribute, |
+ # and expects opus_decode() to fail. Disable the -Wnonnull option to avoid |
+ # a compilation error if -Werror is specified. |
'conditions': [ |
- ['OS == "win"', { |
- 'defines': [ |
- 'inline=__inline', |
- ], |
+ ['os_posix==1 and OS!="mac" and OS!="ios"', { |
+ 'cflags': ['-Wno-nonnull'], |
}], |
- ['OS=="android"', { |
- 'link_settings': { |
- 'libraries': [ |
- '-llog', |
- ], |
+ ['OS=="mac" or OS=="ios"', { |
+ 'xcode_settings': { |
+ 'WARNING_CFLAGS': ['-Wno-nonnull'], |
}, |
}], |
- ['clang==1', { |
- 'cflags': [ '-Wno-absolute-value' ], |
- }] |
], |
- 'sources': [ |
- 'src/src/opus_demo.c', |
+ }, # target test_opus_decode |
+ { |
+ 'target_name': 'test_opus_padding', |
+ 'type': 'executable', |
+ 'dependencies': [ |
+ 'opus' |
], |
- 'include_dirs': [ |
- 'src/celt', |
- 'src/silk', |
+ 'sources': [ |
+ 'src/tests/test_opus_padding.c', |
], |
- }, # target opus_demo |
+ }, # target test_opus_padding |
] |
} |