CPIP : un pr�processeur C/C++ d�velopp� sous Python
Pour d�mystifier les � pr�traitements � avant la phase de compilation

Plusieurs traitements r�alis�s en arri�re-plan par les outils de d�veloppement, avant la phase de compilation du code source d�un projet, sont inconnus pour le d�veloppeur. On peut citer notamment l�inclusion des fichiers ou encore l�utilisation des macros.

CPIP, un pr�processeur C/C++ d�velopp� par Paul Ross, ing�nieur informatique chez Google, ambitionne de changer cela. L�outil se donne pour mission de d�mystifier l�ensemble des � pr�traitements � qui sont effectu�s avant la compilation.

Comme tous les pr�processeurs, il permet de r�aliser les inclusions de fichiers juste avant la phase de compilation, la d�finition et le replacement de macros et de constantes symboliques ainsi que la compilation conditionnelle du code source.

Toutefois, CPIP est plus puissant que cela et permet d'enregistrer et visualiser tous les d�tails de l'op�ration pour ensuite les afficher � l'utilisateur sous diff�rents formats: code source pr�trait�, graphe SVG repr�sentant les diff�rentes �tapes d'inclusion, arbre color� repr�sentant le r�sultat de la compilation conditionnelle, page web affichant les d�pendances et d�finitions de macros ainsi que d'autres informations sous forme de tableaux.

Le but est donc de donner au d�veloppeur toutes les informations utiles qui peuvent l'aider lors du d�bogage, au lieu de consid�rer cette phase de pr�traitement comme un "sale boulot qui doit �tre fait le plus vite possible" d�clare Paul Ross.

CPIP a �t� d�velopp� en Python. La version 0.9.1 est disponible en b�ta-test sur SourceForge depuis le 23 septembre dernier sous licence GPLv2. Elle a �t� test�e sous Python 2.7 et 3.3 et est actuellement en cours de refactorisation. La version stable devrait �tre disponible dans quelques semaines.

Un exemple de pr�compilation du noyau Linux en utilisant CPIP est disponible sur la page web du projet.

T�l�charger la version b�ta de CPIP


Pour plus d'information sur le fonctionnement d'un pr�processeur


Source : Le site du projet


Et vous ?

Pensez-vous que ce pr�processeur va vous faciliter la t�che de d�bogage ?