mirror of
				https://github.com/raysan5/raylib.git
				synced 2025-11-04 09:44:20 +00:00 
			
		
		
		
	Remove that link_libraries_to_executable() hack and defines a proper raylib target that can be used with target_link_libraries. The same target is also available for external (user) code by using find_package(raylib). This results in: - Remove hardcoded build directories from examples and games CMakeLists.txt - Allow rlgl_standalone and other special examples to be built easily - Allow CMake projects to find_package(raylib instead of fiddling with pkg-config - Makes code a little more maintainable - Fixes #471, #606. - Makes code less confusing by removing the double use of PLATFORM (#584). Note that this is still not _The Right Way_(TM), because normally raylib-config.cmake (or its includes) would be automatically generated. I didn't manage to get that to work though, so I went the easier route of just wrapping pkg_check_modules for consumption by find_package.
		
			
				
	
	
		
			22 lines
		
	
	
		
			803 B
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			803 B
		
	
	
	
		
			CMake
		
	
	
	
	
	
set(PACKAGE_VERSION "@PROJECT_VERSION@")
 | 
						|
 | 
						|
if(PACKAGE_FIND_VERSION VERSION_EQUAL PACKAGE_VERSION)
 | 
						|
  set(PACKAGE_VERSION_EXACT TRUE)
 | 
						|
endif()
 | 
						|
if(NOT PACKAGE_FIND_VERSION VERSION_GREATER PACKAGE_VERSION)
 | 
						|
  set(PACKAGE_VERSION_COMPATIBLE TRUE)
 | 
						|
else(NOT PACKAGE_FIND_VERSION VERSION_GREATER PACKAGE_VERSION)
 | 
						|
  set(PACKAGE_VERSION_UNSUITABLE TRUE)
 | 
						|
endif(NOT PACKAGE_FIND_VERSION VERSION_GREATER PACKAGE_VERSION)
 | 
						|
 | 
						|
# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it:
 | 
						|
if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "@CMAKE_SIZEOF_VOID_P@" STREQUAL "")
 | 
						|
   return()
 | 
						|
endif()
 | 
						|
 | 
						|
if(NOT CMAKE_SIZEOF_VOID_P STREQUAL "@CMAKE_SIZEOF_VOID_P@")
 | 
						|
  math(EXPR installedBits "8 * 8")
 | 
						|
  set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)")
 | 
						|
  set(PACKAGE_VERSION_UNSUITABLE TRUE)
 | 
						|
endif()
 |