1
0
2025-06-06 03:53:38 +09:00

98 lines
2.9 KiB
Makefile

# AI Moji Font Generator Makefile
.PHONY: help setup build clean font css package install test
# デフォルトターゲット
help:
@echo "AI Moji Font Generator"
@echo "======================"
@echo ""
@echo "使用可能なコマンド:"
@echo " make setup - 初期セットアップを実行"
@echo " make build - 全体ビルドを実行"
@echo " make clean - 出力ディレクトリをクリア"
@echo " make font - フォントファイルのみ生成"
@echo " make css - CSS/SCSSファイルのみ生成"
@echo " make package - パッケージングのみ実行"
@echo " make install - 生成されたパッケージをローカルにインストール"
@echo " make test - テストビルドを実行"
@echo " make publish - npmに公開"
@echo ""
# 初期セットアップ
setup:
@echo "🚀 セットアップ開始..."
chmod +x setup.sh
./setup.sh
# 全体ビルド
build:
@echo "🔨 フルビルド開始..."
python3 build.py
# クリーンアップ
clean:
@echo "🗑️ クリーンアップ..."
python3 build.py --clean
# フォントのみ生成
font:
@echo "🔤 フォント生成..."
python3 build.py --font-only
# CSSのみ生成
css:
@echo "🎨 CSS生成..."
python3 build.py --css-only
# パッケージングのみ
package:
@echo "📦 パッケージング..."
python3 build.py --package-only
# ローカルインストール
install: build
@echo "📦 ローカルインストール..."
cd ../../dist && npm pack
@echo "✅ パッケージファイルが生成されました"
@echo " npm install ../../dist/aimoji-*.tgz でインストールできます"
# テストビルド
test:
@echo "🧪 テストビルド..."
$(MAKE) clean
python3 build.py --font-only
@echo "✅ テスト完了"
# npm公開
publish: build
@echo "🚀 npm公開準備..."
cd ../../dist && npm publish --dry-run
@echo ""
@echo "本当に公開する場合:"
@echo " cd ../../dist && npm publish"
# 開発用 - ファイル監視
watch:
@echo "👀 ファイル監視モード(要 entr インストール)"
find ../../svg -name "*.svg" | entr -r make build
# 統計情報表示
stats:
@echo "📊 プロジェクト統計"
@echo "=================="
@echo "SVGファイル数:"
@find ../../svg -name "*.svg" | wc -l
@echo ""
@echo "生成されたフォントファイル:"
@find ../../dist/fonts -name "*" 2>/dev/null | wc -l || echo "0"
@echo ""
@echo "出力ディレクトリサイズ:"
@du -sh ../../dist 2>/dev/null || echo "なし"
# 依存関係チェック
check-deps:
@echo "🔍 依存関係チェック..."
@python3 -c "import fontforge; print('✅ FontForge OK')" || echo "❌ FontForge が見つかりません"
@python3 -c "import fontTools; print('✅ FontTools OK')" || echo "❌ FontTools が見つかりません"
@command -v python3 >/dev/null 2>&1 && echo "✅ Python3 OK" || echo "❌ Python3 が見つかりません"