Source RPM value and CPACK_RPM_DEBUGINFO_SINGLE_PACKAGE

I have a question on reported ‘Source RPM’ value and CPACK_RPM_DEBUGINFO_SINGLE_PACKAGE usage.

I have the following files:

CMakeLists.txt:

cmake_minimum_required(VERSION 3.17.5)

project(main VERSION 1.0.0)

set(CMAKE_CXX_STANDARD 11)

add_library(foo foo.cpp)

add_executable(${PROJECT_NAME} main.cpp)

target_link_libraries(${PROJECT_NAME} foo)

include(GNUInstallDirs)

install(FILES
        foo.h
        DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/foo
        COMPONENT devel)

# Install foo.so symbolic link for devel RPM
install(TARGETS foo
        LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
        COMPONENT foo
        NAMELINK_COMPONENT devel)

set(CPACK_COMPONENTS_ALL devel ${PROJECT_NAME})

set(CPACK_GENERATOR RPM)

set(CPACK_PACKAGE_NAME ${PROJECT_NAME})

set(CPACK_PACKAGE_VERSION ${PACKAGE_VERSION})

set(CPACK_RPM_COMPONENT_INSTALL ON)

set(CPACK_RPM_CONFIG_DEFAULT_GROUP ${PROJ-ECT_NAME})

set(CPACK_RPM_CONFIG_DEFAULT_USER ${PROJECT_NAME})

# Enable generation of debuginfo RPM package(s)
set(CPACK_RPM_DEBUGINFO_PACKAGE ON)

# Create a single debuginfo package even if components packaging is set
# TODO - FIXME! If enabled, foo-devel RPM metadata has 'Source RPM  : foo-devel-3.5.5-5.el7.src.rpm',
#               if disabled, foo-devel RPM metadata has 'Source RPM  : foo-3.5.5-5.el7.src.rpm', expected or bug?
#set(CPACK_RPM_DEBUGINFO_SINGLE_PACKAGE ON)

set(CPACK_RPM_FILE_NAME RPM-DEFAULT)

set(CPACK_RPM_MAIN_COMPONENT ${PROJECT_NAME})

set(CPACK_RPM_PACKAGE_RELEASE 1)

set(CPACK_RPM_PACKAGE_RELEASE_DIST ON)

include(CPack)

foo.h:

#ifndef FOO_H
#define FOO_H

void foo();

#endif // FOO_H

foo.cpp:

#include "foo.h"

#include <cstdlib>

void foo()
{
  system("cmake3 --version");
}

main.cpp:

#include "foo.h"

int main()
{
  foo();
}
$ cmake3 --version
cmake3 version 3.17.5

CMake suite maintained and supported by Kitware (kitware.com/cmake).

$ g++ --version
g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)

$ uname -r
3.10.0-1160.15.2.el7.x86_64

With #set(CPACK_RPM_DEBUGINFO_SINGLE_PACKAGE ON) disabled, the devel RPM’s metadata reports a Source RPM value of main-devel-1.0.0-1.el7.src.rpm:

build]$ rm -rf * && cmake3 .. && make package && rpm -qip *devel*.rpm | grep 'Source RPM'
-- The C compiler identification is GNU 4.8.5
-- The CXX compiler identification is GNU 4.8.5
...
CPackRPM: Will use GENERATED spec file: /.../CMakeCPackBug/build/_CPack_Packages/Linux/RPM/SPECS/main.spec
CPack3: - package: /.../CMakeCPackBug/build/main-1.0.0-1.el7.x86_64.rpm generated.
CPack3: - package: /.../CMakeCPackBug/build/main-devel-1.0.0-1.el7.x86_64.rpm generated.
Source RPM  : main-devel-1.0.0-1.el7.src.rpm
build]$

With set(CPACK_RPM_DEBUGINFO_SINGLE_PACKAGE ON) enabled, the devel RPM’s metadata reports a Source RPM value of main-1.0.0-1.el7.src.rpm:

build]$ rm -rf * && cmake3 .. && make package && rpm -qip *devel*.rpm | grep 'Source RPM'
-- The C compiler identification is GNU 4.8.5
-- The CXX compiler identification is GNU 4.8.5
...
CPackRPM: Will use GENERATED spec file: /.../CMakeCPackBug/build/_CPack_Packages/Linux/RPM/SPECS/main.spec
CPack3: - package: /.../CMakeCPackBug/build/main-1.0.0-1.el7.x86_64.rpm generated.
CPack3: - package: /.../CMakeCPackBug/build/main-devel-1.0.0-1.el7.x86_64.rpm generated.
Source RPM  : main-1.0.0-1.el7.src.rpm
build]$

It does not seem correct that whether or not CPACK_RPM_DEBUGINFO_SINGLE_PACKAGE is enabled should be changing the RPM metadata Source RPM field as neither the SRPM nor the devel RPM are debuginfo related. Is this a bug or expected behavior?

Thanks,
masdaq