[DEV] continue integration of MacOS

This commit is contained in:
Edouard DUPIN 2016-10-11 21:14:19 +02:00
parent a185955c38
commit dd2ad9f9fb
7 changed files with 2241 additions and 10 deletions

2181
generated/MacOs/config.h Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
/* Generated by ffconf */
#ifndef AVUTIL_AVCONFIG_H
#define AVUTIL_AVCONFIG_H
#define AV_HAVE_BIGENDIAN 0
#define AV_HAVE_FAST_UNALIGNED 1
#define AV_HAVE_INCOMPATIBLE_LIBAV_ABI 0
#endif /* AVUTIL_AVCONFIG_H */

View File

@ -0,0 +1,5 @@
/* Automatically generated by version.sh, do not manually edit! */
#ifndef AVUTIL_FFVERSION_H
#define AVUTIL_FFVERSION_H
#define FFMPEG_VERSION "n3.1.1-1-gdfafbc5"
#endif /* AVUTIL_FFVERSION_H */

View File

@ -20,11 +20,13 @@ def add_generate_path(target, my_module):
def add_common_property(target, my_module):
add_generate_path(target, my_module)
my_module.add_flag('c', [
"-D_ISOC99_SOURCE",
"-D_FILE_OFFSET_BITS=64",
"-D_LARGEFILE_SOURCE",
"-D_POSIX_C_SOURCE=200112",
"-D_DARWIN_C_SOURCE",
"-D_XOPEN_SOURCE=600",
"-DHAVE_AV_CONFIG_H",
])
@ -35,6 +37,24 @@ def add_common_property(target, my_module):
"-D_REENTRANT",
"-DPIC"
])
elif "MacOs" in target.get_type() \
or "IOs" in target.get_type():
my_module.add_depend([
"QuartzCore",
"AppKit",
"opengl",
"CoreVideo",
"AVFoundation",
"CoreMedia",
"VideoDecodeAcceleration",
"CoreGraphics",
"CoreServices",
])
my_module.add_flag('c', [
"-DZLIB_CONST",
"-D_REENTRANT",
"-DPIC"
])
elif "Windows" in target.get_type():
my_module.add_flag('c', [
"-U__STRICT_ANSI__",
@ -53,7 +73,7 @@ def add_common_property(target, my_module):
])
else:
my_module.add_flag('c', [
"-DCONFIG_THUMB=1",
"-DCONFIG_THUMB=0",
])
if target.get_arch() == "arm":
@ -85,26 +105,34 @@ def add_common_property(target, my_module):
#"-Wno-unused-const-variable",
"-fno-math-errno",
"-fno-signed-zeros",
"-Werror=format-security",
##"-Werror=format-security",
"-Werror=implicit-function-declaration",
"-Werror=missing-prototypes",
"-Werror=return-type",
"-Werror=vla",
"-Wformat",
"-fdiagnostics-color=auto",
##"-Werror=vla",
##"-Wformat",
##"-fdiagnostics-color=auto",
])
if "Windows" in target.get_type():
my_module.add_flag('c', [
"Wdeclaration-after-statement",
"-fomit-frame-pointer",
"-Wno-maybe-uninitialized",
])
elif "MacOs" in target.get_type() \
or "IOs" in target.get_type():
my_module.add_flag('c', [
"-fomit-frame-pointer",
"-Qunused-arguments",
])
my_module.add_path('ffmpeg/compat/dispatch_semaphore')
if target.get_compilator() == "clang":
my_module.add_flag('c', [ "-Wno-uninitialized"])
else:
my_module.add_flag('c', [ "-Wno-maybe-uninitialized"])
if "Linux" in target.get_type():
# TODO: Check the real impact ...
my_module.add_flag('link-dynamic', ["-Wl,-Bsymbolic"])
my_module.add_flag('link-dynamic', ["-Wl,-Bsymbolic"])

View File

@ -73,7 +73,11 @@ def configure(target, my_module):
my_module.add_optionnal_depend('X11', src_file=[
'ffmpeg/libavdevice/xv.c'
])
if "Windows" in target.get_type():
elif "MacOs" in target.get_type():
my_module.add_src_file([
'ffmpeg/libavdevice/avfoundation.m',
])
elif "Windows" in target.get_type():
my_module.add_src_file([
'ffmpeg/libavdevice/dshow.c',
'ffmpeg/libavdevice/dshow_common.c',

View File

@ -255,6 +255,11 @@ def configure(target, my_module):
pass
else:
debug.warning("unknow architecture ...");
if "MacOs" in target.get_type():
my_module.add_src_file([
'ffmpeg/libavfilter/vf_coreimage.m',
])
my_module.compile_version("c", 1999)
my_module.add_path("ffmpeg")
@ -268,6 +273,8 @@ def configure(target, my_module):
my_module.add_depend([
'ffmpeg-avcodec',
'ffmpeg-avutil',
'ffmpeg-avformat',
'ffmpeg-avswscale',
])
return True

View File

@ -469,8 +469,7 @@ def configure(target, my_module):
my_module.add_depend('m')
my_module.add_depend('z')
my_module.add_depend('pthread')
if "Windows" not in target.get_type() \
and "Android" not in target.get_type():
if "linux" in target.get_type():
my_module.add_depend('rpc')
my_module.add_depend('arpa')
my_module.add_depend([