Open2
yuniframe: プロジェクト構造の整理

Yuniframeにそろそろ大改造を入れたいのでコードを整理する。WABTを最新にしたいとか、そろそろ真面目に外部のWasm処理系を使えるようにしたいとか、パッケージング関連をそろそろ何とかしろってのもあるので。。
現在の構造
現在はいくつかのリポジトリに適当に分割している。
- 本体(NCCC、CWGL等): https://github.com/okuoku/yuniframe
- 外部ライブラリ(SDL2やAngle等): https://github.com/okuoku/yfrmbase
- パッケージング(.apkの作成)、Emscriptenエミュレータ: https://github.com/okuoku/em2native-proto
いわゆるインテグレーションテストは em2native-proto
をrecursiveにチェックアウトして一通りビルドするという方式になっている。
更新したい構造
あんまり論理的に分割するとGitHub的にstarを集めづらいという問題があるが、まぁyuniframeにはそもそも競合が存在しないので気にしない事にした。
-
em2native-integ
-- インテグレーションテスト用のリポジトリ。テスト済のリビジョンをsubmoduleとして保持する & テスト用のスクリプトもここに入れる -
em2native-testapps
-- integリポジトリから参照される、テスト用のアプリが入ったリポジトリ。UnityとかGodotでビルドしたゲームが主に入るはず -
emscripten2native
-- Duktape向けのEmscipten glueやRollup.jsを使ったパッケージング用のスクリプト等 -
yuniframe
-- SDL2を使った入力周りと、シンプルフレームバッファ、シンプル音声出力等 + パッケージング用のスクリプト類(AndroidやSteam等) -
cwgl
-- WebGL1をC言語で実装したライブラリ、シェーダーコンパイラへのglue(shxm
) -
nccc
-- nccc準拠のモジュールをDuktapeやNode.jsから呼び出すためのコード
当初はマイコン向けのyunipocketも統合するつもりだったがリポジトリは分けることにした。

インテグレーションテスト用のリポジトリを用意
em2native-tests
はアプリケーションを模したリポジトリにすることにした。逆にインテグレーション用のリポジトリにはテストは入れない方向に。
こっちの em2native-integ
に各プロジェクト coal
cwgl
yuniframe
nccc
を分離して置いておくことにした。
それぞれのリポジトリの CMakeLists.txt
を今後書いていくことにする。