Changes between Version 3 and Version 4 of CMake


Ignore:
Timestamp:
Oct 22, 2011, 6:47:05 PM (12 years ago)
Author:
Mateusz Łoskot
Comment:

Formatting

Legend:

Unmodified
Added
Removed
Modified
  • CMake

    v3 v4  
    1818 * GDAL is formed of core implementation and large number of configurable modules (drivers).
    1919 * GDAL depends on large number of third-party software libraries.
    20  * There is 1:1 dependency between GDAL driver and third-party library. Many drivers share common dependencies like zlib or libjpeg libraries.
    21  * I suggest to divide configuration into three steps (see SOCI approach):
     20 * There is 1:1 dependency between GDAL driver and third-party library. Many drivers share common dependencies like ''zlib'' or ''libjpeg'' libraries.
     21 * I suggest to divide configuration into three steps (see ''SOCI'' approach):
    2222   1. Basic configuration which determines architecture, system, building toolset, etc.
    2323   2. Look for all third-party libraries used by GDAL, required and optional.
     
    2626 * If any of GDAL features or drivers are explicitly switched off, then it does not affect lookup in step '''2.''' but only decisions in step '''3.''' Means, lookup of corresponding dependencies is performed.
    2727 * This way we don't care about solving the whole graph dependencies.
    28    * For example, if user switches off JPEG driver, We don't want to have to check: are there any other drivers enabled that depend on ''libjpeg''? Shall we turn off ''libjpeg'' lookup?
     28   * For example, if user switches off ''JPEG'' driver, We don't want to have to check: are there any other drivers enabled that depend on ''libjpeg''? Shall we turn off ''libjpeg'' lookup?
    2929   * Disabling a driver is decision that solely affects step '''3.''' but does not affect any part of step '''2.'''
    3030   * But, configuration choices by user which switch off/on dependencies lookup in step '''2.''' will do affect checks performed in step '''3.''' automatically.
    31    * For example, if user switches off ''libjpeg'', then all features and drivers depending on JPEG support will be switched off automatically in step '''3.'''
     31   * For example, if user switches off ''libjpeg'', then all features and drivers depending on ''JPEG'' support will be switched off automatically in step '''3.'''
    3232