annotate DependencyLoader_Bootstrap/bootstrap.lua @ 11:47d15fc9208e

updated the .pkgmeta to reflect the directory changes added LibScriptLink external changed the main module's Dependencies to OptDeps moved embeds.xml and Ace3.xml
author mckenziemc
date Sun, 05 Dec 2010 03:39:26 -0800
parents e0a4a8b5b389
children b230b94d4487
rev   line source
mckenziemc@0 1 -- bootstrap.lua
mckenziemc@0 2 -- Bootstrap code for DependencyLoader, allowing
mckenziemc@0 3 -- the user to successfully load it without
mckenziemc@0 4 -- explicitly enabling its own dependencies.
mckenziemc@0 5
mckenziemc@0 6
mckenziemc@0 7 local addonName, addonTable = ...
mckenziemc@0 8
mckenziemc@10 9
mckenziemc@10 10 print("loading DependencyLoader_Bootstrap")
mckenziemc@10 11
mckenziemc@0 12 -- TODO: move and use dependency parsing function here?
mckenziemc@10 13 local dependencies = {"LibStub", "Ace3", "LibBuilder-1.0", "LibPrint-1.0", "LibScriptLink-1.0"}
mckenziemc@0 14
mckenziemc@0 15 local canLoad = true
mckenziemc@0 16 for _, addon in pairs(dependencies) do
mckenziemc@0 17 local reason = select(6, GetAddOnInfo(addon))
mckenziemc@0 18
mckenziemc@10 19 if reason ~= nil and reason ~= "DISABLED" and reason ~= "DEP_DISABLED" then
mckenziemc@10 20 print("Can't load", addon)
mckenziemc@0 21 canLoad = false
mckenziemc@0 22 break
mckenziemc@0 23 end
mckenziemc@0 24 end
mckenziemc@0 25
mckenziemc@0 26 if not canLoad then
mckenziemc@0 27 print("Can't load DependencyLoader")
mckenziemc@0 28 return
mckenziemc@0 29 end
mckenziemc@0 30
mckenziemc@0 31
mckenziemc@10 32 print("bootstrap: Loading DependencyLoader")
mckenziemc@0 33
mckenziemc@0 34 for _, addon in pairs(dependencies) do
mckenziemc@0 35 EnableAddOn(addon)
mckenziemc@10 36 LoadAddOn(addon)
mckenziemc@0 37 end
mckenziemc@0 38
mckenziemc@10 39 EnableAddOn("DependencyLoader")
mckenziemc@10 40 LoadAddOn("DependencyLoader")
mckenziemc@0 41