makedepend - En ligne dans le cloud

Il s'agit de la commande makedepend qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS.

PROGRAMME:

Nom


makedepend - créer des dépendances dans les makefiles

SYNOPSIS


faire dépendre [ -Dprénom=def ] [ -Dprénom ] [ -Iinclusir ] [ -Yinclusir ] [ -a ] [ -fmakefile
] [ -comprendre filet ] [ -osuffixe obj ] [ -ppréfixe obj ] [ -sun magnifique ] [ -wlargeur ] [ -v ] [ -m ]
[ -- autres options -- ] fichier source

DESCRIPTION


La faire dépendre le programme lit chaque fichier source en séquence et l'analyse comme un C-
préprocesseur, tout traitement #comprendre, #définir, #undef, #ifdef, #ifndef, #fin si, #si,
#elif et de #else directives afin qu'il puisse dire correctement #comprendre, les directives seraient
être utilisé dans une compilation. Tout #comprendre, les directives peuvent référencer des fichiers ayant d'autres
#comprendre directives, et l'analyse se produira également dans ces fichiers.

Chaque fichier qu'un fichier source comprend, directement ou indirectement, ce que faire dépendre appelle un
dépendance. Ces dépendances sont ensuite écrites dans un makefile de telle sorte que a prendre une(1)
saura quels fichiers objets doivent être recompilés lorsqu'une dépendance a changé.

Par défaut, faire dépendre place sa sortie dans le fichier nommé makefile s'il existe,
autrement Makefile. Un autre makefile peut être spécifié avec le -f option. Il d'abord
recherche la ligne dans le makefile

# NE SUPPRIMEZ PAS CETTE LIGNE -- make depend en dépend.

ou un fourni avec le -s option, comme délimiteur pour la sortie de dépendance. S'il trouve
il, il supprimera tout ce qui suit jusqu'à la fin du makefile et mettra la sortie
après cette ligne. S'il ne le trouve pas, le programme ajoutera la chaîne à la fin de
le makefile et placez la sortie à la suite de cela. Pour chaque fichier source apparaissant sur le
ligne de commande, faire dépendre met des lignes dans le makefile du formulaire

fichiersource.o : dfile ...

fichiersource.o est le nom de la ligne de commande avec son suffixe remplacé par ``.o'',
et de fichier est une dépendance découverte dans un #comprendre directive lors de l'analyse fichier source or
l'un des fichiers qu'il contenait.

EXEMPLE


Normalement, faire dépendre sera utilisé dans une cible makefile de sorte que taper ``make depend''
mettre à jour les dépendances pour le makefile. Par exemple,
SRCS = fichier1.c fichier2.c ...
CFLAG = -O -DHACK -I../foobar -xyz
dépendre:
makedepend -- $(CFLAGS) -- $(SRCS)

OPTIONS


Le programme ignorera toute option qu'il ne comprend pas afin que vous puissiez utiliser le
les mêmes arguments que vous auriez pour cc (1).

-Dprénom=def or -Dprénom
Définir. Cela place une définition pour prénom in faire dépendre table des symboles. Sans
=déf le symbole devient défini comme ``1''.

-Iinclusir
Inclure le répertoire. Cette option indique faire dépendre faire précéder inclusir à sa liste de
répertoires à rechercher lorsqu'il rencontre un #comprendre directif. Par défaut,
faire dépendre ne recherche que les répertoires standards d'inclusion (généralement / usr / include et de
éventuellement un répertoire dépendant du compilateur).

-Yinclusir
Remplacez tous les répertoires d'inclusion standard par l'unique inclus spécifié
annuaire; vous pouvez omettre le inclusir pour simplement empêcher la recherche de la norme
inclure des répertoires.

-a Ajoutez les dépendances à la fin du fichier au lieu de les remplacer.

-fmakefile
Nom de fichier. Cela vous permet de spécifier un autre makefile dans lequel faire dépendre vous
placer sa sortie. Spécifier ``-'' comme nom de fichier (c'est-à-dire, -F-) envoie la sortie à
sortie standard au lieu de modifier un fichier existant.

-comprendre filet
Traiter le fichier en entrée et inclure toutes les sorties résultantes avant de traiter le
fichier d'entrée régulier. Cela a le même effet que si le fichier spécifié était un include
instruction qui apparaît avant la toute première ligne du fichier d’entrée normal.

-osuffixe obj
Suffixe du fichier objet. Certains systèmes peuvent avoir des fichiers objets dont le suffixe est quelque chose
autre que ``.o''. Cette option vous permet de spécifier un autre suffixe, tel que ``.b''
comprenant -ob ou ``:obj'' avec -o:obj et ainsi de suite.

-ppréfixe obj
Préfixe du fichier objet. Le préfixe est ajouté au nom du fichier objet. C'est
généralement utilisé pour désigner un répertoire différent pour le fichier objet. La valeur par défaut est
la chaîne vide.

-sun magnifique
Délimiteur de chaîne de départ. Cette option vous permet de spécifier une chaîne différente pour
faire dépendre à rechercher dans le makefile.

-wlargeur
Largeur de ligne. Normalement, faire dépendre garantira que chaque ligne de sortie qu'il écrit
ne dépassera pas 78 caractères pour des raisons de lisibilité. Cette option permet
vous de changer cette largeur.

-v Opération verbeuse. Cette option provoque faire dépendre pour émettre la liste des fichiers inclus
par chaque fichier d'entrée.

-m Avertir de l'inclusion multiple. Cette option provoque faire dépendre produire un avertissement si
tout fichier d'entrée inclut un autre fichier plus d'une fois. Dans les versions précédentes de
faire dépendre c'était le comportement par défaut ; la valeur par défaut a été modifiée pour être meilleure
correspondre au comportement du compilateur C, qui ne prend pas en compte l'inclusion multiple dans
être une erreur. Cette option est fournie à des fins de compatibilité ascendante et pour faciliter
problèmes de débogage liés à l’inclusion multiple.

-- Options --
If faire dépendre rencontre un double tiret (--) dans la liste des arguments, puis tout
l'argument non reconnu qui le suit sera ignoré en silence ; un deuxième double tiret
met fin à ce traitement spécial. De cette façon, faire dépendre peut être fait en toute sécurité
ignorer les arguments ésotériques du compilateur qui pourraient normalement être trouvés dans un CFLAGS a prendre une
macro (voir le EXEMPLE section ci-dessus). Toutes les options qui faire dépendre reconnaît et
apparaissent entre la paire de doubles traits d'union sont traités normalement.

ALGORITHME


L'approche utilisée dans ce programme lui permet d'exécuter un ordre de grandeur plus rapidement que n'importe quel autre
autre ``générateur de dépendance'' que j'aie jamais vu. Au centre de cette performance se trouvent deux
hypothèses : que tous les fichiers compilés par un seul makefile seront compilés avec environ
le même -I et de -D options; et que la plupart des fichiers dans un seul répertoire incluront en grande partie
les mêmes fichiers.

Compte tenu de ces hypothèses, faire dépendre s'attend à être appelé une fois pour chaque makefile, avec tous
les fichiers source qui sont maintenus par le makefile apparaissant sur la ligne de commande. il analyse
chaque source et fichier d'inclusion une seule fois, en maintenant une table de symboles interne pour chacun.
Ainsi, le premier fichier sur la ligne de commande prendra un temps proportionnel au
le temps que prend un préprocesseur C normal. Mais sur les fichiers suivants, s'il
rencontre un fichier d'inclusion qu'il a déjà analysé, il ne l'analyse pas à nouveau.

Par exemple, imaginez que vous compilez deux fichiers, fichier1.c et de fichier2.c, ils comprennent chacun
le fichier d'en-tête en-tête.h, et le fichier en-tête.h inclut à son tour les fichiers déf1.h et de
def2.h. Lorsque vous exécutez la commande

makedepend fichier1.c fichier2.c

faire dépendre va analyser fichier1.c et par conséquent, en-tête.h et alors déf1.h et de def2.h. It
décide alors que les dépendances de ce fichier sont

fichier1.o : header.h def1.h def2.h

Mais quand le programme analyse fichier2.c et découvre qu'il comprend aussi en-tête.h, Cela fait
pas analyser le fichier, mais ajoute simplement en-tête.h, déf1.h et de déf2.h à la liste de
dépendances pour fichier2.o.

Utilisez makedepend en ligne en utilisant les services onworks.net



Derniers programmes en ligne Linux et Windows