Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
This project aims to create a crystal clear tutorial on a cryptic topic.
| Date | Stars |
|---|---|
| 2026-07-24 | 707 |
| 2026-07-25 | 708 |
| 2026-07-28 | 708 |
| 2026-07-30 | 708 |
| 2026-08-06 | 708 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.00%/day
<h1 align="center">
MAKEFILE TUTOR (GNU)
</h1>
<h3 align="center">
<a href="#summary">Summary</a>
<span> · </span>
<a href="#usage">Usage</a>
<span> · </span>
<a href="#glossary">Glossary</a>
<span> · </span>
<a href="#syntax">Syntax</a>
<span> · </span>
<a href="#index">Index</a>
<span> · </span>
<a href="#sources">Sources</a>
<span> · </span>
<a href="#contact">Contact</a>
</h3>
# Summary
Addressed to beginners and not to newcomers, the idea behind this tutorial is to
**focus on the essential**. Anything that is not directly related to the
template we are going to explore will not be covered here. On the other hand
everything that is covered in this tutorial will be carefully detailed.
Initially intended to help 42 students to step up their Makefile skills through
**a C-focused documented template** that evolves gradually, **version by
version**. With the aim of making them more digestible and even tasty 🍔
Allow **1 hour** to complete this tutorial, plus some additional time to work with the [**examples**](https://github.com/clemedon/Makefile_tutor/tree/main/projects). For those of you who are wondering, as I write this line, I have invested a total of 102 hours and 50 minutes in creating this tutorial.
**TL;DR** Refer to the bold text.
[**→ GitHub Page ←**](https://clementvidon.github.io/Makefile_tutor/)<br>
[**→ GitHub Repo ←**](https://github.com/clemedon/Makefile_tutor/)
[![CC BY-SA 4.0][cc-by-sa-shield]][cc-by-sa]
[cc-by-sa]: http://creativecommons.org/licenses/by-sa/4.0/
[cc-by-sa-shield]: https://img.shields.io/badge/License-CC%20BY--SA%204.0-lightgrey.svg
<hr>
**Roadmap**
- [x] [GitHub Page](https://clemedon.github.io/Makefile_tutor/)
- [x] A [ready to make](#usage) project of each template version
- [x] [bold text](#usage) that acts as a summary
- [x] [v1](#version-1) Simplest C project
- [x] [v2](#version-2) Project that include headers
- [x] [v3](#version-3) Project with any kind of directory structure
- [x] [v4](#version-4) Static library *+ introduce auto-gen dependencies*
- [x] [v5](#version-5) Project that uses libraries
- [ ] POSIX Makefile
# Usage
This tutorial is designed to be read line by line **linearly at first**.
Then it can be quickly navigated thanks to the:
- **Brief** of each version which is visible from the [**Index**](#index).
- **Text in bold** that compile the essence of this tutorial.
- [**Return to Index ↑**](#index) buttons at the end of each version.
Each version of the template has an assigned directory in the
[**projects**](https://github.com/clemedon/Makefile_tutor/tree/main/projects)
directory of the repository, to play with a Makefile open a terminal and run:
```bash
git clone https://github.com/clemedon/Makefile_tutor.git
cd Makefile_tutor/projects
```
```bash
cd <template_version>
make <target>
```
*PS1 **`C++` users** have to replace `CC = clang` with `CXX = g++` and `CFLAGS`
with `CXXFLAGS`.*
*PS2 feel free to **fork me** so as to remove everything that does not
interest you and customize me according to your needs.*
# Glossary
Each **version** of the template has **3 sections**:
- **Structure** is the project structure sketch.
- **Brief** is a summary made from the bold parts of the template comments.
- **Template** is a commented Makefile template with comments (that are always
placed at the end of the template part that concerns them).
Our **template** will be articulated around the following **parts**:
- `### BEG` Mark the template **beginning**.
- `INGREDIENTS` Build **variables**.
- `UTENSILS` Shell **commands**.
- `RECIPES` Build and extra **rules**.
- `SPEC` **Special targets**.
- `#### END` Mark the template **end**.
According to make a **`rule`** is made of:
- `targets` are the names of the **goals** we want to make. It can be a file or
an action, the latter leading to a *pseudo target*.
- `prerequisites` are the goals that must be achiExcerpt of 37,392 characters
Read on GitHub140
1
Would you bet a product on this? Bounded 0–100 and slow moving.
matched fp:fcc4ba2ff25f3f90, topic:tutorial, desc:tutorial, readme:tutorial