mmem: Prevent duplicate init of mmem

This could seriously corrupt data if mmem_init was called again after
someone called mmem_alloc.
[avr] added missing mcu parameter to ASFLAGS in order to enable assembler compilation
Fix too short 6LoWPAN reassembly timeout
[avr] Removed usage of deprecated MCUSR

Since avr-libc 1.8.0 MCUSR is marked as poison as it was replaced by the
correct name MCUCSR.
Thus code still using the old MCUSR name does not compile anymore.

This commit replaces usages of former MCUSR by its new name MCUCSR and
modifies the alias fallback accordingly.
atmega128rfa1: Fix the default build error

Fixing from http://sourceforge.net/p/contiki/mailman/message/32494852/

Signed-off-by: Weichuan Yan <yan.weichuan@gmail.com>
llsec: Renamed ccm to ccm_star & Renamed llsec regression test
core/net/rime/ipolite: stop ctimer and reset queuebuf pointer when canceling old send

Ipolite is used by netflood and route-discovery modules among others. If a route request is yet to be re-broadcasted and a local route discovery is started (interval == 0), the previous queuebuf used is freed but ctimer and queuebuf pointer is left unchanged. This causes corrupt route requests to be sent, invalid routing tables to be formed, memcmp() on NULL pointer on receive, and other undefined behavior.

Signed-off-by: Oskar Nordquist <oskar.nordquist@crlsweden.com>
Adding a scan-build command

scan-build http://clang-analyzer.llvm.org/scan-build.html is a clang
based tool designed to provide static analysis over C code files.
Makefile.include: Assign git description variable once.

By changing RELSTR= into RELSTR:= we force Make to evaluate the Git
version string only during Makefile read, and not on every single build
command execution.

The reduction in file system I/O cut the time to build
examples/er-rest-example on my development machine by a significant
amount, see below.

Core i7 notebook with ext4 file system on an SSD (building for TARGET=mulle):
"RELSTR="  make  19.70s user 1.07s system 82% cpu 25.291 total
"RELSTR:=" make  11.81s user 1.27s system 79% cpu 16.499 total

Signed-off-by: Joakim Gebart <joakim.gebart@eistec.se>
Merge pull request #841 from gebart/build-git-tag-io-reduce

Makefile.include: Reduce I/O load (and build time) by assigning git description variable once.
[cooja-platform] Include eeprom.h to avoid implicit declaration warning
[cooja-platform] Remove unused variable 'shortaddr'

This variable was set but never used in the code
[cooja-platform] Add cast to linkaddr_t to avoid warning
[cooja-platform] Fixes for slip-bridge compatibility

* Added dev/uart1.h header file to cooja platform
* Added slip arch stub
* Suppress examples putchar definition as cooja platform provides its own

Note that the uart1.h file should only be an intermediate solution.
A generic contiki-wide definition for uart handling is required as each
platform defines its own varying set of uart functions.
Button: Move common interface visualization to Button class

The implementation of a simple JPanel with a JButton was only code
duplication accross the several button implementations.
SkyButton: Reduce dependency on SkyMote

Placed call to setButton() in implementation-specific functions
doPressButton() and doReleaseButton() as in ContikiButton.
Button: None of the buttons will saves its state

Saving a buttons state in simulation file is not required as its state
is much too volatile.
Button: Add doPressButton() and doReleaseButton() to Button class

As every Button has a node-specific implementation part, this should be
the minimal interface to the backend node emulator for pressing and
releasing a button.
Buttons: Move implementation of button routines to Button class

The implementation of clickButton(), pressButton(), and releaseButton()
can be shared accross the several node-dependent implementations as
they use the node-dependent doPressButton() doReleaseButton() routines.
Buttons: Added missing @Override annotations