cmake_minimum_required(VERSION 3.10) project(ffmpeg) set(CMAKE_CXX_STANDARD 14) add_definitions(-D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DPIC -DHAVE_AV_CONFIG_H -DBUILDING_avfilter -DBUILDING_avformat) set(CMAKE_C_FLAGS "-std=c11 -fomit-frame-pointer -fPIC -g \ -Wdeclaration-after-statement -Wall -Wdisabled-optimization -Wpointer-arith -Wredundant-decls \ -Wwrite-strings -Wtype-limits -Wundef -Wmissing-prototypes -Wno-pointer-to-int-cast \ -Wstrict-prototypes -Wempty-body -Wno-parentheses -Wno-switch -Wno-format-zero-length \ -Wno-pointer-sign -Wno-unused-const-variable -Wno-char-subscripts \ -O0 -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -Werror=format-security \ -Werror=implicit-function-declaration -Werror=missing-prototypes -Werror=return-type \ -Werror=vla -Wformat -fdiagnostics-color=auto") SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--fatal-warnings -fPIC \ -Wl,-z,noexecstack \ -Wl,-z,now \ -Wl,-z,relro \ -Wl,-z,defs \ -Wl, -rdynamic") include_directories( ${CMAKE_SOURCE_DIR} # for ./config.h ${CMAKE_SOURCE_DIR}/../../build/include # for libx264 ) add_library(avfilter STATIC ) add_library(avformat STATIC ) add_library(avcodec STATIC ) add_library(swresample STATIC ) add_library(swscale STATIC ) add_library(avutil STATIC ) add_executable(ffmpeg ) target_link_libraries(ffmpeg dl pthread dl m ${CMAKE_SOURCE_DIR}/../../build/lib/libx264.a avfilter avformat avcodec swresample swscale avutil pthread m dl m m m pthread m)