Ferramenta de automação em Bash para projetos em C.
- Linux (ou Git Bash / WSL no Windows)
- Bash 4+
- gcc instalado
projeto/ ├── src/ # arquivos .c ├── include/ # arquivos .h ├── build/ # gerado pela ferramenta └── logs/ # gerado pela ferramenta
bash cbuild.sh [opções] [diretório]
| Comando | Descrição |
|---|---|
| build | Compila o projeto |
| run | Executa o programa compilado |
| clean | Remove artefatos de compilação |
| rebuild | Limpa e recompila |
| info | Exibe estatísticas do projeto |
| Opção | Descrição |
|---|---|
| --opt=0|1|2 | Nível de otimização (-O0/-O1/-O2) |
| --no-incremental | Força recompilar todos os arquivos |
| --verbose | Exibe etapas e comandos executados |
| --debug | Exibe variáveis internas (stderr) |
| --report | Gera relatorios/relatorio.html (info) |
bash cbuild.sh build /meu/projeto
bash cbuild.sh build /meu/projeto --opt=2
bash cbuild.sh build /meu/projeto --verbose
bash cbuild.sh run /meu/projeto
bash cbuild.sh clean /meu/projeto
bash cbuild.sh rebuild /meu/projeto --opt=1
bash cbuild.sh info /meu/projeto
bash cbuild.sh info /meu/projeto --reportArquivos .c não modificados desde a última compilação não são recompilados. Use --no-incremental para forçar recompilação completa.
Crie cbuild.conf na raiz do projeto:
EXEC_NAME="meu_programa"
Cada execução gera um registro em logs/cbuild.log com data, horário, comando, tempo de execução e código de retorno.