Fichiers » Historique » Révision 29
Révision 28 (Patrice Nadeau, 2025-04-20 20:31) → Révision 29/30 (Patrice Nadeau, 2025-04-20 20:32)
# Fichiers
Format `tree --charset ascii`
```
Projet
|-- AUTHORS : Fichier texte des noms et courriels des auteurs
|-- bin : Contient le fichier executable
|-- build : Contient les objets (.o)
|-- ChangeLog : Fichier des changements
|-- config.h : Contient les macros communes au programme dans son ensemble (-imacros)
|-- COPYING : Fichier de licence (standard GNU)
|-- docs : Fichiers documentation
|-- include
| `-- *.h : Fichiers entêtes
|-- INSTALL
|-- lib : Libraires externes
| `-- lib1 (lien symbolique vers le projet de la librairie)
| |-- include
| `-- src
|-- Makefile.in : Informations spécifiques du projet pour le Makefile
|-- NEWS
|-- src
| `-- *.c : Fichiers sources
`-- README : Informations d'un projet, en format markdown
```
Les fichiers suivants sont des exceptions :
* `AUTHORS` : Fichier texte des noms et courriels des auteurs
* `ChangeLog` :
* `config.h` : Contient les macros communes au programme dans son ensemble (-imacros)
* `COPYING` : Contient les information de licence
* `INSTALL` :
* `Makefile.in` : Contient les informations spécifiques du projet pour le Makefile
* `NEWS` :
* `README` : Contient les informations d'un projet, en format *markdown*
Le nom des fichiers DOIT être composé de la manière suivante :
1. Un préfixe en anglais de 8 caractères maximum
1. Lettres minuscule
1. Chiffres
1. Trait de soulignement
1. Un des suffixe suivants :
1. `.h` : entête
1. `.c` : sources
1. Contient une section Doxygen :
1. `@file` : Le nom du fichier
1. `@brief`: Une brève description
1. `@version`: Le numéro de version
1. `@date`: La date de dernière modification
1. `@author`: Une liste des participant(e)s et leur courriel
1. `@copyright`: La liste des années et participant(e)s
1. Les fichiers d’entête contiennent en plus
1. Une définition macro pour éviter de ré-inclure le fichier.
## Exemple
```c
/**
#ifndef _usart_h
#define _usart_h
/**
* @file : test.h
* @brief ATMEL AVR 8-bit C librairie
* @version 0.00.01
* @date 2023-02-26
* @author Patrice Nadeau <pnadeau@patricenadeau.com>
* @copyright 2023 Patrice Nadeau
* @pre AVR supportés (testés en gras) :
* - ATmega88
* - ATmega168
* - **ATmega328P**
*/
...
#endif /*_usart_h*/
```