diff options
| author | ruki <[email protected]> | 2015-06-17 09:12:11 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2015-06-17 09:16:29 +0800 |
| commit | 12fca34edc350acfa1688bccb3a9e954b71283b0 (patch) | |
| tree | 9ac78b2e19fcd7ce2eed4c3a1dc6d8ce42b3827d | |
| parent | 8c8d7af7135b400a44cc58d3f0d74a72164f9b2a (diff) | |
add man and debug action
| -rw-r--r-- | xmake/scripts/action/_debug.lua | 74 | ||||
| -rw-r--r-- | xmake/scripts/action/_man.lua | 74 | ||||
| -rw-r--r-- | xmake/scripts/base/project.lua | 17 |
3 files changed, 148 insertions, 17 deletions
diff --git a/xmake/scripts/action/_debug.lua b/xmake/scripts/action/_debug.lua new file mode 100644 index 000000000..141d92fa4 --- /dev/null +++ b/xmake/scripts/action/_debug.lua @@ -0,0 +1,74 @@ +--!The Automatic Cross-platform Build Tool +-- +-- XMake is free software; you can redistribute it and/or modify +-- it under the terms of the GNU Lesser General Public License as published by +-- the Free Software Foundation; either version 2.1 of the License, or +-- (at your option) any later version. +-- +-- XMake is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public License +-- along with XMake; +-- If not, see <a href="http://www.gnu.org/licenses/"> http://www.gnu.org/licenses/</a> +-- +-- Copyright (C) 2009 - 2015, ruki All rights reserved. +-- +-- @author ruki +-- @file _debug.lua +-- + +-- define module: _debug +local _debug = _debug or {} + +-- load modules +local utils = require("base/utils") +local config = require("base/config") +local platform = require("platform/platform") + +-- done the given config +function _debug.done() + + + -- ok + return true +end + +-- the menu +function _debug.menu() + + return { + -- xmake d + shortname = 'd' + + -- usage + , usage = "xmake debug|d [options] [target]" + + -- description + , description = "Debug target." + + -- options + , options = + { + {'f', "file", "kv", "xmake.lua", "Create a given xmake.lua file." } + , {'P', "project", "kv", nil, "Create from the given project directory." + , "Search priority:" + , " 1. The Given Command Argument" + , " 2. The Envirnoment Variable: XMAKE_PROJECT_DIR" + , " 3. The Current Directory" } + + , {} + , {'v', "verbose", "k", nil, "Print lots of verbose information." } + , {nil, "version", "k", nil, "Print the version number and exit." } + , {'h', "help", "k", nil, "Print this help message and exit." } + + , {} + , {nil, "target", "v", nil, "Debug a given target" } + } + } +end + +-- return module: _debug +return _debug diff --git a/xmake/scripts/action/_man.lua b/xmake/scripts/action/_man.lua new file mode 100644 index 000000000..bd8df690b --- /dev/null +++ b/xmake/scripts/action/_man.lua @@ -0,0 +1,74 @@ +--!The Automatic Cross-platform Build Tool +-- +-- XMake is free software; you can redistribute it and/or modify +-- it under the terms of the GNU Lesser General Public License as published by +-- the Free Software Foundation; either version 2.1 of the License, or +-- (at your option) any later version. +-- +-- XMake is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public License +-- along with XMake; +-- If not, see <a href="http://www.gnu.org/licenses/"> http://www.gnu.org/licenses/</a> +-- +-- Copyright (C) 2009 - 2015, ruki All rights reserved. +-- +-- @author ruki +-- @file _man.lua +-- + +-- define module: _man +local _man = _man or {} + +-- load modules +local utils = require("base/utils") +local config = require("base/config") +local platform = require("platform/platform") + +-- done the given config +function _man.done() + + + -- ok + return true +end + +-- the menu +function _man.menu() + + return { + -- xmake m + shortname = 'm' + + -- usage + , usage = "xmake man|m [options] [target]" + + -- description + , description = "Create a project man." + + -- options + , options = + { + {'f', "file", "kv", "xmake.lua", "Create a given xmake.lua file." } + , {'P', "project", "kv", nil, "Create from the given project directory." + , "Search priority:" + , " 1. The Given Command Argument" + , " 2. The Envirnoment Variable: XMAKE_PROJECT_DIR" + , " 3. The Current Directory" } + + , {} + , {'v', "verbose", "k", nil, "Print lots of verbose information." } + , {nil, "version", "k", nil, "Print the version number and exit." } + , {'h', "help", "k", nil, "Print this help message and exit." } + + , {} + , {nil, "target", "v", "all", "Create man for the given target" } + } + } +end + +-- return module: _man +return _man diff --git a/xmake/scripts/base/project.lua b/xmake/scripts/base/project.lua index 90454ecf2..9f6aaef38 100644 --- a/xmake/scripts/base/project.lua +++ b/xmake/scripts/base/project.lua @@ -253,17 +253,6 @@ function project._api_add_values(scope, name, ...) table.join2(scope[name], ...) end --- del configure values -function project._api_del_values(scope, name, ...) - - -- check - assert(scope and name) - - -- append values - scope[name] = scope[name] or {} - table.join2(scope[name], ...) -end - -- filter the configure value function project._filter(values) @@ -920,12 +909,6 @@ function project._load_targets(file) newenv["add_" .. interface] = function (...) return project._api_add_values(newenv._TARGET or newenv._CONFIGS._ADD, interface, ...) end end - -- register interfaces for deleting values - interfaces = { "files" } - for _, interface in ipairs(interfaces) do - newenv["del_" .. interface] = function (...) return project._api_del_values(newenv._TARGET or newenv._CONFIGS._ADD, interface, ...) end - end - -- done the project script local ok, errors = pcall(script) if not ok then |
