ubuntu2404
# Makefile for CoCalc Bioinformatics Genomic Analysis Template
# Optimized for BioPython and genomic data analysis
# Document settings
MAIN = main
TEXFILE = $(MAIN).tex
PDFFILE = $(MAIN).pdf
# LaTeX compilation settings
LATEX = pdflatex
LATEXFLAGS = -shell-escape -interaction=nonstopmode -file-line-error
# PythonTeX settings
PYTHONTEX = pythontex
PYTHONTEXFLAGS = --verbose
# BibTeX settings
BIBTEX = bibtex
# Default target
all: $(PDFFILE)
# Full compilation with PythonTeX and BioPython
$(PDFFILE): $(TEXFILE) references.bib
@echo "Starting bioinformatics template compilation..."
@mkdir -p figures
@echo "Step 1: Initial LaTeX compilation"
$(LATEX) $(LATEXFLAGS) $(MAIN)
@echo "Step 2: Running PythonTeX for BioPython analysis"
$(PYTHONTEX) $(PYTHONTEXFLAGS) $(MAIN)
@echo "Step 3: Running BibTeX for bibliography"
$(BIBTEX) $(MAIN)
@echo "Step 4: Second LaTeX compilation"
$(LATEX) $(LATEXFLAGS) $(MAIN)
@echo "Step 5: Final LaTeX compilation"
$(LATEX) $(LATEXFLAGS) $(MAIN)
@echo "Bioinformatics template compilation complete: $(PDFFILE)"
# Quick draft compilation
draft: $(TEXFILE)
@echo "Quick draft compilation (no PythonTeX)..."
$(LATEX) -interaction=nonstopmode $(MAIN)
# Generate figures only
figures: $(TEXFILE)
@echo "Generating genomic analysis figures..."
@mkdir -p figures
$(LATEX) $(LATEXFLAGS) $(MAIN)
$(PYTHONTEX) $(PYTHONTEXFLAGS) $(MAIN)
# Clean generated files
clean:
@echo "Cleaning generated files..."
rm -f *.aux *.log *.out *.toc *.lof *.lot *.bbl *.blg
rm -f *.fdb_latexmk *.fls *.synctex.gz
rm -f *.pytxcode *.makefile *.fdb *.figlist
rm -f $(MAIN).run.xml $(MAIN)-blx.bib
rm -rf pythontex-files-$(MAIN)/
rm -rf figures/ data/
@echo "Clean complete."
# Install BioPython dependencies (CoCalc-specific)
install-deps:
@echo "Installing BioPython and dependencies..."
pip3 install --user biopython matplotlib seaborn pandas scipy scikit-learn
@echo "Dependencies installed."
# Verify BioPython installation
test-biopython:
@echo "Testing BioPython installation..."
python3 -c "import Bio; print(f'BioPython version: {Bio.__version__}')"
python3 -c "from Bio import SeqIO, Phylo, Align; print('BioPython modules imported successfully')"
# Create sample data (for testing without real genomic data)
sample-data:
@echo "Creating sample genomic data..."
mkdir -p data
@echo "Sample genomic data created in data/ directory"
# Help
help:
@echo "CoCalc Bioinformatics Genomic Analysis Template"
@echo ""
@echo "Available targets:"
@echo " all - Full compilation with BioPython analysis"
@echo " draft - Quick compilation without PythonTeX"
@echo " figures - Generate genomic analysis figures only"
@echo " clean - Remove all generated files"
@echo " install-deps - Install BioPython and dependencies"
@echo " test-biopython- Test BioPython installation"
@echo " sample-data - Create sample data directory"
@echo " help - Show this help message"
@echo ""
@echo "Dependencies:"
@echo " - BioPython for sequence analysis"
@echo " - Matplotlib, seaborn for visualization"
@echo " - Pandas, numpy, scipy for data analysis"
.PHONY: all draft figures clean install-deps test-biopython sample-data help