Difference between revisions of "CMake/Projects"

From KitwarePublic
Jump to navigationJump to search
(added Chicken Scheme, created Languages category, moved languages to it)
Line 60: Line 60:


* [http://www.initng.org/wiki/initng-konf InitNG-Konf - A tool to configure the UNIX init replacement InitNG ]
* [http://www.initng.org/wiki/initng-konf InitNG-Konf - A tool to configure the UNIX init replacement InitNG ]
=Languages=
* [http://www.call-with-current-continuation-org Chicken Scheme] - Chicken is a performance oriented Scheme-to-C compiler.  It is actively supported on all major C compilers and operating systems.  Chicken's CMake build system is extensively commented and is intended to serve as a tutorial for new CMake users.  Chicken is a non-trivial, modestly sized project, about 75,000 lines of code.  As such, the build system is easier to understand than larger projects, and it has many examples of non-trivial CMake features.  For instance, it demonstrates how to use ADD_CUSTOM_COMMAND to drive languages other than C/C++. It also demonstrates the nuances of multi-stage "bootstrapping" problems, i.e. how to generate source files and executables that are needed by the build itself, and how to reuse the same build rules in multiple directories.
* [http://gpp.niacland.net/telecharger.html.en Goto++ - a goto language]
* [http://www.compuphase.com/pawn/pawn.htm Pawn - An embedded scripting language formerly called Small]


=Applications=
=Applications=
Line 104: Line 112:


* [http://www.tecn.upf.es/openMOIV/ OpenMOIV - is an object-oriented, 3D multi-platform toolkit that helps you develop molecular visualization applications]
* [http://www.tecn.upf.es/openMOIV/ OpenMOIV - is an object-oriented, 3D multi-platform toolkit that helps you develop molecular visualization applications]
* [http://www.compuphase.com/pawn/pawn.htm Pawn - An embedded scripting language formerly called Small]


* [http://devolab.cse.msu.edu/software/avida Avida - Digital Life Platform]
* [http://devolab.cse.msu.edu/software/avida Avida - Digital Life Platform]


* [http://storm.bmi.ohio-state.edu/documentation.php Storm]
* [http://storm.bmi.ohio-state.edu/documentation.php Storm]
* [http://gpp.niacland.net/telecharger.html.en Goto++ - a goto language]


* [http://www.octave.org Octaviz - Viz for Octave]
* [http://www.octave.org Octaviz - Viz for Octave]

Revision as of 16:57, 19 September 2006

Desktop suites and development platforms

  • KDE4 - the next version of the powerful Open Source desktop, application suite and development platform will be built using CMake, which together with Qt4 will make it possible to run KDE4 not only on Linux/UNIX, but also Mac OS X and Windows.

Libraries

Toolkits

Tools

Languages

  • Chicken Scheme - Chicken is a performance oriented Scheme-to-C compiler. It is actively supported on all major C compilers and operating systems. Chicken's CMake build system is extensively commented and is intended to serve as a tutorial for new CMake users. Chicken is a non-trivial, modestly sized project, about 75,000 lines of code. As such, the build system is easier to understand than larger projects, and it has many examples of non-trivial CMake features. For instance, it demonstrates how to use ADD_CUSTOM_COMMAND to drive languages other than C/C++. It also demonstrates the nuances of multi-stage "bootstrapping" problems, i.e. how to generate source files and executables that are needed by the build itself, and how to reuse the same build rules in multiple directories.

Applications

  • ASPEED Software
    ASPEED's products include the ACCELLERANT SDK for parallelizing applications for grids or clusters. ASPEED provides APIs for easily improving application performance, with bindings in FORTRAN, C, C++, Java and C#. ACCELLERANT also provides an Application Manager for quickly parallelizing batch jobs from the command line; and Workload Balancer for simple resource management. ACCELLERANT supports Windows and Linux, as well as numerous "grid vendor" products.
"ASPEED's SDK supports a wide range of platforms and languages, and CMake fit the bill perfectly for our build and release cycle. It works for Visual Studio IDE development, and it works from the command line under either Windows (nmake) or Linux. It works for FORTRAN as well as C++. It's an enormous time-saver, allowing us to quickly develop applications for multiple platforms. This in turn has allowed us to build, test and release software more frequently, giving us a market advantage."
-Mike Dalessio, Head of Development, ASPEED Software
  • CadColon is a Computer Aided Detection (CAD) system designed to support radiologist's diagnosis of suspect polyps in the colon and rectum, using high and low dose CT.

"I started to develop on a project on Linux OS in C++ language on 3 January 2005, and I had never written from scratch any configure.in files, nor used autoconf tools seriously before. So since one of my task was to create the building process for the whole project, I had 2 choices: learn and use autoconf, or search in Internet for an alternative. The one day research ended up in CMake.org, which is an easy but very powerful tool, which allowed me to achieve all I wanted to do (debug/release/profile compilations, compilation based on the developer name, easily maintainable and customizable compilation of many shared/static libraries and applications), and which has a very fast learning curve, exactly what a projet need to achieve its aim in short time."

- Luca Cappa

Controls

Other

  • PLplot is a mix of a core scientific plotting library written in C, multiple computer language interfaces to that library (some of them generated using SWIG), a set of 20+ test examples written for each computer language interface, multiple plotting device driver plug-ins that are dynamically loaded by our core library, and a complete docbook-based documentation build. This build complexity is handled with ease by CMake on Linux (with good ctest results for the examples written in each computer language that we interface). We are also beginning to get encouraging build results on the Mac OS X and windows platforms.



CMake: [Welcome | Site Map]