1234567891011121314151617181920212223242526272829 |
- # srcdir.py
- #
- # Helper script to locate the relative source folder for a given object folder.
- # For example:
- # objdir = /path/to/out/stm32f105/prod/floppy/usb
- # srcdir = ../../../../../src/usb
- #
- # Written & released by Keir Fraser <keir.xen@gmail.com>
- #
- # This is free and unencumbered software released into the public domain.
- # See the file COPYING for more details, or visit <http://unlicense.org>.
- import sys, re
- # /out/<mcu>/<level>/<target>
- NR_LEVELS = 4
- objdir = sys.argv[1]
- # stem = /out/<mcu>/<level>/target[/<rest_of_path>]
- stem = objdir[objdir.rfind('/out'):]
- # stem = [/<rest_of_path>]
- m = re.match('/[^/]*'*NR_LEVELS+'(/.*)?', stem)
- stem = '' if m.group(1) is None else m.group(1)
- # srcdir = path to sources, relative to objdir
- srcdir = '../'*(NR_LEVELS+stem.count('/')) + 'src' + stem
- print(srcdir)
|