[gnoduino] fix detect older arduino hardware



commit 9167ba314878af6f1f4a21a39a0eb7839263e1eb
Author: Lucian Langa <lucilanga gnome org>
Date:   Sat Mar 3 22:00:32 2012 +0100

    fix detect older arduino hardware

 src/compiler.py |   45 +++++++++++++++++++++++----------------------
 src/misc.py     |   11 +++++++----
 2 files changed, 30 insertions(+), 26 deletions(-)
---
diff --git a/src/compiler.py b/src/compiler.py
index 45615eb..b17fa9e 100644
--- a/src/compiler.py
+++ b/src/compiler.py
@@ -149,7 +149,7 @@ def compile(tw, id, output, notify):
 			compline.append("-mmcu="+b.getBoardMCU(b.getBoard()))
 			compline.append("-DF_CPU="+b.getBoardFCPU(b.getBoard()))
 			compline.extend(misc.getArduinoIncludes())
-			if misc.getArduinoVersion >= 100:
+			if misc.getArduinoVersion() >= 100:
 				compline.append("-DARDUINO=100")
 			compline.append(os.path.join(misc.getArduinoPath(), i))
 			compline.append("-o"+id+"/"+i+".o")
@@ -169,27 +169,7 @@ def compile(tw, id, output, notify):
 			compline.append("-mmcu="+b.getBoardMCU(b.getBoard()))
 			compline.append("-DF_CPU="+b.getBoardFCPU(b.getBoard()))
 			compline.extend(misc.getArduinoIncludes())
-			if misc.getArduinoVersion >= 100:
-				compline.append("-DARDUINO=100")
-			compline.append(os.path.join(misc.getArduinoPath(), i))
-			compline.append("-o"+id+"/"+i+".o")
-			misc.printMessageLn(output, ' '.join(compline))
-			misc.printLogMessageLn(' '.join(compline))
-			(run, sout) = misc.runProg(compline)
-			misc.printLogMessageLn(sout)
-			if run == False:
-				misc.printErrorLn(notify, output, _("Compile Error"), sout)
-				raise NameError("compile error")
-			else:
-				misc.printMessageLn(output, sout)
-		"""compile C++ additional (1.0) targets"""
-		misc.printLogMessageLn('processing C++ additional targets')
-		for i in cppobj_additional:
-			compline = [j for j in defcpp]
-			compline.append("-mmcu="+b.getBoardMCU(b.getBoard()))
-			compline.append("-DF_CPU="+b.getBoardFCPU(b.getBoard()))
-			compline.extend(misc.getArduinoIncludes())
-			if misc.getArduinoVersion >= 100:
+			if misc.getArduinoVersion() >= 100:
 				compline.append("-DARDUINO=100")
 			compline.append(os.path.join(misc.getArduinoPath(), i))
 			compline.append("-o"+id+"/"+i+".o")
@@ -202,6 +182,27 @@ def compile(tw, id, output, notify):
 				raise NameError("compile error")
 			else:
 				misc.printMessageLn(output, sout)
+		if misc.getArduinoVersion() >= 100:
+			"""compile C++ additional (1.0) targets"""
+			misc.printLogMessageLn('processing C++ additional targets')
+			for i in cppobj_additional:
+				compline = [j for j in defcpp]
+				compline.append("-mmcu="+b.getBoardMCU(b.getBoard()))
+				compline.append("-DF_CPU="+b.getBoardFCPU(b.getBoard()))
+				compline.extend(misc.getArduinoIncludes())
+				if misc.getArduinoVersion() >= 100:
+					compline.append("-DARDUINO=100")
+				compline.append(os.path.join(misc.getArduinoPath(), i))
+				compline.append("-o"+id+"/"+i+".o")
+				misc.printMessageLn(output, ' '.join(compline))
+				misc.printLogMessageLn(' '.join(compline))
+				(run, sout) = misc.runProg(compline)
+				misc.printLogMessageLn(sout)
+				if run == False:
+					misc.printErrorLn(notify, output, _("Compile Error"), sout)
+					raise NameError("compile error")
+				else:
+					misc.printMessageLn(output, sout)
 		"""generate archive objects"""
 		misc.printLogMessageLn('generating ar objects')
 		objects = cobj + cppobj
diff --git a/src/misc.py b/src/misc.py
index 5f3bb3e..39aa583 100644
--- a/src/misc.py
+++ b/src/misc.py
@@ -79,10 +79,13 @@ def getArduinoVersion():
 	"""this is far from something accurate but for now
 		we just need to differentiate beween 1.0 and pre 1.0
 		versions of arduino"""
-	if os.path.isfile(getArduinoFile("hardware/arduino/cores/arduino/Arduino.h")):
-		return 100
-	if os.path.isfile(getArduinoFile("hardware/arduino/cores/arduino/WProgram.h")):
-		return 22
+	try:
+		print getArduinoFile("hardware/arduino/cores/arduino/Arduino.h")
+		if os.path.isfile(getArduinoFile("hardware/arduino/cores/arduino/Arduino.h")):
+			return 100
+	except:
+		if os.path.isfile(getArduinoFile("hardware/arduino/cores/arduino/WProgram.h")):
+			return 22
 
 def getArduinoAPIFile():
 	if getArduinoVersion() >= 100:



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]