From e86d23daedbe5b79b0dacaeb289875dc56b570ae Mon Sep 17 00:00:00 2001 From: Jude Melton-Houghton Date: Sun, 23 Oct 2022 15:59:12 -0400 Subject: [PATCH] Check sizeof(int) and sizeof(size_t) --- src/CMakeLists.txt | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 8bf896bb1..d61757cc1 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,8 +1,19 @@ project(minetest) +INCLUDE(CheckTypeSize) INCLUDE(CheckIncludeFiles) INCLUDE(CheckLibraryExists) +check_type_size(int SIZEOF_INT BUILTIN_TYPES_ONLY LANGUAGE CXX) +if(SIZEOF_INT LESS 4) + message(FATAL_ERROR "Minetest will not work with int less than 32 bits wide.") +endif() + +check_type_size(size_t SIZEOF_SIZE_T LANGUAGE CXX) +if(SIZEOF_SIZE_T LESS 4) + message(FATAL_ERROR "Minetest will not work with size_t less than 32 bits wide.") +endif() + # Add custom SemiDebug build mode set(CMAKE_CXX_FLAGS_SEMIDEBUG "-O1 -g -Wall" CACHE STRING "Flags used by the C++ compiler during semidebug builds."