# aom: cmake: check for -Wmissing-declarations support

**URL:** <https://discourse.libsdl.org/t/aom-cmake-check-for-wmissing-declarations-support/53581>\
**Category:** SDL Commits\
**Created:** [August 14, 2024, 2:31pm UTC](https://discourse.libsdl.org/t/aom-cmake-check-for-wmissing-declarations-support/53581 "2024-08-14T14:31:01Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![SDLPushPostBot](https://discourse.libsdl.org/user_avatar/discourse.libsdl.org/sdlpushpostbot/32/4370_2.png) [@SDLPushPostBot](https://discourse.libsdl.org/u/SDLPushPostBot)\
**Post date:** [August 14, 2024, 2:31pm UTC](https://discourse.libsdl.org/t/aom-cmake-check-for-wmissing-declarations-support/53581/1 "2024-08-14T14:31:01Z")

</div>

> <https://github.com/libsdl-org/aom/commit/98339a35355d6870a87b3be3cb542cd630935f53>
>
> Bug: aomedia:3416
> Change-Id: Ic4eee8b758f91f8689f4a7ff832bca7803f383a9

```diff
From 98339a35355d6870a87b3be3cb542cd630935f53 Mon Sep 17 00:00:00 2001
From: James Zern <[EMAIL REDACTED]>
Date: Mon, 12 Aug 2024 13:22:29 -0700
Subject: [PATCH] cmake: check for -Wmissing-declarations support

Bug: aomedia:3416
Change-Id: Ic4eee8b758f91f8689f4a7ff832bca7803f383a9
---
 CMakeLists.txt | 6 ++++++
 build/cmake/aom_configure.cmake | 1 +
 2 files changed, 7 insertions(+)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 05dcd57d6..9f9a1b395 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -472,6 +472,12 @@ if(CONFIG_LIBYUV OR CONFIG_TUNE_BUTTERAUGLI)
   add_library(yuv OBJECT ${AOM_LIBYUV_SOURCES})
   if(NOT MSVC)
     target_compile_options(yuv PRIVATE -Wno-shadow)
+ # Many functions in libyuv trigger this warning when enabled with gcc and
+ # clang.
+ is_flag_present(AOM_CXX_FLAGS "-Wmissing-declarations" flag_present)
+ if(flag_present)
+ target_compile_options(yuv PRIVATE -Wno-missing-declarations)
+ endif()
     # Many functions in libyuv trigger this warning when enabled with clang.
     is_flag_present(AOM_CXX_FLAGS "-Wmissing-prototypes" flag_present)
     if(flag_present)
diff --git a/build/cmake/aom_configure.cmake b/build/cmake/aom_configure.cmake
index 44fe8b757..418ecfac1 100644
--- a/build/cmake/aom_configure.cmake
+++ b/build/cmake/aom_configure.cmake
@@ -343,6 +343,7 @@ else()
   add_compiler_flag_if_supported("-Wformat=2")
   add_c_flag_if_supported("-Wimplicit-function-declaration")
   add_compiler_flag_if_supported("-Wlogical-op")
+ add_compiler_flag_if_supported("-Wmissing-declarations")
   if(CMAKE_C_COMPILER_ID MATCHES "Clang")
     add_compiler_flag_if_supported("-Wmissing-prototypes")
   else()

```
