[riot-commits] [RIOT-OS/RIOT] 3f59ee: Use subfolders in bin dir

Oleg Hahm oleg at hobbykeller.org
Wed Apr 9 00:48:04 CEST 2014


  Branch: refs/heads/master
  Home:   https://github.com/RIOT-OS/RIOT
  Commit: 3f59eefbaf9f5d0b42c46592c6aa72aa3a0e4e32
      https://github.com/RIOT-OS/RIOT/commit/3f59eefbaf9f5d0b42c46592c6aa72aa3a0e4e32
  Author: René Kijewski <rene.kijewski at fu-berlin.de>
  Date:   2014-04-09 (Wed, 09 Apr 2014)

  Changed paths:
    M Makefile.base
    M Makefile.modules
    M boards/chronos/Makefile.include
    M boards/mbed_lpc1768/Makefile.include
    M boards/msb-430-common/Makefile.include
    M boards/msba2-common/Makefile.include
    M boards/native/Makefile.include
    M boards/redbee-econotag/Makefile.include
    M boards/telosb/Makefile.include
    M boards/wsn430-common/Makefile.include
    M cpu/arm_common/Makefile.include
    M cpu/lpc1768/Makefile.include
    M cpu/lpc_common/Makefile.include
    M cpu/mc1322x/Makefile.include

  Log Message:
  -----------
  Use subfolders in bin dir

Creating all object files in one directory is bound to produce name
clashes. RIOT developers may take care to use unique file names, but
external packages surely don't.

With this change all the objects of a module (e.g. `shell`) will be
created in `bin/$(BOARD)/$(MODULE)`.

I compared the final linker command before and after the change. The
`.o` files (e.g. `startup.o`, `syscall.o` ...) are included in the same
order. Neglecting the changed path name where the `.o` files reside, the
linker command stays exactly the same.

A major problem could be third party boards, because the location of the
`startup.o` needs to the specified now in
`boards/$(BOARD)/Makefile.include`, e.g.
```Makefile
export UNDEF += $(BINDIR)msp430_common/startup.o
```


  Commit: d5828e37c5eee6faceeda8e764fcf6baa6ee5a4b
      https://github.com/RIOT-OS/RIOT/commit/d5828e37c5eee6faceeda8e764fcf6baa6ee5a4b
  Author: Oleg Hahm <oleg at hobbykeller.org>
  Date:   2014-04-09 (Wed, 09 Apr 2014)

  Changed paths:
    M Makefile.base
    M Makefile.modules
    M boards/chronos/Makefile.include
    M boards/mbed_lpc1768/Makefile.include
    M boards/msb-430-common/Makefile.include
    M boards/msba2-common/Makefile.include
    M boards/native/Makefile.include
    M boards/redbee-econotag/Makefile.include
    M boards/telosb/Makefile.include
    M boards/wsn430-common/Makefile.include
    M cpu/arm_common/Makefile.include
    M cpu/lpc1768/Makefile.include
    M cpu/lpc_common/Makefile.include
    M cpu/mc1322x/Makefile.include

  Log Message:
  -----------
  Merge pull request #710 from Kijewski/subdir-per-module

Make: Use subfolders in bin dir


Compare: https://github.com/RIOT-OS/RIOT/compare/8a86f493b46a...d5828e37c5ee


More information about the commits mailing list