Skip to content

Commit

Permalink
release tweaking
Browse files Browse the repository at this point in the history
  • Loading branch information
bnewbold committed Apr 4, 2010
1 parent 2e10fea commit d0ab6c1
Show file tree
Hide file tree
Showing 8 changed files with 105 additions and 17 deletions.
32 changes: 25 additions & 7 deletions README
@@ -1,3 +1,11 @@
_ _ _
_ __ ___ __ _ _ __ | | ___ (_) __| | ___
| '_ ` _ \ / _` | '_ \| |/ _ \ | |/ _` |/ _ \
| | | | | | (_| | |_) | | __/ | | (_| | __/
|_| |_| |_|\__,_| .__/|_|\___| |_|\__,_|\___|
|_|
by leaflabs!


maple-ide is a graphical programming environment for the Maple development
board developed by LeafLabs. It is a modified version of the popular open
Expand All @@ -7,15 +15,24 @@ series of AVR microcontrollers.

This is the source code repository for the maple-ide; if you just want to
program your Maple board you probably want to download a binary release
package for your particular platform.
package for your particular platform. The latest version of this repository
can be found at: http://github.com/leaflabs/maple-ide

This IDE includes a full ARM compiler toolchain ("arm-none-eabi-gcc") and a low
level library for the STM32 Cortex-M3 plaform called libmaple. libmaple is
developed seperately and can be used straight from the command line; it is
available at: http://github.com/leaflabs/libmaple


Disclaimer
------------------------------------------------------------------------------
We make no claims that we "preserve" any design or strategy behind arduino,
which is why this being released as a separate branch of arduino and not as a
patch. Arduino is clearly organized around compiling to avr, and compiling to
arm is more of a hack.
patch. Arduino is clearly organized around compiling to AVR, and compiling to
ARM is a hack. In the future we hope that the arduino compilation and upload
infrastructure will be generalized so that boards like the Maple which require
a non-AVR compiler can be developed for in the regular IDE by installing a
plugin or library.


Build Requirements
Expand All @@ -42,6 +59,7 @@ Mac OSX build requirements:
- TODO

Windows build requirements:
- a cygwin build environment (see the arduino build docs)
- TODO


Expand All @@ -64,10 +82,10 @@ TODO
------------------------------------------------------------------------------
* Testing on linux platform
* Entire compile/release/upload toolchain for windows and OSX
* Port or replace extension libraries
* Port or replace extension libraries

Backburner:
* Include link to porting documentation in the compiler error output
to minize confusion if a user tries to compile an incompatible AVR
sketch
* Include link to documentation for porting AVR sketches to ARM in the
compiler error output to minize confusion if a user tries to compile an
incompatible AVR sketch

31 changes: 31 additions & 0 deletions README-dist
@@ -0,0 +1,31 @@
_ _ _
_ __ ___ __ _ _ __ | | ___ (_) __| | ___
| '_ ` _ \ / _` | '_ \| |/ _ \ | |/ _` |/ _ \
| | | | | | (_| | |_) | | __/ | | (_| | __/
|_| |_| |_|\__,_| .__/|_|\___| |_|\__,_|\___|
|_|
by leaflabs!


maple-ide is a graphical programming environment for the Maple development
board developed by LeafLabs. It is a modified version of the popular open
source Arduino environment targeted towards the ARM Cortex-M3 microcontroller
in the Maple; the regular arduino toolchain is only targeted towards the Atmel
series of AVR microcontrollers.

This IDE includes a full ARM compiler toolchain ("arm-none-eabi-gcc") and a low
level library for the STM32 Cortex-M3 plaform called libmaple. libmaple is
developed seperately and can be used straight from the command line; it is
available at: http://github.com/leaflabs/libmaple


Disclaimer
------------------------------------------------------------------------------
We make no claims that we "preserve" any design or strategy behind arduino,
which is why this being released as a separate branch of arduino and not as a
patch. Arduino is clearly organized around compiling to AVR, and compiling to
ARM is a hack. In the future we hope that the arduino compilation and upload
infrastructure will be generalized so that boards like the Maple which require
a non-AVR compiler can be developed for in the regular IDE by installing a
plugin or library.

17 changes: 12 additions & 5 deletions build/linux/dist.sh
Expand Up @@ -33,7 +33,8 @@ cp ../../app/lib/ecj.jar arduino/lib/
cp ../../app/lib/jna.jar arduino/lib/
cp ../../app/lib/oro.jar arduino/lib/
cp ../../app/lib/RXTXcomm.jar arduino/lib/
cp ../../readme.txt arduino/
cp ../../readme-arduino.txt arduino/
cp ../../README-dist arduino/README.txt

cp -r ../../hardware arduino/
cp -r ../../libraries arduino/
Expand All @@ -50,8 +51,8 @@ fi
echo Copying examples...
cp -r ../shared/examples arduino/

echo Extracting reference...
unzip -q -d arduino/ ../shared/reference.zip
#echo Extracting reference...
#unzip -q -d arduino/ ../shared/reference.zip

# add java (jre) files
#tar --extract --file=jre.tgz --ungzip --directory=arduino
Expand Down Expand Up @@ -84,8 +85,14 @@ echo Creating tarball and finishing...
P5=maple-ide-$RELEASE
mv arduino $P5

tar cfz $P5.tgz $P5
tar cfz $P5-linux64.tgz $P5
# nah, keep the new directory around
#rm -rf $P5

echo Done.
echo Done with 64bit.

echo Using 32-bit librxtxSerial.so
cp dist/lib/librxtxSerial.so $P5/lib/librxtxSerial.so
tar cfz $P5-linux32.tgz $P5
echo Done with 32bit.

6 changes: 6 additions & 0 deletions build/linux/dist/45-maple.rules
@@ -0,0 +1,6 @@
BUS!="usb", ACTION!="add", SUBSYSTEM!=="usb_device", GOTO="maple_rules_end"

SYSFS{idProduct}=="1001", SYSFS{idVendor}=="0110", MODE="664", GROUP="plugdev"
SYSFS{idProduct}=="1002", SYSFS{idVendor}=="0110", MODE="664", GROUP="plugdev"

LABEL="maple_rules_end"
2 changes: 1 addition & 1 deletion build/linux/run.sh
@@ -1,3 +1,3 @@
#!/bin/sh

cd work && ./arduino && cd ..
cd work && ./maple-ide && cd ..
4 changes: 2 additions & 2 deletions build/windows/dist.sh
Expand Up @@ -17,7 +17,7 @@ VERSIONED=`cat ../../app/src/processing/app/Base.java | grep $REVISION`
if [ -z "$VERSIONED" ]
then
echo Fix the revision number in Base.java
exit
#exit
fi

./make.sh
Expand Down Expand Up @@ -50,7 +50,7 @@ cp ../../app/lib/jna.jar arduino/lib/
cp ../../app/lib/oro.jar arduino/lib/
cp ../../app/lib/RXTXcomm.jar arduino/lib/

cp ../../readme.txt arduino/
cp ../../readme-arduino.txt arduino/

echo Copying examples...
cp -r ../shared/examples arduino/
Expand Down
28 changes: 27 additions & 1 deletion license.txt
@@ -1,4 +1,4 @@
this file includes licensing information for parts of arduino.
this file includes licensing information for parts of arduino and maple-ide.

first, the gnu general public license, which covers the main body
of the processing/arduino code (in general, all the stuff inside the 'app'
Expand All @@ -7,6 +7,9 @@ and 'core' subfolders).
next, the gnu lesser general public license that covers the arduino core
and libraries.

last, the permissive MIT License, which is GPL compatible and covers the
portions of libmaple (low level ARM Cortex-M3 hardware library) which were
developed by LeafLabs.

.....................................................................

Expand Down Expand Up @@ -751,3 +754,26 @@ FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.

.....................................................................

MIT Software License

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

See http://creativecommons.org/licenses/MIT/ for more information.
2 changes: 1 addition & 1 deletion todo.txt
@@ -1,4 +1,4 @@
0018 maple-ide
pre04042010 maple-ide

Fix Linux make.sh, etc. scripts
Test on Linux.
Expand Down

0 comments on commit d0ab6c1

Please sign in to comment.