cmake ARCHIVE_EXTRACT command

Open
#78 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
45/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
cmake
Domain
build-system

Research direction

Start with the referenced linux/CMakeLists.txt and windows/CMakeLists.txt files, then inspect how the project declares its required CMake versions. Reproduce the failure with CMake 3.16 and verify the chosen minimum-version behavior on Linux and Windows. Done means unsupported CMake versions produce a clear result and the documented requirements match the commands used.

Written by the indexing model from the issue text.

Description

bug

Used a CMake ARCHIVE_EXTRACT command that supports only from CMake 3.18.
But required cmake version is 3.10 ( for linux ) or 3.14 ( for windows ).

This leads to embarrassing errors ( ubuntu 20.04 with out-of-box cmake version 3.16 ):

CMake Error at 
flutter/ephemeral/.plugin_symlinks/serious_python_linux/linux/CMakeLists.txt:25 
(file):
  file does not recognize sub-command ARCHIVE_EXTRACT


Unable to generate build files

Error building Flet app - see the log of failed command above.

CMake docs about ARCHIVE_EXTRACT:
https://cmake.org/cmake/help/latest/command/file.html#archive-extract

ARCHIVE_EXTRACT usage:
https://github.com/flet-dev/serious-python/blob/e44dff11516019060d4e37e7a4ab900750c0243c/src/serious_python_linux/linux/CMakeLists.txt#L25
https://github.com/flet-dev/serious-python/blob/e44dff11516019060d4e37e7a4ab900750c0243c/src/serious_python_windows/windows/CMakeLists.txt#L24

I suggest increase requirement version of cmake to 3.18.
There will be a clearer error message.
And it will also allow to learn the list_prepend function. Because list(TRANSFORM ..) and list(PREPEND..) will already be supported in cmake 3.18.
E.g. here https://github.com/flet-dev/serious-python/blob/e44dff11516019060d4e37e7a4ab900750c0243c/src/serious_python/example/run_example/linux/flutter/CMakeLists.txt#L14

Dominant language
Dart
Stars
324
Forks
47
Avg merge
7h 41m
Merged PRs (30d)
2

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from flet-dev/serious-python

All issues in flet-dev/serious-python

Similar issues

More Dart issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.