code: def _fix_paths(self, data):
          
          data['include_paths'] = [join('$PROJ_DIR$', path) for path in data['include_paths']]
  
          if data['linker_file']:
              data['linker_file'] = join('$PROJ_DIR$', data['linker_file'])
  
          data['groups'] = {}
          for attribute in SOURCE_KEYS:
              for k, v in data[attribute].items():
                  if k not in data['groups']:
                      data['groups'][k] = []
                  data['groups'][k].extend([join('$PROJ_DIR$', file) for file in v])
          for k,v in data['include_files'].items():
              if k not in data['groups']:
                  data['groups'][k] = []
              data['groups'][k].extend([join('$PROJ_DIR$', file) for file in v])
  
          # sort groups
          data['groups'] = OrderedDict(sorted(data['groups'].items(), key=lambda t: t[0]))
docs: All paths needs to be fixed - add PROJ_DIR prefix + normalize