# vars set by build environment. if os.environ.get('NO_GEOS_CONFIG'): geos_config = None else: geos_config = GEOSConfig(os.environ.get('GEOS_CONFIG', 'geos-config')) # Fail installation if the GEOS shared library does not meet the minimum # version. We ship it with Shapely for Windows, so no need to check on # that platform. geos_version = None if geos_config and not os.environ.get( 'NO_GEOS_CHECK') or sys.platform == 'win32': try: log.info("Shapely >= 1.3 requires GEOS >= 3.3. " "Checking for GEOS version...") geos_version = geos_config.version() log.info("Found GEOS version: %s", geos_version) if (set(sys.argv).intersection(['install', 'build', 'build_ext']) and shapely_version >= Version("1.3") and geos_version < (3, 3)): log.critical("Shapely >= 1.3 requires GEOS >= 3.3. " "Install GEOS 3.3+ and reinstall Shapely.") sys.exit(1) except OSError as exc: log.warn( "Failed to determine system's GEOS version: %s. " "Installation continuing. GEOS version will be " "checked on import of shapely.", exc) # Handle UTF-8 encoding of certain text files. open_kwds = {}
# vars set by build environment. if os.environ.get('NO_GEOS_CONFIG'): geos_config = None else: geos_config = GEOSConfig(os.environ.get('GEOS_CONFIG', 'geos-config')) # Fail installation if the GEOS shared library does not meet the minimum # version. We ship it with Shapely for Windows, so no need to check on # that platform. geos_version = None if geos_config and not os.environ.get('NO_GEOS_CHECK') or sys.platform == 'win32': try: log.info( "Shapely >= 1.3 requires GEOS >= 3.3. " "Checking for GEOS version...") geos_version = geos_config.version() log.info("Found GEOS version: %s", geos_version) if (set(sys.argv).intersection(['install', 'build', 'build_ext']) and shapely_version >= Version("1.3") and geos_version < (3, 3)): log.critical( "Shapely >= 1.3 requires GEOS >= 3.3. " "Install GEOS 3.3+ and reinstall Shapely.") sys.exit(1) except OSError as exc: log.warn( "Failed to determine system's GEOS version: %s. " "Installation continuing. GEOS version will be " "checked on import of shapely.", exc) # Handle UTF-8 encoding of certain text files. open_kwds = {}