# Build all Ollie projects in sequence
#
# Usage:
#   mk            # build everything
#   mk core       # build only core
#   mk tui        # build only tui
#   mk 9p         # build only 9p
#   mk all        # build everything (default)

all:V: core tui 9p data scripts

core:V:
	echo === Building ollie-core ===
	cd core && mk

tui:V:
	echo === Building ollie-tui ===
	cd tui && mk

9p:V:
	echo === Building ollie-9p ===
	cd 9p && mk

data:V:
	echo === Installing data ===
	mkdir -p $HOME/.config/ollie/agents
	mkdir -p $HOME/.config/ollie/sandbox
	mkdir -p $HOME/.config/ollie/skills
	mkdir -p $HOME/.config/ollie/tools
	rm -rf $HOME/.config/ollie/prompts
	mkdir -p $HOME/.config/ollie/prompts
	cp -rf agents/* $HOME/.config/ollie/agents
	cp -rf prompts/* $HOME/.config/ollie/prompts
	cp -rf sandbox/* $HOME/.config/ollie/sandbox
	cp -rf skills/* $HOME/.config/ollie/skills
	cp -rf tools/* $HOME/.config/ollie/tools
	cp doc/help.md $HOME/.config/ollie/help.md

scripts:V:
	echo === Installing scripts ===
	mkdir -p $HOME/.config/ollie/scripts/s $HOME/.config/ollie/scripts/b $HOME/.config/ollie/scripts/u $HOME/.config/ollie/scripts/x
	cp -f scripts/s/sh      $HOME/.config/ollie/scripts/s/sh
	cp -f scripts/s/ls      $HOME/.config/ollie/scripts/s/ls
	cp -f scripts/s/kill    $HOME/.config/ollie/scripts/s/kill
	cp -f scripts/b/job     $HOME/.config/ollie/scripts/b/job
	cp -f scripts/b/q       $HOME/.config/ollie/scripts/b/q
	cp -f scripts/b/sched   $HOME/.config/ollie/scripts/b/sched
	cp -f scripts/b/cleanup $HOME/.config/ollie/scripts/b/cleanup
	cp -f scripts/u/optimize $HOME/.config/ollie/scripts/u/optimize
	cp -f scripts/x/elevate $HOME/.config/ollie/scripts/x/elevate
	chmod 755 $HOME/.config/ollie/scripts/u/optimize $HOME/.config/ollie/scripts/x/elevate

help:V:
	echo 'Ollie monorepo build targets:'
	echo '  all     - Build all projects and install data (default)'
	echo '  core    - Build core library'
	echo '  tui     - Build terminal UI'
	echo '  9p      - Build 9p filesystem server'
	echo '  data    - Install agents, prompts, skills, and tools to ~/.config/ollie/'
	echo '  scripts - Install shell scripts to ~/.config/ollie/scripts/'
	echo ''
	echo 'Submodules must be initialized first:'
	echo '  git submodule update --init --recursive'
