Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

CMake reporting DOWNLOAD_EXTRACT_TIMESTAMP option and CMP0135 policy-related warning for remotes #3846

Closed
jhlegarreta opened this issue Jan 4, 2023 · 1 comment · Fixed by #4404
Labels
type:Infrastructure Infrastructure/ecosystem related changes, such as CMake or buildbots

Comments

@jhlegarreta
Copy link
Member

Description

The CMake configure step is reporting a warning related to the DOWNLOAD_EXTRACT_TIMESTAMP option and policy CMP0135 for the ITKModuleTemplate:
https://open.cdash.org/build/8374987/configure

And at least one remote (ITKTextureFeatures):
https://open.cdash.org/build/8374782/configure

It is weird that the rest of the remotes are not reporting the warning. This seems worrying. The warning has been observed on Jan 3 2023 for the first time in the module template or the remotes.

Impact analysis

Unsure.

Expected behavior

The CMake configuration step should complete without warnings.

Actual behavior

The CMake configuration step raises a warning related to the DOWNLOAD_EXTRACT_TIMESTAMP option and CMP0135 policy .

Versions

main/master.

Environment

Any OS/compiler. Unsure about CMake.

Additional Information

A few notes:

A quick look at some of the remotes shows a great diversity in their CMakeLists.txt files: they have gone out-of-sync.

@dzenanz
Copy link
Member

dzenanz commented Jan 16, 2024

A brand new remote module (https://github.com/thewtex/ANTsWasm) has this problem when configured locally:

The C compiler identification is MSVC 19.38.33134.0
The CXX compiler identification is MSVC 19.38.33134.0
Detecting C compiler ABI info
Detecting C compiler ABI info - done
Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.38.33130/bin/Hostx64/x64/cl.exe - skipped
Detecting C compile features
Detecting C compile features - done
Detecting CXX compiler ABI info
Detecting CXX compiler ABI info - done
Check for working CXX compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.38.33130/bin/Hostx64/x64/cl.exe - skipped
Detecting CXX compile features
Detecting CXX compile features - done
Found Python3: C:/Program Files/Python311/python.exe (found suitable version "3.11.0", minimum required is "3.7") found components: Interpreter Development Development.Module Development.Embed 
ITK is setting ANTsWasm's MSVC_RUNTIME_LIBRARY to dynamic
Found Git: C:/Program Files/Git/cmd/git.exe (found version "2.43.0.windows.1") 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.25/Modules/ExternalProject.cmake:3074 (message):
  The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
  not set.  The policy's OLD behavior will be used.  When using a URL
  download, the timestamps of extracted files should preferably be that of
  the time of extraction, otherwise code that depends on the extracted
  contents might not be rebuilt if the URL changes.  The OLD behavior
  preserves the timestamps from the archive instead, but this is usually not
  what you want.  Update your project to the NEW behavior or specify the
  DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
  robustness issue.
Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.25/Modules/ExternalProject.cmake:4184 (_ep_add_download_command)
  C:/Dev/ITK-git/Utilities/ClangFormat/DownloadClangFormat.cmake:47 (ExternalProject_Add)
  C:/Dev/ITK-git/CMake/ITKModuleClangFormat.cmake:17 (include)
  C:/Dev/ITK-git/CMake/ITKModuleMacros.cmake:9 (include)
  C:/Dev/ITK-git/CMake/ITKModuleExternal.cmake:159 (include)
  CMakeLists.txt:7 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

ITK is setting WrapITK's MSVC_RUNTIME_LIBRARY to dynamic
Performing Test ITK_UNDEFINED_SYMBOLS_ALLOWED - Failed
ANTsWasm: Creating module.
ANTsWasm: Creating itkANTSRegistration submodule.
Configuring done
Generating done

#4404 fixes it for me.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
type:Infrastructure Infrastructure/ecosystem related changes, such as CMake or buildbots
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants