madrona-rad 0.4.3 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -106,6 +106,7 @@ lib/rad/arduino_sketch.rb
106
106
  lib/rad/darwin_installer.rb
107
107
  lib/rad/generators/makefile/makefile.erb
108
108
  lib/rad/generators/makefile/makefile.rb
109
+ lib/rad/generators/makefile/better_makefile.erb
109
110
  lib/rad/hardware_library.rb
110
111
  lib/rad/init.rb
111
112
  lib/rad/linux_installer.rb
@@ -22,15 +22,13 @@ http://github.com/atduskgreg/rad/wikis
22
22
  To install the edge gem:
23
23
 
24
24
  # Update to RubyGems 1.2.0 before proceeding!
25
- $ gem sources -a http://gems.github.com (you only have to do this once)
25
+ $ gem sources -a http://gemcutter.org (you only have to do this once)
26
26
  $ sudo gem install madrona-rad
27
27
 
28
28
  A very old and feature poor (though slightly more 'stable' RAD) is available from RubyGems:
29
29
 
30
30
  $ sudo gem install rad
31
31
 
32
- We plan to push tagged releases to RubyGems at key points. The 0.3 release should be coming up soon.
33
-
34
32
  Run the rad command to create a new project:
35
33
 
36
34
  $ rad my_project
@@ -61,4 +59,4 @@ And RAD will do its best to get the Arduino software installed on your system.
61
59
 
62
60
  ==Get Involved
63
61
 
64
- Cheers? Jeers? Wanna help out? Contact Greg Borenstein: greg [dot] borenstein [at] gmail [dot] com
62
+ Cheers? Jeers? Wanna help out? Contact JD Barnhart: jd [at] jdbarnhart [dot] com
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.3
1
+ 0.5.0
data/bin/rad CHANGED
@@ -24,11 +24,13 @@ class OptionParser #:nodoc:
24
24
 
25
25
  options = {"hardware" => {
26
26
  "serial_port" => '/dev/tty.usbserial*',
27
- "mcu" => "atmega168",
27
+ "mcu" => "diecimila",
28
28
  "physical_reset" => false
29
29
  },
30
30
  "software" => {
31
- "arduino_root" => "/Applications/arduino-0015"
31
+ "arduino_root" => "/Applications/arduino-0015",
32
+ "experimental" => false,
33
+ "arduino_version" => 22
32
34
  }
33
35
  }
34
36
 
@@ -299,12 +301,29 @@ else
299
301
  # atmega328 => Arduino Duemilanove w/ ATmega328
300
302
  # mega => Arduino Mega
301
303
 
304
+ # and if you are running in experimental mode:
305
+ # uno => Arduino Uno
306
+
302
307
  "
303
308
  file << options["hardware"].to_yaml
304
309
  end
305
310
  puts "Added #{sketch_name}/config/hardware.yml"
306
311
 
307
312
  File.open("#{sketch_name}/config/software.yml", 'w') do |file|
313
+ file << "##############################################################
314
+ # What's this experimental stuff?
315
+ # baby steps working towards support for the latest boards
316
+ # like duo using arduino version 22
317
+ #
318
+ # Are there drawbacks?
319
+ # Yes, we haven't ported over the
320
+ # rad libraries, so only bare-bones sketches work and it
321
+ # has only been tested on OS X
322
+ #
323
+ # How do I use it?
324
+ # flip experimental to true and make sure you have the latest arduino installed (22)
325
+
326
+ "
308
327
  file << options["software"].to_yaml
309
328
  end
310
329
  puts "Added #{sketch_name}/config/software.yml"
@@ -435,6 +435,7 @@ class ArduinoSketch
435
435
 
436
436
  def compose_setup #:nodoc: also composes headers and signatures
437
437
 
438
+ software_params = Makefile::software_params
438
439
  declarations = []
439
440
  plugin_directives = []
440
441
  signatures = []
@@ -448,7 +449,7 @@ class ArduinoSketch
448
449
  declarations << comment_box( "Auto-generated by RAD" )
449
450
 
450
451
  declarations << "#include <WProgram.h>\n"
451
- declarations << "#include <SoftwareSerial.h>\n"
452
+ declarations << "#include <SoftwareSerial.h>\n" unless software_params['experimental'] == true
452
453
  $load_libraries.each { |lib| declarations << "#include <#{lib}.h>" } unless $load_libraries.nil?
453
454
  $defines.each { |d| declarations << d }
454
455
 
@@ -0,0 +1,304 @@
1
+ #
2
+ # Copyright 2011 Alan Burlison, alan@bleaklow.com. All rights reserved.
3
+ # Subsequently modified by Matthieu Weber, matthieu.weber@jyu.fi.
4
+ # Use is subject to license terms.
5
+ #
6
+ # Redistribution and use in source and binary forms, with or without
7
+ # modification, are permitted provided that the following conditions are met:
8
+ #
9
+ # 1. Redistributions of source code must retain the above copyright notice,
10
+ # this list of conditions and the following disclaimer.
11
+ #
12
+ # 2. Redistributions in binary form must reproduce the above copyright notice,
13
+ # this list of conditions and the following disclaimer in the documentation
14
+ # and/or other materials provided with the distribution.
15
+ #
16
+ # THIS SOFTWARE IS PROVIDED BY ALAN BURLISON "AS IS" AND ANY EXPRESS OR IMPLIED
17
+ # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18
+ # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
19
+ # EVENT SHALL ALAN BURLISON OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
20
+ # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22
+ # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
+ # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
24
+ # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
25
+ # EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
+ #
27
+ # Minor adjustments for Mac OS X and for educational purposes by Maik Schmidt,
28
+ # contact@maik-schmidt.de.
29
+ #
30
+ # Makefile for building Arduino projects outside of the Arduino environment
31
+ #
32
+ # This makefile should be included into a per-project Makefile of the following
33
+ # form:
34
+ #
35
+ # ----------
36
+ # BOARD = mega
37
+ # PORT = /dev/term/0
38
+ # INC_DIRS = ../common
39
+ # LIB_DIRS = ../libraries/Task ../../libraries/VirtualWire
40
+ # include ../../Makefile.master
41
+ # ----------
42
+ #
43
+ # Where:
44
+ # BOARD : Arduino board type, from $(ARD_HOME)/hardware/boards.txt
45
+ # PORT : USB port
46
+ # INC_DIRS : List pf directories containing header files
47
+ # LIB_DIRS : List of directories containing library source
48
+ #
49
+ # Before using this Makefile you can adjust the following macros to suit
50
+ # your environment, either by editing this file directly or by defining them in
51
+ # the Makefile that includes this one, in which case they will override the
52
+ # definitions below:
53
+ # ARD_REV : arduino software revision, e.g. 0017, 0018
54
+ # ARD_HOME : installation directory of the Arduino software.
55
+ # ARD_BIN : location of compiler binaries
56
+ # AVRDUDE : location of avrdude executable
57
+ # AVRDUDE_CONF : location of avrdude configuration file
58
+ # PROGRAMMER : avrdude programmer type
59
+ # MON_CMD : serial monitor command
60
+ # MON_SPEED : serial monitor speed
61
+ #
62
+
63
+
64
+ # from makefile
65
+
66
+ # SKETCH = <%= params['target'] %>
67
+ ARD_REV = 0022
68
+ ARD_HOME = /Applications/Arduino.app/Contents/Resources/Java
69
+ AVR_HOME = $(ARD_HOME)/hardware/tools/avr
70
+ ARD_BIN = $(AVR_HOME)/bin
71
+ AVRDUDE = $(ARD_BIN)/avrdude
72
+ AVRDUDE_CONF = $(AVR_HOME)/etc/avrdude.conf
73
+
74
+ # Your favorite serial monitor.
75
+ MON_CMD = screen
76
+ MON_SPEED = 9600
77
+
78
+ # Board settings.
79
+ BOARD = <%= params['build.board_designation'] %>
80
+ PORT = <%= params['serial_port'] %>
81
+ PROGRAMMER = <%= params['upload.protocol'] %>
82
+
83
+ # Where to find header files and libraries.
84
+ INC_DIRS = ./inc
85
+ LIB_DIRS = $(addprefix $(ARD_HOME)/libraries/, $(LIBS))
86
+ LIBS =
87
+
88
+ # Global configuration.
89
+ ARD_REV ?= 0022
90
+ ARD_HOME ?= /Applications/Arduino.app/Contents/Resources/Java
91
+ ARD_BIN ?= /usr/local/CrossPack-AVR/bin
92
+ AVRDUDE ?= $(ARD_HOME)/hardware/tools/avr/bin/avrdude
93
+ AVRDUDE_CONF ?= $(ARD_HOME)/hardware/tools/avr/etc/avrdude.conf
94
+ PROGRAMMER ?= stk500v1
95
+ MON_SPEED ?= 57600
96
+ MON_CMD ?= picocom
97
+ PORT ?= /dev/tty.usbserial-A60061a3
98
+ BOARD ?= atmega328
99
+
100
+ ### Nothing below here should require editing. ###
101
+
102
+ # Check for the required definitions.
103
+
104
+ ifndef BOARD
105
+ $(error $$(BOARD) not defined)
106
+ endif
107
+ ifndef PORT
108
+ $(error $$(PORT) not defined)
109
+ endif
110
+
111
+ # Version-specific settings
112
+ ARD_BOARDS = $(ARD_HOME)/hardware/arduino/boards.txt
113
+ ARD_SRC_DIR = $(ARD_HOME)/hardware/arduino/cores/arduino
114
+ ARD_MAIN = $(ARD_SRC_DIR)/main.cpp
115
+
116
+ # Standard macros.
117
+ # grab the pde, because it's not a directory
118
+ SKETCH = $(notdir $(CURDIR))
119
+ BUILD_DIR = buildz
120
+ VPATH = $(LIB_DIRS)
121
+
122
+ # Macros derived from boards.txt
123
+ MCU := $(shell sed -n 's/$(BOARD)\.build\.mcu=\(.*\)/\1/p' < $(ARD_BOARDS))
124
+ F_CPU := $(shell sed -n 's/$(BOARD)\.build\.f_cpu=\(.*\)/\1/p' < $(ARD_BOARDS))
125
+ UPLOAD_SPEED := \
126
+ $(shell sed -n 's/$(BOARD)\.upload\.speed=\(.*\)/\1/p' < $(ARD_BOARDS))
127
+
128
+ # Build tools.
129
+ CC = $(ARD_BIN)/avr-gcc
130
+ CXX = $(ARD_BIN)/avr-g++
131
+ CXXFILT = $(ARD_BIN)/avr-c++filt
132
+ OBJCOPY = $(ARD_BIN)/avr-objcopy
133
+ OBJDUMP = $(ARD_BIN)/avr-objdump
134
+ AR = $(ARD_BIN)/avr-ar
135
+ SIZE = $(ARD_BIN)/avr-size
136
+ NM = $(ARD_BIN)/avr-nm
137
+ MKDIR = mkdir -p
138
+ RM = rm -rf
139
+ MV = mv -f
140
+ LN = ln -f
141
+
142
+ # Compiler flags.
143
+ INC_FLAGS = \
144
+ $(addprefix -I,$(INC_DIRS)) $(addprefix -I,$(LIB_DIRS)) -I$(ARD_SRC_DIR)
145
+ ARD_FLAGS = -mmcu=$(MCU) -DF_CPU=$(F_CPU) -DARDUINO=$(ARD_REV)
146
+ C_CXX_FLAGS = \
147
+ -Wall -Wextra -Wundef -Wno-unused-parameter \
148
+ -fdiagnostics-show-option -g -Wa,-adhlns=$(BUILD_DIR)/$*.lst
149
+ C_FLAGS = \
150
+ $(C_CXX_FLAGS) -std=gnu99 -Wstrict-prototypes -Wno-old-style-declaration
151
+ CXX_FLAGS = $(C_CXX_FLAGS)
152
+
153
+ # Optimiser flags.
154
+ # optimise for size, unsigned by default, pack data.
155
+ # separate sections, drop unused ones, shorten branches, jumps.
156
+ # don't inline, vectorise loops. no exceptions.
157
+ # no os preamble, use function calls in prologues.
158
+ # http://gcc.gnu.org/onlinedocs/gcc-4.3.5/gcc/
159
+ # http://www.tty1.net/blog/2008-04-29-avr-gcc-optimisations_en.html
160
+ OPT_FLAGS = \
161
+ -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums \
162
+ -ffunction-sections -fdata-sections -Wl,--gc-sections,--relax \
163
+ -fno-inline-small-functions -fno-tree-scev-cprop -fno-exceptions \
164
+ -ffreestanding -mcall-prologues
165
+
166
+ # Build parameters.
167
+ IMAGE = $(BUILD_DIR)/$(SKETCH)
168
+ ARD_C_SRC = $(wildcard $(ARD_SRC_DIR)/*.c)
169
+ ARD_CXX_SRC = $(wildcard $(ARD_SRC_DIR)/*.cpp)
170
+ ARD_C_OBJ = $(patsubst %.c,%.o,$(notdir $(ARD_C_SRC)))
171
+ ARD_CXX_OBJ = $(patsubst %.cpp,%.o,$(notdir $(ARD_CXX_SRC)))
172
+ ARD_LIB = arduino
173
+ ARD_AR = $(BUILD_DIR)/lib$(ARD_LIB).a
174
+ ARD_AR_OBJ = $(ARD_AR)($(ARD_C_OBJ) $(ARD_CXX_OBJ))
175
+ ARD_LD_FLAG = -l$(ARD_LIB)
176
+
177
+ # Workaround for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34734
178
+ $(ARD_AR)(Tone.o) : CXX_FLAGS += -w
179
+
180
+ # Copy source and libraries to BUILD_DIR
181
+ # Sketch libraries.
182
+ LIB_C_SRC = $(foreach ld,$(LIB_DIRS),$(wildcard $(ld)/*.c))
183
+ LIB_CXX_SRC = $(foreach ld,$(LIB_DIRS),$(wildcard $(ld)/*.cpp))
184
+ LIB_SRC = $(LIB_C_SRC) $(LIB_CXX_SRC)
185
+ ifneq "$(strip $(LIB_C_SRC) $(LIB_CXX_SRC))" ""
186
+ LIB_C_OBJ = $(patsubst %.c,%.o,$(notdir $(LIB_C_SRC)))
187
+ LIB_CXX_OBJ = $(patsubst %.cpp,%.o,$(notdir $(LIB_CXX_SRC)))
188
+ LIB_LIB = library
189
+ LIB_AR = $(BUILD_DIR)/lib$(LIB_LIB).a
190
+ LIB_AR_OBJ = $(LIB_AR)($(LIB_C_OBJ) $(LIB_CXX_OBJ))
191
+ LIB_LD_FLAG = -l$(LIB_LIB)
192
+ endif
193
+
194
+ # Sketch PDE source.
195
+ SKT_PDE_SRC = $(wildcard *.pde)
196
+ # SKT_PDE_SRC_BIS = $(wildcard *.pde)
197
+ ifneq "$(strip $(SKT_PDE_SRC))" ""
198
+ SKT_PDE_OBJ = $(BUILD_DIR)/$(SKETCH)_pde.o
199
+ endif
200
+
201
+ # C and C++ source.
202
+ SKT_C_SRC = $(wildcard *.c)
203
+ SKT_CXX_SRC = $(wildcard *.cpp)
204
+ ifneq "$(strip $(SKT_C_SRC) $(SKT_CXX_SRC))" ""
205
+ SKT_C_OBJ = $(patsubst %.c,%.o,$(SKT_C_SRC))
206
+ SKT_CXX_OBJ = $(patsubst %.cpp,%.o,$(SKT_CXX_SRC))
207
+ SKT_LIB = sketch
208
+ SKT_AR = $(BUILD_DIR)/lib$(SKT_LIB).a
209
+ SKT_AR_OBJ = $(SKT_AR)/($(SKT_C_OBJ) $(SKT_CXX_OBJ))
210
+ SKT_LD_FLAG = -l$(SKT_LIB)
211
+ endif
212
+
213
+ # Definitions.
214
+ define run-cc
215
+ @ $(CC) $(ARD_FLAGS) $(INC_FLAGS) -M -MT '$@($%)' -MF $@_$*.dep $<
216
+ $(CC) -c $(C_FLAGS) $(OPT_FLAGS) $(ARD_FLAGS) $(INC_FLAGS) \
217
+ $< -o $(BUILD_DIR)/$%
218
+ @ $(AR) rc $@ $(BUILD_DIR)/$%
219
+ @ $(RM) $(BUILD_DIR)/$%
220
+ @ $(CXXFILT) < $(BUILD_DIR)/$*.lst > $(BUILD_DIR)/$*.lst.tmp
221
+ @ $(MV) $(BUILD_DIR)/$*.lst.tmp $(BUILD_DIR)/$*.lst
222
+ endef
223
+
224
+ define run-cxx
225
+ @ $(CXX) $(ARD_FLAGS) $(INC_FLAGS) -M -MT '$@($%)' -MF $@_$*.dep $<
226
+ $(CXX) -c $(CXX_FLAGS) $(OPT_FLAGS) $(ARD_FLAGS) $(INC_FLAGS) \
227
+ $< -o $(BUILD_DIR)/$%
228
+ @ $(AR) rc $@ $(BUILD_DIR)/$%
229
+ @ $(RM) $(BUILD_DIR)/$%
230
+ @ $(CXXFILT) < $(BUILD_DIR)/$*.lst > $(BUILD_DIR)/$*.lst.tmp
231
+ @ $(MV) $(BUILD_DIR)/$*.lst.tmp $(BUILD_DIR)/$*.lst
232
+ endef
233
+
234
+ # Rules.
235
+ .PHONY : all clean upload monitor upload_monitor
236
+
237
+ all : $(BUILD_DIR) $(IMAGE).hex
238
+
239
+ clean :
240
+ $(RM) $(BUILD_DIR)
241
+
242
+ $(BUILD_DIR) :
243
+ $(MKDIR) $@
244
+
245
+ $(SKT_PDE_OBJ) : $(SKT_PDE_SRC)
246
+ echo '#include <WProgram.h>' > $(BUILD_DIR)/$(SKETCH)_pde.cpp
247
+ echo '#include "$(SKT_PDE_SRC)"' >> $(BUILD_DIR)/$(SKETCH)_pde.cpp
248
+ echo '// hack notes' >> $(BUILD_DIR)/$(SKETCH)_pde.cpp
249
+ echo '// SKT_PDE_SRC "$(SKT_PDE_SRC)"' >> $(BUILD_DIR)/$(SKETCH)_pde.cpp
250
+ echo '// SKT_PDE_OBJ "$(SKT_PDE_OBJ)"' >> $(BUILD_DIR)/$(SKETCH)_pde.cpp
251
+ echo '// CXX "$(CXX)"' >> $(BUILD_DIR)/$(SKETCH)_pde.cpp
252
+ echo '// SKETCH "$(SKETCH)"' >> $(BUILD_DIR)/$(SKETCH)_pde.cpp
253
+ $(LN) $(SKT_PDE_SRC) $(BUILD_DIR)/$(SKT_PDE_SRC)
254
+ cd $(BUILD_DIR) && $(CXX) -c $(subst build/,,$(CXX_FLAGS)) \
255
+ $(OPT_FLAGS) $(ARD_FLAGS) -I.. \
256
+ $(patsubst -I..%,-I../..%,$(INC_FLAGS)) \
257
+ $(SKETCH)_pde.cpp -o $(@F)
258
+
259
+ (%.o) : $(ARD_SRC_DIR)/%.c
260
+ $(run-cc)
261
+
262
+ (%.o) : $(ARD_SRC_DIR)/%.cpp
263
+ $(run-cxx)
264
+
265
+ (%.o) : %.c
266
+ $(run-cc)
267
+
268
+ (%.o) : %.cpp
269
+ $(run-cxx)
270
+
271
+ $(BUILD_DIR)/%.d : %.c
272
+ $(run-cc-d)
273
+
274
+ $(BUILD_DIR)/%.d : %.cpp
275
+ $(run-cxx-d)
276
+
277
+ $(IMAGE).hex : $(ARD_AR_OBJ) $(LIB_AR_OBJ) $(SKT_AR_OBJ) $(SKT_PDE_OBJ)
278
+ $(CC) $(CXX_FLAGS) $(OPT_FLAGS) $(ARD_FLAGS) -L$(BUILD_DIR) \
279
+ $(SKT_PDE_OBJ) $(SKT_LD_FLAG) $(LIB_LD_FLAG) $(ARD_LD_FLAG) -lm \
280
+ -o $(IMAGE).elf
281
+ $(OBJCOPY) -O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load \
282
+ --no-change-warnings --change-section-lma .eeprom=0 $(IMAGE).elf \
283
+ $(IMAGE).eep
284
+ $(OBJCOPY) -O ihex -R .eeprom $(IMAGE).elf $(IMAGE).hex
285
+ $(OBJDUMP) -h -S $(IMAGE).elf | $(CXXFILT) -t > $(IMAGE).lst
286
+ $(SIZE) $(IMAGE).hex
287
+
288
+ # START:makemods
289
+ upload : all
290
+ - pkill -f '$(MON_CMD).*$(PORT)'
291
+ - sleep 1
292
+ - stty -f $(PORT) hupcl
293
+ - $(AVRDUDE) -V -C$(AVRDUDE_CONF) -p$(MCU) -c$(PROGRAMMER) \
294
+ -P$(PORT) -b$(UPLOAD_SPEED) -D -Uflash:w:$(IMAGE).hex:i
295
+
296
+ monitor :
297
+ $(MON_CMD) $(PORT) $(MON_SPEED)
298
+ # END:makemods
299
+
300
+ upload_monitor : upload monitor
301
+
302
+ -include $(wildcard $(BUILD_DIR)/*.dep))
303
+
304
+ # vim:ft=make
@@ -7,7 +7,17 @@ class Makefile
7
7
  # build the sketch Makefile for the given template based on the values in its software and hardware config files
8
8
  def compose_for_sketch(build_dir)
9
9
  params = hardware_params.merge software_params
10
- board_config = board_configuration(@software_params['arduino_root'], @hardware_params['mcu'])
10
+ params['serial_port'] = serial_port if params['serial_port'] == "/dev/tty.usbserial*"
11
+ if @software_params['experimental'] == true
12
+ @experimental_mode = true
13
+ puts "#################################### running in experimental mode"
14
+ if @software_params['arduino_root'] == "/Applications/arduino-0015"
15
+ @software_params['arduino_root'] = "/Applications/Arduino.app/Contents/Resources/Java"
16
+ end
17
+ board_config = board_configuration(@software_params['arduino_root'], @hardware_params['mcu'], "/arduino")
18
+ else
19
+ board_config = board_configuration(@software_params['arduino_root'], @hardware_params['mcu'], "")
20
+ end
11
21
  params = params.merge board_config
12
22
  params['target'] = build_dir.split("/").last
13
23
 
@@ -19,7 +29,7 @@ class Makefile
19
29
 
20
30
  params['asm_files'] = Dir.entries( File.expand_path(RAD_ROOT) + "/" + PROJECT_DIR_NAME ).select{|e| e =~ /\.S/}
21
31
 
22
- e = ERB.new File.read("#{File.dirname(__FILE__)}/makefile.erb")
32
+ e = ERB.new File.read("#{File.dirname(__FILE__)}/#{"better_" if @experimental_mode == true}makefile.erb")
23
33
 
24
34
  File.open("#{build_dir}/Makefile", "w") do |f|
25
35
  f << e.result(binding)
@@ -36,15 +46,35 @@ class Makefile
36
46
  return @software_params = YAML.load_file( "#{RAD_ROOT}/config/software.yml" )
37
47
  end
38
48
 
49
+ def serial_port
50
+ usb = Dir.glob("/dev/tty.usbserial*")
51
+ if usb.empty?
52
+ usb = Dir.glob("/dev/tty.usbmodem*") #uno shows up as usbmodem on OS X...
53
+ end
54
+ puts "#################################### serial port: #{usb}"
55
+ usb
56
+ end
57
+
39
58
  ## match the mcu with the proper board configuration from the arduino board.txt file
40
- def board_configuration(arduino_root, board_name)
59
+ def board_configuration(arduino_root, board_name, path_mod)
41
60
  board_configuration = {}
42
- File.open("#{arduino_root}/hardware/boards.txt", "r") do |infile|
61
+ board_type = {}
62
+ puts "#################################### checking boards.txt at: #{arduino_root}/hardware#{path_mod}/boards.txt for: #{board_name}"
63
+ File.open("#{arduino_root}/hardware#{path_mod}/boards.txt", "r") do |infile|
43
64
  infile.each_line do |line|
44
- next unless line.chomp =~ /^#{board_name}\.([^=]*)=(.*)$/
45
- board_configuration[$1] = $2
65
+ next unless line.chomp =~ /^#{board_name}\.([^=]*)=(.*)$/
66
+ # next unless line.chomp =~ /^(#{board_name})\.name/
67
+ board_configuration[$1] = $2
68
+ # board_configuration = $1
46
69
  end
47
70
  end
71
+ board_type['build.board_designation'] = board_name
72
+ if board_configuration.empty?
73
+ raise "#################################### no board configuration found for : #{board_name} check your hardware configuration -- type rake arduino:boards"
74
+ else
75
+ puts "#################################### board_configuration (per boards.txt): #{board_configuration.inspect}"
76
+ end
77
+ board_configuration = board_configuration.merge board_type
48
78
  board_configuration
49
79
  end
50
80
 
@@ -37,6 +37,18 @@ namespace :test do
37
37
 
38
38
  end
39
39
 
40
+ namespace :arduino do
41
+
42
+ desc "list all supported boards in the current arduino version (currently hardwired for OS X to get this up and running)"
43
+ task :boards do
44
+ File.open("/Applications/Arduino.app/Contents/Resources/Java/hardware/arduino/boards.txt", "r") do |f1|
45
+ while line = f1.gets
46
+ puts line
47
+ end
48
+ end
49
+ end
50
+
51
+ end
40
52
 
41
53
  namespace :make do
42
54
 
@@ -73,7 +85,7 @@ namespace :make do
73
85
 
74
86
  task :clean_sketch_dir => ["build:file_list", "build:sketch_dir"] do
75
87
  FileList.new(Dir.entries("#{@sketch.build_dir}")).exclude("#{@sketch.name}.cpp").exclude(/^\./).each do |f|
76
- sh %{rm #{@sketch.build_dir}/#{f}}
88
+ sh %{rm -rf #{@sketch.build_dir}/#{f}}
77
89
  end
78
90
  end
79
91
 
@@ -1,15 +1,15 @@
1
1
  # Generated by jeweler
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{madrona-rad}
8
- s.version = "0.4.3"
8
+ s.version = "0.5.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["JD Barnhart", "Greg Borenstein"]
12
- s.date = %q{2009-10-28}
12
+ s.date = %q{2011-07-04}
13
13
  s.default_executable = %q{rad}
14
14
  s.description = %q{Ruby Arduino Development: a framework for programming the Arduino physcial computing platform using Ruby}
15
15
  s.email = %q{jd@jdbarnhart.com}
@@ -18,173 +18,159 @@ Gem::Specification.new do |s|
18
18
  "README.rdoc"
19
19
  ]
20
20
  s.files = [
21
- ".gitignore",
22
- "History.txt",
23
- "License.txt",
24
- "Manifest.txt",
25
- "README.rdoc",
26
- "Rakefile",
27
- "VERSION",
28
- "bin/rad",
29
- "lib/examples/add_hysteresis.rb",
30
- "lib/examples/basic_blink.rb",
31
- "lib/examples/blink_m_address_assignment.rb",
32
- "lib/examples/blink_m_hello.rb",
33
- "lib/examples/blink_m_multi.rb",
34
- "lib/examples/blink_with_serial.rb",
35
- "lib/examples/configure_pa_lcd_boot.rb",
36
- "lib/examples/debounce_methods.rb",
37
- "lib/examples/external_variable_fu.rb",
38
- "lib/examples/external_variables.rb",
39
- "lib/examples/first_sound.rb",
40
- "lib/examples/frequency_generator.rb",
41
- "lib/examples/hello_array.rb",
42
- "lib/examples/hello_array2.rb",
43
- "lib/examples/hello_array_eeprom.rb",
44
- "lib/examples/hello_clock.rb",
45
- "lib/examples/hello_eeprom.rb",
46
- "lib/examples/hello_eeprom_lcdpa.rb",
47
- "lib/examples/hello_format_print.rb",
48
- "lib/examples/hello_lcd_charset.rb",
49
- "lib/examples/hello_maxbotix.rb",
50
- "lib/examples/hello_pa_lcd.rb",
51
- "lib/examples/hello_servos.rb",
52
- "lib/examples/hello_spectra_sound.rb",
53
- "lib/examples/hello_world.rb",
54
- "lib/examples/hello_xbee.rb",
55
- "lib/examples/hysteresis_duel.rb",
56
- "lib/examples/i2c_with_clock_chip.rb",
57
- "lib/examples/midi_beat_box.rb",
58
- "lib/examples/midi_scales.rb",
59
- "lib/examples/motor_knob.rb",
60
- "lib/examples/servo_buttons.rb",
61
- "lib/examples/servo_calibrate_continuous.rb",
62
- "lib/examples/servo_throttle.rb",
63
- "lib/examples/software_serial.rb",
64
- "lib/examples/sparkfun_lcd.rb",
65
- "lib/examples/spectra_soft_pot.rb",
66
- "lib/examples/times_method.rb",
67
- "lib/examples/toggle.rb",
68
- "lib/examples/twitter.rb",
69
- "lib/examples/two_wire.rb",
70
- "lib/libraries/AFSoftSerial/AFSoftSerial.cpp",
71
- "lib/libraries/AFSoftSerial/AFSoftSerial.h",
72
- "lib/libraries/AFSoftSerial/keywords.txt",
73
- "lib/libraries/AF_XPort/AF_XPort.cpp",
74
- "lib/libraries/AF_XPort/AF_XPort.h",
75
- "lib/libraries/DS1307/DS1307.cpp",
76
- "lib/libraries/DS1307/DS1307.h",
77
- "lib/libraries/DS1307/keywords.txt",
78
- "lib/libraries/FrequencyTimer2/FrequencyTimer2.cpp",
79
- "lib/libraries/FrequencyTimer2/FrequencyTimer2.h",
80
- "lib/libraries/FrequencyTimer2/keywords.txt",
81
- "lib/libraries/I2CEEPROM/I2CEEPROM.cpp",
82
- "lib/libraries/I2CEEPROM/I2CEEPROM.h",
83
- "lib/libraries/I2CEEPROM/keywords.txt",
84
- "lib/libraries/LoopTimer/LoopTimer.cpp",
85
- "lib/libraries/LoopTimer/LoopTimer.h",
86
- "lib/libraries/LoopTimer/keywords.txt",
87
- "lib/libraries/OneWire/OneWire.cpp",
88
- "lib/libraries/OneWire/OneWire.h",
89
- "lib/libraries/OneWire/keywords.txt",
90
- "lib/libraries/OneWire/readme.txt",
91
- "lib/libraries/SWSerLCDpa/SWSerLCDpa.cpp",
92
- "lib/libraries/SWSerLCDpa/SWSerLCDpa.h",
93
- "lib/libraries/SWSerLCDsf/SWSerLCDsf.cpp",
94
- "lib/libraries/SWSerLCDsf/SWSerLCDsf.h",
95
- "lib/libraries/Servo/Servo.cpp",
96
- "lib/libraries/Servo/Servo.h",
97
- "lib/libraries/Stepper/Stepper.cpp",
98
- "lib/libraries/Stepper/Stepper.h",
99
- "lib/libraries/Stepper/keywords.txt",
100
- "lib/libraries/Wire/Wire.cpp",
101
- "lib/libraries/Wire/Wire.h",
102
- "lib/libraries/Wire/keywords.txt",
103
- "lib/libraries/Wire/twi.h",
104
- "lib/libraries/Wire/utility/twi.c",
105
- "lib/libraries/Wire/utility/twi.h",
106
- "lib/plugins/basics.rb",
107
- "lib/plugins/bitwise_ops.rb",
108
- "lib/plugins/blink.rb",
109
- "lib/plugins/blink_m.rb",
110
- "lib/plugins/debounce.rb",
111
- "lib/plugins/debug_output_to_lcd.rb",
112
- "lib/plugins/hysteresis.rb",
113
- "lib/plugins/input_output_state.rb",
114
- "lib/plugins/lcd_padding.rb",
115
- "lib/plugins/mem_test.rb",
116
- "lib/plugins/midi.rb",
117
- "lib/plugins/parallax_ping.rb",
118
- "lib/plugins/servo_pulse.rb",
119
- "lib/plugins/servo_setup.rb",
120
- "lib/plugins/smoother.rb",
121
- "lib/plugins/spark_fun_serial_lcd.rb",
122
- "lib/plugins/spectra_symbol.rb",
123
- "lib/plugins/twitter_connect.rb",
124
- "lib/rad.rb",
125
- "lib/rad/README.rdoc",
126
- "lib/rad/antiquated_todo.txt",
127
- "lib/rad/arduino_plugin.rb",
128
- "lib/rad/arduino_sketch.rb",
129
- "lib/rad/darwin_installer.rb",
130
- "lib/rad/generators/makefile/makefile.erb",
131
- "lib/rad/generators/makefile/makefile.rb",
132
- "lib/rad/hardware_library.rb",
133
- "lib/rad/init.rb",
134
- "lib/rad/linux_installer.rb",
135
- "lib/rad/progressbar.rb",
136
- "lib/rad/rad_processor.rb",
137
- "lib/rad/rad_rewriter.rb",
138
- "lib/rad/rad_type_checker.rb",
139
- "lib/rad/sim/arduino_sketch.rb",
140
- "lib/rad/sketch_compiler.rb",
141
- "lib/rad/tasks/build_and_make.rake",
142
- "lib/rad/tasks/rad.rb",
143
- "lib/rad/todo.txt",
144
- "lib/rad/variable_processing.rb",
145
- "lib/rad/version.rb",
146
- "madrona-rad.gemspec",
147
- "project_dev.rake",
148
- "setup.rb",
149
- "spec/examples/hello_world.rb",
150
- "spec/examples/serial_motor.rb",
151
- "spec/models/arduino_sketch_spec.rb",
152
- "spec/models/sketch_compiler_spec.rb",
153
- "spec/models/spec_helper.rb",
154
- "spec/sim/hello_world_spec.rb",
155
- "spec/spec.opts",
156
- "test/fixture.rb",
157
- "test/hello_world_test/Makefile",
158
- "test/hello_world_test/hello_world.cpp",
159
- "test/test_array_processing.rb",
160
- "test/test_plugin_loading.rb",
161
- "test/test_translation_post_processing.rb",
162
- "test/test_variable_processing.rb"
21
+ "History.txt",
22
+ "License.txt",
23
+ "Manifest.txt",
24
+ "README.rdoc",
25
+ "Rakefile",
26
+ "VERSION",
27
+ "bin/rad",
28
+ "lib/examples/add_hysteresis.rb",
29
+ "lib/examples/basic_blink.rb",
30
+ "lib/examples/blink_m_address_assignment.rb",
31
+ "lib/examples/blink_m_hello.rb",
32
+ "lib/examples/blink_m_multi.rb",
33
+ "lib/examples/blink_with_serial.rb",
34
+ "lib/examples/configure_pa_lcd_boot.rb",
35
+ "lib/examples/debounce_methods.rb",
36
+ "lib/examples/external_variable_fu.rb",
37
+ "lib/examples/external_variables.rb",
38
+ "lib/examples/first_sound.rb",
39
+ "lib/examples/frequency_generator.rb",
40
+ "lib/examples/hello_array.rb",
41
+ "lib/examples/hello_array2.rb",
42
+ "lib/examples/hello_array_eeprom.rb",
43
+ "lib/examples/hello_clock.rb",
44
+ "lib/examples/hello_eeprom.rb",
45
+ "lib/examples/hello_eeprom_lcdpa.rb",
46
+ "lib/examples/hello_format_print.rb",
47
+ "lib/examples/hello_lcd_charset.rb",
48
+ "lib/examples/hello_maxbotix.rb",
49
+ "lib/examples/hello_pa_lcd.rb",
50
+ "lib/examples/hello_servos.rb",
51
+ "lib/examples/hello_spectra_sound.rb",
52
+ "lib/examples/hello_world.rb",
53
+ "lib/examples/hello_xbee.rb",
54
+ "lib/examples/hysteresis_duel.rb",
55
+ "lib/examples/i2c_with_clock_chip.rb",
56
+ "lib/examples/midi_beat_box.rb",
57
+ "lib/examples/midi_scales.rb",
58
+ "lib/examples/motor_knob.rb",
59
+ "lib/examples/servo_buttons.rb",
60
+ "lib/examples/servo_calibrate_continuous.rb",
61
+ "lib/examples/servo_throttle.rb",
62
+ "lib/examples/software_serial.rb",
63
+ "lib/examples/sparkfun_lcd.rb",
64
+ "lib/examples/spectra_soft_pot.rb",
65
+ "lib/examples/times_method.rb",
66
+ "lib/examples/toggle.rb",
67
+ "lib/examples/twitter.rb",
68
+ "lib/examples/two_wire.rb",
69
+ "lib/libraries/AFSoftSerial/AFSoftSerial.cpp",
70
+ "lib/libraries/AFSoftSerial/AFSoftSerial.h",
71
+ "lib/libraries/AFSoftSerial/keywords.txt",
72
+ "lib/libraries/AF_XPort/AF_XPort.cpp",
73
+ "lib/libraries/AF_XPort/AF_XPort.h",
74
+ "lib/libraries/DS1307/DS1307.cpp",
75
+ "lib/libraries/DS1307/DS1307.h",
76
+ "lib/libraries/DS1307/keywords.txt",
77
+ "lib/libraries/FrequencyTimer2/FrequencyTimer2.cpp",
78
+ "lib/libraries/FrequencyTimer2/FrequencyTimer2.h",
79
+ "lib/libraries/FrequencyTimer2/keywords.txt",
80
+ "lib/libraries/I2CEEPROM/I2CEEPROM.cpp",
81
+ "lib/libraries/I2CEEPROM/I2CEEPROM.h",
82
+ "lib/libraries/I2CEEPROM/keywords.txt",
83
+ "lib/libraries/LoopTimer/LoopTimer.cpp",
84
+ "lib/libraries/LoopTimer/LoopTimer.h",
85
+ "lib/libraries/LoopTimer/keywords.txt",
86
+ "lib/libraries/OneWire/OneWire.cpp",
87
+ "lib/libraries/OneWire/OneWire.h",
88
+ "lib/libraries/OneWire/keywords.txt",
89
+ "lib/libraries/OneWire/readme.txt",
90
+ "lib/libraries/SWSerLCDpa/SWSerLCDpa.cpp",
91
+ "lib/libraries/SWSerLCDpa/SWSerLCDpa.h",
92
+ "lib/libraries/SWSerLCDsf/SWSerLCDsf.cpp",
93
+ "lib/libraries/SWSerLCDsf/SWSerLCDsf.h",
94
+ "lib/libraries/Servo/Servo.cpp",
95
+ "lib/libraries/Servo/Servo.h",
96
+ "lib/libraries/Stepper/Stepper.cpp",
97
+ "lib/libraries/Stepper/Stepper.h",
98
+ "lib/libraries/Stepper/keywords.txt",
99
+ "lib/libraries/Wire/Wire.cpp",
100
+ "lib/libraries/Wire/Wire.h",
101
+ "lib/libraries/Wire/keywords.txt",
102
+ "lib/libraries/Wire/twi.h",
103
+ "lib/libraries/Wire/utility/twi.c",
104
+ "lib/libraries/Wire/utility/twi.h",
105
+ "lib/plugins/basics.rb",
106
+ "lib/plugins/bitwise_ops.rb",
107
+ "lib/plugins/blink.rb",
108
+ "lib/plugins/blink_m.rb",
109
+ "lib/plugins/debounce.rb",
110
+ "lib/plugins/debug_output_to_lcd.rb",
111
+ "lib/plugins/hysteresis.rb",
112
+ "lib/plugins/input_output_state.rb",
113
+ "lib/plugins/lcd_padding.rb",
114
+ "lib/plugins/mem_test.rb",
115
+ "lib/plugins/midi.rb",
116
+ "lib/plugins/parallax_ping.rb",
117
+ "lib/plugins/servo_pulse.rb",
118
+ "lib/plugins/servo_setup.rb",
119
+ "lib/plugins/smoother.rb",
120
+ "lib/plugins/spark_fun_serial_lcd.rb",
121
+ "lib/plugins/spectra_symbol.rb",
122
+ "lib/plugins/twitter_connect.rb",
123
+ "lib/rad.rb",
124
+ "lib/rad/README.rdoc",
125
+ "lib/rad/antiquated_todo.txt",
126
+ "lib/rad/arduino_plugin.rb",
127
+ "lib/rad/arduino_sketch.rb",
128
+ "lib/rad/darwin_installer.rb",
129
+ "lib/rad/generators/makefile/better_makefile.erb",
130
+ "lib/rad/generators/makefile/makefile.erb",
131
+ "lib/rad/generators/makefile/makefile.rb",
132
+ "lib/rad/hardware_library.rb",
133
+ "lib/rad/init.rb",
134
+ "lib/rad/linux_installer.rb",
135
+ "lib/rad/progressbar.rb",
136
+ "lib/rad/rad_processor.rb",
137
+ "lib/rad/rad_rewriter.rb",
138
+ "lib/rad/rad_type_checker.rb",
139
+ "lib/rad/sim/arduino_sketch.rb",
140
+ "lib/rad/sketch_compiler.rb",
141
+ "lib/rad/tasks/build_and_make.rake",
142
+ "lib/rad/tasks/rad.rb",
143
+ "lib/rad/todo.txt",
144
+ "lib/rad/variable_processing.rb",
145
+ "lib/rad/version.rb",
146
+ "madrona-rad.gemspec",
147
+ "project_dev.rake",
148
+ "setup.rb",
149
+ "spec/examples/hello_world.rb",
150
+ "spec/examples/serial_motor.rb",
151
+ "spec/models/arduino_sketch_spec.rb",
152
+ "spec/models/sketch_compiler_spec.rb",
153
+ "spec/models/spec_helper.rb",
154
+ "spec/sim/hello_world_spec.rb",
155
+ "spec/spec.opts",
156
+ "test/fixture.rb",
157
+ "test/hello_world_test/Makefile",
158
+ "test/hello_world_test/hello_world.cpp",
159
+ "test/test_array_processing.rb",
160
+ "test/test_plugin_loading.rb",
161
+ "test/test_translation_post_processing.rb",
162
+ "test/test_variable_processing.rb"
163
163
  ]
164
164
  s.homepage = %q{http://github.com/madrona/madrona-rad}
165
- s.rdoc_options = ["--charset=UTF-8"]
166
165
  s.require_paths = ["lib"]
167
- s.rubygems_version = %q{1.3.5}
166
+ s.rubygems_version = %q{1.3.7}
168
167
  s.summary = %q{RAD: Ruby Arduino Development - 0.4.1 -- 1.9 Ready!}
169
- s.test_files = [
170
- "spec/examples/hello_world.rb",
171
- "spec/examples/serial_motor.rb",
172
- "spec/models/arduino_sketch_spec.rb",
173
- "spec/models/sketch_compiler_spec.rb",
174
- "spec/models/spec_helper.rb",
175
- "spec/sim/hello_world_spec.rb",
176
- "test/fixture.rb",
177
- "test/test_array_processing.rb",
178
- "test/test_plugin_loading.rb",
179
- "test/test_translation_post_processing.rb",
180
- "test/test_variable_processing.rb"
181
- ]
182
168
 
183
169
  if s.respond_to? :specification_version then
184
170
  current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
185
171
  s.specification_version = 3
186
172
 
187
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
173
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
188
174
  s.add_runtime_dependency(%q<ruby2c>, [">= 1.0.0.7"])
189
175
  s.add_runtime_dependency(%q<sexp_processor>, [">= 3.0.2"])
190
176
  s.add_development_dependency(%q<thoughtbot-shoulda>, [">= 0"])
metadata CHANGED
@@ -1,7 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: madrona-rad
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.3
4
+ hash: 11
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 5
9
+ - 0
10
+ version: 0.5.0
5
11
  platform: ruby
6
12
  authors:
7
13
  - JD Barnhart
@@ -10,39 +16,56 @@ autorequire:
10
16
  bindir: bin
11
17
  cert_chain: []
12
18
 
13
- date: 2009-10-28 00:00:00 -07:00
19
+ date: 2011-07-04 00:00:00 -07:00
14
20
  default_executable: rad
15
21
  dependencies:
16
22
  - !ruby/object:Gem::Dependency
17
23
  name: ruby2c
18
- type: :runtime
19
- version_requirement:
20
- version_requirements: !ruby/object:Gem::Requirement
24
+ prerelease: false
25
+ requirement: &id001 !ruby/object:Gem::Requirement
26
+ none: false
21
27
  requirements:
22
28
  - - ">="
23
29
  - !ruby/object:Gem::Version
30
+ hash: 81
31
+ segments:
32
+ - 1
33
+ - 0
34
+ - 0
35
+ - 7
24
36
  version: 1.0.0.7
25
- version:
37
+ type: :runtime
38
+ version_requirements: *id001
26
39
  - !ruby/object:Gem::Dependency
27
40
  name: sexp_processor
28
- type: :runtime
29
- version_requirement:
30
- version_requirements: !ruby/object:Gem::Requirement
41
+ prerelease: false
42
+ requirement: &id002 !ruby/object:Gem::Requirement
43
+ none: false
31
44
  requirements:
32
45
  - - ">="
33
46
  - !ruby/object:Gem::Version
47
+ hash: 3
48
+ segments:
49
+ - 3
50
+ - 0
51
+ - 2
34
52
  version: 3.0.2
35
- version:
53
+ type: :runtime
54
+ version_requirements: *id002
36
55
  - !ruby/object:Gem::Dependency
37
56
  name: thoughtbot-shoulda
38
- type: :development
39
- version_requirement:
40
- version_requirements: !ruby/object:Gem::Requirement
57
+ prerelease: false
58
+ requirement: &id003 !ruby/object:Gem::Requirement
59
+ none: false
41
60
  requirements:
42
61
  - - ">="
43
62
  - !ruby/object:Gem::Version
63
+ hash: 3
64
+ segments:
65
+ - 0
44
66
  version: "0"
45
- version:
67
+ type: :development
68
+ version_requirements: *id003
46
69
  description: "Ruby Arduino Development: a framework for programming the Arduino physcial computing platform using Ruby"
47
70
  email: jd@jdbarnhart.com
48
71
  executables:
@@ -52,7 +75,6 @@ extensions: []
52
75
  extra_rdoc_files:
53
76
  - README.rdoc
54
77
  files:
55
- - .gitignore
56
78
  - History.txt
57
79
  - License.txt
58
80
  - Manifest.txt
@@ -161,6 +183,7 @@ files:
161
183
  - lib/rad/arduino_plugin.rb
162
184
  - lib/rad/arduino_sketch.rb
163
185
  - lib/rad/darwin_installer.rb
186
+ - lib/rad/generators/makefile/better_makefile.erb
164
187
  - lib/rad/generators/makefile/makefile.erb
165
188
  - lib/rad/generators/makefile/makefile.rb
166
189
  - lib/rad/hardware_library.rb
@@ -199,38 +222,34 @@ homepage: http://github.com/madrona/madrona-rad
199
222
  licenses: []
200
223
 
201
224
  post_install_message:
202
- rdoc_options:
203
- - --charset=UTF-8
225
+ rdoc_options: []
226
+
204
227
  require_paths:
205
228
  - lib
206
229
  required_ruby_version: !ruby/object:Gem::Requirement
230
+ none: false
207
231
  requirements:
208
232
  - - ">="
209
233
  - !ruby/object:Gem::Version
234
+ hash: 3
235
+ segments:
236
+ - 0
210
237
  version: "0"
211
- version:
212
238
  required_rubygems_version: !ruby/object:Gem::Requirement
239
+ none: false
213
240
  requirements:
214
241
  - - ">="
215
242
  - !ruby/object:Gem::Version
243
+ hash: 3
244
+ segments:
245
+ - 0
216
246
  version: "0"
217
- version:
218
247
  requirements: []
219
248
 
220
249
  rubyforge_project:
221
- rubygems_version: 1.3.5
250
+ rubygems_version: 1.3.7
222
251
  signing_key:
223
252
  specification_version: 3
224
253
  summary: "RAD: Ruby Arduino Development - 0.4.1 -- 1.9 Ready!"
225
- test_files:
226
- - spec/examples/hello_world.rb
227
- - spec/examples/serial_motor.rb
228
- - spec/models/arduino_sketch_spec.rb
229
- - spec/models/sketch_compiler_spec.rb
230
- - spec/models/spec_helper.rb
231
- - spec/sim/hello_world_spec.rb
232
- - test/fixture.rb
233
- - test/test_array_processing.rb
234
- - test/test_plugin_loading.rb
235
- - test/test_translation_post_processing.rb
236
- - test/test_variable_processing.rb
254
+ test_files: []
255
+
data/.gitignore DELETED
@@ -1,5 +0,0 @@
1
- .DS_Store
2
- bin/.DS_Store
3
- lib/.DS_Store
4
- lib/libraries/.DS_Store
5
- lib/rad/.DS_Store