FFmpeg/libffmpeg-avcodec/buildfile

145 lines
6.8 KiB
Plaintext
Raw Normal View History

2024-08-06 10:50:54 +00:00
intf_libs = # Interface dependencies.
impl_libs = # Implementation dependencies.
#import _libs += libhello%lib{hello}
lib{ffmpeg-avcodec}: h{libavcodec/ac3_parser \
libavcodec/adts_parser \
libavcodec/avcodec \
libavcodec/avdct \
libavcodec/avfft \
libavcodec/bsf \
libavcodec/codec \
libavcodec/codec_desc \
libavcodec/codec_id \
libavcodec/codec_par \
libavcodec/d3d11va \
libavcodec/defs \
libavcodec/dirac \
libavcodec/dv_profile \
libavcodec/dxva2 \
libavcodec/jni \
libavcodec/mediacodec \
libavcodec/packet \
libavcodec/qsv \
libavcodec/vdpau \
libavcodec/version \
libavcodec/version_major \
libavcodec/videotoolbox \
libavcodec/vorbis_parser \
} \
c{libavcodec/ac3_parser \
libavcodec/adts_parser \
libavcodec/allcodecs \
libavcodec/avcodec \
libavcodec/avdct \
libavcodec/avfft \
libavcodec/packet \
libavcodec/bsf \
libavcodec/codec_desc \
libavcodec/codec_par \
libavcodec/d3d11va \
libavcodec/decode \
libavcodec/dirac \
libavcodec/dv_profile \
libavcodec/encode \
libavcodec/get_buffer \
libavcodec/imgconvert \
libavcodec/jni \
libavcodec/mathtables \
libavcodec/mediacodec \
libavcodec/mpeg12framerate \
libavcodec/options \
libavcodec/parser \
libavcodec/parsers \
libavcodec/profiles \
libavcodec/qsv_api \
libavcodec/raw \
libavcodec/refstruct \
libavcodec/threadprogress \
libavcodec/utils \
libavcodec/version \
libavcodec/vlc \
libavcodec/vorbis_parser \
libavcodec/xiph \
} \
$impl_libs $intf_libs
# Build options.
#
c.poptions =+ "-I$out_root" "-I$src_root" "-I$src_root/libffmpeg-avcodec" "-I$src_root/libffmpeg-avcodec/libavuti"
c.coptions =+ -D_ISOC11_SOURCE
c.coptions =+ -D_FILE_OFFSET_BITS=64
c.coptions =+ -D_LARGEFILE_SOURCE
c.coptions =+ -D_POSIX_C_SOURCE=200112
c.coptions =+ -D_XOPEN_SOURCE=600
c.coptions =+ -DHAVE_AV_CONFIG_H
c.coptions =+ -DBUILDING_avfilter
c.coptions =+ -std=c17
c.coptions =+ -fomit-frame-pointer
c.coptions =+ -pthread
c.coptions =+ -g
c.coptions =+ -Wdeclaration-after-statement
c.coptions =+ -Wall
c.coptions =+ -Wdisabled-optimization
c.coptions =+ -Wpointer-arith
c.coptions =+ -Wredundant-decls
c.coptions =+ -Wwrite-strings
c.coptions =+ -Wtype-limits
c.coptions =+ -Wundef
c.coptions =+ -Wmissing-prototypes
c.coptions =+ -Wstrict-prototypes
c.coptions =+ -Wempty-body
c.coptions =+ -Wno-parentheses
c.coptions =+ -Wno-switch
c.coptions =+ -Wno-format-zero-length
c.coptions =+ -Wno-pointer-sign
c.coptions =+ -Wno-unused-const-variable
c.coptions =+ -Wno-bool-operation
c.coptions =+ -Wno-char-subscripts
c.coptions =+ -O3
c.coptions =+ -fno-math-errno
c.coptions =+ -fno-signed-zeros
c.coptions =+ -fno-tree-vectorize
c.coptions =+ -Werror=format-security
c.coptions =+ -Werror=implicit-function-declaration
c.coptions =+ -Werror=missing-prototypes
c.coptions =+ -Werror=return-type
c.coptions =+ -Werror=vla
c.coptions =+ -Wformat
c.coptions =+ -fdiagnostics-color=auto
c.coptions =+ -Wno-maybe-uninitialized
#obja{*}: c.poptions += -DLIBFFMPEG_STATIC_BUILD
#objs{*}: c.poptions += -DLIBFFMPEG_SHARED_BUILD
# Export options.
#
lib{ffmpeg-avcodec}:
{
c.export.poptions = "-I$out_root" "-I$src_root"
c.export.libs = $intf_libs
}
#liba{ffmpeg}: c.export.poptions += -DLIBFFMPEG_STATIC
#libs{ffmpeg}: c.export.poptions += -DLIBFFMPEG_SHARED
# For pre-releases use the complete version to make sure they cannot
# be used in place of another pre-release or the final version. See
# the version module for details on the version.* variable values.
#
if $version.pre_release
lib{ffmpeg-avcodec}: bin.lib.version = "-$version.project_id"
else
lib{ffmpeg-avcodec}: bin.lib.version = "-$version.major.$version.minor"
# Install into the libffmpeg/ subdirectory of, say, /usr/include/
# recreating subdirectories.
#
{h}{*}:
{
install = include/libffmpeg/
install.subdirs = true
}