Commit Graph

64 Commits

Author SHA1 Message Date
Karl Palsson bad5580492 [make] Use less shell variables
Use fixed variables for things that can't change, instead of variables
like SRCLIBDIR that was causing a shell call for every single use.

Use less functions in general and less shell expansions.

Use builtin functions like $(realpath blah) instead of $(shell
pwd)/blah  In particular, this was important for me trying to build on
windows with git-shell.  This should help a lot on smaller build
machines, but doesn't make a huge difference on my own.

Remove redundant clean print messages. These also cause more needless
shell expansions.
2013-06-02 18:11:49 -07:00
Gareth McMullin ce3e3dc39b Split sam3x/sam3n support. 2013-06-02 18:01:38 -07:00
Gareth McMullin f0bace7838 sam3x support. 2013-05-10 14:01:16 -07:00
Piotr Esden-Tempski 3e2be1d4a4 Removed examples, they are moved into libopencm3-examples repository. 2013-04-19 19:33:32 -07:00
Alexandru Gagniuc 326c945b55 lm4f: Add lm4f support files copied from lm3s
Create lm4f code infrastructure from the lm3s infrastructure.

As far as the interrupt table is concerned, don't create an irq.yaml. Just
include the LM3S nvic.h. The LM3S vector table seems to be compatible with the
LM4F

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
2012-12-31 01:35:25 -06:00
Ken Sarkies 35c0863a75 Documentation updates 2012-11-12 21:44:52 +10:30
Karl Palsson 8318384cf1 More progress towards L1 support.
Believe gpio is complete, but untested without finishing at least the
RCC defines.

RCC defines are a work in progress
2012-11-07 21:50:27 +00:00
Karl Palsson f1f1aa84f3 Use make flags to help control where the library is installed
Where the library is installed has quite an affect on what -L and -I
flags are used.  If you install into the toolchain, you don't want
to use them at all, but if you install out of tree (/opt/mycm3 for
example) you need to specify the -L and -I flags.

Update the documentation and the example makefiles to support this
2012-11-07 21:50:27 +00:00
Piotr Esden-Tempski 76c7357c00 Fixed header clean target find call for Darwin BSD find too. 2012-10-31 13:45:58 -07:00
Piotr Esden-Tempski 8091f10576 Merge pull request #56 Allow make to build libs/examples in parallel.
Merge remote-tracking branch 'karlp/pr_parallel_makes'
2012-10-31 13:43:44 -07:00
Piotr Esden-Tempski fd3ee124f8 Fixed find call for Darwin BSD find. 2012-10-31 13:29:38 -07:00
Karl Palsson 90cdddd96b Allow make to build libs/examples in parallel.
You cannot issue make inside a for loop if you want to let it run in
parallel.  Performance increases seen:

10:03 < zyp> I tested make all -j8 without your change, it takes 8.7s
10:03 < zyp> so on my cpu, your change gives >2x speedup

My own cpu gives more modest speed increases, of only about 20%.
2012-10-30 10:03:12 +00:00
chrysn a1f4c29872 Merge branch 'efm32'
this adds support for energy micro's efm32 tiny gecko, gecko, leopard gecko and
giant gecko series.

also, the experimental libopencmsis is included in this branch, as it is
required for full operation of the free energymicro standard library
2012-10-29 14:44:37 +01:00
chrysn f594af86c8 fixes for generated header cleanup
* make target phony
* don't complain about missing files
2012-10-23 01:59:41 +02:00
chrysn efce73f815 make `make clean` work again
the irq2nvic_h generates files in a way make doesn't understand, so it
now also provides an option to clean up again
2012-10-23 01:38:27 +02:00
chrysn 2ad04777bf only generate irq headers on demand
as header file generation is not directly controlled by make (which, by
the way, makes the generatedheaders target phony), the script has to
take care of not needlessly generating files itself lest to have make
rebuild everything everytime
2012-10-23 01:31:30 +02:00
chrysn cece71ba2f install *all* efm32 linker scripts
this will install the per-family linker scripts twice (doesn't hurt,
gets overwritten), but more importantly intalls the per-chip scripts
too.
2012-10-19 16:13:34 +02:00
chrysn e11edaff11 build all efm32 families 2012-10-19 14:53:06 +02:00
chrysn 62345af9ee install opencmsis 2012-10-19 13:54:42 +02:00
chrysn d526dd3268 rename tinygecko->efm32tg everywhere 2012-10-19 00:59:49 +02:00
chrysn 47c69695ce Merge branch 'generalizations' into efm32
Conflicts:
	Makefile
2012-10-18 18:43:44 +02:00
chrysn c69916ffb6 integrate irq2nvic_h script in buildprocess 2012-10-18 17:58:12 +02:00
Felix Ruess b7ebe6e705 fix clean target for example makefiles if the compiler is not in PATH 2012-10-16 14:09:42 -07:00
Ken Sarkies ff83a1ae1c Setup to document entire project using doxygen.
New doc directory with config files and generated html, LaTeX/pdf.
Makefile provided for autogeneration and explanatory README.

The project structure is hostile to doxygen, which can't cope with functions
of the same name. Doxygen is run for each family separately, and separately
for LaTeX generation. Customized layout files sort of "integrate" HTML, and
separate pdfs are generated for each family. Not ideal but seems the best
solution until doxygen changes, if at all.
2012-09-15 12:51:46 +09:30
chrysn 0508f30d2d Merge branch 'master' into efm32
Conflicts:
	Doxyfile
	Makefile
2012-09-13 22:32:28 +02:00
Piotr Esden-Tempski 3441bba1c4 Changed local build target for library and linker files.
- The library files are now being built into the lib subdirectory of the
  source.
- The linker files for each library are being copied into the lib source
  subdirectory.

Motivation: The relative locations of files in the source directory after make
are now the same as after make install now. This makes it easier to
reuse examples with their makefiles outside of the libopencm3
sourcecode directory.
2012-08-13 15:19:57 -07:00
Michael Ossmann 14026fc31f make install now installs lpc43xx and other non-stm32 stuff 2012-06-06 23:48:30 -06:00
Michael Ossmann 50999194d2 added lpc43xx to target list 2012-05-22 14:23:57 -06:00
chrysn 09fea0bc1b Merge branch 'master' into efm32
Conflicts:
	Makefile
2012-04-19 17:28:55 +02:00
Taylor Vesely f7bf15343d Produced build system for Blueboard-LPC1768-H miniblink. 2012-03-27 08:55:19 -06:00
chrysn 563586c072 Merge branch 'master' into efm32 2012-03-02 23:59:52 +01:00
Piotr Esden-Tempski 43561de329 License change of the library to LGPL, version 3 or later.
Agreed to by all the significant contributors to the library.
2012-03-02 14:44:49 -08:00
chrysn 2275ed7b0c overhauled documentation
includes minor refactoring in example code and modification of how the
generic and the tinygecko specific vector.h go together (bringing it in
line with stm32/f1's memorymap.h)
2012-02-26 03:42:25 +01:00
Uwe Hermann 6c278b19b4 Makefile: Add 'doxy' target for doxygen docs.
A top-level 'make clean' will remove the whole doxygen/ output directory.
2011-11-11 21:27:29 +01:00
Uwe Hermann 42e531c7c4 Makefile: Fix 'install' target.
Thanks to CheBuzz on IRC for pointing this out.
2011-11-03 20:45:04 +01:00
Stephen Caudle 5a89d44591 Add initial support for STM32F4 2011-10-31 00:41:19 -04:00
Stephen Caudle 1dc4645732 Update makefiles to reflect stm32 lib folder name changes 2011-10-30 17:42:49 -04:00
Uwe Hermann 788f3870c4 Merge remote-tracking branch 'fnoble/stm32f2' 2011-10-29 22:19:12 +02:00
Uwe Hermann 17d80aa5a4 Fix whitespace. 2011-10-29 22:14:33 +02:00
Gareth McMullin b05a5dcf2a Fixed some F105/F107 USB issues. Added user callback on SOF.
Made examples depend on lib.
2011-10-29 21:30:26 +13:00
Fergus Noble 8da4496799 Adding stm32f2 target in top level Makefile and renaming f1 target. 2011-10-12 22:13:02 -04:00
Piotr Esden-Tempski 03a4a18ed6 Switched all makefiles to arm-none-eabi default. 2011-10-04 13:08:35 -07:00
Piotr Esden-Tempski 5d97653163 Added black magic probe flashing support to the example code makefile. 2011-10-02 01:25:33 -07:00
Gareth McMullin 7faea389e8 Added dependency generation. Abort loops on error. 2011-03-14 16:45:17 +13:00
Gareth McMullin 95286a22f0 More build improvements and fixed broken examples. 2011-03-13 14:50:53 +13:00
Gareth McMullin 08990e5243 Simplified build system for adding new examples. 2011-03-13 13:58:19 +13:00
Gareth McMullin 769a932f3e Added initial support for the LuminaryMicro LM3S family. 2011-02-04 22:47:51 +13:00
Uwe Hermann 8f251e8a9d Some more file/path restructuring.
All #includes now explicitly use the "<libopencm3/stm32/rcc.h>" format.
If you want to get rid of the "libopencm3" prefix in your local project you
can add a respective -I entry in your Makefile (not recommended though).

All .ld files and .a libs are installed in $(TOOLCHAIN_DIR)/lib
directly (as before), but are now renamed to avoid potential
conflicts now or in the future. Examples:

  libopencm3_lpc13xx.a
  libopencm3_lpc13xx.ld
  libopencm3_stm32.a
  libopencm3_stm32.ld
2010-12-31 18:18:39 +01:00
Uwe Hermann 8c946de4d4 Some more LD paths fixes. 2010-12-30 14:12:32 +01:00
Uwe Hermann d37a786c63 Adapt 'make install' to new structure. 2010-12-30 13:32:52 +01:00