Skip to content

Conversation

@a-szegel
Copy link
Contributor

@a-szegel a-szegel commented Oct 11, 2025

  • Change CONFIG:Debug to CONFIG:debug for case sensitivity
  • Remove trailing semicolons in flag lists
  • Replace $<IF:...> with mutually exclusive $<$<condition>:...> for CUDA flags to avoid false branch evaluation on C++ files

Fixes debug builds incorrectly getting both -O0 and -O3 flags.

On Devel:

> cd /home/szegel/Nvshmem && rm -rf build && mkdir build && cd build && cmake .. -DNVSHMEM_BUILD_PYTHON_LIB=0 -DNVSHMEM_DEBUG=ON -DNVSHMEM_DEVEL=ON > /dev/null 2>&1 && grep "CXX_FLAGS" /home/szegel/Nvshmem/build/src/CMakeFiles/nvshmem_transport_libfabric.dir/flags.make
CXX_FLAGS = -g -std=gnu++11 -fPIC -O0 -g -O3 -Werror -Wall -Wextra -Wno-unused-function -Wno-unused-parameter -Wno-missing-field-initializers


>  cd /home/szegel/Nvshmem && rm -rf build && mkdir build && cd build && cmake .. -DNVSHMEM_BUILD_PYTHON_LIB=0 -DNVSHMEM_DEVEL=ON > /dev/null 2>&1 && grep "CXX_FLAGS" /home/szegel/Nvshmem/build/src/CMakeFiles/nvshmem_transport_libfabric.dir/flags.make
CXX_FLAGS = -O3 -DNDEBUG -std=gnu++11 -fPIC -O3 -Werror -Wall -Wextra -Wno-unused-function -Wno-unused-parameter -Wno-missing-field-initializers

With this PR (no -O0 -g -O3 in debug build):

>  cd /home/szegel/Nvshmem && rm -rf build && mkdir build && cd build && cmake .. -DNVSHMEM_BUILD_PYTHON_LIB=0 -DNVSHMEM_DEBUG=ON -DNVSHMEM_DEVEL=ON > /dev/null 2>&1 && grep "CXX_FLAGS" /home/szegel/Nvshmem/build/src/CMakeFiles/nvshmem_transport_libfabric.dir/flags.make
CXX_FLAGS = -g -std=gnu++11 -fPIC -O0 -g -Werror -Wall -Wextra -Wno-unused-function -Wno-unused-parameter -Wno-missing-field-initializers


> cd /home/szegel/Nvshmem && rm -rf build && mkdir build && cd build && cmake .. -DNVSHMEM_BUILD_PYTHON_LIB=0 -DNVSHMEM_DEBUG=OFF -DNVSHMEM_DEVEL=ON > /dev/null 2>&1 && grep "CXX_FLAGS" /home/szegel/Nvshmem/build/src/CMakeFiles/nvshmem_transport_libfabric.dir/flags.make
CXX_FLAGS = -O3 -DNDEBUG -std=gnu++11 -fPIC -O3 -Werror -Wall -Wextra -Wno-unused-function -Wno-unused-parameter -Wno-missing-field-initializers

- Change CONFIG:Debug to CONFIG:debug for case sensitivity
- Remove trailing semicolons in flag lists
- Replace $<IF:...> with mutually exclusive $<$<condition>:...>
  for CUDA flags to avoid false branch evaluation on C++ files

Fixes debug builds incorrectly getting both -O0 and -O3 flags.

Signed-off-by: Seth Zegelstein <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant