The idea behind configuration discovery is to make it easier to package a library or an application for free access through the web. In other words, having a website which collects libraries and their configuration file and from which users can select a library and it gets automatically used by the compiler.


Instead of having a location which is a path to a project configuration file on your file system you have a path to a URL (either ftp or HTTP). Then the compiler reads the configuration file and install all the needed files on your machine in a user defined directory (for caching purpose). Once it is done the compilation proceeds as usual.

This will result into the following advantages:

  • Easy to install libraries: no complicated setup, no environment variable required
  • If library comes with some C code, C code gets compiled.
  • Track dependency automatically


  • If a package requires a set of shared library, it is not straightforward to specify. For example EiffelVision2 on Unix requires GTK 2.4+ to be available; EiffelMedia requires SDL...