diff options
| author | Tomi Lähteenmäki <lihis@lihis.net> | 2025-03-28 11:53:14 +0200 |
|---|---|---|
| committer | Jussi Pakkanen <jpakkane@gmail.com> | 2025-04-05 22:37:52 +0300 |
| commit | 4bc6b2701c39f88ba013c37856f1f90d4bbc9dca (patch) | |
| tree | d6bb59360673abbf1a9ba177d1e6eb6ac09308c2 /test cases | |
| parent | 1dde32681a88e6272b53b62adfb18d12926be3e3 (diff) | |
| download | meson-4bc6b2701c39f88ba013c37856f1f90d4bbc9dca.tar.gz | |
cmake/interpreter: Don't add __CMake_build to includes
Don't add "<project_source_dir>/<subproject>/__CMake_build" directory
to include directories.
Fixes #12351
Diffstat (limited to 'test cases')
5 files changed, 42 insertions, 0 deletions
diff --git a/test cases/cmake/28 include directories/main.c b/test cases/cmake/28 include directories/main.c new file mode 100644 index 000000000..bb7fe2966 --- /dev/null +++ b/test cases/cmake/28 include directories/main.c @@ -0,0 +1,9 @@ +#include <stdint.h> +#include <cmTest.h> + +int main(void) +{ + cmTestFunc(); + return 0; +} + diff --git a/test cases/cmake/28 include directories/meson.build b/test cases/cmake/28 include directories/meson.build new file mode 100644 index 000000000..e2c92d70f --- /dev/null +++ b/test cases/cmake/28 include directories/meson.build @@ -0,0 +1,17 @@ +project('include directories test', 'c') + +cm = import('cmake') + +sub_pro = cm.subproject('cmTest') +sub_dep = sub_pro.dependency('cmTest') + +missing_inc_dir_arg = '-Werror=missing-include-dirs' +has_missing_inc_dir = meson.get_compiler('c').has_argument(missing_inc_dir_arg) +if not has_missing_inc_dir + error('MESON_SKIP_TEST: Compiler does not support ' + missing_inc_dir_arg) +else + add_project_arguments(missing_inc_dir_arg, language: 'c') +endif + +exe1 = executable('exe1', ['main.c'], dependencies: [sub_dep]) +test('test1', exe1) diff --git a/test cases/cmake/28 include directories/subprojects/cmTest/CMakeLists.txt b/test cases/cmake/28 include directories/subprojects/cmTest/CMakeLists.txt new file mode 100644 index 000000000..66ea3cb30 --- /dev/null +++ b/test cases/cmake/28 include directories/subprojects/cmTest/CMakeLists.txt @@ -0,0 +1,6 @@ +cmake_minimum_required(VERSION ${CMAKE_VERSION}) + +project(cmTest C) + +add_library(cmTest src/cmTest.c) +target_include_directories(cmTest PUBLIC include) diff --git a/test cases/cmake/28 include directories/subprojects/cmTest/include/cmTest.h b/test cases/cmake/28 include directories/subprojects/cmTest/include/cmTest.h new file mode 100644 index 000000000..3af821cc3 --- /dev/null +++ b/test cases/cmake/28 include directories/subprojects/cmTest/include/cmTest.h @@ -0,0 +1,3 @@ +#pragma once + +void cmTestFunc(void); diff --git a/test cases/cmake/28 include directories/subprojects/cmTest/src/cmTest.c b/test cases/cmake/28 include directories/subprojects/cmTest/src/cmTest.c new file mode 100644 index 000000000..f77b694cc --- /dev/null +++ b/test cases/cmake/28 include directories/subprojects/cmTest/src/cmTest.c @@ -0,0 +1,7 @@ +#include "include/cmTest.h" +#include <stdio.h> + +void cmTestFunc(void) +{ + printf ("Hello\n"); +} |
