forked from qt-creator/qt-creator
		
	
		
			
	
	
		
			56 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
		
		
			
		
	
	
			56 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
| 
								 | 
							
								#.rst:
							 | 
						||
| 
								 | 
							
								# FindQbs
							 | 
						||
| 
								 | 
							
								# ---------
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# Try to locate the Qbs library.
							 | 
						||
| 
								 | 
							
								# If found, this will define the following variables:
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# ``QBS_FOUND``
							 | 
						||
| 
								 | 
							
								#     True if the qbs library is available
							 | 
						||
| 
								 | 
							
								# ``QBS_INCLUDE_DIRS``
							 | 
						||
| 
								 | 
							
								#     The qbs include directories
							 | 
						||
| 
								 | 
							
								# ``QBSCORE_LIBRARIES``
							 | 
						||
| 
								 | 
							
								#     The qbscore library for linking
							 | 
						||
| 
								 | 
							
								# ``QBS_INSTALL_DIR``
							 | 
						||
| 
								 | 
							
								#     Top level qbs installation directory
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# If ``QBS_FOUND`` is TRUE, it will also define the following
							 | 
						||
| 
								 | 
							
								# imported target:
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# ``QBS::QBS``
							 | 
						||
| 
								 | 
							
								#     The qbs library
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								find_program(QBS_BINARY NAMES qbs)
							 | 
						||
| 
								 | 
							
								if(QBS_BINARY STREQUAL "QBS_BINARY-NOTFOUND")
							 | 
						||
| 
								 | 
							
								  set(_QBS_INSTALL_DIR "QBS_INSTALL_DIR-NOTFOUND")
							 | 
						||
| 
								 | 
							
								else()
							 | 
						||
| 
								 | 
							
								  get_filename_component(_QBS_BIN_DIR "${QBS_BINARY}" DIRECTORY)
							 | 
						||
| 
								 | 
							
								  get_filename_component(_QBS_INSTALL_DIR "${_QBS_BIN_DIR}" DIRECTORY)
							 | 
						||
| 
								 | 
							
								endif()
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								set(QBS_INSTALL_DIR "${_QBS_INSTALL_DIR}" CACHE PATH "Qbs install directory")
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								find_path(QBS_INCLUDE_DIRS NAMES qbs.h PATH_SUFFIXES qbs HINTS "${QBS_INSTALL_DIR}/include")
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								find_library(QBSCORE_LIBRARIES NAMES qbscore HINTS "${QBS_INSTALL_DIR}/lib")
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								include(FindPackageHandleStandardArgs)
							 | 
						||
| 
								 | 
							
								find_package_handle_standard_args(QBS DEFAULT_MSG QBSCORE_LIBRARIES QBS_INCLUDE_DIRS)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if(QBS_FOUND AND NOT TARGET Qbs::QbsCore)
							 | 
						||
| 
								 | 
							
								  add_library(Qbs::QbsCore UNKNOWN IMPORTED)
							 | 
						||
| 
								 | 
							
								  # FIXME: Detect whether QBS_ENABLE_PROJECT_FILE_UPDATES is set in qbscore!
							 | 
						||
| 
								 | 
							
								  set_target_properties(Qbs::QbsCore PROPERTIES
							 | 
						||
| 
								 | 
							
								                        IMPORTED_LOCATION "${QBSCORE_LIBRARIES}"
							 | 
						||
| 
								 | 
							
								                        INTERFACE_INCLUDE_DIRECTORIES "${QBS_INCLUDE_DIRS}"
							 | 
						||
| 
								 | 
							
								                        INTERFACE_COMPILE_DEFINITIONS "QBS_ENABLE_PROJECT_FILE_UPDATES")
							 | 
						||
| 
								 | 
							
								endif()
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								mark_as_advanced(QBS_INCLUDE_DIRS QBSCORE_LIBRARIES QBS_INSTALL_DIR)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								include(FeatureSummary)
							 | 
						||
| 
								 | 
							
								set_package_properties(QBS PROPERTIES
							 | 
						||
| 
								 | 
							
								  URL "https://qt.io/qbs"
							 | 
						||
| 
								 | 
							
								  DESCRIPTION "QBS build system")
							 | 
						||
| 
								 | 
							
								
							 |