Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > fr.comp.os.unix > #7947 > unrolled thread

répertoires d'un projet de developpement

Started byThomas <fantome.forums.tDeContes@free.fr.invalid>
First post2022-03-27 05:22 +0200
Last post2023-03-26 03:09 +0100
Articles 4 — 2 participants

Back to article view | Back to fr.comp.os.unix


Contents

  répertoires d'un projet de developpement Thomas <fantome.forums.tDeContes@free.fr.invalid> - 2022-03-27 05:22 +0200
    Re: répertoires d'un projet de developpement Nicolas George <nicolas$george@salle-s.org> - 2022-03-27 09:25 +0000
      Re: répertoires d'un projet de developpement Thomas <fantome.forums.tDeContes@free.fr.invalid> - 2022-03-27 19:24 +0200
        Re: répertoires d'un projet de developpement Thomas <fantome.forums.tDeContes@free.fr.invalid> - 2023-03-26 03:09 +0100

#7947 — répertoires d'un projet de developpement

FromThomas <fantome.forums.tDeContes@free.fr.invalid>
Date2022-03-27 05:22 +0200
Subjectrépertoires d'un projet de developpement
Message-ID<fantome.forums.tDeContes-89DEBE.05223027032022@news.free.fr>
bonjour :-)


je n'en ai pas terminé avec les Makefiles, mais je viens de franchir une 
étape :

- avant, j'étais obligé d'avoir les images dans le même répertoire que 
l'exécutable et nulle part ailleurs.
- maintenant, je peux placer les images dans le répertoire de mon choix 
(tjr codé en dur pour l'instant).


actuellement :
- l'usager va dans `bin/<peer>/`, il exécute `make`, et il trouve 
l'exécutable à cet endroit pour pouvoir l'exécuter aussitôt.
- les images sont dans `bin/img/`.

avez vous autre chose à suggérer ?


je ne peux pas mettre tous les exécutables dans `bin/`, parce que je 
dois les différencier par <peer>.

j'aimerais mieux limiter le nb de répertoires à la racine.
mais en même temps il faut une cohérence. il ne s'agit pas de créer un 
répertoire fourre-tout juste pour en avoir moins.

j'hésite entre 2 choses incompatibles :
- continuer de pouvoir avoir l'exécutable qui arrive juste sous mon nez, 
pour pouvoir faire `./rapid` juste après `make`.
- avoir un répertoire dédié à tout ce qui est géneré, de manière à ne 
rien modifier ailleurs (cela dit, ça sera un peu délicat avec les 
exemples de toutes façons, puisqu'ils sont destinés aux novices).

-- 
RAPID maintainer
http://savannah.nongnu.org/projects/rapid/

[toc] | [next] | [standalone]


#7948

FromNicolas George <nicolas$george@salle-s.org>
Date2022-03-27 09:25 +0000
Message-ID<62402d73$0$30694$426a34cc@news.free.fr>
In reply to#7947
Thomas , dans le message
<fantome.forums.tDeContes-89DEBE.05223027032022@news.free.fr>, a écrit :
> avez vous autre chose à suggérer ?

Un projet bien élevé devrait pouvoir être compilé dans un répertoire qui n'a
rien à voir avec son arbre source.

/path/to/source/configure
make

et ça compile tout ici sans rien modifier dans l'arbre source.

[toc] | [prev] | [next] | [standalone]


#7949

FromThomas <fantome.forums.tDeContes@free.fr.invalid>
Date2022-03-27 19:24 +0200
Message-ID<fantome.forums.tDeContes-F3A19C.19241427032022@news.free.fr>
In reply to#7948
In article <62402d73$0$30694$426a34cc@news.free.fr>,
 Nicolas George <nicolas$george@salle-s.org> wrote:

> Thomas , dans le message
> <fantome.forums.tDeContes-89DEBE.05223027032022@news.free.fr>, a écrit :
> > avez vous autre chose à suggérer ?
> 
> Un projet bien élevé devrait pouvoir être compilé dans un répertoire qui n'a
> rien à voir avec son arbre source.
> 
> /path/to/source/configure
> make
> 
> et ça compile tout ici sans rien modifier dans l'arbre source.

si je te comprend bien :


dans ton exemple,
- /path/to/source/ est le répertoire racine du projet.
- le projet contient un script appelé `configure`.

mets-tu dans ton cahier des charges de "projet bien élevé" que 
`configure` doit être à la racine, ou bien est-ce que je le met où je 
veux ?


ensuite,
- tu te mets dans le répertoire où tu veux retrouver le résultat de la 
compilation avec `cd`.
- `configure` fabrique un Makefile dans le répertoire courant, mais ne 
lance pas `make`.
- quand tu lances `make`, il fait le reste.


est-ce que ça veut dire que tu n'as pas de requête concernant 
l'emplacement des images dans le répertoire du projet ?

est-ce que ça veut dire que ça ne te dérange pas qu'on puisse vouloir 
compiler dans l'arbre source, mais que tu te fiches des détails de ce 
cas de figure parce que ça n'est pas ton usage ?

-- 
RAPID maintainer
http://savannah.nongnu.org/projects/rapid/

[toc] | [prev] | [next] | [standalone]


#8059

FromThomas <fantome.forums.tDeContes@free.fr.invalid>
Date2023-03-26 03:09 +0100
Message-ID<641f9b52$0$7647$426a74cc@news.free.fr>
In reply to#7949
In article 
<fantome.forums.tDeContes-F3A19C.19241427032022@news.free.fr>,
 Thomas <fantome.forums.tDeContes@free.fr.invalid> wrote:

> In article <62402d73$0$30694$426a34cc@news.free.fr>,
>  Nicolas George <nicolas$george@salle-s.org> wrote:
> 
> > Thomas , dans le message
> > <fantome.forums.tDeContes-89DEBE.05223027032022@news.free.fr>, a écrit :
> > > avez vous autre chose à suggérer ?
> > 
> > Un projet bien élevé devrait pouvoir être compilé dans un répertoire qui n'a
> > rien à voir avec son arbre source.
> > 
> > /path/to/source/configure
> > make
> > 
> > et ça compile tout ici sans rien modifier dans l'arbre source.


je ne suis pas extrêmement loin de pouvoir y arriver,
mais il va encore me manquer une version de gnat assez récente pour 
accepter l'option --relocate-build-tree

(je n'imagine pas que tu serais partant pour vérifier à distance que ce 
que je fais fonctionnerais correctement)


> 
> si je te comprend bien :
> 
> 
> dans ton exemple,
> - /path/to/source/ est le répertoire racine du projet.
> - le projet contient un script appelé `configure`.
> 
> mets-tu dans ton cahier des charges de "projet bien élevé" que 
> `configure` doit être à la racine, ou bien est-ce que je le met où je 
> veux ?
> 
> 
> ensuite,
> - tu te mets dans le répertoire où tu veux retrouver le résultat de la 
> compilation avec `cd`.
> - `configure` fabrique un Makefile dans le répertoire courant, mais ne 
> lance pas `make`.
> - quand tu lances `make`, il fait le reste.


j'ai eu l'occasion de tester chez qqn,
et je peux t'indiquer que ça va générer un certain nb de 
sous-répertoires automatiquement, je n'ai pas vu d'option pour faire 
autrement.

donc le binaire ne va pas atterrir dans le répertoire courant mais dans 
un sous-répertoire.
j'espère que ça te convient.



je n'en suis pas encore là, mais à un certain moment j'aurai des sources 
à générer.
comment doit-on faire ?

mon 1er réflexe aurais été de les mettre avec les autres sources du même 
langage, mais en fait ça va pas ... il faut les mettre dans le 
répertoire de construction ! ...
y a-t-il une règle de l'art pour ranger ça ?

-- 
RAPID maintainer
http://savannah.nongnu.org/projects/rapid/

[toc] | [prev] | [standalone]


Back to top | Article view | fr.comp.os.unix


csiph-web