nasa/cFS

Renaming the project name to the name of the containing folder causes make SIMULATION=native prep to fail

embeddedpenguin opened this issue · 8 comments

Checklist (Please check before submitting)

  • I reviewed the Contributing Guide.
  • I performed a cursory search to see if the bug report is relevant, not redundant, nor in conflict with other tickets.

Describe the bug
When creating a new cfs project, if the name of the project folder is the same name as the _defs folder, the make SIMULATION=native prep fails.

To Reproduce
Steps to reproduce the behavior:
Create a new cfs project (git clone this repo)

git clone <this repo> testcfs
cp -r cfe/cmake/sample_defs testcfs_defs
cp cfe/cmake/Makefile.sample Makefile
cd example_defs; rename 's/example/testcfs/' example_*; mv sample_perfids.h testcfs_perfids.h; cd ..
make distclean
make SIMULATION=native prep

Actual behavior

build output
mkdir -p "build"
(cd "build" && cmake -DCMAKE_INSTALL_PREFIX=/exe -DCMAKE_BUILD_TYPE=debug "/home/user/Projects/testcfs/cfe")
-- OMIT_DEPRECATED=false: Deprecated elements included in build
-- Search path for modules: apps;libs;psp/fsw/modules;cfe/modules
-- Module 'core_api' found at /home/user/Projects/testcfs/cfe/modules/core_api
-- Module 'core_private' found at /home/user/Projects/testcfs/cfe/modules/core_private
-- Module 'ci_lab' found at /home/user/Projects/testcfs/apps/ci_lab
-- Module 'to_lab' found at /home/user/Projects/testcfs/apps/to_lab
-- Module 'sch_lab' found at /home/user/Projects/testcfs/apps/sch_lab
-- Module 'cfe_assert' found at /home/user/Projects/testcfs/cfe/modules/cfe_assert
-- Module 'sample_app' found at /home/user/Projects/testcfs/apps/sample_app
-- Module 'sample_lib' found at /home/user/Projects/testcfs/libs/sample_lib
-- Module 'es' found at /home/user/Projects/testcfs/cfe/modules/es
-- Module 'evs' found at /home/user/Projects/testcfs/cfe/modules/evs
-- Module 'fs' found at /home/user/Projects/testcfs/cfe/modules/fs
-- Module 'sb' found at /home/user/Projects/testcfs/cfe/modules/sb
-- Module 'tbl' found at /home/user/Projects/testcfs/cfe/modules/tbl
-- Module 'time' found at /home/user/Projects/testcfs/cfe/modules/time
-- Module 'osal' found at /home/user/Projects/testcfs/osal
-- Module 'psp' found at /home/user/Projects/testcfs/psp
-- Module 'msg' found at /home/user/Projects/testcfs/cfe/modules/msg
-- Module 'sbr' found at /home/user/Projects/testcfs/cfe/modules/sbr
-- Module 'resourceid' found at /home/user/Projects/testcfs/cfe/modules/resourceid
-- Module 'config' found at /home/user/Projects/testcfs/cfe/modules/config
-- OSAL_SYSTEM_BSPTYPE not defined, no OSAL implementation will be compiled
-- Using file: /home/user/Projects/testcfs/cfe/modules/core_api/config/default_cfe_mission_cfg.h for mission_cfg.h
CMake Error at cmake/global_functions.cmake:83 (message):
  No implementation for perfids.h found
Call Stack (most recent call first):
  cmake/global_functions.cmake:186 (cfe_locate_implementation_file)
  modules/core_api/mission_build.cmake:20 (generate_config_includefile)
  cmake/mission_build.cmake:356 (include)
  CMakeLists.txt:120 (prepare)


-- Configuring incomplete, errors occurred!
See also "/home/user/Projects/testcfs/build/CMakeFiles/CMakeOutput.log".
make: *** [Makefile:126: prep] Error 1

build/CMakeFiles/CMakeOutput.log
The system is: Linux - 6.2.0-33-generic - x86_64
Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
Compiler: /usr/bin/gcc-12 
Build flags: 
Id flags:  

The output was:
0


Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out"

The C compiler identification is GNU, found in "/home/user/Projects/testcfs/build/CMakeFiles/3.22.1/CompilerIdC/a.out"

Detecting C compiler ABI info compiled with the following output:
Change Dir: /home/user/Projects/testcfs/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_53847/fast && gmake[1]: Entering directory '/home/user/Projects/testcfs/build/CMakeFiles/CMakeTmp'
/usr/bin/gmake  -f CMakeFiles/cmTC_53847.dir/build.make CMakeFiles/cmTC_53847.dir/build
gmake[2]: Entering directory '/home/user/Projects/testcfs/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o
/usr/bin/gcc-12   -v -o CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c
Using built-in specs.
COLLECT_GCC=/usr/bin/gcc-12
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-ALHxjy/gcc-12-12.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-12-ALHxjy/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04) 
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_53847.dir/'
 /usr/lib/gcc/x86_64-linux-gnu/12/cc1 -quiet -v -imultiarch x86_64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_53847.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/cciiiPC7.s
GNU C17 (Ubuntu 12.3.0-1ubuntu1~22.04) version 12.3.0 (x86_64-linux-gnu)
	compiled by GNU C version 12.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/include-fixed"
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/lib/gcc/x86_64-linux-gnu/12/include
 /usr/local/include
 /usr/include/x86_64-linux-gnu
 /usr/include
End of search list.
GNU C17 (Ubuntu 12.3.0-1ubuntu1~22.04) version 12.3.0 (x86_64-linux-gnu)
	compiled by GNU C version 12.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: d93534411cccf908c6f3926ba41cb359
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_53847.dir/'
 as -v --64 -o CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o /tmp/cciiiPC7.s
GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.'
Linking C executable cmTC_53847
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_53847.dir/link.txt --verbose=1
/usr/bin/gcc-12  -v CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o -o cmTC_53847 
Using built-in specs.
COLLECT_GCC=/usr/bin/gcc-12
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-ALHxjy/gcc-12-12.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-12-ALHxjy/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04) 
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_53847' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_53847.'
 /usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/ccelz3E4.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_53847 /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_53847' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_53847.'
gmake[2]: Leaving directory '/home/user/Projects/testcfs/build/CMakeFiles/CMakeTmp'
gmake[1]: Leaving directory '/home/user/Projects/testcfs/build/CMakeFiles/CMakeTmp'



Parsed C implicit include dir info from above output: rv=done
  found start of include info
  found start of implicit include info
    add: [/usr/lib/gcc/x86_64-linux-gnu/12/include]
    add: [/usr/local/include]
    add: [/usr/include/x86_64-linux-gnu]
    add: [/usr/include]
  end of search list found
  collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/12/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/12/include]
  collapse include dir [/usr/local/include] ==> [/usr/local/include]
  collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu]
  collapse include dir [/usr/include] ==> [/usr/include]
  implicit include dirs: [/usr/lib/gcc/x86_64-linux-gnu/12/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include]


Parsed C implicit link information from above output:
  link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
  ignore line: [Change Dir: /home/user/Projects/testcfs/build/CMakeFiles/CMakeTmp]
  ignore line: []
  ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_53847/fast && gmake[1]: Entering directory '/home/user/Projects/testcfs/build/CMakeFiles/CMakeTmp']
  ignore line: [/usr/bin/gmake  -f CMakeFiles/cmTC_53847.dir/build.make CMakeFiles/cmTC_53847.dir/build]
  ignore line: [gmake[2]: Entering directory '/home/user/Projects/testcfs/build/CMakeFiles/CMakeTmp']
  ignore line: [Building C object CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o]
  ignore line: [/usr/bin/gcc-12   -v -o CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c]
  ignore line: [Using built-in specs.]
  ignore line: [COLLECT_GCC=/usr/bin/gcc-12]
  ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
  ignore line: [OFFLOAD_TARGET_DEFAULT=1]
  ignore line: [Target: x86_64-linux-gnu]
  ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-ALHxjy/gcc-12-12.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-12-ALHxjy/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu]
  ignore line: [Thread model: posix]
  ignore line: [Supported LTO compression algorithms: zlib zstd]
  ignore line: [gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04) ]
  ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_53847.dir/']
  ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/12/cc1 -quiet -v -imultiarch x86_64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_53847.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/cciiiPC7.s]
  ignore line: [GNU C17 (Ubuntu 12.3.0-1ubuntu1~22.04) version 12.3.0 (x86_64-linux-gnu)]
  ignore line: [	compiled by GNU C version 12.3.0  GMP version 6.2.1  MPFR version 4.1.0  MPC version 1.2.1  isl version isl-0.24-GMP]
  ignore line: []
  ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
  ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"]
  ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/include-fixed"]
  ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/../../../../x86_64-linux-gnu/include"]
  ignore line: [#include "..." search starts here:]
  ignore line: [#include <...> search starts here:]
  ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/12/include]
  ignore line: [ /usr/local/include]
  ignore line: [ /usr/include/x86_64-linux-gnu]
  ignore line: [ /usr/include]
  ignore line: [End of search list.]
  ignore line: [GNU C17 (Ubuntu 12.3.0-1ubuntu1~22.04) version 12.3.0 (x86_64-linux-gnu)]
  ignore line: [	compiled by GNU C version 12.3.0  GMP version 6.2.1  MPFR version 4.1.0  MPC version 1.2.1  isl version isl-0.24-GMP]
  ignore line: []
  ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
  ignore line: [Compiler executable checksum: d93534411cccf908c6f3926ba41cb359]
  ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_53847.dir/']
  ignore line: [ as -v --64 -o CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o /tmp/cciiiPC7.s]
  ignore line: [GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38]
  ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/]
  ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/]
  ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.']
  ignore line: [Linking C executable cmTC_53847]
  ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_53847.dir/link.txt --verbose=1]
  ignore line: [/usr/bin/gcc-12  -v CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o -o cmTC_53847 ]
  ignore line: [Using built-in specs.]
  ignore line: [COLLECT_GCC=/usr/bin/gcc-12]
  ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper]
  ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
  ignore line: [OFFLOAD_TARGET_DEFAULT=1]
  ignore line: [Target: x86_64-linux-gnu]
  ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-ALHxjy/gcc-12-12.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-12-ALHxjy/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu]
  ignore line: [Thread model: posix]
  ignore line: [Supported LTO compression algorithms: zlib zstd]
  ignore line: [gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04) ]
  ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/]
  ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/]
  ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_53847' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_53847.']
  link line: [ /usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/ccelz3E4.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_53847 /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o]
    arg [/usr/lib/gcc/x86_64-linux-gnu/12/collect2] ==> ignore
    arg [-plugin] ==> ignore
    arg [/usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so] ==> ignore
    arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper] ==> ignore
    arg [-plugin-opt=-fresolution=/tmp/ccelz3E4.res] ==> ignore
    arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
    arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
    arg [-plugin-opt=-pass-through=-lc] ==> ignore
    arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
    arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
    arg [--build-id] ==> ignore
    arg [--eh-frame-hdr] ==> ignore
    arg [-m] ==> ignore
    arg [elf_x86_64] ==> ignore
    arg [--hash-style=gnu] ==> ignore
    arg [--as-needed] ==> ignore
    arg [-dynamic-linker] ==> ignore
    arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
    arg [-pie] ==> ignore
    arg [-znow] ==> ignore
    arg [-zrelro] ==> ignore
    arg [-o] ==> ignore
    arg [cmTC_53847] ==> ignore
    arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o]
    arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o]
    arg [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o]
    arg [-L/usr/lib/gcc/x86_64-linux-gnu/12] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12]
    arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu]
    arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib]
    arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu]
    arg [-L/lib/../lib] ==> dir [/lib/../lib]
    arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
    arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
    arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../..]
    arg [CMakeFiles/cmTC_53847.dir/CMakeCCompilerABI.c.o] ==> ignore
    arg [-lgcc] ==> lib [gcc]
    arg [--push-state] ==> ignore
    arg [--as-needed] ==> ignore
    arg [-lgcc_s] ==> lib [gcc_s]
    arg [--pop-state] ==> ignore
    arg [-lc] ==> lib [c]
    arg [-lgcc] ==> lib [gcc]
    arg [--push-state] ==> ignore
    arg [--as-needed] ==> ignore
    arg [-lgcc_s] ==> lib [gcc_s]
    arg [--pop-state] ==> ignore
    arg [/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o]
    arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o]
  collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o]
  collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o]
  collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o]
  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12] ==> [/usr/lib/gcc/x86_64-linux-gnu/12]
  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib] ==> [/usr/lib]
  collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu]
  collapse library dir [/lib/../lib] ==> [/lib]
  collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
  collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../..] ==> [/usr/lib]
  implicit libs: [gcc;gcc_s;c;gcc;gcc_s]
  implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o]
  implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/12;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
  implicit fwks: []

Here is the resulting tree:

testcfs/testcfs_defs
├── arch_build_custom.cmake
├── arch_build_custom_native.cmake
├── cpu1_cfe_es_startup.scr
├── default_osconfig.cmake
├── global_build_options.cmake
├── mission_build_custom.cmake
├── native_osconfig.cmake
├── targets.cmake
├── testcfs_mission_cfg.h
├── testcfs_perfids.h
├── testcfs_platform_cfg.h
├── toolchain-arm-cortexa8_neon-linux-gnueabi.cmake
├── toolchain-i686-linux-clang.cmake
├── toolchain-i686-linux-gnu.cmake
├── toolchain-i686-rtems4.11.cmake
├── toolchain-i686-rtems5.cmake
├── toolchain-i686-rtems6.cmake
├── toolchain-powerpc-440_softfp-linux-gnu.cmake
└── toolchain-ppc-vxworks6.9.cmake

Expected behavior
The project shouldn't care what the parent directory is named. It should build successfully.
If I change the directory name to anything else, like penguinswearingsunglasses, it runs the prep target fine.

System observed on:

  • Linux 6.2.0
  • Ubuntu 22.04

It's not finding testcfs_perfids.h. If you prep with VERBOSE=1 it'll print valid names/locations for this file.

Note the setup steps fail as written (cd example_defs, but you copy it as testcfs_defs). It doesn't look like your build output is from what's described, since testcfs_perfids.h should be a valid name in this case. Can you recreate and confirm there's a real issue, and/or provide setup steps that can recreate the issue? The handful of lines output with VERBOSE=1 where it searches for the perfids.h file would also help if there's still an issue.

The reason why the original instructions didn't work is because I'm using a cfs project generation tool for my purposes, and I tried to change the instructions from what I was using for that project to match with what you would expect. I've confirmed the instructions below should work for anyone.

I've fixed the instructions for reproducing:
NOTE: This is using the rename utility provided by the util-linux package, not the rename package. The original instructions were using the rename package.

git clone https://github.com/nasa/cFS.git testcfs
cd testcfs
git submodule init
git submodule update --recursive
cp -r cfe/cmake/sample_defs testcfs_defs
cp cfe/cmake/Makefile.sample Makefile
cd testcfs_defs; rename example testcfs example_*; mv sample_perfids.h testcfs_perfids.h; cd ..
# sanity purge
make distclean
VERBOSE=1 make SIMULATION=native prep

See the attached log for the failing output (hit github max character limit)
badoutput.txt

Immediately after that output, I can bandaid fix the project to prep properly via the following instructions:

cd ..
# rename to anything other than testcfs
mv testcfs testcfszzz
cd testcfszzz
make distclean
make SIMULATION=native prep

The above bandaid results in a successful prep:

mkdir -p "build"
(cd "build" && cmake -DCMAKE_INSTALL_PREFIX=/exe -DCMAKE_BUILD_TYPE=debug "/home/user/Projects/testcfszzz/cfe")
-- The C compiler identification is GNU 13.2.1
-- 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
-- Mission configuration testcfs automatically selected
-- OMIT_DEPRECATED=false: Deprecated elements included in build
-- Search path for modules: apps;libs;psp/fsw/modules;cfe/modules
-- Module 'core_api' found at /home/user/Projects/testcfszzz/cfe/modules/core_api
-- Module 'core_private' found at /home/user/Projects/testcfszzz/cfe/modules/core_private
-- Module 'ci_lab' found at /home/user/Projects/testcfszzz/apps/ci_lab
-- Module 'to_lab' found at /home/user/Projects/testcfszzz/apps/to_lab
-- Module 'sch_lab' found at /home/user/Projects/testcfszzz/apps/sch_lab
-- Module 'cfe_assert' found at /home/user/Projects/testcfszzz/cfe/modules/cfe_assert
-- Module 'sample_app' found at /home/user/Projects/testcfszzz/apps/sample_app
-- Module 'sample_lib' found at /home/user/Projects/testcfszzz/libs/sample_lib
-- Module 'es' found at /home/user/Projects/testcfszzz/cfe/modules/es
-- Module 'evs' found at /home/user/Projects/testcfszzz/cfe/modules/evs
-- Module 'fs' found at /home/user/Projects/testcfszzz/cfe/modules/fs
-- Module 'sb' found at /home/user/Projects/testcfszzz/cfe/modules/sb
-- Module 'tbl' found at /home/user/Projects/testcfszzz/cfe/modules/tbl
-- Module 'time' found at /home/user/Projects/testcfszzz/cfe/modules/time
-- Module 'osal' found at /home/user/Projects/testcfszzz/osal
-- Module 'psp' found at /home/user/Projects/testcfszzz/psp
-- Module 'msg' found at /home/user/Projects/testcfszzz/cfe/modules/msg
-- Module 'sbr' found at /home/user/Projects/testcfszzz/cfe/modules/sbr
-- Module 'resourceid' found at /home/user/Projects/testcfszzz/cfe/modules/resourceid
-- Module 'config' found at /home/user/Projects/testcfszzz/cfe/modules/config
-- OSAL_SYSTEM_BSPTYPE not defined, no OSAL implementation will be compiled
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/core_api/config/default_cfe_core_api_interface_cfg.h for core_api_interface_cfg.h
-- Using file: /home/user/Projects/testcfszzz/testcfs_defs/testcfs_mission_cfg.h for mission_cfg.h
-- Using file: /home/user/Projects/testcfszzz/testcfs_defs/testcfs_perfids.h for perfids.h
-- Using file: /home/user/Projects/testcfszzz/apps/ci_lab/config/default_ci_lab_fcncodes.h for ci_lab_fcncodes.h
-- Using file: /home/user/Projects/testcfszzz/apps/ci_lab/config/default_ci_lab_interface_cfg.h for ci_lab_interface_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/ci_lab/config/default_ci_lab_mission_cfg.h for ci_lab_mission_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/ci_lab/config/default_ci_lab_perfids.h for ci_lab_perfids.h
-- Using file: /home/user/Projects/testcfszzz/apps/ci_lab/config/default_ci_lab_msgdefs.h for ci_lab_msgdefs.h
-- Using file: /home/user/Projects/testcfszzz/apps/ci_lab/config/default_ci_lab_msg.h for ci_lab_msg.h
-- Using file: /home/user/Projects/testcfszzz/apps/ci_lab/config/default_ci_lab_msgstruct.h for ci_lab_msgstruct.h
-- Using file: /home/user/Projects/testcfszzz/apps/ci_lab/config/default_ci_lab_topicids.h for ci_lab_topicids.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_fcncodes.h for to_lab_fcncodes.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_interface_cfg.h for to_lab_interface_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_mission_cfg.h for to_lab_mission_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_perfids.h for to_lab_perfids.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_msg.h for to_lab_msg.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_msgdefs.h for to_lab_msgdefs.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_msgstruct.h for to_lab_msgstruct.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_tbl.h for to_lab_tbl.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_tbldefs.h for to_lab_tbldefs.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_tblstruct.h for to_lab_tblstruct.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_topicids.h for to_lab_topicids.h
-- Using file: /home/user/Projects/testcfszzz/apps/sch_lab/config/default_sch_lab_interface_cfg.h for sch_lab_interface_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/sch_lab/config/default_sch_lab_mission_cfg.h for sch_lab_mission_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/sch_lab/config/default_sch_lab_perfids.h for sch_lab_perfids.h
-- Using file: /home/user/Projects/testcfszzz/apps/sch_lab/config/default_sch_lab_tbldefs.h for sch_lab_tbldefs.h
-- Using file: /home/user/Projects/testcfszzz/apps/sch_lab/config/default_sch_lab_tbl.h for sch_lab_tbl.h
-- Using file: /home/user/Projects/testcfszzz/apps/sch_lab/config/default_sch_lab_tblstruct.h for sch_lab_tblstruct.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_fcncodes.h for sample_app_fcncodes.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_interface_cfg.h for sample_app_interface_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_mission_cfg.h for sample_app_mission_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_perfids.h for sample_app_perfids.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_msg.h for sample_app_msg.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_msgdefs.h for sample_app_msgdefs.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_msgstruct.h for sample_app_msgstruct.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_tbl.h for sample_app_tbl.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_tbldefs.h for sample_app_tbldefs.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_tblstruct.h for sample_app_tblstruct.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_topicids.h for sample_app_topicids.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/es/config/default_cfe_es_mission_cfg.h for cfe_es_mission_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/es/config/default_cfe_es_interface_cfg.h for cfe_es_interface_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/es/config/default_cfe_es_extern_typedefs.h for cfe_es_extern_typedefs.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/es/config/default_cfe_es_fcncodes.h for cfe_es_fcncodes.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/es/config/default_cfe_es_msgdefs.h for cfe_es_msgdefs.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/es/config/default_cfe_es_msg.h for cfe_es_msg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/es/config/default_cfe_es_msgstruct.h for cfe_es_msgstruct.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/es/config/default_cfe_es_topicids.h for cfe_es_topicids.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/evs/config/default_cfe_evs_mission_cfg.h for cfe_evs_mission_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/evs/config/default_cfe_evs_interface_cfg.h for cfe_evs_interface_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/evs/config/default_cfe_evs_extern_typedefs.h for cfe_evs_extern_typedefs.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/evs/config/default_cfe_evs_fcncodes.h for cfe_evs_fcncodes.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/evs/config/default_cfe_evs_msgdefs.h for cfe_evs_msgdefs.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/evs/config/default_cfe_evs_msg.h for cfe_evs_msg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/evs/config/default_cfe_evs_msgstruct.h for cfe_evs_msgstruct.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/evs/config/default_cfe_evs_topicids.h for cfe_evs_topicids.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/fs/config/default_cfe_fs_mission_cfg.h for cfe_fs_mission_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/fs/config/default_cfe_fs_interface_cfg.h for cfe_fs_interface_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/fs/config/default_cfe_fs_filedef.h for cfe_fs_filedef.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/fs/config/default_cfe_fs_extern_typedefs.h for cfe_fs_extern_typedefs.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/sb/config/default_cfe_sb_mission_cfg.h for cfe_sb_mission_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/sb/config/default_cfe_sb_interface_cfg.h for cfe_sb_interface_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/sb/config/default_cfe_sb_extern_typedefs.h for cfe_sb_extern_typedefs.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/sb/config/default_cfe_sb_fcncodes.h for cfe_sb_fcncodes.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/sb/config/default_cfe_sb_msgdefs.h for cfe_sb_msgdefs.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/sb/config/default_cfe_sb_msg.h for cfe_sb_msg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/sb/config/default_cfe_sb_msgstruct.h for cfe_sb_msgstruct.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/sb/config/default_cfe_sb_topicids.h for cfe_sb_topicids.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/tbl/config/default_cfe_tbl_mission_cfg.h for cfe_tbl_mission_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/tbl/config/default_cfe_tbl_interface_cfg.h for cfe_tbl_interface_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/tbl/config/default_cfe_tbl_extern_typedefs.h for cfe_tbl_extern_typedefs.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/tbl/config/default_cfe_tbl_fcncodes.h for cfe_tbl_fcncodes.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/tbl/config/default_cfe_tbl_msgdefs.h for cfe_tbl_msgdefs.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/tbl/config/default_cfe_tbl_msg.h for cfe_tbl_msg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/tbl/config/default_cfe_tbl_msgstruct.h for cfe_tbl_msgstruct.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/tbl/config/default_cfe_tbl_topicids.h for cfe_tbl_topicids.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/time/config/default_cfe_time_mission_cfg.h for cfe_time_mission_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/time/config/default_cfe_time_interface_cfg.h for cfe_time_interface_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/time/config/default_cfe_time_extern_typedefs.h for cfe_time_extern_typedefs.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/time/config/default_cfe_time_fcncodes.h for cfe_time_fcncodes.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/time/config/default_cfe_time_msgdefs.h for cfe_time_msgdefs.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/time/config/default_cfe_time_msg.h for cfe_time_msg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/time/config/default_cfe_time_msgstruct.h for cfe_time_msgstruct.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/time/config/default_cfe_time_topicids.h for cfe_time_topicids.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/msg/option_inc/default_cfe_msg_hdr_pri.h for cfe_msg_hdr.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/msg/option_inc/default_cfe_msg_sechdr.h for cfe_msg_sechdr.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/resourceid/option_inc/cfe_resourceid_simple.h for cfe_resourceid_typedef.h
-- Configuring for system arch: native/default_cpu1
-- The C compiler identification is GNU 13.2.1
-- 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
-- OMIT_DEPRECATED=false: Deprecated elements included in build
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/core_api/config/default_cfe_core_api_base_msgids.h for cfe_core_api_base_msgids.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/core_api/config/default_cfe_msgids.h for cfe_msgids.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/core_private/config/default_cfe_platform_cfg.h for platform_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/core_private/config/default_cfe_core_private_internal_cfg.h for cfe_core_private_internal_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/ci_lab/config/default_ci_lab_internal_cfg.h for ci_lab_internal_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/ci_lab/config/default_ci_lab_platform_cfg.h for ci_lab_platform_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/ci_lab/config/default_ci_lab_perfids.h for ci_lab_perfids.h
-- Using file: /home/user/Projects/testcfszzz/apps/ci_lab/config/default_ci_lab_msgids.h for ci_lab_msgids.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_internal_cfg.h for to_lab_internal_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_platform_cfg.h for to_lab_platform_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_perfids.h for to_lab_perfids.h
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/config/default_to_lab_msgids.h for to_lab_msgids.h
-- Using file: /home/user/Projects/testcfszzz/apps/sch_lab/config/default_sch_lab_perfids.h for sch_lab_perfids.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_internal_cfg.h for sample_app_internal_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_platform_cfg.h for sample_app_platform_cfg.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_perfids.h for sample_app_perfids.h
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/config/default_sample_app_msgids.h for sample_app_msgids.h
ES_CFGFILE_SRC_cfe_es_msgids = 
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/es/config/default_cfe_es_internal_cfg.h for cfe_es_internal_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/es/config/default_cfe_es_msgids.h for cfe_es_msgids.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/es/config/default_cfe_es_platform_cfg.h for cfe_es_platform_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/evs/config/default_cfe_evs_internal_cfg.h for cfe_evs_internal_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/evs/config/default_cfe_evs_msgids.h for cfe_evs_msgids.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/evs/config/default_cfe_evs_platform_cfg.h for cfe_evs_platform_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/sb/config/default_cfe_sb_internal_cfg.h for cfe_sb_internal_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/sb/config/default_cfe_sb_msgids.h for cfe_sb_msgids.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/sb/config/default_cfe_sb_platform_cfg.h for cfe_sb_platform_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/tbl/config/default_cfe_tbl_internal_cfg.h for cfe_tbl_internal_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/tbl/config/default_cfe_tbl_msgids.h for cfe_tbl_msgids.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/tbl/config/default_cfe_tbl_platform_cfg.h for cfe_tbl_platform_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/time/config/default_cfe_time_internal_cfg.h for cfe_time_internal_cfg.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/time/config/default_cfe_time_msgids.h for cfe_time_msgids.h
-- Using file: /home/user/Projects/testcfszzz/cfe/modules/time/config/default_cfe_time_platform_cfg.h for cfe_time_platform_cfg.h
-- BSP Selection: generic-linux at /home/user/Projects/testcfszzz/osal/src/bsp/generic-linux
-- OSAL Selection: posix at /home/user/Projects/testcfszzz/osal/src/os/posix
-- OSAL Compile Definitions: _XOPEN_SOURCE=600;_POSIX_OS_
-- PSP Selection: pc-linux
-- Building Core Module: core_api
-- Building Core Module: core_private
-- Building Core Module: es
-- Building Core Module: evs
-- Building Core Module: fs
-- Building Core Module: sb
-- Building Core Module: tbl
-- Building Core Module: time
-- Building Core Module: psp
-- Building Core Module: msg
-- CCSDS primary header included in message header (not including CCSDS extended header)
-- Message Id version 1 in use (MsgId V1)
-- Building Core Module: sbr
-- Using direct map software bus routing implementation
-- Building Core Module: resourceid
-- Building Core Module: config
-- Building Dynamic App: ci_lab targets=cpu1
-- Building Dynamic App: to_lab targets=cpu1
-- Using file: /home/user/Projects/testcfszzz/apps/to_lab/fsw/tables/to_lab_sub.c for to_lab_sub.c
-- Using /home/user/Projects/testcfszzz/apps/to_lab/fsw/tables/to_lab_sub.c as table definition for to_lab_sub on cpu1
-- Building Dynamic App: sch_lab targets=cpu1
-- Using file: /home/user/Projects/testcfszzz/apps/sch_lab/fsw/tables/sch_lab_table.c for sch_lab_table.c
-- Using /home/user/Projects/testcfszzz/apps/sch_lab/fsw/tables/sch_lab_table.c as table definition for sch_lab_table on cpu1
-- Building Dynamic App: cfe_assert targets=cpu1
-- Building Dynamic App: sample_app targets=cpu1
-- Using file: /home/user/Projects/testcfszzz/apps/sample_app/fsw/tables/sample_app_tbl.c for sample_app_tbl.c
-- Using /home/user/Projects/testcfszzz/apps/sample_app/fsw/tables/sample_app_tbl.c as table definition for sample_app_tbl on cpu1
-- Building Dynamic App: sample_lib targets=cpu1
NOTE: Selected /home/user/Projects/testcfszzz/testcfs_defs/cpu1_cfe_es_startup.scr as source for cfe_es_startup.scr on cpu1
-- Configuring done (0.1s)
-- Generating done (0.1s)
-- Build files have been written to: /home/user/Projects/testcfszzz/build/native/default_cpu1
-- Configuring done (0.3s)
-- Generating done (0.0s)
-- Build files have been written to: /home/user/Projects/testcfszzz/build
echo "-DCMAKE_INSTALL_PREFIX=/exe -DCMAKE_BUILD_TYPE=debug" > "build/.prep"

I'll try to find some time this weekend to look into it, but the starting point is
from failing output:

CMake Error at cmake/global_functions.cmake:83 (message):
  No implementation for perfids.h found

vs the successful output:

-- Using file: /home/user/Projects/testcfszzz/testcfs_defs/testcfs_perfids.h for perfids.h

Doesn't seem like cmake is filling ______perfids.h with testcfs when the parent directory is named testcfs.

I was able to recreate, although not exactly following your example since I'm still a bit confused wrt your setup. It doesn't look like util-linux provides rename on Ubuntu 22.04. Anyways, it comes down to this logic:
https://github.com/nasa/cFE/blob/7f5ebcd15032fe31e7ef0e5ff4ef624d51d66e16/cmake/global_functions.cmake#L57-L63

It should probably only check for a match relative to MISSION_DEFS directory instead of the full path. Or just remove the test, I'm not sure why it needs to be that strict (could still test for something w/ a prefix that matches the relative dir).

I was able to recreate, although not exactly following your example since I'm still a bit confused wrt your setup. It doesn't look like util-linux provides rename on Ubuntu 22.04. Anyways, it comes down to this logic: https://github.com/nasa/cFE/blob/7f5ebcd15032fe31e7ef0e5ff4ef624d51d66e16/cmake/global_functions.cmake#L57-L63

It should probably only check for a match relative to MISSION_DEFS directory instead of the full path. Or just remove the test, I'm not sure why it needs to be that strict (could still test for something w/ a prefix that matches the relative dir).

Yeah I'm sorry about the confusion. This issue report was made using ubuntu 22.04, but I no longer have an ubuntu install because I've moved to gentoo. This is why I switched instructions up for rename. I will work on a PR this week. Thanks for helping narrow it down!

I got the change ready, I'll tag you on it :)