aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* Make it easier to use the libmaple build system externally.Marti Bolivar2011-09-141-1/+7
| | | | | | | | | | | | | | It's been tricky for users to start their own projects while still using our build system. The current recommended practice to get this done involves modifying the top-level Makefile to add their module into LIBMAPLE_MODULES, and include their own rules.mk. Editing the repository Makefile is stupid and shouldn't be a necessary step. Instead of that, allow the environment to provide the initial value for LIBMAPLE_MODULES. This allows users to specify it on the command line. Also add WIRISH_PATH to the initial set of "useful" paths.
* [make] Factor out target/board configuration.Marti Bolivar2011-09-131-64/+47
| | | | | | | | | Comment the Makefile more verbosely. It's been causing confusion on the forums. Add target-config.mk, this contains build configuration depending on the BOARD and MEMORY_TARGET variables. Its contents were cluttering up the Makefile and making it harder to read.
* Makefile: Improve helpMarti Bolivar2011-09-131-9/+13
|
* Makefile: tweak clean, add mrproper, make help more helpful.Marti Bolivar2011-09-071-2/+11
| | | | | | | | | | | Remove doxygen from clean; no sense killing the docs just because you want to change boards. Add new "mrproper" target to nuke all autogenerated files; currently, this is just the build/ and doxygen/ directories. Make a note of BOARD env. variable and doxygen, mrproper targets from help target.
* Makefile: Add doxygen to .PHONY, remove doxygen dir on clean.Marti Bolivar2011-08-301-2/+2
|
* FreeRTOS: Added FreeRTOS 7.0.1, including hook in libmaple/systick.c and ↵Nis Sarup2011-06-211-0/+3
| | | | example blinky.
* Remove reST documentation, attendant updates.Marti Bolivar2011-06-111-0/+3
| | | | | | | | | | | | | | | | | | | | | | The documentation covers topics not specifically relevant to libmaple, so it doesn't make sense for it to be part of the libmaple source distribution. Delete the docs/ tree, and prepare libmaple for use with the new leaflabs-docs repo, which will contain the docs from now on. * README: update to reflect this change * support/doxygen/Doxyfile: This is the old docs/Doxyfile * Makefile: Add a doxygen target * wirish/comm/HardwareSerial.h: fix reference to docs/. The comment informing maintainers that the HardwareSerial interface is documented by hand refers to the docs/ tree, which no longer exists. Update it to refer to the separate leaflabs-docs repository. * support/scripts/copy-to-ide: No longer build the documentation
* Adding $(SRCROOT)/ in front of build-targets.mk to allow building in any ↵Victor G Estevez2011-06-021-1/+1
| | | | directory
* openocd: Detect openocd versionPerry Hung2011-05-261-2/+2
| | | | | Small script to detect the openocd version and choose the appropriate debug/flash script for use with JTAG debugging.
* NVIC and SCB refactorMarti Bolivar2011-04-051-28/+21
|
* Redid Servo in terms of new timer.h.Marti Bolivar2011-04-011-1/+1
|
* Initial timer refactor.Marti Bolivar2011-03-241-1/+1
| | | | | | | | | | | | | | | Basic PWM works. Had some problems in testing that might be due to USART bugs. HardwareTimer has been removed from the build for now; I will re-implement it in terms of the new libmaple API, but consider it deprecated. Let's come up with something better. Servo is implemented in terms of HardwareTimer, so it also has been temporarily removed from the build. pwmWrite() likely got a little bit less inefficient due to indirection, but the PIN_MAPs shrank by a pointer per PinMapping.
* Maple RET6 edition supportMarti Bolivar2011-03-161-0/+7
|
* [WIP] GPIO refactor: seems ok, ready for reviewMarti Bolivar2011-03-111-4/+4
|
* cscope: Find .S instead of .s filesPerry Hung2011-03-021-1/+1
|
* Cleaned out libmaple.h; this had wide-ranging implications.Marti Bolivar2011-02-271-7/+30
| | | | | | | | | | | | | | | | | | | Many of the #defines in libmaple.h were board-specific, not MCU-specific. Most of these were only used by code under libmaple/usb/. These were moved into usb_config.h, and are clearly marked as being terrible hacks. I'm going to treat the USB stack as a black box that we'll deal with later. Further, instead of having a variety of #defines like "How many USARTS do I have?", we decide that based on the density of the chip. This is determined by testing for STM32_MEDIUM_DENSITY or STM32_HIGH_DENSITY defines. libmaple currently doesn't support low-density chips, so that suffices. The Makefile will set these automatically based on the MCU. Other offending #defines are ERROR_LED_PORT and ERROR_LED_PIN; these were made optional, but they're set in the Makefile as a hack to keep things working.
* Increase debug symbol output for gdb.Perry Hung2011-02-271-1/+1
|
* adding missing libraries from maple-ide repoMarti Bolivar2010-12-271-0/+3
|
* Servo library tested and debugged.Marti Bolivar2010-12-081-0/+1
| | | | | Some additional HardwareTimer methods introduced to make this convenient; ancillary libmaple/timers.h changes resulted.
* maple mini runs blinky now.Marti Bolivar2010-10-221-0/+4
| | | | still need usb descriptors to improve, and also nothing else is tested.
* Enable USB auto-reset in a hard fault.Perry Hung2010-09-171-4/+5
| | | | | | | | Redirect thread-mode execution to a fail routine which throbs the LED to indicate a hard fault. Because the fail routine runs in thread mode with interrupts on, USB auto-reset should now work. Test by executing some bogus instruction (e.g. *(volatile int*)0xf34fdaa = 0;) and check that the auto-reset continues to work.
* exposed build-targets.mkMarti Bolivar2010-09-131-1/+1
|
* added 'unused' attribs and reset default targetbnewbold2010-09-021-1/+1
|
* board-specifc linker scriptsbnewbold2010-09-021-4/+4
|
* Various fixes, working with Maplebnewbold2010-09-011-16/+28
|\
| * Portability fixesbnewbold2010-08-311-1/+1
| | | | | | | | Still not working but fixed a lot of merge errors
| * Further wirish portability progressbnewbold2010-08-311-1/+2
| | | | | | | | Sort of ugly changes. Compiles but untested.
| * MCU-specific, not BOARD-specificbnewbold2010-08-311-6/+16
| |
| * inital portability workbnewbold2010-08-251-2/+3
| |
| * MEMORY_TARGET not MAPLE_TARGETbnewbold2010-08-251-10/+10
| |
* | Toolchain improvementsMarti Bolivar2010-08-291-9/+14
|/ | | | | | | | | | Updated Makefile to read the directory where libmaple is from the environment variable LIBMAPLE_PATH, if it exists, defaulting to the current working directory otherwise. Updated reset.py to look around in /dev for the Maple serial port, prompting the user if there appear to be multiple possibilities and complaining if there aren't any.
* makefile: fix install targetPerry Hung2010-07-081-22/+24
| | | | | The makefile 'install' target should upload to whatever the last build target was, regardless of the environment's value of MAPLE_TARGET.
* Fix ram, flash, jtag targetsPerry Hung2010-07-081-16/+16
|
* added helper targets, more verbose, codeblocks fixbnewbold2010-07-071-1/+13
|
* make: Modularize makefiles, add dependency tracking, build-type trackingPerry Hung2010-06-251-208/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Major build system rewrite. New and exciting: 1. Proper dependency tracking. All source files including header files should be properly tracked and recompiled as necessary when they are changed. 2. Build-type tracking. If the target changes from 'ram' to 'flash,' for example, the build system will force a rebuild rather than incorrectly link modules to a different address. 3. New targets: The old 'ram,' 'flash,' and 'jtag' targets have been replaced with the environment variable MAPLE_TARGET, which controls the link address. Users can either export it to their environment, or pass MAPLE_TARGET on the command-line. Once this is set, sketches can be compiled with 'make sketch,' or simply 'make.' Note: the default is MAPLE_TARGET='flash.' The target 'install' now automagically uploads the sketch to the board using the appropriate method. The 'run' target has been renamed to 'debug.' It starts an openocd gdb server. 4. Odds and ends: -Verbose and 'quiet' modes. Set V=1 for verbose compilation, the default is quiet. -Object file sizes and disassembly information is generated and placed in build/$(BOARD).sizes and build/$(BOARD).disas, respectively. -Parallel make with -j should speed things up if you have multiple cores.
* info cleanupbnewbold2010-06-181-5/+2
|
* exuberant ctags targetbnewbold2010-06-091-0/+4
|
* Preliminary wirish USBSerial implementation.Perry Hung2010-06-041-1/+1
| | | | | | -updated examples -removed HardwareUSB -cleaned up a handful of includes
* Moved reset script to support directoryPerry Hung2010-05-281-2/+2
| | | | For kicks.
* libcs3 refactor mergePerry Hung2010-05-281-35/+32
| | | | | | | | | | | | | | | | Removed dependency on libcs3.a because Codesourcery does not provide the source for it. We now link against a modified libcs3-lanchon-stm32.a built from parts in public domain from Lanchon, and a start_c.c from Codesourcery that is licensed under a permissive license. Also removed all of the extra linker cruft from the stm32conf directory. The linker files now live in support/ld The openocd scripts now live in support/openocd The udev rules and copy-to-ide scripts now live in support/scripts The source lives in support/ld/libcs3-lanchon-stm32.tar.gz
* [for AJ] added new HardwareUsb implementation. hack.bnewbold2010-05-271-0/+1
|
* cleaned up commit processbnewbold2010-05-261-2/+2
|
* minor mods to adjust the driver number and the vendor product id's (serial ↵AJM2010-05-211-1/+1
| | | | | | port now 1eaf:0004) and fixed a bug in reset.py, added a no-delay usb serial loop to main.cpp as an example. has no problem at 115200 in minicom!
* Finalized the libmaple changes required by newboot. Added setupUSB() to ↵AJM2010-05-211-2/+7
| | | | | | wirish init this involved some some changes to copy-to-ide, WProgram.h, and the makefile. Separated the reset.py from the wait.py so that the program closes the serial port correctly.
* removed another depricated reference to old usb shitAJM2010-05-201-3/+1
| | | | | removed HardwareUsb usb in example main, as that class hasnt been defined yet also modded the makefile to actually compile main.cpp
* Adjusted the makefile and example mainAJM2010-05-201-1/+1
| | | | for some odd reason the main file in the makefile was set to main.c not main.cpp corrected this as there is no main.c anywhere in this repo. Also removed references to HardwareUsb.h, since those files dont exist yet (the originals were depricated and removed)
* modified the makefile to build the usb related files/removed all uintx_t to ↵AJM2010-05-201-16/+14
| | | | uintx
* added a delay to the resrt slide to allow enough time for graceul closures ↵AJM2010-05-201-0/+2
| | | | of the serial port
* c++ ified all of the usb_core files, added the auto-reset feature to the ↵AJM2010-05-201-3/+15
| | | | virtual com port, got the descriptors in functional although not pretty order that can be fixed using the attribute packing
* removed usb files from the libmaple into the application level core lib.AJM2010-05-201-0/+4
|