Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
F
ffmpeg.wasm-core
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Linshizhi
ffmpeg.wasm-core
Commits
9c37d765
Commit
9c37d765
authored
Oct 17, 2017
by
Diego Biurrun
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
configure: Add check_cc/require_cc helper functions to simplify some expressions
parent
83fef16b
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
34 additions
and
37 deletions
+34
-37
configure
configure
+34
-37
No files found.
configure
View file @
9c37d765
...
...
@@ -1129,6 +1129,14 @@ check_compile_assert(){
test_code cc
"
$headers
"
"char c[2 * !!(
$condition
) - 1]"
"
$@
"
&&
enable
"
$name
"
}
check_cc
(){
log check_cc
"
$@
"
name
=
$1
shift
disable
"
$name
"
test_code cc
"
$@
"
&&
enable
"
$name
"
}
require
(){
log require
"
$@
"
name_version
=
"
$1
"
...
...
@@ -1137,6 +1145,13 @@ require(){
check_lib
$name
"
$@
"
||
die
"ERROR:
$name_version
not found"
}
require_cc
(){
log require_cc
"
$@
"
name
=
"
$1
"
shift
test_code cc
"
$@
"
||
die
"ERROR:
$name
failed"
}
require_header
(){
log require_header
"
$@
"
headers
=
"
$1
"
...
...
@@ -4172,18 +4187,12 @@ extern_prefix=${sym%%ff_extern*}
!
disabled inline_asm
&&
check_inline_asm inline_asm
'"" ::'
for
restrict_keyword
in
restrict __restrict__ __restrict
""
;
do
test_cc
<<
EOF
&& break
void foo(char *
$restrict_keyword
p);
EOF
test_code cc
""
"char *
$restrict_keyword
p"
&&
break
done
test_cc
<<
EOF
&& enable pragma_deprecated
void foo(void) { _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"") }
EOF
check_cc pragma_deprecated
""
'_Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")'
test_cc
<<
EOF
|| die "endian test failed"
unsigned int endian = 'B' << 24 | 'I' << 16 | 'G' << 8 | 'E';
EOF
require_cc
"endian test"
""
"unsigned int endian = 'B' << 24 | 'I' << 16 | 'G' << 8 | 'E'"
od
-t
x1
$TMPO
|
grep
-q
'42 *49 *47 *45'
&&
enable
bigendian
check_gas
()
{
...
...
@@ -4334,19 +4343,17 @@ elif enabled ppc; then
check_cflags
-maltivec
-mabi
=
altivec
# check if our compiler supports Motorola AltiVec C API
test_code cc altivec.h
"vector signed int v1 = (vector signed int) { 0 };
vector signed int v2 = (vector signed int) { 1 };
v1 = vec_add(v1, v2);"
||
disable altivec
check_cc altivec altivec.h
"vector signed int v1 = (vector signed int) { 0 };
vector signed int v2 = (vector signed int) { 1 };
v1 = vec_add(v1, v2);"
enabled altivec
||
warn
"Altivec disabled, possibly missing --cpu flag"
fi
if
enabled vsx
;
then
check_cflags
-mvsx
&&
test_code cc altivec.h
"int v[4] = { 0 };
vector signed int v1 = vec_vsx_ld(0, v);"
||
disable vsx
check_cc vsx altivec.h
"int v[4] = { 0 };
vector signed int v1 = vec_vsx_ld(0, v);"
fi
if
enabled power8
;
then
...
...
@@ -4427,7 +4434,7 @@ EOF
fi
test_code cc arm_neon.h
"int16x8_t test = vdupq_n_s16(0)"
&&
enable
intrinsics_neon
check_cc intrinsics_neon arm_neon.h
"int16x8_t test = vdupq_n_s16(0)"
check_ldflags
-Wl
,--as-needed
...
...
@@ -4761,15 +4768,11 @@ EOF
enabled vaapi
&&
require vaapi va/va.h vaInitialize
-lva
enabled vaapi
&&
test_code cc
"va/va.h"
"vaCreateSurfaces(0, 0, 0, 0, 0, 0, 0, 0)"
||
disable vaapi
enabled vaapi
&&
check_lib vaapi_drm
"va/va.h va/va_drm.h"
vaGetDisplayDRM
-lva
-lva-drm
enabled vaapi
&&
check_lib vaapi_x11
"va/va.h va/va_x11.h"
vaGetDisplay
-lva
-lva-x11
-lX11
if
enabled vaapi
;
then
require_cc vaapi
"va/va.h"
"vaCreateSurfaces(0, 0, 0, 0, 0, 0, 0, 0)"
check_lib vaapi_drm
"va/va.h va/va_drm.h"
vaGetDisplayDRM
-lva
-lva-drm
check_lib vaapi_x11
"va/va.h va/va_x11.h"
vaGetDisplay
-lva
-lva-x11
-lX11
fi
enabled vaapi
&&
test_cpp_condition
"va/va.h"
"VA_CHECK_VERSION(1, 0, 0)"
&&
...
...
@@ -4821,9 +4824,7 @@ check_disable_warning_headers -Wno-unused-variable
check_objcflags
-fobjc-arc
&&
enable
objc_arc
test_cc
<<
EOF
&& enable blocks_extension
void (^block)(void);
EOF
check_cc blocks_extension
""
"void (^block)(void)"
# add some linker flags
check_ldflags
-Wl
,--warn-common
...
...
@@ -4877,14 +4878,10 @@ if enabled proper_dce; then
if
test_ldflags
-Wl
,
${
version_script
}
,
$TMPV
;
then
append SHFLAGS
'-Wl,${version_script},\$(SUBDIR)lib\$(NAME).ver'
quotes
=
'""'
test_cc
<<
EOF
&& enable symver_asm_label
void ff_foo(void) __asm__ ("av_foo@VERSION");
void ff_foo(void) {
${
inline_asm
+__asm__(
$quotes
);
}
}
EOF
test_cc
<<
EOF
&& enable symver_gnu_asm
__asm__(".symver ff_foo,av_foo@VERSION");
void ff_foo(void) {}
EOF
check_cc symver_asm_label
""
"void ff_foo(void) __asm__ ("
av_foo@VERSION
");
void ff_foo(void) {
${
inline_asm
+__asm__(
$quotes
);
}
}"
check_cc symver_gnu_asm
""
"__asm__("
.symver ff_foo,av_foo@VERSION
");
void ff_foo(void) {}"
fi
fi
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment