CMake:OpenTasks

From KitwarePublic
Jump to navigationJump to search

Support for major buildsystems

Supported:

  • make, MSVC, XCode, Eclipse, KDevelop, CodeBlocks

Missing:

  • Some generic file format, maybe XML based, so that it would be easy to process. Maybe ant may be a good candidate. This might also help the Java support in CMake. Any takers ?

Support for programming languages

Fully supported:

  • C, C++
  • Fortran (CMake >= 2.6.0)

More or less fully supported:

  • Java: there may be some issues relating to Java packages and subdirectories
  • Assembler: is in CMake cvs, but needs more testing and feedback
  • Objective C: may work if the compiler (gcc) knows how to handle these files
  • Ada: not yet in cvs, but support exists (in PlPlot)
  • D: not in cvs, but support exists: http://www.dsource.org/projects/cmaked

Not supported:

The languages listed here don't have built-in support in CMake, still they can be used via ADD_CUSTOM_COMMAND()

  • C#: would be nice to have
  • Pascal: shouldn't be too hard, volunteers ?
  • OCaml: really strange to build, may be hard to integrate

Operating systems

Supported:

  • all major OSs, except the ones listed below

Need improvement:

  • OpenBSD: library versioning scheme #2470

Not supported:

  • VMS, OS/2, DOS, DJGPP

CMake language features

  • parentheses in conditions: if((a OR b) AND (c OR d))

I guess square brackets would be acceptable too (just in case this would easier for the parser): if( [a OR b] AND [c OR d] ) (#6191)

  • some way to define custom command line arguments
  • fine grained flags (per source etc.), AFAIK is being worked on
  • per-target or per-file include dirs and compile flags (being worked on AFAIK)
  • better (PCRE) regexps, is being worked on
  • abstraction of compiler flags (being worked on ?)