mirror of
				https://github.com/qgis/QGIS.git
				synced 2025-11-04 00:04:25 -05:00 
			
		
		
		
	A race condition triggered that sometimes the file
output/python/qgis/__init__.py was not created before a python uic
compiler started and therefore the required module could not be
imported.
This leads to errors like
[ 82%] Generating ui_dialogAbout.py
Traceback (most recent call last):
  File "../../../../../scripts/pyuic-wrapper.py", line 26, in <module>
    import qgis.PyQt.uic.pyuic
ImportError: No module named qgis.PyQt.uic.pyuic
python/plugins/GdalTools/tools/CMakeFiles/zzz-GdalTools-2-depend.dir/build.make:117:
recipe for target 'python/plugins/GdalTools/tools/ui_dialogAbout.py'
failed
make[2]: *** [python/plugins/GdalTools/tools/ui_dialogAbout.py] Error 1
CMakeFiles/Makefile2:5074: recipe for target
'python/plugins/GdalTools/tools/CMakeFiles/zzz-GdalTools-2-depend.dir/all'
failed
make[1]: ***
[python/plugins/GdalTools/tools/CMakeFiles/zzz-GdalTools-2-depend.dir/all]
Error 2
Makefile:160: recipe for target 'all' failed
make: *** [all] Error 2
		
	
			
		
			
				
	
	
		
			46 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
SET (QGIS_PYQT_DIR ${PYTHON_SITE_PACKAGES_DIR}/qgis/PyQt)
 | 
						|
SET (PYTHON_OUTPUT_DIRECTORY ${QGIS_OUTPUT_DIRECTORY}/python/qgis/PyQt)
 | 
						|
 | 
						|
SET(PYQT_COMPAT_FILES
 | 
						|
  __init__.py
 | 
						|
  QtWidgets.py
 | 
						|
  QtCore.py
 | 
						|
  QtGui.py
 | 
						|
  QtPrintSupport.py
 | 
						|
  QtWebKit.py
 | 
						|
  QtWebKitWidgets.py
 | 
						|
  QtNetwork.py
 | 
						|
  QtXml.py
 | 
						|
  QtSql.py
 | 
						|
  QtTest.py
 | 
						|
  QtSvg.py
 | 
						|
  Qsci.py
 | 
						|
  uic/__init__.py
 | 
						|
  uic/pyuic.py
 | 
						|
  uic/properties.py
 | 
						|
)
 | 
						|
 | 
						|
ADD_CUSTOM_TARGET(pyqtcompat ALL)
 | 
						|
ADD_DEPENDENCIES(pyqtcompat pyutils)
 | 
						|
 | 
						|
IF(ENABLE_QT5)
 | 
						|
  SET(PYQT_PREFIX PyQt5)
 | 
						|
ELSE(ENABLE_QT5)
 | 
						|
  SET(PYQT_PREFIX PyQt4)
 | 
						|
ENDIF(ENABLE_QT5)
 | 
						|
 | 
						|
FOREACH(pyfile ${PYQT_COMPAT_FILES})
 | 
						|
  GET_FILENAME_COMPONENT(_dir ${pyfile} PATH)
 | 
						|
  SET(pyfile ${PYQT_PREFIX}/${pyfile})
 | 
						|
  ADD_CUSTOM_COMMAND(TARGET pyqtcompat
 | 
						|
    POST_BUILD
 | 
						|
    COMMAND ${CMAKE_COMMAND} -E make_directory ${PYTHON_OUTPUT_DIRECTORY}/${_dir}
 | 
						|
    COMMAND ${CMAKE_COMMAND} -E copy ${pyfile} ${PYTHON_OUTPUT_DIRECTORY}/${_dir}
 | 
						|
    WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
 | 
						|
    DEPENDS ${pyfile}
 | 
						|
  )
 | 
						|
  INSTALL(FILES ${pyfile} DESTINATION "${QGIS_PYQT_DIR}/${_dir}")
 | 
						|
ENDFOREACH(pyfile)
 | 
						|
 | 
						|
PY_COMPILE(pyqtcompat "${PYTHON_OUTPUT_DIRECTORY}")
 |