26 octobre 2024 ? Ceedling 1.0.0 sera disponible très prochainement. Les versions préliminaires sont disponibles dès maintenant. Consultez le tout nouveau README pour une réintroduction à Ceedling et des liens vers une variété de ressources complémentaires. Consultez les notes de version pour un aperçu de toutes les nouveautés depuis la version 0.31.1, ainsi que des liens vers un journal des modifications détaillé et une liste des dernières modifications.
Ceedling est un système de construction pour les projets C qui est en quelque sorte une extension du système de construction Ruby's Rake (make-ish). Ceedling facilite également le TDD (Test-Driven Development) en C en intégrant CMock, Unity et CException - trois autres projets open source géniaux dont vous ne pouvez pas vous passer si vous créez des merveilles en langage C. Ceedling est également extensible avec un mécanisme de plugin pratique.
La documentation et les informations de licence existent dans le dépôt dans docs/
Assurez-vous d'abord que Ruby est installé sur votre système (si ce n'est pas déjà fait). Ensuite, depuis une invite de commande :
> gem install ceedling
> git clone --recursive https://github.com/throwtheswitch/ceedling.git
> cd ceedling
> bundle install # Ensures you have all RubyGems needed
> git submodule update --init --recursive # Updates all submodules
> bundle exec rake # Run all Ceedling library tests
Si le bundler n'est pas installé sur votre système ou si vous rencontrez des problèmes, vous devrez peut-être l'installer :
> sudo gem install bundler
Si vous rencontrez des difficultés lors de l'exécution de Bundler et que vous recevez des messages comme celui-ci can't find gem bundler (>= 0.a) with executable bundle (Gem::GemNotFoundException)
, vous devrez peut-être installer une version différente de bundler. Pour cela, veuillez référencer la version dans le Gemfile.lock. Un exemple basé sur le Gemfile.lock actuel est le suivant :
> sudo gem install bundler -v 1.16.2
Créer un projet avec Ceedling est simple. Dites simplement à ceedling le nom du projet, et il créera un sous-répertoire appelé ce nom et le remplira avec une structure et une configuration de répertoires par défaut.
ceedling new YourNewProjectName
Vous pouvez ajouter des fichiers à vos répertoires src et test et ils feront instantanément partie de votre version de test. Besoin d'une structure différente ? Vous pouvez commencer à modifier le fichier project.yml
immédiatement avec vos nouvelles exigences en matière de chemin ou d'outil.
Vous pouvez passer à la dernière version de Ceedling à tout moment, en accédant automatiquement au package Unity et CMock qui l'accompagnent.
gem update ceedling
Vous débutez tout juste avec Ceedling ? Peut-être aimeriez-vous que votre projet soit installé avec une partie de sa documentation pratique ? Aucun problème! Vous pouvez le faire lorsque vous créez un nouveau projet.
ceedling new --docs MyAwesomeProject
Ceedling peut également déployer toutes ses forces dans le projet. Cela permet de l'utiliser sans avoir à se soucier des dépendances externes. Vous n'avez pas à vous soucier du changement de Ceedling pour ce projet particulier simplement parce que vous avez mis à jour vos gemmes... pas besoin de vous soucier des changements dans Unity ou CMock qui interrompraient votre build à l'avenir. Si vous souhaitez utiliser Ceedling de cette façon, dites-lui que vous souhaitez une copie locale lorsque vous créez votre projet :
ceedling new --local YourNewProjectName
Cela installera tous Unity, CMock et Ceedling dans un nouveau dossier nommé vendor
à l'intérieur de votre projet YourNewProjectName
. Il créera toujours la structure de répertoires simple pour vous avec les dossiers src
et test
.
SCORE!
Si vous souhaitez forcer la mise à niveau d'une version installée localement de Ceedling pour qu'elle corresponde plus tard à votre dernière gemme, c'est simple ! Émettez simplement la commande suivante :
ceedling upgrade --local YourNewProjectName
Tout comme la new
commande, elle est appelée depuis le répertoire parent de votre projet.
Avez-vous peur de perdre toutes vos modifications locales lorsque cela se produit ? Vous pouvez empêcher Ceedling de mettre à jour votre fichier de projet en émettant no_configs
.
ceedling upgrade --local --no_configs TheProject
Utilisez-vous Git ? Vous souhaiterez peut-être que Ceedling crée automatiquement un fichier gitignore
pour vous en ajoutant --gitignore
à votre new
appel.
BON TEST !