From da77e0cb390c02da5ec58ee59a1d7b30aa9187e5 Mon Sep 17 00:00:00 2001 From: NOT XVilka Date: Fri, 25 Apr 2025 02:26:58 +0800 Subject: [PATCH] build: enable GNU C99 extension by default (#5099) Co-authored-by: Anton Kochkov --- .github/workflows/ci.yml | 4 ++-- meson.build | 11 ++++++++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6829677cc4..7c6e02fc4c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -368,7 +368,7 @@ jobs: working-directory: rizin - name: Build run: | - meson setup --prefix=/usr build && ninja -C build + meson setup -Dc_std=gnu99 --prefix=/usr build && ninja -C build working-directory: rizin - name: Install run: ninja -C build install @@ -450,7 +450,7 @@ jobs: run: find subprojects -name '*.wrap' | xargs sed -i '/^depth = 1$/d' working-directory: rizin - name: Build with Meson + Ninja - run: meson setup --prefix=/usr build && ninja -C build + run: meson setup -Dc_std=gnu99 --prefix=/usr build && ninja -C build working-directory: rizin - name: Install with Ninja run: ninja -C build install diff --git a/meson.build b/meson.build index 66496216f3..c419cc2b68 100644 --- a/meson.build +++ b/meson.build @@ -5,7 +5,6 @@ project('rizin', 'c', default_options: [ 'buildtype=debugoptimized', 'b_vscrt=from_buildtype', - 'c_std=c99', 'warning_level=1', ] ) @@ -91,6 +90,16 @@ if cc.has_argument('-Wenum-compare') add_project_arguments('-DCC_SUPPORTS_W_ENUM_COMPARE', language: ['c', 'cpp']) endif +if cc.has_argument('-std=gnu99') + add_project_arguments('-std=gnu99', language: ['c', 'cpp']) +elif cc.has_argument('--std=gnu99') + add_project_arguments('--std=gnu99', language: ['c', 'cpp']) +elif cc.has_argument('-std=c99') + add_project_arguments('-std=c99', language: ['c', 'cpp']) +elif cc.has_argument('--std=c99') + add_project_arguments('--std=c99', language: ['c', 'cpp']) +endif + # Sanitize correct usage of rz_strf() if cc.has_argument('-Werror=sizeof-pointer-memaccess') add_project_arguments('-Werror=sizeof-pointer-memaccess', language: ['c', 'cpp'])