[+] Added preconfig warmup to buildactionbootstrap.lua
[*] Fix broken elseif syntax
[*] Fix Settings.lua wasn't being included / add includes under utilities.lua are prefixed with ./
[*] Refactor requires/supportsElfStripping
[+] Added devChainCoreUtils
This commit is contained in:
Reece Wilson 2021-11-14 16:38:07 +00:00
parent 09bb61542a
commit bf097424ef
4 changed files with 49 additions and 31 deletions

View File

@ -39,6 +39,11 @@ if (settings) then
require("./../../Public/Paths")
end
local preconfig = path.join(Aurora.Settings.sAbsRoot, "preconfig.lua")
if (os.isfile(preconfig) then
auRequireAbs(preconfig)
end
local projRoot = path.join(Aurora.Settings.sAbsRoot, _OPTIONS["project_root"] or "./")
local cwd =_OPTIONS["cwd"]
@ -73,15 +78,15 @@ end
auBuild =
{
platform = projPlatform,
platform = projPlatform,
architecture = projArch,
projectName = projName,
projectType = projType,
projectRoot = projRoot,
projectName = projName,
projectType = projType,
projectRoot = projRoot,
projectTargetName = targetName,
projectTargetFileName = fileName,
args = args,
root = cwd
args = args,
root = cwd
}
_G["build"] = auBuild

View File

@ -46,14 +46,16 @@ local function addUserDestCopy(name, type, config, platformName, arch, dir)
local copy, outputPath, file = formatCpy(Aurora.Settings.sLibPrefix .. name, type, dir, ext, isWin, config, platformName, arch, name)
if (platformName == "linux" or platformName == "freebsd" or platformName == "mac") then
if (platform.devChainCoreUtils) then
gnuCoreUtilsMkdirRecursive(dir)
end
if (platform.requiresElfStrip and platform.supportsElfStrip and config == Aurora.Settings.sNameOfShip) then
if (platform.devChainRequiresElfStrip and
platform.devChainSupportsElfStrip and
config ~= Aurora.Settings.sNameOfDebug) then
local debugSymbolPath = normalizeCpyPath(Aurora.Settings.sAbsSymbols) .. "/" .. name .. ".dwarf"
postbuildcommands("objcopy --strip-debug " .. file .. " " .. outputPath)
if (Aurora.Settings.bUseAuBuildHooks) then
if (Aurora.Settings.bUseAuBuildHooks and config ~= Aurora.Settings.sNameOfShip) then
postbuildcommands("objcopy --add-gnu-debuglink=" .. debugSymbolPath .. " " .. outputPath)
end
else
@ -98,17 +100,24 @@ local function postBuildCommands(name, type, config, platformName, arch)
end
end
if (config == Aurora.Settings.sNameOfShip) then
if (config ~= Aurora.Settings.sNameOfDebug) then
local platform = Aurora.Platforms[platformName]
if (not platform) then
return
end
local debugSymbolPath = nil
if (platform.requiresElfStrip and platform.supportsElfStrip) then
if (platform.devChainRequiresElfStrip and
platform.devChainSupportsElfStrip) then
debugSymbolPath = normalizeCpyPath(Aurora.Settings.sAbsSymbols) .. "/" .. name .. ".dwarf"
postbuildcommands("objcopy --only-keep-debug " .. file .. " " .. debugSymbolPath)
elseif (isWin)
elseif (isWin) then
debugSymbolPath = normalizeCpyPath(Aurora.Settings.sAbsSymbols) .. "/" .. name .. ".pdb"
end
if (debugSymbolPath) then
if (debugSymbolPath and
config == Aurora.Settings.sNameOfShip) then
archiveShipPdb(debugSymbolPath)
end
else

View File

@ -11,8 +11,9 @@ local platforms = {
freebsd = {
targetLocal = true,
forceLLVMStl = true,
requiresElfStrip = true,
supportsElfStrip = true,
devChainRequiresElfStrip = true,
devChainSupportsElfStrip = true,
devChainCoreUtils = true,
exts = {
SharedLib = ".so"
}
@ -21,8 +22,9 @@ local platforms = {
defines = "_LINUX_AURORA_PREPROCESSOR",
forceLLVMStl = true,
targetLocal = true,
requiresElfStrip = true,
supportsElfStrip = true,
devChainRequiresElfStrip = true,
devChainSupportsElfStrip = true,
devChainCoreUtils = true,
exts = {
SharedLib = ".so"
}
@ -30,11 +32,13 @@ local platforms = {
mac = {
defines = "_APPLE_AURORA_PREPROCESSOR",
targetLocal = true,
devChainCoreUtils = true,
exts = {
SharedLib = ".dynlib"
}
},
ios = {
devChainCoreUtils = true,
defines = "_APPLE_MOBILE_AURORA_PREPROCESSOR"
},
android = {

View File

@ -1,14 +1,14 @@
require("getRoot")
require("forEach")
require("strings")
require("userRequire")
require("lookupCmdArgs")
require("fatal")
require("eval")
require("isArray")
require("concatArrays")
require("base64")
require("requireAbs")
require("merge")
require("settings")
require("contains")
require("./getRoot")
require("./forEach")
require("./strings")
require("./userRequire")
require("./lookupCmdArgs")
require("./fatal")
require("./eval")
require("./isArray")
require("./concatArrays")
require("./base64")
require("./requireAbs")
require("./merge")
require("./settings")
require("./contains")