modern-cpp-template icon indicating copy to clipboard operation
modern-cpp-template copied to clipboard

Not printing the header files with BUILD_HEADERS_ONLY [BUG]

Open mk-95 opened this issue 3 years ago • 2 comments

Describe the bug when using the BUILD_HEADERS_ONLY option, cmake fails

To Reproduce Steps to reproduce the behavior:

  1. Open './cmake/StandardSettings.cmake'
  2. Go to option 'option(${PROJECT_NAME}_BUILD_HEADERS_ONLY "Build the project as a header-only library." ON)'
  3. Modify OFF --> ON
  4. MAKE SURE TO DEFINE THE add FUNCTION IN ./include/project/temp.hpp
  5. Generate cmake to get the following:
-- Found the following headers:
CMake Error at CMakeLists.txt:89 (foreach):
  Unknown argument:

    LIST



-- * 
CMake Error at CMakeLists.txt:91 (endforeach):
  endforeach An ENDFOREACH command was found outside of a proper FOREACH
  ENDFOREACH structure.  Or its arguments did not match the opening FOREACH
  command.

Expected behavior Generation should work without any error.

Screenshots image

Desktop:

  • OS: MacOS Monterey
  • Version 12.1 (21C52)

Suggested Fix In ./CMakeLists.txt line 89 Add S to LIST

change foreach(header IN LIST headers) to foreach(header IN LISTS headers)

mk-95 avatar Apr 10 '22 06:04 mk-95

Hello, thanks for submitting this issue! I am not sure why this is happening as it should not have any problems with header only projects. Just to confirm, you added the .hpp file to the list of headers and sources used by CMake, right?

filipdutescu avatar May 17 '22 21:05 filipdutescu

Yes, I have added the .hpp file to the list of headers and sources in the CMake directory.

mk-95 avatar May 18 '22 15:05 mk-95