[Bug 1900076] Re: file globbing broken on armhf
Gianfranco Costamagna
1900076 at bugs.launchpad.net
Wed Jul 7 11:04:31 UTC 2021
Hello, I can't reproduce with cmake 3.18 on impish...
CMake Warning (dev) in //CMakeLists.txt:
No project() command is present. The top-level CMakeLists.txt file must
contain a literal, direct call to the project() command. Add a line of
code such as
project(ProjectName)
near the top of the file, but after cmake_minimum_required().
CMake is pretending there is a "project(Project)" command on the first
line.
This warning is for project developers. Use -Wno-dev to suppress it.
-- The C compiler identification is GNU 10.3.0
-- The CXX compiler identification is GNU 10.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - 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: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
//./path/1: //./path/1/2: //./path/1/2/3
CMake Warning (dev) in //CMakeLists.txt:
No cmake_minimum_required command is present. A line of code such as
cmake_minimum_required(VERSION 3.18)
should be added at the top of the file. The version specified may be lower
if you wish to support older CMake versions for this project. For more
information run "cmake --help-policy CMP0000".
This warning is for project developers. Use -Wno-dev to suppress it.
-- Configuring done
-- Generating done
-- Build files have been written to: /
same with paths created under /foo/
CMake Warning (dev) in CMakeLists.txt:
No project() command is present. The top-level CMakeLists.txt file must
contain a literal, direct call to the project() command. Add a line of
code such as
project(ProjectName)
near the top of the file, but after cmake_minimum_required().
CMake is pretending there is a "project(Project)" command on the first
line.
This warning is for project developers. Use -Wno-dev to suppress it.
-- The C compiler identification is GNU 10.3.0
-- The CXX compiler identification is GNU 10.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - 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: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
/foo/./path/1: /foo/./path/1/2: /foo/./path/1/2/3
CMake Warning (dev) in CMakeLists.txt:
No cmake_minimum_required command is present. A line of code such as
cmake_minimum_required(VERSION 3.18)
should be added at the top of the file. The version specified may be lower
if you wish to support older CMake versions for this project. For more
information run "cmake --help-policy CMP0000".
This warning is for project developers. Use -Wno-dev to suppress it.
-- Configuring done
-- Generating done
-- Build files have been written to: /foo/bar
** Changed in: cmake (Ubuntu)
Status: New => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to cmake in Ubuntu.
https://bugs.launchpad.net/bugs/1900076
Title:
file globbing broken on armhf
Status in cmake package in Ubuntu:
Fix Released
Bug description:
Running cmake on ubuntu armhf fails compiler ID detection with errors
like:
CMake Error at /usr/share/cmake-3.16/Modules/CMakeCompilerIdDetection.cmake:26 (list):
list sub-command REMOVE_ITEM requires two or more arguments.
Call Stack (most recent call first):
/usr/share/cmake-3.16/Modules/CMakeDetermineCompilerId.cmake:211 (compiler_id_detection)
/usr/share/cmake-3.16/Modules/CMakeDetermineCompilerId.cmake:230 (CMAKE_DETERMINE_COMPILER_ID_WRITE)
/usr/share/cmake-3.16/Modules/CMakeDetermineCompilerId.cmake:32 (CMAKE_DETERMINE_COMPILER_ID_BUILD)
/usr/share/cmake-3.16/Modules/CMakeDetermineCCompiler.cmake:116 (CMAKE_DETERMINE_COMPILER_ID)
Looking in more detail, the `file(GLOB ...)`s regularly (though not always?) return empty results. For example, with
#: mkdir -p path/1/2/3
#: cat CMakeLists.txt
file(GLOB p1 "./path/*")
file(GLOB p2 "./path/1/*")
file(GLOB p3 "./path/1/2/*")
message("${p1}: ${p2}: ${p3}")
#: cmake .
.. I see on amd64
/root/./path/1: /root/./path/1/2/: /root/./path/1/2/3
but on ARMHF just
: :
For different choices of path, sometimes I'll get results at some
depth but not at others.
tested on Docker amd64/ubuntu:latest and arm32v7/ubuntu:latest +
build-essential + cmake (3.16.3-1ubuntu1)
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/cmake/+bug/1900076/+subscriptions
More information about the foundations-bugs
mailing list