mirror of
				https://github.com/luanti-org/luanti.git
				synced 2025-11-04 09:15:29 +01:00 
			
		
		
		
	Verify compiler version before building anything (#6293)
GCC 4.9 and Clang 3.4 are the minimum
This commit is contained in:
		@@ -11,6 +11,8 @@ set(PROJECT_NAME_CAPITALIZED "Minetest")
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# Works only for cmake 3.1 and greater
 | 
					# Works only for cmake 3.1 and greater
 | 
				
			||||||
set(CMAKE_CXX_STANDARD 11)
 | 
					set(CMAKE_CXX_STANDARD 11)
 | 
				
			||||||
 | 
					set(GCC_MINIMUM_VERSION "4.8")
 | 
				
			||||||
 | 
					set(CLANG_MINIMUM_VERSION "3.4")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Also remember to set PROTOCOL_VERSION in network/networkprotocol.h when releasing
 | 
					# Also remember to set PROTOCOL_VERSION in network/networkprotocol.h when releasing
 | 
				
			||||||
set(VERSION_MAJOR 0)
 | 
					set(VERSION_MAJOR 0)
 | 
				
			||||||
@@ -203,6 +205,23 @@ find_package(GMP REQUIRED)
 | 
				
			|||||||
find_package(Json REQUIRED)
 | 
					find_package(Json REQUIRED)
 | 
				
			||||||
find_package(Lua REQUIRED)
 | 
					find_package(Lua REQUIRED)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# JsonCPP doesn't compile well on GCC 4.8
 | 
				
			||||||
 | 
					if(NOT ENABLE_SYSTEM_JSONCPP)
 | 
				
			||||||
 | 
						set(GCC_MINIMUM_VERSION "4.9")
 | 
				
			||||||
 | 
					endif()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
 | 
				
			||||||
 | 
						if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS "${GCC_MINIMUM_VERSION}")
 | 
				
			||||||
 | 
							message(FATAL_ERROR "Insufficient gcc version, found ${CMAKE_CXX_COMPILER_VERSION}. "
 | 
				
			||||||
 | 
								"Version ${GCC_MINIMUM_VERSION} or higher is required.")
 | 
				
			||||||
 | 
						endif()
 | 
				
			||||||
 | 
					elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
 | 
				
			||||||
 | 
						if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS "${CLANG_MINIMUM_VERSION}")
 | 
				
			||||||
 | 
							message(FATAL_ERROR "Insufficient clang version, found ${CMAKE_CXX_COMPILER_VERSION}. "
 | 
				
			||||||
 | 
								"Version ${CLANG_MINIMUM_VERSION} or higher is required.")
 | 
				
			||||||
 | 
						endif()
 | 
				
			||||||
 | 
					endif()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Subdirectories
 | 
					# Subdirectories
 | 
				
			||||||
# Be sure to add all relevant definitions above this
 | 
					# Be sure to add all relevant definitions above this
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user