# 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 # # This is free and unencumbered software released into the public domain. # See the file COPYING for more details, or visit . import sys, re # /out/// NR_LEVELS = 4 objdir = sys.argv[1] # stem = /out///target[/] stem = objdir[objdir.rfind('/out'):] # stem = [/] 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)