summaryrefslogtreecommitdiff
path: root/xmake/scripts
diff options
context:
space:
mode:
authorruki <[email protected]>2015-04-29 15:53:23 +0800
committerruki <[email protected]>2015-04-29 15:53:23 +0800
commitff6f56a46a77beb841fb22c185200ab0a833f05e (patch)
tree25e5df9267acb4013db504a3f7fea374e3e8ee28 /xmake/scripts
parent47887f7de8de004290bd3c53d5536ed43c7e3f71 (diff)
load built-in scripts
Diffstat (limited to 'xmake/scripts')
-rw-r--r--xmake/scripts/_scripts.lua28
-rw-r--r--xmake/scripts/_xmake_main.lua47
-rw-r--r--xmake/scripts/base/prefix.lua43
-rw-r--r--xmake/scripts/xmake_main.lua8
4 files changed, 118 insertions, 8 deletions
diff --git a/xmake/scripts/_scripts.lua b/xmake/scripts/_scripts.lua
new file mode 100644
index 000000000..5fc0b8edb
--- /dev/null
+++ b/xmake/scripts/_scripts.lua
@@ -0,0 +1,28 @@
+--!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 _scripts.lua
+--
+
+-- all built-in scripts list
+return
+{
+ -- base
+ "base/prefix.lua"
+}
diff --git a/xmake/scripts/_xmake_main.lua b/xmake/scripts/_xmake_main.lua
new file mode 100644
index 000000000..13835b8f2
--- /dev/null
+++ b/xmake/scripts/_xmake_main.lua
@@ -0,0 +1,47 @@
+--!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 _xmake_main.lua
+--
+
+-- init namespace: xmake
+xmake = xmake or {}
+
+-- init some global variables for xmake
+xmake._ARGV = _ARGV
+xmake._VERBOSE = _VERBOSE
+xmake._PROGRAM_DIR = _PROGRAM_DIR
+xmake._PROJECT_DIR = _PROJECT_DIR
+xmake._SCRIPTS_DIR = _PROGRAM_DIR .. "/scripts/"
+
+-- init namespace: xmake.main
+xmake.main = {}
+local main = xmake.main
+
+-- load built-in scripts
+local scripts = dofile(xmake._SCRIPTS_DIR .. "_scripts.lua")
+for i = 1, #scripts do
+ dofile(xmake._SCRIPTS_DIR .. scripts[i])
+end
+
+-- the main entry function
+function _xmake_main()
+ xmake.trace("hello world!");
+ return 0
+end
diff --git a/xmake/scripts/base/prefix.lua b/xmake/scripts/base/prefix.lua
new file mode 100644
index 000000000..3784e9433
--- /dev/null
+++ b/xmake/scripts/base/prefix.lua
@@ -0,0 +1,43 @@
+--!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 prefix.lua
+--
+
+-- the trace function
+function xmake.trace(msg, ...)
+ print(string.format(msg, ...))
+end
+
+-- the verbose function
+function xmake.verbose(msg, ...)
+ if xmake._VERBOSE then
+ print(string.format(msg, ...))
+ end
+end
+
+-- the error function
+function xmake.error(msg, ...)
+ print("error: " .. string.format(msg, ...))
+end
+
+-- the warning function
+function xmake.warning(msg, ...)
+ print("warning: " .. string.format(msg, ...))
+end
diff --git a/xmake/scripts/xmake_main.lua b/xmake/scripts/xmake_main.lua
deleted file mode 100644
index 79623adfe..000000000
--- a/xmake/scripts/xmake_main.lua
+++ /dev/null
@@ -1,8 +0,0 @@
-
-print("_PROGRAM_DIR: ", _PROGRAM_DIR)
-print("_PROJECT_DIR: ", _PROJECT_DIR)
-
-for _, b in pairs(_ARGV) do
- print(b)
-end
-