COMPILE_DEFINITIONS_DISCLAIMER.rst 999 B

1234567891011121314151617181920
  1. Disclaimer: Most native build tools have poor support for escaping
  2. certain values. CMake has work-arounds for many cases but some values
  3. may just not be possible to pass correctly. If a value does not seem
  4. to be escaped correctly, do not attempt to work-around the problem by
  5. adding escape sequences to the value. Your work-around may break in a
  6. future version of CMake that has improved escape support. Instead
  7. consider defining the macro in a (configured) header file. Then
  8. report the limitation. Known limitations include:
  9. ============= ========================
  10. ``#`` Broken almost everywhere.
  11. ``;`` Broken in VS IDE 7.0 and Borland Makefiles.
  12. ``,`` Broken in VS IDE.
  13. ``%`` Broken in some cases in NMake.
  14. ``& |`` Broken in some cases on MinGW.
  15. ``^ < > \ "`` Broken in most Make tools on Windows.
  16. ============= ========================
  17. CMake does not reject these values outright because they do work in
  18. some cases. Use with caution.