Lexique informatique › Programmation › imake

imake

Programmation Svenska → Mis à jour: 2026-10-07
Plus d'infos
Créateur
Todd Brunhoff
Année
Type
Outil de construction
Licence
MIT

Le système de construction propre à X11, qui faisait écrire des Makefiles par le préprocesseur C à partir d'un Imakefile : portable sur tous les Unix et détesté sur chacun d'eux.

Todd Brunhoff, chez Tektronix, a écrit imake en 1987 pour X11R1, à l'époque où chaque constructeur Unix avait son make, ses chemins de bibliothèques et ses options de compilateur. La réponse : un petit Imakefile d'appels de règles comme ComplexProgramTarget(xclock), que cpp développait avec un modèle, un fichier de règles et un fichier de plateforme par système (sun.cf, linux.cf) pour produire un Makefile terminé. La commande xmkmf faisait tout d'un coup, et make World construisait l'ensemble de X.

Le hic : cpp n'avait jamais été conçu pour cela. Il supprimait tout ce qui commençait par #, d'où des commentaires à écrire XCOMM ; il remplaçait des mots prédéfinis comme unix et linux par 1, même dans les chemins ; et certaines versions ajoutaient ou retiraient des espaces jusqu'à ce que make ne reconnaisse plus ses tabulations. Paul DuBois a eu besoin d'un livre entier chez O'Reilly en 1993 pour expliquer le système. Motif, LessTif et l'essentiel du répertoire contrib de X ont pourtant été construits ainsi pendant près de vingt ans, jusqu'à ce que X11R7 découpe l'arbre en modules en 2005 et passe aux autotools GNU.

← Retour au lexique