summaryrefslogtreecommitdiff
path: root/examples/module/SConstruct
diff options
context:
space:
mode:
author[email protected] <[email protected]>2011-09-28 02:10:43 +0000
committer[email protected] <[email protected]>2011-09-28 02:10:43 +0000
commit96049b7e5c2475f44f49fb1a25a8b06eba9fc231 (patch)
tree645f06cc41b20a56d0113434058354153aeafb6a /examples/module/SConstruct
parent9bb329daee2f842a724d3cdede9413a839e5069c (diff)
add module support for cortex-m3 feature
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1731 bbd45198-f89e-11dd-88c7-29a3b14d5316
Diffstat (limited to 'examples/module/SConstruct')
-rw-r--r--examples/module/SConstruct73
1 files changed, 73 insertions, 0 deletions
diff --git a/examples/module/SConstruct b/examples/module/SConstruct
new file mode 100644
index 0000000000..dae6292170
--- /dev/null
+++ b/examples/module/SConstruct
@@ -0,0 +1,73 @@
+import os
+import sys
+import SCons.cpp
+import rtconfig
+
+if os.getenv('RTT_ROOT'):
+ RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+ RTT_ROOT = os.path.normpath(os.getcwd() + '/../../..')
+
+sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
+from building import *
+
+Export('RTT_ROOT')
+
+# add target option
+AddOption('--app',
+ dest='app',
+ nargs=1, type='string',
+ action='store',
+ metavar='DIR',
+ help='installation prefix')
+
+# add target option
+AddOption('--type',
+ dest='type',
+ nargs=1, type='string',
+ action='store',
+ metavar='DIR',
+ help='installation prefix')
+
+app = GetOption('app')
+
+if GetOption('type') == 'ext':
+ linkflags = rtconfig.LFLAGS + ' -e 0'
+else:
+ linkflags = rtconfig.LFLAGS + ' -e main'
+
+env = Environment(tools = ['mingw'],
+ AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS,
+ CC = rtconfig.CC, CCFLAGS = rtconfig.CFLAGS,
+ CXX = rtconfig.CXX,
+ AR = rtconfig.AR, ARFLAGS = '-rc',
+ LINK = rtconfig.LINK, LINKFLAGS = linkflags,
+ CPPPATH = [
+ RTT_ROOT + '/include',
+ RTT_ROOT + '/bsp/' + rtconfig.BSP,
+ RTT_ROOT + '/components/finsh',
+ RTT_ROOT + '/components/rtgui/include',
+ RTT_ROOT + '/components/rgtui/common',
+ RTT_ROOT + '/components/rtgui/server',
+ RTT_ROOT + '/components/rtgui/widgets',
+ RTT_ROOT + '/components/libdl',
+ RTT_ROOT + '/components/external/ftk/ftk/src/os/rt-thread',
+ RTT_ROOT + '/components/external/ftk/ftk/src/demos',
+ RTT_ROOT + '/components/external/ftk/ftk/apps/common',
+ RTT_ROOT + '/components/external/ftk/ftk/src',
+ RTT_ROOT + '/components/dfs',
+ RTT_ROOT + '/components/dfs/include',
+ RTT_ROOT + '/components/libc/newlib',
+ RTT_ROOT + '/components/external/cairo/cairo-1.10.2/src',
+ RTT_ROOT + '/components/external/cairo/'
+ ])
+env.PrependENVPath('PATH', rtconfig.EXEC_PATH)
+
+PrepareModuleBuilding(env, RTT_ROOT)
+
+dir = app + '/build/' + rtconfig.BSP
+objs = SConscript(app + '/Sconscript', variant_dir=dir, duplicate=0)
+TARGET = dir + '/' + app + '.' + rtconfig.TARGET_EXT
+
+# build program
+env.Program(TARGET, objs)