mirror of
https://github.com/projectPiki/pikmin2.git
synced 2024-12-03 11:00:51 +00:00
1763 lines
69 KiB
Python
Executable File
1763 lines
69 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
LIBS = [
|
|
{
|
|
"lib": "JSystem",
|
|
"cflags": "$cflags_base",
|
|
"mwcc_version": "2.6",
|
|
"host": True,
|
|
"objects": [
|
|
"JSystem/object/object-particle",
|
|
"JSystem/JPA/control",
|
|
"JSystem/resource",
|
|
["JSystem/data", True],
|
|
"JSystem/processor",
|
|
"JSystem/control",
|
|
["JSystem/JStudio/stb/data/stb-data-parse", True],
|
|
"JSystem/functionvalue",
|
|
"JSystem/JStudio/fvb/fvb",
|
|
["JSystem/JStudio/fvb/data/fvb-data", True],
|
|
["JSystem/JStudio/fvb/data/fvb-data-parse", True],
|
|
"JSystem/JStudio/jstudio-control",
|
|
["JSystem/JStudio/data/jstudio-data", True],
|
|
"JSystem/JStudio/jstudio-object",
|
|
"JSystem/object/object-id",
|
|
"JSystem/JStudio/stb/stb",
|
|
["JSystem/JStudio/stb/data/stb-data", True],
|
|
"JSystem/JStudio/jstudio-math",
|
|
"JSystem/object/object-light",
|
|
"JSystem/object/object",
|
|
"JSystem/object/object-actor",
|
|
["JSystem/object/object-ambientlight", True],
|
|
"JSystem/object/object-camera",
|
|
["JSystem/object/object-fog", True],
|
|
"JSystem/JSG/control",
|
|
["JSystem/object/object-message", True],
|
|
"JSystem/object/control",
|
|
"JSystem/object/object-sound",
|
|
"JSystem/JAI/control",
|
|
["JSystem/J3D/J3DUDL", True],
|
|
"JSystem/J3D/J3DUMotion",
|
|
["JSystem/J3D/J3DUShadow", True],
|
|
"JSystem/J3D/J3DUMtxCache",
|
|
"JSystem/JKR/JKRAram",
|
|
"JSystem/JKR/JKRAramArchive",
|
|
"JSystem/JKR/JKRAramBlock",
|
|
"JSystem/JKR/JKRAramHeap",
|
|
"JSystem/JKR/JKRAramPiece",
|
|
["JSystem/JKR/JKRAramStream", True],
|
|
"JSystem/JKR/JKRArchivePri",
|
|
"JSystem/JKR/JKRArchivePub",
|
|
"JSystem/JKR/JKRCompArchive",
|
|
"JSystem/JKR/JKRDecomp",
|
|
["JSystem/JKR/JKRDisposer", True],
|
|
"JSystem/JKR/JKRDvdFile",
|
|
"JSystem/JKR/JKRDvdAramRipper",
|
|
"JSystem/JKR/JKRDvdArchive",
|
|
"JSystem/JKR/JKRDvdRipper",
|
|
"JSystem/JKR/JKRExpHeap",
|
|
"JSystem/JKR/JKRFileCache",
|
|
"JSystem/JKR/JKRFileFinder",
|
|
["JSystem/JKR/JKRFile", True],
|
|
"JSystem/JKR/JKRFileLoader",
|
|
"JSystem/JKR/JKRHeap",
|
|
"JSystem/JKR/JKRMemArchive",
|
|
"JSystem/JKR/JKRSolidHeap",
|
|
"JSystem/JKR/JKRThread",
|
|
["JSystem/JSupport/JSUOutputStream", True],
|
|
["JSystem/JSupport/JSUInputStream", True],
|
|
["JSystem/JSupport/JSUList", True],
|
|
["JSystem/JSupport/JSUMemoryStream", True],
|
|
["JSystem/JSupport/JSUFileStream", True],
|
|
"JSystem/binary",
|
|
"JSystem/linklist",
|
|
"JSystem/std/std-list",
|
|
"JSystem/std/std-vector",
|
|
"JSystem/JUT/JUTAssert",
|
|
"JSystem/JUT/JUTConsole",
|
|
"JSystem/JUT/JUTDbPrint",
|
|
"JSystem/JUT/JUTDirectFile",
|
|
"JSystem/JUT/JUTDirectPrint",
|
|
"JSystem/JUT/JUTException",
|
|
["JSystem/JUT/JUTFader", True],
|
|
["JSystem/JUT/JUTFont", True],
|
|
"JSystem/JUT/JUTGamePad",
|
|
"JSystem/JUT/JUTGraphFifo",
|
|
["JSystem/JUT/JUTNameTab", True],
|
|
"JSystem/JUT/JUTPalette",
|
|
"JSystem/JUT/JUTProcBar",
|
|
["JSystem/JUT/JUTResFont", True],
|
|
"JSystem/JUT/JUTResource",
|
|
["JSystem/JUT/JUTRomFont", True],
|
|
["JSystem/JUT/JUTFontData_Ascfont_fix12", True],
|
|
"JSystem/JUT/JUTTexture",
|
|
"JSystem/JUT/JUTVideo",
|
|
"JSystem/JUT/JUTXfb",
|
|
"JSystem/JUT/JUTCacheFont",
|
|
"JSystem/JMath/JMath",
|
|
["JSystem/JMath/random", True],
|
|
"JSystem/JMath/JMATrigonometric",
|
|
["JSystem/J2D/J2DOrthoGraph", True],
|
|
["JSystem/J2D/J2DPerspGraph", True],
|
|
["JSystem/J2D/J2DGrafContext", True],
|
|
"JSystem/J2D/J2DPane",
|
|
"JSystem/J2D/J2DPicture",
|
|
"JSystem/J2D/J2DPrint",
|
|
"JSystem/J2D/J2DScreen",
|
|
"JSystem/J2D/J2DTextBox",
|
|
"JSystem/J2D/J2DWindow",
|
|
"JSystem/J2D/J2DWindowEx",
|
|
"JSystem/J2D/J2DAnmLoader",
|
|
"JSystem/J2D/J2DBloSaver",
|
|
["JSystem/J2D/J2DManage", True],
|
|
"JSystem/J2D/J2DMatBlock",
|
|
"JSystem/J2D/J2DMaterial",
|
|
"JSystem/J2D/J2DMaterialFactory",
|
|
"JSystem/J2D/J2DPictureEx",
|
|
"JSystem/J2D/J2DTevs",
|
|
"JSystem/J2D/J2DTextBoxEx",
|
|
"JSystem/J2D/J2DAnimation",
|
|
"JSystem/J3D/J3DSys",
|
|
"JSystem/J3D/J3DVertex",
|
|
"JSystem/J3D/J3DTransform",
|
|
"JSystem/J3D/J3DPacket",
|
|
"JSystem/J3D/J3DShape",
|
|
"JSystem/J3D/J3DMaterial",
|
|
"JSystem/J3D/J3DTevs",
|
|
"JSystem/J3D/J3DDrawBuffer",
|
|
"JSystem/J3D/J3DModel",
|
|
"JSystem/J3D/J3DAnimation",
|
|
"JSystem/J3D/J3DMaterialAnm",
|
|
"JSystem/J3D/J3DCluster",
|
|
"JSystem/J3D/J3DJoint",
|
|
"JSystem/J3D/J3DMaterialFactory",
|
|
["JSystem/J3D/J3DBinaryFormat", True],
|
|
"JSystem/J3D/J3DModelLoader",
|
|
["JSystem/J3D/J3DJointFactory", True],
|
|
"JSystem/J3D/J3DShapeFactory",
|
|
["JSystem/J3D/J3DAnmLoader", True],
|
|
["JSystem/J3D/J3DModelSaver", True],
|
|
"JSystem/J3D/J3DGD",
|
|
"JSystem/J3D/J3DMatBlock",
|
|
"JSystem/J3D/J3DModelData",
|
|
"JSystem/J3D/J3DMaterialAttach",
|
|
"JSystem/J3D/J3DMaterialFactory_v21",
|
|
"JSystem/J3D/J3DShapeMtx",
|
|
"JSystem/J3D/J3DModelLoaderCalcSize",
|
|
"JSystem/J3D/J3DJointTree",
|
|
"JSystem/J3D/J3DSkinDeform",
|
|
["JSystem/J3D/J3DShapeDraw", True],
|
|
"JSystem/J3D/J3DMtxBuffer",
|
|
["JSystem/J3D/J3DShapeTable", True],
|
|
"JSystem/JFW/JFWSystem",
|
|
"JSystem/JFW/JFWDisplay",
|
|
"JSystem/JPA/JPABaseShape",
|
|
"JSystem/JPA/JPAChildShape",
|
|
"JSystem/JPA/JPADynamicsBlock",
|
|
"JSystem/JPA/JPAEmitter",
|
|
"JSystem/JPA/JPAEmitterManager",
|
|
"JSystem/JPA/JPAExTexShape",
|
|
"JSystem/JPA/JPAExtraShape",
|
|
"JSystem/JPA/JPAFieldBlock",
|
|
["JSystem/JPA/JPAKeyBlock", True],
|
|
"JSystem/JPA/JPAMath",
|
|
"JSystem/JPA/JPAParticle",
|
|
"JSystem/JPA/JPAResource",
|
|
"JSystem/JPA/JPAResourceLoader",
|
|
"JSystem/JPA/JPAResourceManager",
|
|
["JSystem/JPA/JPATexture", True],
|
|
["JSystem/JSG/JSGSystem", True],
|
|
["JSystem/JSG/JSGCamera", True],
|
|
["JSystem/JSG/JSGObject", True],
|
|
["JSystem/JSG/JSGActor", True],
|
|
"JSystem/JAS/JASWSParser",
|
|
"JSystem/JAS/JASBankMgr",
|
|
"JSystem/JAS/JASBasicBank",
|
|
["JSystem/JAS/JASBasicInst", True],
|
|
"JSystem/JAS/JASBasicWaveBank",
|
|
"JSystem/JAS/JASBNKParser",
|
|
"JSystem/JAS/JASDrumSet",
|
|
["JSystem/JAS/JASInstEffect", True],
|
|
"JSystem/JAS/JASInstRand",
|
|
"JSystem/JAS/JASInstSense",
|
|
"JSystem/JAS/JASSimpleWaveBank",
|
|
"JSystem/JAS/JASWaveArcLoader",
|
|
["JSystem/JAS/JASWaveBank", True],
|
|
["JSystem/JAS/JASWaveBankMgr", True],
|
|
["JSystem/JAS/JASBank", True],
|
|
["JSystem/JAS/JASTrackPort", True],
|
|
["JSystem/JAS/JASOuterParam", True],
|
|
"JSystem/JAS/JASPlayer_impl",
|
|
"JSystem/JAS/JASRegisterParam",
|
|
"JSystem/JAS/JASSeqCtrl",
|
|
"JSystem/JAS/JASSeqParser",
|
|
"JSystem/JAS/JASTrack",
|
|
"JSystem/JAS/JASTrackInterrupt",
|
|
"JSystem/JAS/JASOscillator",
|
|
"JSystem/JAS/JASChannel",
|
|
"JSystem/JAS/JASDriverIF",
|
|
"JSystem/JAS/JASDSPChannel",
|
|
"JSystem/JAS/JASDSPInterface",
|
|
"JSystem/JAS/JASAudioThread",
|
|
"JSystem/JAS/JASCalc",
|
|
"JSystem/JAS/JASCallback",
|
|
"JSystem/JAS/JASCmdStack",
|
|
["JSystem/JAS/JASDvdThread", True],
|
|
"JSystem/JAS/JASHeapCtrl",
|
|
["JSystem/JAS/JASProbe", True],
|
|
"JSystem/JAS/JASResArcLoader",
|
|
"JSystem/JAS/JASReport",
|
|
"JSystem/JAS/JASAiCtrl",
|
|
["JSystem/JAS/JASChannelUpdater", True],
|
|
"JSystem/JAS/JASTaskThread",
|
|
"JSystem/JAS/JASAramStream",
|
|
"JSystem/dsp/dspproc",
|
|
"JSystem/dsp/dsptask",
|
|
"JSystem/dsp/osdsp",
|
|
"JSystem/dsp/osdsp_task",
|
|
"JSystem/JAI/JAIAnimation",
|
|
"JSystem/JAI/JAIBankWave",
|
|
"JSystem/JAI/JAIBasic",
|
|
["JSystem/JAI/JAIConst", True],
|
|
"JSystem/JAI/JAIDummyObject",
|
|
"JSystem/JAI/JAIFx",
|
|
"JSystem/JAI/JAIGlobalParameter",
|
|
"JSystem/JAI/JAIInitData",
|
|
"JSystem/JAI/JAISeMgr",
|
|
"JSystem/JAI/JAISequenceHeap",
|
|
"JSystem/JAI/JAISequenceMgr",
|
|
"JSystem/JAI/JAISound",
|
|
"JSystem/JAI/JAISoundTable",
|
|
"JSystem/JAI/JAIStreamMgr",
|
|
"JSystem/JAI/JAISystemInterface",
|
|
"JSystem/JAI/JAIObject",
|
|
["JSystem/JAD/JADHioNode", True],
|
|
"JSystem/JAL/JALCalc",
|
|
"JSystem/JAU/JAUData",
|
|
"JSystem/JAU/JAUDataMgr",
|
|
],
|
|
},
|
|
{
|
|
"lib": "Dolphin",
|
|
"mwcc_version": "1.2.5",
|
|
"cflags": "$cflags_base",
|
|
"host": False,
|
|
"objects": [
|
|
["Dolphin/mainloop", True],
|
|
["Dolphin/nubevent", True],
|
|
["Dolphin/nubinit", True],
|
|
["Dolphin/msg", True],
|
|
"Dolphin/msgbuf",
|
|
"Dolphin/serpoll",
|
|
["Dolphin/usr_put", True],
|
|
["Dolphin/dispatch", True],
|
|
"Dolphin/msghndlr",
|
|
"Dolphin/support",
|
|
["Dolphin/mutex_TRK", True],
|
|
["Dolphin/notify", True],
|
|
["Dolphin/flush_cache", True],
|
|
["Dolphin/mem_TRK", True],
|
|
"Dolphin/targimpl",
|
|
["Dolphin/targsupp", True],
|
|
"Dolphin/mpc_7xx_603e",
|
|
"Dolphin/__exception",
|
|
"Dolphin/dolphin_trk",
|
|
["Dolphin/main_TRK", True],
|
|
"Dolphin/dolphin_trk_glue",
|
|
["Dolphin/targcont", True],
|
|
["Dolphin/target_options", True],
|
|
"Dolphin/mslsupp",
|
|
["Dolphin/UDP_Stubs", True],
|
|
["Dolphin/ddh/main", True],
|
|
"Dolphin/CircleBuffer",
|
|
["Dolphin/main", True],
|
|
["Dolphin/MWTrace", True],
|
|
["Dolphin/MWCriticalSection_gc", True],
|
|
["Dolphin/__va_arg", True],
|
|
"Dolphin/global_destructor_chain",
|
|
["Dolphin/CPlusLibPPC", True],
|
|
"Dolphin/NMWException",
|
|
["Dolphin/ptmf", True],
|
|
"Dolphin/runtime",
|
|
"Dolphin/__init_cpp_exceptions",
|
|
"Dolphin/Gecko_ExceptionPPC",
|
|
["Dolphin/GCN_mem_alloc", True],
|
|
["Dolphin/abort_exit", True],
|
|
"Dolphin/alloc",
|
|
["Dolphin/ansi_files", True],
|
|
"Dolphin/ansi_fp",
|
|
["Dolphin/arith", True],
|
|
["Dolphin/buffer_io", True],
|
|
["Dolphin/critical_regions.gamecube", True],
|
|
["Dolphin/ctype", True],
|
|
"Dolphin/direct_io",
|
|
["Dolphin/errno", True],
|
|
["Dolphin/file_io", True],
|
|
["Dolphin/FILE_POS", True],
|
|
["Dolphin/locale", True],
|
|
["Dolphin/mbstring", True],
|
|
["Dolphin/mem", True],
|
|
"Dolphin/mem_funcs",
|
|
["Dolphin/misc_io", True],
|
|
"Dolphin/printf",
|
|
["Dolphin/rand", True],
|
|
["Dolphin/float", True],
|
|
"Dolphin/scanf",
|
|
["Dolphin/string", True],
|
|
"Dolphin/strtold",
|
|
"Dolphin/strtoul",
|
|
["Dolphin/wchar_io", True],
|
|
["Dolphin/uart_console_io_gcn", True],
|
|
["Dolphin/e_asin", True],
|
|
["Dolphin/e_atan2", True],
|
|
["Dolphin/e_exp", True],
|
|
["Dolphin/e_fmod", True],
|
|
["Dolphin/e_log", True],
|
|
["Dolphin/e_log10", True],
|
|
["Dolphin/e_pow", True],
|
|
["Dolphin/e_rem_pio2", True],
|
|
["Dolphin/k_cos", True],
|
|
["Dolphin/k_rem_pio2", True],
|
|
["Dolphin/k_sin", True],
|
|
["Dolphin/k_tan", True],
|
|
["Dolphin/s_atan", True],
|
|
["Dolphin/s_ceil", True],
|
|
["Dolphin/s_copysign", True],
|
|
["Dolphin/s_cos", True],
|
|
["Dolphin/s_floor", True],
|
|
["Dolphin/s_frexp", True],
|
|
["Dolphin/s_ldexp", True],
|
|
["Dolphin/s_modf", True],
|
|
["Dolphin/s_sin", True],
|
|
["Dolphin/s_tan", True],
|
|
["Dolphin/w_asin", True],
|
|
["Dolphin/w_atan2", True],
|
|
["Dolphin/w_exp", True],
|
|
["Dolphin/w_fmod", True],
|
|
["Dolphin/w_log10", True],
|
|
["Dolphin/w_pow", True],
|
|
["Dolphin/e_sqrt", True],
|
|
["Dolphin/math_ppc", True],
|
|
["Dolphin/w_sqrt", True],
|
|
["Dolphin/extras", True],
|
|
"Dolphin/DebuggerDriver",
|
|
"Dolphin/vi",
|
|
["Dolphin/AmcExi2Stubs", True],
|
|
"Dolphin/ar",
|
|
"Dolphin/arq",
|
|
["Dolphin/PPCArch", True],
|
|
"Dolphin/CARDBios",
|
|
"Dolphin/CARDUnlock",
|
|
"Dolphin/CARDRdwr",
|
|
"Dolphin/CARDBlock",
|
|
"Dolphin/CARDDir",
|
|
"Dolphin/CARDCheck",
|
|
"Dolphin/CARDMount",
|
|
"Dolphin/CARDFormat",
|
|
"Dolphin/CARDOpen",
|
|
"Dolphin/CARDCreate",
|
|
"Dolphin/CARDRead",
|
|
"Dolphin/CARDWrite",
|
|
"Dolphin/CARDStat",
|
|
"Dolphin/CARDNet",
|
|
["Dolphin/db", True],
|
|
"Dolphin/dsp",
|
|
["Dolphin/dsp_debug", True],
|
|
"Dolphin/dsp_task",
|
|
"Dolphin/dvdlow",
|
|
"Dolphin/dvdfs",
|
|
"Dolphin/dvd",
|
|
["Dolphin/dvdqueue", True],
|
|
["Dolphin/dvderror", True],
|
|
["Dolphin/dvdidutils", True],
|
|
["Dolphin/dvdFatal", True],
|
|
["Dolphin/fstload", True],
|
|
"Dolphin/EXIBios",
|
|
"Dolphin/EXIUart",
|
|
["Dolphin/GDBase", True],
|
|
"Dolphin/GDGeometry",
|
|
"Dolphin/GXInit",
|
|
"Dolphin/GXFifo",
|
|
"Dolphin/GXAttr",
|
|
"Dolphin/GXMisc",
|
|
"Dolphin/GXGeometry",
|
|
"Dolphin/GXFrameBuf",
|
|
"Dolphin/GXLight",
|
|
"Dolphin/GXTexture",
|
|
["Dolphin/GXBump", True],
|
|
"Dolphin/GXTev",
|
|
"Dolphin/GXPixel",
|
|
"Dolphin/GXDisplayList",
|
|
"Dolphin/GXTransform",
|
|
"Dolphin/GXPerf",
|
|
"Dolphin/mtx",
|
|
"Dolphin/mtxvec",
|
|
"Dolphin/mtx44",
|
|
["Dolphin/vec", True],
|
|
["Dolphin/odenotstub", True],
|
|
["Dolphin/OS", True],
|
|
"Dolphin/OSAlarm",
|
|
["Dolphin/OSAlloc", True],
|
|
["Dolphin/OSArena", True],
|
|
["Dolphin/OSAudioSystem", True],
|
|
["Dolphin/OSCache", True],
|
|
"Dolphin/OSContext",
|
|
"Dolphin/OSError",
|
|
"Dolphin/OSFont",
|
|
"Dolphin/OSInterrupt",
|
|
["Dolphin/OSLink", True],
|
|
["Dolphin/OSMessage", True],
|
|
"Dolphin/OSMemory",
|
|
"Dolphin/OSMutex",
|
|
"Dolphin/OSReboot",
|
|
"Dolphin/OSReset",
|
|
"Dolphin/OSResetSW",
|
|
"Dolphin/OSRtc",
|
|
["Dolphin/OSSync", True],
|
|
"Dolphin/OSThread",
|
|
"Dolphin/OSTime",
|
|
"Dolphin/__mem",
|
|
["Dolphin/__start", True],
|
|
["Dolphin/__ppc_eabi_init", True],
|
|
"Dolphin/Padclamp",
|
|
"Dolphin/Pad",
|
|
"Dolphin/SIBios",
|
|
["Dolphin/SISamplingRate", True],
|
|
"Dolphin/ai",
|
|
"Dolphin/THPDec",
|
|
"Dolphin/THPAudio",
|
|
["Dolphin/GBA", True],
|
|
["Dolphin/GBARead", True],
|
|
["Dolphin/GBAWrite", True],
|
|
"Dolphin/GBAXfer",
|
|
],
|
|
},
|
|
{
|
|
"lib": "plugProjectYamashitaU",
|
|
"cflags": "$cflags_pikmin",
|
|
"mwcc_version": "2.6",
|
|
"host": True,
|
|
"objects": [
|
|
"plugProjectYamashitaU/enemyBase",
|
|
["plugProjectYamashitaU/pelplant", True],
|
|
["plugProjectYamashitaU/pelplantState", True],
|
|
["plugProjectYamashitaU/enemyInteractBattle", True],
|
|
"plugProjectYamashitaU/generalEnemyMgr",
|
|
["plugProjectYamashitaU/kochappyAnimator", True],
|
|
["plugProjectYamashitaU/kochappy", True],
|
|
"plugProjectYamashitaU/kochappyState",
|
|
["plugProjectYamashitaU/kochappyMgr", True],
|
|
"plugProjectYamashitaU/enemyAction",
|
|
["plugProjectYamashitaU/chappy", True],
|
|
"plugProjectYamashitaU/chappyState",
|
|
["plugProjectYamashitaU/chappyAnimator", True],
|
|
["plugProjectYamashitaU/chappyMgr", True],
|
|
"plugProjectYamashitaU/lifeGaugeMgr",
|
|
"plugProjectYamashitaU/carryInfoMgr",
|
|
"plugProjectYamashitaU/gameLightMgr",
|
|
"plugProjectYamashitaU/vtxAnm",
|
|
["plugProjectYamashitaU/enemyInfo", True],
|
|
"plugProjectYamashitaU/farm",
|
|
"plugProjectYamashitaU/farmMgr",
|
|
"plugProjectYamashitaU/genEnemy",
|
|
["plugProjectYamashitaU/timeMgr", True],
|
|
["plugProjectYamashitaU/pelplantGenerator", True],
|
|
["plugProjectYamashitaU/enemyInteractActions", True],
|
|
["plugProjectYamashitaU/enemyAnimatorBase", True],
|
|
"plugProjectYamashitaU/enemyStoneMgr",
|
|
["plugProjectYamashitaU/enemyStoenInfo", True],
|
|
"plugProjectYamashitaU/enemyStoneDrawInfo",
|
|
"plugProjectYamashitaU/enemyStoneObj",
|
|
["plugProjectYamashitaU/enemyParmsBase", True],
|
|
["plugProjectYamashitaU/walkSmokeEffect", True],
|
|
["plugProjectYamashitaU/ChappyBaseMgr", True],
|
|
["plugProjectYamashitaU/ChappyBase", True],
|
|
["plugProjectYamashitaU/BlueChappyMgr", True],
|
|
["plugProjectYamashitaU/BlueChappy", True],
|
|
["plugProjectYamashitaU/YellowChappyMgr", True],
|
|
["plugProjectYamashitaU/YellowChappy", True],
|
|
["plugProjectYamashitaU/BlueKochappyMgr", True],
|
|
["plugProjectYamashitaU/BlueKochappy", True],
|
|
["plugProjectYamashitaU/YellowKochappy", True],
|
|
["plugProjectYamashitaU/YellowKochappyMgr", True],
|
|
["plugProjectYamashitaU/KochappyBaseMgr", True],
|
|
["plugProjectYamashitaU/KochappyBase", True],
|
|
["plugProjectYamashitaU/enemyBlendAnimatorBase", True],
|
|
["plugProjectYamashitaU/enemyPelletInfo", True],
|
|
["plugProjectYamashitaU/enemyEffectNode", True],
|
|
["plugProjectYamashitaU/enemyMgrBase", True],
|
|
["plugProjectYamashitaU/enemyFSM", True],
|
|
"plugProjectYamashitaU/singleGS_ZukanParms",
|
|
["plugProjectYamashitaU/treasureLightMgr", True],
|
|
"plugProjectYamashitaU/effectAnimator",
|
|
],
|
|
},
|
|
{
|
|
"lib": "plugProjectKandoU",
|
|
"cflags": "$cflags_pikmin",
|
|
"mwcc_version": "2.6",
|
|
"host": True,
|
|
"objects": [
|
|
["plugProjectKandoU/pikiAnimator", True],
|
|
"plugProjectKandoU/collinfo",
|
|
"plugProjectKandoU/gameDynamics",
|
|
"plugProjectKandoU/creature",
|
|
"plugProjectKandoU/fakePiki",
|
|
"plugProjectKandoU/navi",
|
|
"plugProjectKandoU/piki",
|
|
"plugProjectKandoU/baseGameSection",
|
|
"plugProjectKandoU/singleGameSection",
|
|
"plugProjectKandoU/cellPyramid",
|
|
"plugProjectKandoU/naviMgr",
|
|
"plugProjectKandoU/pikiMgr",
|
|
"plugProjectKandoU/mapMgr",
|
|
"plugProjectKandoU/baseHIOSection",
|
|
"plugProjectKandoU/naviWhistle",
|
|
"plugProjectKandoU/pelletMgr",
|
|
"plugProjectKandoU/routeMgr",
|
|
"plugProjectKandoU/onyonMgr",
|
|
["plugProjectKandoU/objectTypes", True],
|
|
"plugProjectKandoU/naviState",
|
|
"plugProjectKandoU/pikiState",
|
|
"plugProjectKandoU/interactPiki",
|
|
"plugProjectKandoU/gameCPlate",
|
|
["plugProjectKandoU/updateMgr", True],
|
|
"plugProjectKandoU/aiAction",
|
|
"plugProjectKandoU/aiPrimitives",
|
|
"plugProjectKandoU/aiFormation",
|
|
"plugProjectKandoU/creatureStick",
|
|
["plugProjectKandoU/interactBattle", True],
|
|
["plugProjectKandoU/aiFree", True],
|
|
"plugProjectKandoU/aiAttack",
|
|
"plugProjectKandoU/aiTransport",
|
|
"plugProjectKandoU/aiEnter",
|
|
"plugProjectKandoU/pathfinder",
|
|
"plugProjectKandoU/pelletState",
|
|
"plugProjectKandoU/dynCreature",
|
|
"plugProjectKandoU/gameGenerator",
|
|
"plugProjectKandoU/genPiki",
|
|
["plugProjectKandoU/genNavi", True],
|
|
"plugProjectKandoU/genItem",
|
|
["plugProjectKandoU/gameStages", True],
|
|
"plugProjectKandoU/gameSeaMgr",
|
|
"plugProjectKandoU/pikiAI",
|
|
["plugProjectKandoU/pelletConfig", True],
|
|
"plugProjectKandoU/gameFootmark",
|
|
"plugProjectKandoU/gameSystem",
|
|
["plugProjectKandoU/aiConstants", True],
|
|
"plugProjectKandoU/gameMapParts",
|
|
"plugProjectKandoU/vsGameSection",
|
|
"plugProjectKandoU/gamePlatMgr",
|
|
"plugProjectKandoU/itemGate",
|
|
"plugProjectKandoU/itemMgr",
|
|
"plugProjectKandoU/aiBreakGate",
|
|
"plugProjectKandoU/gameStat",
|
|
"plugProjectKandoU/itemHole",
|
|
"plugProjectKandoU/itemHoney",
|
|
"plugProjectKandoU/gameCaveInfo",
|
|
"plugProjectKandoU/creatureLOD",
|
|
"plugProjectKandoU/interactNavi",
|
|
"plugProjectKandoU/itemPikihead",
|
|
"plugProjectKandoU/itemPlant",
|
|
"plugProjectKandoU/itemRock",
|
|
["plugProjectKandoU/aiBreakRock", True],
|
|
"plugProjectKandoU/aiCrop",
|
|
["plugProjectKandoU/registItem", True],
|
|
"plugProjectKandoU/gamePlayData",
|
|
"plugProjectKandoU/itemCave",
|
|
"plugProjectKandoU/itemBigFountain",
|
|
"plugProjectKandoU/itemBridge",
|
|
["plugProjectKandoU/pikiContainer", True],
|
|
"plugProjectKandoU/gameGeneratorCache",
|
|
"plugProjectKandoU/itemTreasure",
|
|
"plugProjectKandoU/itemDownFloor",
|
|
["plugProjectKandoU/kandoLib", True],
|
|
"plugProjectKandoU/itemBarrel",
|
|
"plugProjectKandoU/pelletNumber",
|
|
"plugProjectKandoU/pelletCarcass",
|
|
"plugProjectKandoU/pelletFruit",
|
|
"plugProjectKandoU/pelletOtakara",
|
|
"plugProjectKandoU/genPellet",
|
|
"plugProjectKandoU/pelletItem",
|
|
"plugProjectKandoU/mapMgrTraceMove",
|
|
"plugProjectKandoU/efxModelObjects",
|
|
"plugProjectKandoU/itemUjamushi",
|
|
"plugProjectKandoU/aiWeed",
|
|
"plugProjectKandoU/flockMgr",
|
|
"plugProjectKandoU/itemWeed",
|
|
["plugProjectKandoU/aiBridge", True],
|
|
"plugProjectKandoU/aiTeki",
|
|
"plugProjectKandoU/singleGS_MainGame",
|
|
"plugProjectKandoU/singleGS_CaveGame",
|
|
"plugProjectKandoU/singleGS_MainResult",
|
|
"plugProjectKandoU/singleGS_CaveResult",
|
|
"plugProjectKandoU/singleGS_WorldMap",
|
|
"plugProjectKandoU/singleGS_FileSelect",
|
|
"plugProjectKandoU/gamePlayDataMemCard",
|
|
["plugProjectKandoU/baseHIOparms", True],
|
|
["plugProjectKandoU/radarInfo", True],
|
|
["plugProjectKandoU/singleGS_Movie", True],
|
|
"plugProjectKandoU/navi_demoCheck",
|
|
"plugProjectKandoU/singleGS_Zukan",
|
|
"plugProjectKandoU/gameResultTexMgr",
|
|
"plugProjectKandoU/gamePelletList",
|
|
"plugProjectKandoU/vsGS_Title",
|
|
"plugProjectKandoU/vsGS_Game",
|
|
"plugProjectKandoU/vsGS_Result",
|
|
["plugProjectKandoU/vsGS_Load", True],
|
|
"plugProjectKandoU/vsStageData",
|
|
"plugProjectKandoU/cellMgrParms",
|
|
"plugProjectKandoU/cellIterator",
|
|
["plugProjectKandoU/vsGS_VSGame", True],
|
|
["plugProjectKandoU/gameSoundEvent", True],
|
|
"plugProjectKandoU/aiBattle",
|
|
"plugProjectKandoU/gameDeathCount",
|
|
"plugProjectKandoU/aiBore",
|
|
["plugProjectKandoU/mapPartsView", True],
|
|
"plugProjectKandoU/singleGS_Ending",
|
|
["plugProjectKandoU/gameIconTexture", True],
|
|
"plugProjectKandoU/gameTekiStat",
|
|
["plugProjectKandoU/gameHighscore", True],
|
|
"plugProjectKandoU/gamePlayCommonData",
|
|
["plugProjectKandoU/pelletCarry", True],
|
|
["plugProjectKandoU/gameChallenge2D", True],
|
|
["plugProjectKandoU/vsTekiMgr", True],
|
|
"plugProjectKandoU/vsCardMgr",
|
|
"plugProjectKandoU/aiRescue",
|
|
["plugProjectKandoU/baseGameSectionDraw", True],
|
|
["plugProjectKandoU/singleGS_Load", True],
|
|
"plugProjectKandoU/singleGS_DayEnd",
|
|
"plugProjectKandoU/baseGameSectionKantei",
|
|
["plugProjectKandoU/sweepPrune", True],
|
|
"plugProjectKandoU/texCaster",
|
|
["plugProjectKandoU/vsCoinOtakaraName", True],
|
|
["plugProjectKandoU/pelletBirthBuffer", True],
|
|
["plugProjectKandoU/vsFifo", True],
|
|
],
|
|
},
|
|
{
|
|
"lib": "plugProjectNishimuraU",
|
|
"cflags": "$cflags_pikmin",
|
|
"mwcc_version": "2.6",
|
|
"host": True,
|
|
"objects": [
|
|
"plugProjectNishimuraU/nslibmath",
|
|
"plugProjectNishimuraU/ShadowCylinder",
|
|
"plugProjectNishimuraU/playCamera",
|
|
"plugProjectNishimuraU/shadowMgr",
|
|
["plugProjectNishimuraU/MapUnit", True],
|
|
"plugProjectNishimuraU/MapNode",
|
|
["plugProjectNishimuraU/EnemyUnit", True],
|
|
"plugProjectNishimuraU/RandMapMgr",
|
|
["plugProjectNishimuraU/RandMapDraw", True],
|
|
["plugProjectNishimuraU/RandMapChecker", True],
|
|
"plugProjectNishimuraU/RandMapUnit",
|
|
"plugProjectNishimuraU/RandEnemyUnit",
|
|
["plugProjectNishimuraU/DoorNode", True],
|
|
["plugProjectNishimuraU/MapUnitGenerator", True],
|
|
["plugProjectNishimuraU/MapCreator", True],
|
|
"plugProjectNishimuraU/RandMapScore",
|
|
["plugProjectNishimuraU/ItemUnit", True],
|
|
"plugProjectNishimuraU/RandItemUnit",
|
|
["plugProjectNishimuraU/GateUnit", True],
|
|
["plugProjectNishimuraU/RandGateUnit", True],
|
|
["plugProjectNishimuraU/ObjectLayout", True],
|
|
"plugProjectNishimuraU/CameraMgr",
|
|
"plugProjectNishimuraU/ContRumble",
|
|
"plugProjectNishimuraU/RumbleMgr",
|
|
["plugProjectNishimuraU/PomAnimator", True],
|
|
["plugProjectNishimuraU/PomMgr", True],
|
|
["plugProjectNishimuraU/Pom", True],
|
|
["plugProjectNishimuraU/PomState", True],
|
|
"plugProjectNishimuraU/FrogState",
|
|
["plugProjectNishimuraU/FrogAnimator", True],
|
|
["plugProjectNishimuraU/FrogMgr", True],
|
|
"plugProjectNishimuraU/Frog",
|
|
["plugProjectNishimuraU/UjibMgr", True],
|
|
"plugProjectNishimuraU/Ujib",
|
|
"plugProjectNishimuraU/UjibState",
|
|
["plugProjectNishimuraU/UjibAnimator", True],
|
|
["plugProjectNishimuraU/KoganeState", True],
|
|
["plugProjectNishimuraU/KoganeMgr", True],
|
|
"plugProjectNishimuraU/Kogane",
|
|
["plugProjectNishimuraU/KoganeAnimator", True],
|
|
["plugProjectNishimuraU/QurioneState", True],
|
|
["plugProjectNishimuraU/QurioneMgr", True],
|
|
"plugProjectNishimuraU/Qurione",
|
|
["plugProjectNishimuraU/QurioneAnimator", True],
|
|
["plugProjectNishimuraU/RumbleData", True],
|
|
["plugProjectNishimuraU/MaroFrogMgr", True],
|
|
"plugProjectNishimuraU/MaroFrog",
|
|
["plugProjectNishimuraU/RockState", True],
|
|
["plugProjectNishimuraU/RockAnimator", True],
|
|
["plugProjectNishimuraU/RockMgr", True],
|
|
"plugProjectNishimuraU/Rock",
|
|
"plugProjectNishimuraU/UjiaState",
|
|
["plugProjectNishimuraU/UjiaAnimator", True],
|
|
["plugProjectNishimuraU/UjiaMgr", True],
|
|
"plugProjectNishimuraU/Ujia",
|
|
"plugProjectNishimuraU/TobiState",
|
|
["plugProjectNishimuraU/TobiAnimator", True],
|
|
["plugProjectNishimuraU/TobiMgr", True],
|
|
"plugProjectNishimuraU/Tobi",
|
|
["plugProjectNishimuraU/HibaState", True],
|
|
["plugProjectNishimuraU/HibaAnimator", True],
|
|
["plugProjectNishimuraU/HibaMgr", True],
|
|
["plugProjectNishimuraU/Hiba", True],
|
|
["plugProjectNishimuraU/GasHibaState", True],
|
|
["plugProjectNishimuraU/GasHibaAnimator", True],
|
|
["plugProjectNishimuraU/GasHibaMgr", True],
|
|
["plugProjectNishimuraU/GasHiba", True],
|
|
["plugProjectNishimuraU/ElecHibaState", True],
|
|
["plugProjectNishimuraU/ElecHibaAnimator", True],
|
|
["plugProjectNishimuraU/ElecHibaMgr", True],
|
|
"plugProjectNishimuraU/ElecHiba",
|
|
"plugProjectNishimuraU/SaraiState",
|
|
["plugProjectNishimuraU/SaraiAnimator", True],
|
|
["plugProjectNishimuraU/SaraiMgr", True],
|
|
"plugProjectNishimuraU/Sarai",
|
|
"plugProjectNishimuraU/TankState",
|
|
["plugProjectNishimuraU/TankAnimator", True],
|
|
["plugProjectNishimuraU/TankMgr", True],
|
|
"plugProjectNishimuraU/Tank",
|
|
["plugProjectNishimuraU/CatfishMgr", True],
|
|
["plugProjectNishimuraU/Catfish", True],
|
|
"plugProjectNishimuraU/TadpoleState",
|
|
["plugProjectNishimuraU/TadpoleAnimator", True],
|
|
["plugProjectNishimuraU/TadpoleMgr", True],
|
|
"plugProjectNishimuraU/Tadpole",
|
|
"plugProjectNishimuraU/ElecBugState",
|
|
["plugProjectNishimuraU/ElecBugAnimator", True],
|
|
["plugProjectNishimuraU/ElecBugMgr", True],
|
|
"plugProjectNishimuraU/ElecBug",
|
|
["plugProjectNishimuraU/WtankMgr", True],
|
|
["plugProjectNishimuraU/Wtank", True],
|
|
["plugProjectNishimuraU/ArmorMgr", True],
|
|
"plugProjectNishimuraU/Armor",
|
|
"plugProjectNishimuraU/Mar",
|
|
["plugProjectNishimuraU/MarAnimator", True],
|
|
["plugProjectNishimuraU/MarMgr", True],
|
|
"plugProjectNishimuraU/MarState",
|
|
["plugProjectNishimuraU/WealthyMgr", True],
|
|
["plugProjectNishimuraU/Wealthy", True],
|
|
["plugProjectNishimuraU/FartMgr", True],
|
|
["plugProjectNishimuraU/Fart", True],
|
|
"plugProjectNishimuraU/ArmorState",
|
|
["plugProjectNishimuraU/ArmorAnimator", True],
|
|
"plugProjectNishimuraU/QueenState",
|
|
["plugProjectNishimuraU/QueenAnimator", True],
|
|
["plugProjectNishimuraU/QueenMgr", True],
|
|
"plugProjectNishimuraU/Queen",
|
|
"plugProjectNishimuraU/BabyState",
|
|
["plugProjectNishimuraU/BabyAnimator", True],
|
|
["plugProjectNishimuraU/BabyMgr", True],
|
|
"plugProjectNishimuraU/Baby",
|
|
["plugProjectNishimuraU/DemonMgr", True],
|
|
"plugProjectNishimuraU/Demon",
|
|
"plugProjectNishimuraU/QueenShadow",
|
|
["plugProjectNishimuraU/FireChappyMgr", True],
|
|
["plugProjectNishimuraU/FireChappy", True],
|
|
"plugProjectNishimuraU/SnakeCrowState",
|
|
["plugProjectNishimuraU/SnakeCrowAnimator", True],
|
|
["plugProjectNishimuraU/SnakeCrowMgr", True],
|
|
"plugProjectNishimuraU/SnakeCrow",
|
|
"plugProjectNishimuraU/KumaChappyState",
|
|
["plugProjectNishimuraU/KumaChappyAnimator", True],
|
|
["plugProjectNishimuraU/KumaChappyMgr", True],
|
|
"plugProjectNishimuraU/KumaChappy",
|
|
"plugProjectNishimuraU/FuefukiState",
|
|
["plugProjectNishimuraU/FuefukiAnimator", True],
|
|
["plugProjectNishimuraU/FuefukiMgr", True],
|
|
"plugProjectNishimuraU/Fuefuki",
|
|
["plugProjectNishimuraU/KoganemushiMgr", True],
|
|
["plugProjectNishimuraU/Koganemushi", True],
|
|
["plugProjectNishimuraU/FtankMgr", True],
|
|
["plugProjectNishimuraU/Ftank", True],
|
|
["plugProjectNishimuraU/RandPlantUnit", True],
|
|
"plugProjectNishimuraU/HanachirashiState",
|
|
["plugProjectNishimuraU/HanachirashiAnimator", True],
|
|
["plugProjectNishimuraU/HanachirashiMgr", True],
|
|
"plugProjectNishimuraU/Hanachirashi",
|
|
["plugProjectNishimuraU/DamagumoState", True],
|
|
["plugProjectNishimuraU/DamagumoAnimator", True],
|
|
["plugProjectNishimuraU/DamagumoMgr", True],
|
|
"plugProjectNishimuraU/Damagumo",
|
|
"plugProjectNishimuraU/IKSystemMgr",
|
|
"plugProjectNishimuraU/IKSystemBase",
|
|
"plugProjectNishimuraU/DamagumoShadow",
|
|
["plugProjectNishimuraU/KurageState", True],
|
|
["plugProjectNishimuraU/KurageAnimator", True],
|
|
["plugProjectNishimuraU/KurageMgr", True],
|
|
"plugProjectNishimuraU/Kurage",
|
|
"plugProjectNishimuraU/BombSaraiState",
|
|
["plugProjectNishimuraU/BombSaraiAnimator", True],
|
|
["plugProjectNishimuraU/BombSaraiMgr", True],
|
|
"plugProjectNishimuraU/BombSarai",
|
|
["plugProjectNishimuraU/OtakaraBaseState", True],
|
|
["plugProjectNishimuraU/OtakaraBaseAnimator", True],
|
|
["plugProjectNishimuraU/OtakaraBaseMgr", True],
|
|
"plugProjectNishimuraU/OtakaraBase",
|
|
["plugProjectNishimuraU/FireOtakaraMgr", True],
|
|
["plugProjectNishimuraU/FireOtakara", True],
|
|
["plugProjectNishimuraU/WaterOtakaraMgr", True],
|
|
["plugProjectNishimuraU/WaterOtakara", True],
|
|
["plugProjectNishimuraU/GasOtakaraMgr", True],
|
|
["plugProjectNishimuraU/GasOtakara", True],
|
|
["plugProjectNishimuraU/ElecOtakaraMgr", True],
|
|
["plugProjectNishimuraU/ElecOtakara", True],
|
|
"plugProjectNishimuraU/ImomushiState",
|
|
["plugProjectNishimuraU/ImomushiAnimator", True],
|
|
["plugProjectNishimuraU/ImomushiMgr", True],
|
|
"plugProjectNishimuraU/Imomushi",
|
|
["plugProjectNishimuraU/HoudaiState", True],
|
|
["plugProjectNishimuraU/HoudaiAnimator", True],
|
|
["plugProjectNishimuraU/HoudaiMgr", True],
|
|
"plugProjectNishimuraU/HoudaiShadow",
|
|
"plugProjectNishimuraU/Houdai",
|
|
"plugProjectNishimuraU/HoudaiShotGun",
|
|
["plugProjectNishimuraU/LeafChappyMgr", True],
|
|
["plugProjectNishimuraU/LeafChappy", True],
|
|
["plugProjectNishimuraU/BigFootState", True],
|
|
["plugProjectNishimuraU/BigFootAnimator", True],
|
|
["plugProjectNishimuraU/BigFootMgr", True],
|
|
"plugProjectNishimuraU/BigFootShadow",
|
|
"plugProjectNishimuraU/BigFoot",
|
|
"plugProjectNishimuraU/SnakeWholeState",
|
|
["plugProjectNishimuraU/SnakeWholeAnimator", True],
|
|
["plugProjectNishimuraU/SnakeWholeMgr", True],
|
|
"plugProjectNishimuraU/SnakeWhole",
|
|
"plugProjectNishimuraU/SnakeJointMgr",
|
|
["plugProjectNishimuraU/OniKurageState", True],
|
|
["plugProjectNishimuraU/OniKurageAnimator", True],
|
|
["plugProjectNishimuraU/OniKurageMgr", True],
|
|
"plugProjectNishimuraU/OniKurage",
|
|
["plugProjectNishimuraU/BigTreasureState", True],
|
|
["plugProjectNishimuraU/BigTreasureMgr", True],
|
|
"plugProjectNishimuraU/BigTreasureShadow",
|
|
"plugProjectNishimuraU/BigTreasure",
|
|
"plugProjectNishimuraU/KabutoState",
|
|
["plugProjectNishimuraU/KabutoAnimator", True],
|
|
["plugProjectNishimuraU/KabutoMgr", True],
|
|
"plugProjectNishimuraU/Kabuto",
|
|
"plugProjectNishimuraU/KumaKochappyState",
|
|
["plugProjectNishimuraU/KumaKochappyAnimator", True],
|
|
["plugProjectNishimuraU/KumaKochappyMgr", True],
|
|
"plugProjectNishimuraU/KumaKochappy",
|
|
"plugProjectNishimuraU/MiniHoudaiState",
|
|
["plugProjectNishimuraU/MiniHoudaiAnimator", True],
|
|
["plugProjectNishimuraU/MiniHoudaiMgr", True],
|
|
"plugProjectNishimuraU/MiniHoudai",
|
|
"plugProjectNishimuraU/MiniHoudaiShotGun",
|
|
["plugProjectNishimuraU/SokkuriState", True],
|
|
["plugProjectNishimuraU/SokkuriAnimator", True],
|
|
["plugProjectNishimuraU/SokkuriMgr", True],
|
|
"plugProjectNishimuraU/Sokkuri",
|
|
"plugProjectNishimuraU/JointShadowBase",
|
|
"plugProjectNishimuraU/UmimushiShadow",
|
|
["plugProjectNishimuraU/HanaMgr", True],
|
|
"plugProjectNishimuraU/Hana",
|
|
"plugProjectNishimuraU/BigTreasureAttack",
|
|
"plugProjectNishimuraU/SnakeCrowShadow",
|
|
"plugProjectNishimuraU/SnakeWholeShadow",
|
|
["plugProjectNishimuraU/BombOtakaraMgr", True],
|
|
["plugProjectNishimuraU/BombOtakara", True],
|
|
"plugProjectNishimuraU/DangoMushiState",
|
|
["plugProjectNishimuraU/DangoMushiMgr", True],
|
|
"plugProjectNishimuraU/DangoMushi",
|
|
["plugProjectNishimuraU/GreenKabutoMgr", True],
|
|
["plugProjectNishimuraU/GreenKabuto", True],
|
|
["plugProjectNishimuraU/RedKabutoMgr", True],
|
|
["plugProjectNishimuraU/RedKabuto", True],
|
|
["plugProjectNishimuraU/FixKabutoMgr", True],
|
|
["plugProjectNishimuraU/FixKabuto", True],
|
|
["plugProjectNishimuraU/RandCapEnemyUnit", True],
|
|
["plugProjectNishimuraU/NormMiniHoudaiMgr", True],
|
|
["plugProjectNishimuraU/NormMiniHoudai", True],
|
|
["plugProjectNishimuraU/FixMiniHoudaiMgr", True],
|
|
["plugProjectNishimuraU/FixMiniHoudai", True],
|
|
"plugProjectNishimuraU/TyreShadow",
|
|
],
|
|
},
|
|
{
|
|
"lib": "plugProjectOgawaU",
|
|
"cflags": "$cflags_pikmin",
|
|
"mwcc_version": "2.6",
|
|
"host": True,
|
|
"objects": [
|
|
["plugProjectOgawaU/ogScreen", True],
|
|
"plugProjectOgawaU/ogDopingScreen",
|
|
"plugProjectOgawaU/ogPikminCounter",
|
|
"plugProjectOgawaU/ogAnime",
|
|
["plugProjectOgawaU/ogCounter", True],
|
|
"plugProjectOgawaU/ogLifeGauge",
|
|
["plugProjectOgawaU/ogSunMeter", True],
|
|
["plugProjectOgawaU/ogCatchPiki", True],
|
|
["plugProjectOgawaU/ogContenaCounter", True],
|
|
"plugProjectOgawaU/ogMapCounter",
|
|
"plugProjectOgawaU/ogAnimTextScreen",
|
|
"plugProjectOgawaU/ogCallBackMessage",
|
|
"plugProjectOgawaU/ogMenuMgr",
|
|
["plugProjectOgawaU/ogCallBackScreen", True],
|
|
"plugProjectOgawaU/ogCounterRV",
|
|
"plugProjectOgawaU/ogSE",
|
|
["plugProjectOgawaU/ogCounterDay", True],
|
|
["plugProjectOgawaU/testScene", True],
|
|
"plugProjectOgawaU/testObj",
|
|
"plugProjectOgawaU/ogSceneGround",
|
|
"plugProjectOgawaU/ogObjGround",
|
|
"plugProjectOgawaU/ogCopyPane",
|
|
"plugProjectOgawaU/ogBloGroup",
|
|
["plugProjectOgawaU/DispMemberBase", True],
|
|
["plugProjectOgawaU/ogLib2D", True],
|
|
"plugProjectOgawaU/ogObjSMenuMap",
|
|
["plugProjectOgawaU/ogSceneSMenuMap", True],
|
|
"plugProjectOgawaU/ogObjSMenuItem",
|
|
["plugProjectOgawaU/ogSceneSMenuItem", True],
|
|
["plugProjectOgawaU/ogSceneSMenuPause", True],
|
|
"plugProjectOgawaU/ogObjSMenuPause",
|
|
"plugProjectOgawaU/ogObjSMenuBase",
|
|
"plugProjectOgawaU/ogObjCourseName",
|
|
["plugProjectOgawaU/ogUtil", True],
|
|
"plugProjectOgawaU/ogSceneCourseName",
|
|
"plugProjectOgawaU/ogObjKantei",
|
|
["plugProjectOgawaU/ogSceneKantei", True],
|
|
"plugProjectOgawaU/ogObjSpecialItem",
|
|
["plugProjectOgawaU/ogSceneSpecialItem", True],
|
|
"plugProjectOgawaU/ogObjFloor",
|
|
["plugProjectOgawaU/ogSceneFloor", True],
|
|
"plugProjectOgawaU/ogObjCave",
|
|
["plugProjectOgawaU/ogSceneCave", True],
|
|
"plugProjectOgawaU/ogObjAnaDemo",
|
|
["plugProjectOgawaU/ogSceneAnaDemo", True],
|
|
"plugProjectOgawaU/ogObjChallenge2P",
|
|
["plugProjectOgawaU/ogSceneChallenge2P", True],
|
|
"plugProjectOgawaU/ogObjContena",
|
|
["plugProjectOgawaU/ogSceneContena", True],
|
|
"plugProjectOgawaU/ogObjSMenuPauseDoukutu",
|
|
["plugProjectOgawaU/ogSceneSMenuPauseDoukutu", True],
|
|
"plugProjectOgawaU/ogObjUfo",
|
|
["plugProjectOgawaU/ogSceneUfo", True],
|
|
"plugProjectOgawaU/ogObjSave",
|
|
["plugProjectOgawaU/ogSceneSave", True],
|
|
"plugProjectOgawaU/ogObjFinalMsg",
|
|
["plugProjectOgawaU/ogSceneFinalMsg", True],
|
|
"plugProjectOgawaU/ogObjVs",
|
|
["plugProjectOgawaU/ogSceneVs", True],
|
|
"plugProjectOgawaU/ogObjChallenge1P",
|
|
["plugProjectOgawaU/ogSceneChallenge1P", True],
|
|
["plugProjectOgawaU/ogScaleMgr", True],
|
|
"plugProjectOgawaU/ogObjSMenuPauseVs",
|
|
["plugProjectOgawaU/ogSceneSMenuPauseVs", True],
|
|
"plugProjectOgawaU/ogFuriko",
|
|
"plugProjectOgawaU/ogCounterSlot",
|
|
"plugProjectOgawaU/ogObjWorldMapInfoWindow0",
|
|
["plugProjectOgawaU/ogSceneWorldMapInfoWindow0", True],
|
|
"plugProjectOgawaU/ogObjWorldMapInfoWindow1",
|
|
["plugProjectOgawaU/ogSceneWorldMapInfoWindow1", True],
|
|
["plugProjectOgawaU/ogTotalPokoScreen", True],
|
|
"plugProjectOgawaU/ogObjChallengeBase",
|
|
["plugProjectOgawaU/ogSceneChallengeBase", True],
|
|
"plugProjectOgawaU/ogCallBackPicture",
|
|
["plugProjectOgawaU/ogDrawAfter", True],
|
|
"plugProjectOgawaU/ogOtakaraSensor",
|
|
"plugProjectOgawaU/ogTitleMsg",
|
|
["plugProjectOgawaU/ogAngleMgr", True],
|
|
["plugProjectOgawaU/ogSceneSMenuCont", True],
|
|
"plugProjectOgawaU/ogObjSMenuCont",
|
|
],
|
|
},
|
|
{
|
|
"lib": "plugProjectHikinoU",
|
|
"cflags": "$cflags_pikmin",
|
|
"mwcc_version": "2.6",
|
|
"host": True,
|
|
"objects": [
|
|
"plugProjectHikinoU/PSSeq",
|
|
"plugProjectHikinoU/PSGame",
|
|
"plugProjectHikinoU/PSSystemIF",
|
|
"plugProjectHikinoU/PSAutoBgm",
|
|
"plugProjectHikinoU/PSBnkMgr",
|
|
"plugProjectHikinoU/PSTaskBase",
|
|
["plugProjectHikinoU/PSBgmTask", True],
|
|
["plugProjectHikinoU/PSCreatureMgr", True],
|
|
["plugProjectHikinoU/PSAutoBgm_MeloArranger", True],
|
|
"plugProjectHikinoU/PSSe",
|
|
"plugProjectHikinoU/PSSeBase",
|
|
"plugProjectHikinoU/PSScene",
|
|
["plugProjectHikinoU/PSBgmTrack", True],
|
|
"plugProjectHikinoU/PSDirector",
|
|
],
|
|
},
|
|
{
|
|
"lib": "plugProjectMorimuraU",
|
|
"cflags": "$cflags_pikmin",
|
|
"mwcc_version": "2.6",
|
|
"host": True,
|
|
"objects": [
|
|
"plugProjectMorimuraU/dayEndCount",
|
|
"plugProjectMorimuraU/hurryUp2D",
|
|
"plugProjectMorimuraU/gameOver2D",
|
|
["plugProjectMorimuraU/testBase", True],
|
|
["plugProjectMorimuraU/bombState", True],
|
|
["plugProjectMorimuraU/bombAnimator", True],
|
|
["plugProjectMorimuraU/bombMgr", True],
|
|
"plugProjectMorimuraU/bomb",
|
|
["plugProjectMorimuraU/eggState", True],
|
|
["plugProjectMorimuraU/eggAnimator", True],
|
|
["plugProjectMorimuraU/eggMgr", True],
|
|
["plugProjectMorimuraU/egg", True],
|
|
"plugProjectMorimuraU/panModokiState",
|
|
["plugProjectMorimuraU/panModokiAnimator", True],
|
|
["plugProjectMorimuraU/panModokiMgr", True],
|
|
"plugProjectMorimuraU/panModoki",
|
|
["plugProjectMorimuraU/plantsMgr", True],
|
|
["plugProjectMorimuraU/plantsAnimator", True],
|
|
["plugProjectMorimuraU/plants", True],
|
|
"plugProjectMorimuraU/kingChappyState",
|
|
["plugProjectMorimuraU/kingChappyMgr", True],
|
|
"plugProjectMorimuraU/kingChappy",
|
|
"plugProjectMorimuraU/miulinState",
|
|
["plugProjectMorimuraU/miulinAnimator", True],
|
|
["plugProjectMorimuraU/miulinMgr", True],
|
|
"plugProjectMorimuraU/miulin",
|
|
"plugProjectMorimuraU/jigumoState",
|
|
["plugProjectMorimuraU/jigumoAnimator", True],
|
|
["plugProjectMorimuraU/jigumoMgr", True],
|
|
"plugProjectMorimuraU/jigumo",
|
|
"plugProjectMorimuraU/enemyNestMgr",
|
|
["plugProjectMorimuraU/enemyNest", True],
|
|
["plugProjectMorimuraU/tamagoMushiState", True],
|
|
["plugProjectMorimuraU/tamagoMushiAnimator", True],
|
|
"plugProjectMorimuraU/tamagoMushiMgr",
|
|
"plugProjectMorimuraU/tamagoMushi",
|
|
"plugProjectMorimuraU/zukan2D",
|
|
"plugProjectMorimuraU/hiScore2D",
|
|
"plugProjectMorimuraU/umiMushiState",
|
|
["plugProjectMorimuraU/umiMushiAnimator", True],
|
|
["plugProjectMorimuraU/umiMushiMgr", True],
|
|
"plugProjectMorimuraU/umiMushi",
|
|
"plugProjectMorimuraU/shijimiChouState",
|
|
["plugProjectMorimuraU/shijimiChouAnimator", True],
|
|
["plugProjectMorimuraU/shijimiChouMgr", True],
|
|
"plugProjectMorimuraU/shijimiChou",
|
|
"plugProjectMorimuraU/challengeSelect2D",
|
|
"plugProjectMorimuraU/challengeResult2D",
|
|
"plugProjectMorimuraU/vsSelect2D",
|
|
"plugProjectMorimuraU/mrUtil",
|
|
"plugProjectMorimuraU/scrollList",
|
|
"plugProjectMorimuraU/mrWindow",
|
|
["plugProjectMorimuraU/blackManState", True],
|
|
["plugProjectMorimuraU/blackManAnimator", True],
|
|
["plugProjectMorimuraU/blackManMgr", True],
|
|
"plugProjectMorimuraU/blackMan",
|
|
["plugProjectMorimuraU/tyreState", True],
|
|
["plugProjectMorimuraU/tyreAnimator", True],
|
|
["plugProjectMorimuraU/tyreMgr", True],
|
|
"plugProjectMorimuraU/tyre",
|
|
],
|
|
},
|
|
{
|
|
"lib": "plugProjectEbisawaU",
|
|
"cflags": "$cflags_pikmin",
|
|
"mwcc_version": "2.6",
|
|
"host": True,
|
|
"objects": [
|
|
"plugProjectEbisawaU/efxBase",
|
|
"plugProjectEbisawaU/efxEnemy",
|
|
"plugProjectEbisawaU/efxObject",
|
|
"plugProjectEbisawaU/efxPikmin",
|
|
"plugProjectEbisawaU/particle2dMgr",
|
|
["plugProjectEbisawaU/efx2dBase", True],
|
|
"plugProjectEbisawaU/efx2dEffect",
|
|
"plugProjectEbisawaU/particleMgr",
|
|
"plugProjectEbisawaU/ebiP2Title",
|
|
"plugProjectEbisawaU/ebiP2TitleUnit",
|
|
"plugProjectEbisawaU/ebiUtility",
|
|
["plugProjectEbisawaU/ebiP2TitleCamera", True],
|
|
"plugProjectEbisawaU/ebiP2TitleLight",
|
|
"plugProjectEbisawaU/ebiScreenMemoryCard",
|
|
"plugProjectEbisawaU/efxTPkEffectMgr",
|
|
"plugProjectEbisawaU/efxEnemyGeneral",
|
|
["plugProjectEbisawaU/ebi3DGraph", True],
|
|
"plugProjectEbisawaU/ebiGeometry",
|
|
"plugProjectEbisawaU/ebi2DGraph",
|
|
"plugProjectEbisawaU/ebiScreenOption",
|
|
"plugProjectEbisawaU/ebiScreenProgre",
|
|
"plugProjectEbisawaU/ebiOptionMgr",
|
|
"plugProjectEbisawaU/ebi2DCallBack",
|
|
"plugProjectEbisawaU/ebiCardMgr",
|
|
["plugProjectEbisawaU/ebiScreenFramework", True],
|
|
"plugProjectEbisawaU/ebiScreenPushStart",
|
|
"plugProjectEbisawaU/ebiScreenFileSelect",
|
|
"plugProjectEbisawaU/ebiScreenTitleMenu",
|
|
"plugProjectEbisawaU/ebiSaveMgr",
|
|
"plugProjectEbisawaU/ebiScreenSaveMenu",
|
|
"plugProjectEbisawaU/ebiScreenFileSelect_Mgr",
|
|
"plugProjectEbisawaU/ebiFileSelectMgr",
|
|
"plugProjectEbisawaU/ebiCardMgr_Load",
|
|
"plugProjectEbisawaU/ebiP2TitleCoordMgr",
|
|
"plugProjectEbisawaU/ebiP2TitlePikmin",
|
|
"plugProjectEbisawaU/ebiP2TitleKogane",
|
|
"plugProjectEbisawaU/ebiP2TitleChappy",
|
|
["plugProjectEbisawaU/ebiScreenTMBack", True],
|
|
"plugProjectEbisawaU/ebiMainTitleMgr",
|
|
["plugProjectEbisawaU/ebiP2TitleFog", True],
|
|
"plugProjectEbisawaU/efxEnemyBoss",
|
|
"plugProjectEbisawaU/ebiCardEReader",
|
|
"plugProjectEbisawaU/ebiScreenOmake",
|
|
"plugProjectEbisawaU/ebiOmakeMgr",
|
|
"plugProjectEbisawaU/ebiScreenOmakeCardE",
|
|
"plugProjectEbisawaU/ebiScreenOmakeGame",
|
|
["plugProjectEbisawaU/ebiScreenInfoWindow", True],
|
|
],
|
|
},
|
|
{
|
|
"lib": "plugProjectKonoU",
|
|
"cflags": "$cflags_pikmin",
|
|
"mwcc_version": "2.6",
|
|
"host": True,
|
|
"objects": [
|
|
"plugProjectKonoU/khWorldMap",
|
|
"plugProjectKonoU/khCaveResult",
|
|
["plugProjectKonoU/khSceneLoader", True],
|
|
"plugProjectKonoU/newGame2DMgr",
|
|
"plugProjectKonoU/newScreenMgr",
|
|
"plugProjectKonoU/khReadyGo",
|
|
"plugProjectKonoU/khFinalFloor",
|
|
"plugProjectKonoU/khDayEndResult",
|
|
"plugProjectKonoU/khUtil",
|
|
"plugProjectKonoU/khFinalResult",
|
|
"plugProjectKonoU/khPayDept",
|
|
"plugProjectKonoU/khWinLose",
|
|
"plugProjectKonoU/khWinLoseReason",
|
|
["plugProjectKonoU/khMailSaveData", True],
|
|
],
|
|
},
|
|
{
|
|
"lib": "sysBootupU",
|
|
"cflags": "$cflags_base",
|
|
"mwcc_version": "2.6",
|
|
"host": True,
|
|
"objects": [
|
|
["sysBootupU/sysBootup", True],
|
|
],
|
|
},
|
|
{
|
|
"lib": "sysCommonU",
|
|
"cflags": "$cflags_base",
|
|
"mwcc_version": "2.6",
|
|
"host": True,
|
|
"objects": [
|
|
["sysCommonU/node", True],
|
|
"sysCommonU/sysMath",
|
|
["sysCommonU/id32", True],
|
|
["sysCommonU/parameters", True],
|
|
["sysCommonU/stream", True],
|
|
"sysCommonU/geometry",
|
|
["sysCommonU/mapCollision", True],
|
|
"sysCommonU/camera",
|
|
["sysCommonU/tagparams", True],
|
|
["sysCommonU/sysTemplates", True],
|
|
["sysCommonU/mapCode", True],
|
|
"sysCommonU/geomIntersection",
|
|
"sysCommonU/geomOBBTree",
|
|
"sysCommonU/geomTraceMove",
|
|
"sysCommonU/geomCylinder",
|
|
["sysCommonU/geomClone", True],
|
|
],
|
|
},
|
|
{
|
|
"lib": "sysGCU",
|
|
"cflags": "$cflags_base",
|
|
"mwcc_version": "2.6",
|
|
"host": True,
|
|
"objects": [
|
|
"sysGCU/system",
|
|
"sysGCU/section",
|
|
"sysGCU/gameflow",
|
|
["sysGCU/menuSection", True],
|
|
"sysGCU/dvdThread",
|
|
["sysGCU/appThread", True],
|
|
["sysGCU/controller", True],
|
|
"sysGCU/graphics",
|
|
"sysGCU/matMath",
|
|
"sysGCU/sysShape",
|
|
"sysGCU/reset",
|
|
["sysGCU/dvdStatus", True],
|
|
["sysGCU/sysTimers", True],
|
|
["sysGCU/modelMgr", True],
|
|
"sysGCU/heapStatus",
|
|
"sysGCU/light",
|
|
"sysGCU/wipe",
|
|
"sysGCU/moviePlayer",
|
|
"sysGCU/JSTObjectActor",
|
|
"sysGCU/JSTObjectCamera",
|
|
"sysGCU/JSTObjectGameActor",
|
|
"sysGCU/JSTObjectSystem",
|
|
["sysGCU/JSTFindCreature", True],
|
|
"sysGCU/movieConfig",
|
|
["sysGCU/gameConfig", True],
|
|
["sysGCU/fogMgr", True],
|
|
"sysGCU/aramMgr",
|
|
"sysGCU/resourceMgr",
|
|
["sysGCU/resourceMgr2D", True],
|
|
"sysGCU/sysMaterialAnim",
|
|
"sysGCU/P2DScreen",
|
|
"sysGCU/movieMessage",
|
|
"sysGCU/moviePlayerPauseAndDraw",
|
|
"sysGCU/JSTObjectSpecialActor",
|
|
["sysGCU/messageSequence", True],
|
|
"sysGCU/messageMgr",
|
|
"sysGCU/messageObj",
|
|
"sysGCU/messageRendering",
|
|
["sysGCU/message", True],
|
|
"sysGCU/modelEffect",
|
|
["sysGCU/messageReference", True],
|
|
["sysGCU/simpleMessage", True],
|
|
["sysGCU/sysShapeAnimation", True],
|
|
"sysGCU/sysShapeModel",
|
|
"sysGCU/windowMessage",
|
|
"sysGCU/memoryCard",
|
|
"sysGCU/pikmin2MemoryCardMgr",
|
|
"sysGCU/commonSaveData",
|
|
"sysGCU/bootSection",
|
|
"sysGCU/titleSection",
|
|
"sysGCU/loadResource",
|
|
["sysGCU/rootMenuSection", True],
|
|
"sysGCU/demoSection",
|
|
"sysGCU/THPAudioDecode",
|
|
["sysGCU/THPDraw", True],
|
|
"sysGCU/THPPlayer",
|
|
"sysGCU/THPRead",
|
|
"sysGCU/THPVideoDecode",
|
|
"sysGCU/pikmin2THPPlayer",
|
|
"sysGCU/captionMgr",
|
|
"sysGCU/captionMessage",
|
|
"sysGCU/screenScene",
|
|
"sysGCU/screenMgr",
|
|
"sysGCU/screenObj",
|
|
"sysGCU/JSTObjectParticleActor",
|
|
"sysGCU/moviePlayerAudio",
|
|
"sysGCU/illustratedBookMessage",
|
|
["sysGCU/sysDrawBuffer", True],
|
|
["sysGCU/dvdErrorMessage", True],
|
|
"sysGCU/pikmin2AramMgr",
|
|
["sysGCU/messageAnalyzer", True],
|
|
],
|
|
},
|
|
{
|
|
"lib": "utilityU",
|
|
"cflags": "$cflags_base",
|
|
"mwcc_version": "2.6",
|
|
"host": True,
|
|
"objects": [
|
|
"utilityU/menu",
|
|
"utilityU/PSMainSide_Director",
|
|
"utilityU/PSMainSide_Factory",
|
|
"utilityU/PSMainSide_ObjSound",
|
|
"utilityU/PSMainSide_Demo",
|
|
"utilityU/PSMainSide_Scene",
|
|
"utilityU/PSMainSide_BossMgr",
|
|
"utilityU/PSMainSide_Se",
|
|
"utilityU/PSMainSide_DirectorMgr",
|
|
"utilityU/PSMainSide_Sound",
|
|
"utilityU/PSMainSide_TrackMap",
|
|
"utilityU/PSMainSide_CreaturePrm",
|
|
"utilityU/PSMainSide_ObjCalc",
|
|
],
|
|
},
|
|
]
|
|
|
|
if __name__ == "__main__":
|
|
import os
|
|
import io
|
|
import sys
|
|
import argparse
|
|
|
|
from shutil import which
|
|
from tools import ninja_syntax
|
|
|
|
parser = argparse.ArgumentParser()
|
|
parser.add_argument(
|
|
"--version",
|
|
dest="version",
|
|
default="usa",
|
|
help="version to build (usa)",
|
|
)
|
|
parser.add_argument(
|
|
"--map",
|
|
dest="map",
|
|
action="store_true",
|
|
help="generate map file",
|
|
)
|
|
parser.add_argument(
|
|
"--no-check",
|
|
dest="check",
|
|
action="store_false",
|
|
help="don't check hash of resulting dol",
|
|
)
|
|
parser.add_argument(
|
|
"--static-libs",
|
|
dest="static_libs",
|
|
action="store_true",
|
|
help="build and use static libs",
|
|
)
|
|
parser.add_argument(
|
|
"--devkitppc",
|
|
dest="devkitppc",
|
|
help="path to devkitPPC",
|
|
)
|
|
if os.name != "nt" and not "_NT-" in os.uname().sysname:
|
|
parser.add_argument(
|
|
"--wine",
|
|
dest="wine",
|
|
help="path to wine (or wibo)",
|
|
)
|
|
parser.add_argument(
|
|
"--build-dtk",
|
|
dest="build_dtk",
|
|
help="path to decomp-toolkit source",
|
|
)
|
|
args = parser.parse_args()
|
|
|
|
# On Windows, we need this to use && in commands
|
|
ALLOW_CHAIN = "cmd /c " if os.name == "nt" else ""
|
|
|
|
out = io.StringIO()
|
|
n = ninja_syntax.Writer(out)
|
|
|
|
n.variable("ninja_required_version", "1.3")
|
|
n.newline()
|
|
|
|
n.comment("The arguments passed to configure.py, for rerunning it.")
|
|
configure_args = sys.argv[1:]
|
|
# Ignore DEVKITPPC env var on Windows
|
|
if os.name != "nt" and "DEVKITPPC" in os.environ and not args.devkitppc:
|
|
configure_args.extend(["--devkitppc", os.environ["DEVKITPPC"]])
|
|
n.variable("configure_args", configure_args)
|
|
n.newline()
|
|
|
|
###
|
|
# Variables
|
|
###
|
|
n.comment("Variables")
|
|
n.variable("version", args.version.lower())
|
|
if args.version.lower() == "usa":
|
|
n.variable("version_num", "1")
|
|
else:
|
|
sys.exit(f'Invalid version "{args.version}"')
|
|
n.variable("builddir", "build/pikmin2.$version")
|
|
if args.devkitppc:
|
|
n.variable("devkitppc", args.devkitppc)
|
|
elif os.name == "nt":
|
|
n.variable("devkitppc", "C:\devkitPro\devkitPPC")
|
|
elif "DEVKITPPC" in os.environ:
|
|
n.variable("devkitppc", os.environ["DEVKITPPC"])
|
|
else:
|
|
n.variable("devkitppc", "/opt/devkitpro/devkitPPC")
|
|
n.variable(
|
|
"cflags_base",
|
|
"-proc gekko -nodefaults -Cpp_exceptions off -RTTI off -fp hard -fp_contract on -O4,p -maxerrors 1 -enum int -inline auto -str reuse -nosyspath -use_lmw_stmw on -MMD -DVERSION=$version_num -DNONMATCHING=0 -i include/",
|
|
)
|
|
n.variable(
|
|
"cflags_pikmin",
|
|
"-proc gekko -nodefaults -Cpp_exceptions off -RTTI off -fp hard -fp_contract on -O4,p -maxerrors 1 -enum int -inline auto -str reuse -nosyspath -use_lmw_stmw on -common on -MMD -DVERSION=$version_num -DNONMATCHING=0 -i include/",
|
|
)
|
|
# n.variable(
|
|
# "cflags_retro",
|
|
# "$cflags_base -use_lmw_stmw on -str reuse,pool,readonly -gccinc -inline deferred,noauto -common on",
|
|
# )
|
|
# n.variable(
|
|
# "cflags_runtime",
|
|
# "$cflags_base -use_lmw_stmw on -str reuse,pool,readonly -gccinc -inline deferred,auto",
|
|
# )
|
|
# n.variable("cflags_musyx", "$cflags_base -str reuse,pool,readonly")
|
|
n.variable("asflags", "-mgekko -I include/ --defsym version=$version_num -W")
|
|
ldflags = "-fp fmadd -nodefaults -lcf ldscript.lcf -w off"
|
|
if args.map:
|
|
n.variable("map", "$builddir/pikmin2UP.MAP")
|
|
ldflags += " -map $map"
|
|
n.variable("ldflags", ldflags)
|
|
n.variable("mwcc_version", "2.6")
|
|
n.variable("python", sys.executable)
|
|
if os.name == "nt":
|
|
n.variable("exe", ".exe")
|
|
else:
|
|
if "_NT-" in os.uname().sysname:
|
|
# MSYS2
|
|
n.variable("wine", "")
|
|
elif args.wine:
|
|
n.variable("wine", args.wine + " ")
|
|
elif which("wibo") is not None:
|
|
n.variable("wine", "wibo ")
|
|
else:
|
|
n.variable("wine", "wine ")
|
|
n.variable("exe", "")
|
|
n.newline()
|
|
|
|
###
|
|
# Rules
|
|
###
|
|
if os.name == "nt":
|
|
n.comment("MWCC build")
|
|
n.rule(
|
|
name="mwcc",
|
|
command="tools\\mwcc_compiler\\$mwcc_version\\mwcceppc.exe $cflags -c $in -o $basedir",
|
|
description="MWCC $out",
|
|
depfile="$basefile.d",
|
|
deps="gcc",
|
|
)
|
|
n.newline()
|
|
n.comment("MWCC build with franklite")
|
|
n.rule(
|
|
name="mwcc_frank",
|
|
command=ALLOW_CHAIN
|
|
+ "tools\\mwcc_compiler\\$mwcc_version\\mwcceppc.exe $cflags -c $in -o $basedir && "
|
|
+ "$python tools/franklite.py $out $out",
|
|
description="FRANK $out",
|
|
depfile="$basefile.d",
|
|
deps="gcc",
|
|
)
|
|
n.newline()
|
|
n.comment("Link ELF file")
|
|
n.rule(
|
|
name="link",
|
|
command="tools\\mwcc_compiler\\$mwcc_version\\mwldeppc.exe $ldflags -o $out @$out.rsp",
|
|
description="LINK $out",
|
|
rspfile="$out.rsp",
|
|
rspfile_content="$in",
|
|
)
|
|
n.newline()
|
|
n.comment("Assemble asm")
|
|
n.rule(
|
|
name="as",
|
|
command="$devkitppc\\bin\\powerpc-eabi-as.exe $asflags -o $out $in -MD $out.d",
|
|
description="AS $out",
|
|
depfile="$out.d",
|
|
deps="gcc",
|
|
)
|
|
n.newline()
|
|
n.comment("Create static library")
|
|
n.rule(
|
|
name="ar",
|
|
command="$devkitppc\\bin\\powerpc-eabi-ar.exe crs $out $in",
|
|
description="AR $out",
|
|
)
|
|
n.newline()
|
|
else:
|
|
n.comment("MWCC build")
|
|
n.rule(
|
|
name="mwcc",
|
|
command="${wine}tools/mwcc_compiler/$mwcc_version/mwcceppc.exe $cflags -c $in -o $basedir && "
|
|
+ "$python tools/transform-dep.py $basefile.d $basefile.d",
|
|
description="MWCC $out",
|
|
depfile="$basefile.d",
|
|
deps="gcc",
|
|
)
|
|
n.newline()
|
|
n.comment("MWCC build with franklite")
|
|
n.rule(
|
|
name="mwcc_frank",
|
|
command="${wine}tools/mwcc_compiler/$mwcc_version/mwcceppc.exe $cflags -c $in -o $basedir && "
|
|
+ "$python tools/franklite.py $out $out && "
|
|
+ "$python tools/transform-dep.py $basefile.d $basefile.d",
|
|
description="FRANK $out",
|
|
depfile="$basefile.d",
|
|
deps="gcc",
|
|
)
|
|
n.newline()
|
|
n.comment("Link ELF file")
|
|
n.rule(
|
|
name="link",
|
|
command="${wine}tools/mwcc_compiler/$mwcc_version/mwldeppc.exe $ldflags -o $out @$out.rsp",
|
|
description="LINK $out",
|
|
rspfile="$out.rsp",
|
|
rspfile_content="$in",
|
|
)
|
|
n.newline()
|
|
n.comment("Assemble asm")
|
|
n.rule(
|
|
name="as",
|
|
command="$devkitppc/bin/powerpc-eabi-as $asflags -o $out $in -MD $out.d",
|
|
description="AS $out",
|
|
depfile="$out.d",
|
|
deps="gcc",
|
|
)
|
|
n.newline()
|
|
n.comment("Create static library")
|
|
n.rule(
|
|
name="ar",
|
|
command="$devkitppc/bin/powerpc-eabi-ar crs $out $in",
|
|
description="AR $out",
|
|
)
|
|
n.newline()
|
|
n.comment("Host build")
|
|
n.variable("host_cflags", "-I include/ -Wno-trigraphs")
|
|
n.variable(
|
|
"host_cppflags",
|
|
"-std=c++98 -I include/ -fno-exceptions -fno-rtti -D_CRT_SECURE_NO_WARNINGS -Wno-trigraphs -Wno-c++11-extensions",
|
|
)
|
|
n.rule(
|
|
name="host_cc",
|
|
command="clang $host_cflags -c -o $out $in",
|
|
description="host_cc $out",
|
|
)
|
|
n.rule(
|
|
name="host_cpp",
|
|
command="clang++ $host_cppflags -c -o $out $in",
|
|
description="host_c++ $out",
|
|
)
|
|
n.newline()
|
|
|
|
###
|
|
# Rules for source files
|
|
###
|
|
n.comment("Source files")
|
|
all_source_files = []
|
|
all_host_source_files = []
|
|
for lib in LIBS:
|
|
inputs = []
|
|
if "lib" in lib:
|
|
lib_name = lib["lib"]
|
|
n.comment(f"{lib_name}.a")
|
|
else:
|
|
n.comment("Loose files")
|
|
for object in lib["objects"]:
|
|
completed = None
|
|
add_to_all = True
|
|
if type(object) is list:
|
|
if len(object) > 2:
|
|
add_to_all = object[2]
|
|
completed = object[1]
|
|
object = object[0]
|
|
|
|
mwcc_version = lib["mwcc_version"]
|
|
c_file = None
|
|
if os.path.exists(os.path.join("src", f"{object}.cpp")):
|
|
c_file = os.path.join("src", f"{object}.cpp")
|
|
elif os.path.exists(os.path.join("src", f"{object}.c")):
|
|
c_file = os.path.join("src", f"{object}.c")
|
|
if c_file is not None:
|
|
# if completed is None:
|
|
# print(f"Mark as incomplete: {c_file}")
|
|
rule = "mwcc"
|
|
if mwcc_version == "1.2.5e":
|
|
mwcc_version = "1.2.5"
|
|
rule = "mwcc_frank"
|
|
n.build(
|
|
outputs=f"$builddir/src/{object}.o",
|
|
rule=rule,
|
|
inputs=c_file,
|
|
variables={
|
|
"mwcc_version": mwcc_version,
|
|
"cflags": lib["cflags"],
|
|
"basedir": os.path.dirname(f"$builddir/src/{object}"),
|
|
"basefile": f"$builddir/src/{object}",
|
|
},
|
|
)
|
|
if lib["host"]:
|
|
n.build(
|
|
outputs=f"$builddir/host/{object}.o",
|
|
rule="host_cc" if c_file.endswith(".c") else "host_cpp",
|
|
inputs=c_file,
|
|
variables={
|
|
"basedir": os.path.dirname(f"$builddir/src/{object}"),
|
|
"basefile": f"$builddir/src/{object}",
|
|
},
|
|
)
|
|
if add_to_all:
|
|
all_host_source_files.append(f"$builddir/host/{object}.o")
|
|
if add_to_all:
|
|
all_source_files.append(f"$builddir/src/{object}.o")
|
|
if os.path.exists(os.path.join("asm", f"{object}.s")):
|
|
n.build(
|
|
outputs=f"$builddir/asm/{object}.o",
|
|
rule="as",
|
|
inputs=f"asm/{object}.s",
|
|
)
|
|
if completed:
|
|
inputs.append(f"$builddir/src/{object}.o")
|
|
else:
|
|
inputs.append(f"$builddir/asm/{object}.o")
|
|
if args.static_libs and "lib" in lib:
|
|
lib_name = lib["lib"]
|
|
n.build(
|
|
outputs=f"$builddir/lib/{lib_name}.a",
|
|
rule="ar",
|
|
inputs=inputs,
|
|
)
|
|
n.newline()
|
|
|
|
###
|
|
# Link
|
|
###
|
|
n.comment("Link")
|
|
inputs = []
|
|
for lib in LIBS:
|
|
if args.static_libs and "lib" in lib:
|
|
lib_name = lib["lib"]
|
|
inputs.append(f"$builddir/lib/{lib_name}.a")
|
|
else:
|
|
for object in lib["objects"]:
|
|
completed = False
|
|
|
|
if type(object) is list:
|
|
completed = object[1]
|
|
object = object[0]
|
|
|
|
if completed:
|
|
inputs.append(f"$builddir/src/{object}.o")
|
|
else:
|
|
inputs.append(f"$builddir/asm/{object}.o")
|
|
if args.map:
|
|
n.build(
|
|
outputs="$builddir/main.elf",
|
|
rule="link",
|
|
inputs=inputs,
|
|
implicit_outputs="$map",
|
|
)
|
|
else:
|
|
n.build(
|
|
outputs="$builddir/main.elf",
|
|
rule="link",
|
|
inputs=inputs,
|
|
)
|
|
n.newline()
|
|
|
|
###
|
|
# Helper rule for building all source files
|
|
###
|
|
n.comment("Build all source files")
|
|
n.build(
|
|
outputs="all_source",
|
|
rule="phony",
|
|
inputs=all_source_files,
|
|
)
|
|
n.newline()
|
|
|
|
###
|
|
# Helper rule for building all source files, with a host compiler
|
|
###
|
|
n.comment("Build all source files with a host compiler")
|
|
n.build(
|
|
outputs="all_source_host",
|
|
rule="phony",
|
|
inputs=all_host_source_files,
|
|
)
|
|
n.newline()
|
|
|
|
###
|
|
# Tooling
|
|
###
|
|
n.comment("decomp-toolkit")
|
|
if args.build_dtk:
|
|
n.variable("dtk", os.path.join("build", "tools", "release", "dtk$exe"))
|
|
n.rule(
|
|
name="cargo",
|
|
command="cargo build --release --manifest-path $in --bin $bin --target-dir $target",
|
|
description="CARGO $bin",
|
|
depfile="$target/release/$bin.d",
|
|
deps="gcc",
|
|
)
|
|
n.build(
|
|
outputs="$dtk",
|
|
rule="cargo",
|
|
inputs=os.path.join(args.build_dtk, "Cargo.toml"),
|
|
variables={
|
|
"bin": "dtk",
|
|
"target": os.path.join("build", "tools"),
|
|
},
|
|
)
|
|
else:
|
|
n.variable("dtk", os.path.join("build", "tools", "dtk$exe"))
|
|
n.rule(
|
|
name="download_dtk",
|
|
command="$python tools/download_dtk.py $in $out",
|
|
description="DOWNLOAD $out",
|
|
)
|
|
n.build(
|
|
outputs="$dtk",
|
|
rule="download_dtk",
|
|
inputs="dtk_version",
|
|
implicit=["tools/download_dtk.py"],
|
|
)
|
|
n.rule(
|
|
name="elf2dol",
|
|
command="$dtk elf2dol $in $out",
|
|
description="DOL $out",
|
|
)
|
|
n.build(
|
|
outputs="$builddir/main.dol",
|
|
rule="elf2dol",
|
|
inputs="$builddir/main.elf",
|
|
implicit="$dtk",
|
|
)
|
|
n.newline()
|
|
|
|
###
|
|
# Check DOL hash
|
|
###
|
|
if args.check:
|
|
n.comment("Check DOL hash")
|
|
n.rule(
|
|
name="check",
|
|
command="$dtk shasum -c $in -o $out",
|
|
description="CHECK $in",
|
|
)
|
|
n.build(
|
|
outputs="$builddir/main.dol.ok",
|
|
rule="check",
|
|
inputs="sha1/pikmin2.$version.sha1",
|
|
implicit=["$builddir/main.dol", "$dtk"],
|
|
)
|
|
n.newline()
|
|
|
|
###
|
|
# Progress script
|
|
###
|
|
if args.map:
|
|
n.comment("Check progress")
|
|
n.rule(
|
|
name="progress",
|
|
command="$python progress.py $in -o $out",
|
|
description="PROGRESS $in",
|
|
)
|
|
n.build(
|
|
outputs="$builddir/main.dol.progress",
|
|
rule="progress",
|
|
inputs=["$builddir/main.dol", "$map"],
|
|
)
|
|
n.newline()
|
|
|
|
###
|
|
# Regenerate on change
|
|
###
|
|
n.comment("Reconfigure on change")
|
|
n.rule(
|
|
name="configure",
|
|
command="$python configure.py $configure_args",
|
|
generator=True,
|
|
)
|
|
n.build(
|
|
outputs="build.ninja",
|
|
rule="configure",
|
|
implicit=["configure.py", "tools/ninja_syntax.py"],
|
|
)
|
|
n.newline()
|
|
|
|
###
|
|
# Default rule
|
|
###
|
|
n.comment("Default rule")
|
|
if args.check:
|
|
dol_out = "$builddir/main.dol.ok"
|
|
else:
|
|
dol_out = "$builddir/main.dol"
|
|
if args.map:
|
|
n.default([dol_out, "$builddir/main.dol.progress"])
|
|
else:
|
|
n.default([dol_out])
|
|
|
|
with open("build.ninja", "w") as f:
|
|
f.write(out.getvalue())
|
|
n.close()
|