Browse Source

Use verified incremental builds instead of mandatory clean

master
evgeny 6 days ago
parent
commit
d6c6a4d111
  1. 6
      AGENTS.md
  2. 2
      tests/Makefile.am

6
AGENTS.md

@ -53,7 +53,8 @@ powershell build_full.bat # запускает bash build.sh --full чер
### Incremental Build
```bash
./build.sh -j4 # make с авто-конфигурацией если надо
./build.sh -j4 # инкрементальная сборка, конфигурация и очистка при необходимости
./build.sh --no-gui -j4 # только ядро и тесты, без отдельной сборки GUI
```
```powershell
powershell -Command ".\build.bat" 2>&1 # Windows, логи: build_win.log
@ -127,6 +128,7 @@ cd tests && ./test_services
```
Использовать цель из `tests/Makefile.am`: ручная компиляция `src/*.c` пропускает подкаталоги и добавляет лишний `main`.
Уровни и категории диагностики настраиваются в самом тесте через `debug_set_level` / `debug_set_category_level`.
Проверки самого скрипта сборки входят в `./check.sh`; отдельно: `make -C tests check-build-script` (нужен Python 3).
## Code Style Guidelines
@ -614,7 +616,7 @@ DEBUG_LEVEL_DISABLED полностью отключает категорию,
- Нельзя ничего восстанавливать из репозитория не спрашивая
- Для отладки не printf а DEBUG_*
- Запрещено прямое включение arpa/inet.h, sys/time.h, unistd.h — использовать ../lib/platform_compat.h + socket_compat.h
- Перед сборкой всегда make clean
- Меняй режим и флаги сборки через `./build.sh`: он отслеживает конфигурацию и очищает объекты только при необходимости.
- Все лишнее что менял при отладке - строго вернуть назад в состояние до вмешательства
## Написание кода

2
tests/Makefile.am

@ -726,7 +726,7 @@ copy-test-configs: $(check_PROGRAMS)
# Clean
clean-local:
-rm -f $(check_PROGRAMS)
@if test "$(abs_srcdir)" != "$(abs_builddir)"; then rm -f $(abs_builddir)/test_*.conf $(abs_builddir)/test_*.json; fi
@if test "$(abs_srcdir)" != "$(abs_builddir)"; then rm -f "$(abs_builddir)"/test_*.conf "$(abs_builddir)"/test_*.json; fi
-rm -rf $(top_builddir)/tests/logs 2>/dev/null || true
# Test logs directory

Loading…
Cancel
Save