This commit is contained in:
Rorikstr | Rust Dev 2025-10-19 19:29:21 +03:00
parent aa354f3258
commit 218ee65e67
3 changed files with 33 additions and 4 deletions

1
.gitignore vendored
View file

@ -61,3 +61,4 @@ src/tetris.log
src/high_score.txt
src/build/high_score.txt
code-samples/frogger/project.md
dvi/

23
src/Doxyfile Normal file
View file

@ -0,0 +1,23 @@
# Doxyfile для генерации документации
PROJECT_NAME = "Tetris Game C API"
PROJECT_NUMBER = "1.0"
PROJECT_BRIEF = "Classic Tetris implementation with separated backend/frontend"
OUTPUT_DIRECTORY = dvi
INPUT = brick_game/tetris/00_tetris.h doc.md
RECURSIVE = NO
GENERATE_HTML = YES
GENERATE_LATEX = NO
EXTRACT_ALL = YES
EXTRACT_PRIVATE = NO
EXTRACT_STATIC = NO
FILE_PATTERNS = *.h *.md
HTML_OUTPUT = html
USE_MDFILE_AS_MAINPAGE = doc.md
JAVADOC_AUTOBRIEF = YES
OPTIMIZE_OUTPUT_FOR_C = YES
TYPEDEF_HIDES_STRUCT = YES
SHOW_INCLUDE_FILES = YES
SHOW_NAMESPACES = NO
QUIET = YES
WARNINGS = YES
WARN_IF_UNDOCUMENTED = YES

View file

@ -78,11 +78,16 @@ gcov_report: clean test
dvi:
@mkdir -p $(DVI_DIR)
@cp doc.md $(DVI_DIR)/ 2>/dev/null || echo "doc.md not found"
@if command -v doxygen >/dev/null 2>&1 && [ -f Doxyfile ]; then \
doxygen Doxyfile; \
@echo "Generating documentation with Doxygen..."
@if command -v doxygen >/dev/null 2>&1; then \
doxygen Doxyfile && echo "HTML docs: $(DVI_DIR)/html/index.html"; \
else \
echo "Error: Doxygen not found. Install: nix-shell -p doxygen"; \
echo "Copying doc.md as fallback..."; \
cp doc.md $(DVI_DIR)/; \
fi
@echo "Documentation in $(DVI_DIR)/"
xdg-open dvi/html/index.html
dist: clean
tar -czf tetris.tar.gz Makefile $(TETRISDIR) $(CLIDIR) $(TESTDIR) README.md doc.md