Add RT-Thread Root folder detection.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2495 bbd45198-f89e-11dd-88c7-29a3b14d5316
This commit is contained in:
parent
be73747fc4
commit
1fa210e6e3
|
@ -43,7 +43,7 @@ class CmdExecutor(threading.Thread):
|
|||
self.child = None
|
||||
|
||||
def run(self):
|
||||
global executor
|
||||
global executor, builder, lock
|
||||
|
||||
if platform.system() == 'Windows':
|
||||
from win32spawn import Win32Spawn
|
||||
|
@ -182,6 +182,16 @@ class SconsUI():
|
|||
if os.environ.has_key('RTT_ROOT'):
|
||||
self.RTTRoot.set_path(os.environ['RTT_ROOT'])
|
||||
|
||||
if self.RTTRoot.get_path() == '':
|
||||
rtt_root = ''
|
||||
# detect RT-Thread directory
|
||||
if os.path.exists(os.path.join('..', 'include', 'rtthread.h')):
|
||||
rtt_root = os.path.join('..')
|
||||
elif os.path.exists(os.path.join('..', '..', 'include', 'rtthread.h')):
|
||||
rtt_root = os.path.join('..', '..')
|
||||
if rtt_root:
|
||||
self.RTTRoot.set_path(os.path.abspath(rtt_root))
|
||||
|
||||
# detect compiler path
|
||||
if platform.system() == 'Windows':
|
||||
# Keil MDK
|
||||
|
@ -388,22 +398,15 @@ class SconsUI():
|
|||
exit(0)
|
||||
|
||||
def StartSConsUI(path=None):
|
||||
global val, root
|
||||
global val, root, builder, lock
|
||||
root = Tk()
|
||||
root.title('RT-Thread SCons UI')
|
||||
root.geometrygeometry('590x510+50+50')
|
||||
#root.geometrygeometry('590x510+50+50')
|
||||
lock = threading.RLock()
|
||||
builder = SconsUI(root)
|
||||
if path:
|
||||
builder.BSPRoot.set_path(path)
|
||||
root.mainloop
|
||||
root.mainloop()
|
||||
|
||||
if __name__ == '__main__':
|
||||
global val, root
|
||||
root = Tk()
|
||||
root.title('scons_builder')
|
||||
root.geometry('590x510+50+50')
|
||||
lock = threading.RLock()
|
||||
scons_ui = SconsUI(root)
|
||||
builder = scons_ui
|
||||
root.mainloop()
|
||||
StartSConsUI()
|
||||
|
|
|
@ -139,7 +139,8 @@ class Win32Spawn(object):
|
|||
try:
|
||||
finished = 0
|
||||
hr, data = win32file.ReadFile(handle, bytesToRead, None)
|
||||
self.queue.put_nowait(data)
|
||||
if data:
|
||||
self.queue.put_nowait(data)
|
||||
except win32api.error:
|
||||
finished = 1
|
||||
|
||||
|
|
Loading…
Reference in New Issue