xref: /petsc/config/BuildSystem/pythonpath.py (revision 5b6bfdb9644f185dbf5e5a09b808ec241507e1e7)
1#!/usr/bin/env python
2from __future__ import print_function
3from __future__ import absolute_import
4import user
5import project
6import RDict
7
8import os
9import sys
10
11def getPythonPath():
12  if 'PYTHONPATH' in os.environ:
13    PYTHONPATH = filter(lambda p: len(p), os.environ['PYTHONPATH'].split(os.path.pathsep))
14  else:
15    PYTHONPATH = []
16  argsDB   = RDict.RDict(parentDirectory = os.path.abspath(os.path.dirname(sys.modules['RDict'].__file__)))
17  projects = argsDB['installedprojects']
18  for p in projects:
19    try:
20      root = p.getPythonPath()
21      for r in root:
22        if not r in PYTHONPATH:
23          PYTHONPATH.append(r)
24    except: pass
25  return ':'.join(PYTHONPATH)
26
27if __name__ ==  '__main__':
28  if len(sys.argv) > 1: sys.exit('Usage: pythonpath.py')
29  print(getPythonPath())
30
31