| Summary: | Ломается сборка gimagereader после обновления до cmake-3.17.3 | ||
|---|---|---|---|
| Product: | Sisyphus | Reporter: | Vitaly Lipatov <lav> |
| Component: | gimagereader | Assignee: | Vitaly Lipatov <lav> |
| Status: | CLOSED FIXED | QA Contact: | qa-sisyphus |
| Severity: | normal | ||
| Priority: | P5 | CC: | lav, mike |
| Version: | unstable | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
|
Description
Vitaly Lipatov
2020-06-25 22:30:01 MSK
Видимо, дело в этим изменении, начинающемся с 3.17.0, о котором пишет cmake при сборке:
CMake Warning (dev) in CMakeLists.txt:
Policy CMP0100 is not set: Let AUTOMOC and AUTOUIC process .hh files. Run
"cmake --help-policy CMP0100" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
For compatibility, CMake is excluding the header file(s):
"/tmp/.private/lav/RPM/BUILD/gimagereader-3.3.1/common/CCITTFax4Encoder.hh"
"/tmp/.private/lav/RPM/BUILD/gimagereader-3.3.1/common/LangTables.hh"
"/tmp/.private/lav/RPM/BUILD/gimagereader-3.3.1/common/PaperSize.hh"
"/tmp/.private/lav/RPM/BUILD/gimagereader-3.3.1/qt/src/Acquirer.hh"
...
$ cmake --help-policy CMP0100
CMP0100
-------
Let ``AUTOMOC`` and ``AUTOUIC`` process
header files that end with a ``.hh`` extension.
Since version 3.17, CMake processes header files that end with a
``.hh`` extension in ``AUTOMOC`` and ``AUTOUIC``.
In earlier CMake versions, these header files were ignored by
``AUTOMOC`` and ``AUTOUIC``.
This policy affects how header files that end with a ``.hh`` extension
get treated in ``AUTOMOC`` and ``AUTOUIC``.
The ``OLD`` behavior for this policy is to ignore ``.hh`` header files
in ``AUTOMOC`` and ``AUTOUIC``.
The ``NEW`` behavior for this policy is to process ``.hh`` header files
in ``AUTOMOC`` and ``AUTOUIC`` just like other header files.
.. note::
To silence the ``CMP0100`` warning source files can be excluded from
``AUTOMOC`` and ``AUTOUIC`` processing by setting the
source file properties ``SKIP_AUTOMOC``, ``SKIP_AUTOUIC`` or
``SKIP_AUTOGEN``.
.. code-block:: cmake
# Source skip example:
set_property(SOURCE /path/to/file1.hh PROPERTY SKIP_AUTOMOC ON)
set_property(SOURCE /path/to/file2.hh PROPERTY SKIP_AUTOUIC ON)
set_property(SOURCE /path/to/file3.hh PROPERTY SKIP_AUTOGEN ON)
This policy was introduced in CMake version 3.17.0. CMake version
3.17.0 warns when the policy is not set and uses ``OLD`` behavior.
Use the ``cmake_policy()`` command to set it to ``OLD`` or ``NEW``
explicitly.
gimagereader-3.3.1-alt3 -> sisyphus: Thu Jun 25 2020 Vitaly Lipatov <lav@altlinux.ru> 3.3.1-alt3 - fix build with cmake after 3.17.0 (ALT bug 38643) Тогда я добавлю для памяти, что исправление сделано в апстриме так:
++IF(${CMAKE_VERSION} VERSION_GREATER "3.17.0")
++CMAKE_POLICY(SET CMP0100 NEW)
++ENDIF()
Они не захотели применить появившийся в 3.7.0 VERSION_GREATER_EQUAL
Поэтому сборка c cmake 3.17.0 работать не будет, хотя в спеке это не указано.
|