def get_ghc_opts(filename = None, add_package_db = True, cabal = None):
    ghc_opts = get_setting_async('ghc_opts')
    if not ghc_opts:
        ghc_opts = []
    if add_package_db:
        package_db = ghci_package_db(cabal = cabal)
        if package_db:
            ghc_opts.append('-package-db {0}'.format(package_db))

    if filename:
        ghc_opts.append('-i {0}'.format(get_source_dir(filename)))

    return ghc_opts
L{_pwdGetByName} returns a tuple of items from the UNIX /etc/passwd
dataset/ETHPy150Open SublimeHaskell/SublimeHaskell/sublime_haskell_common.py/get_ghc_opts--crossover with--dataset/ETHPy150Open twisted/twisted/twisted/conch/test/test_checkers.py/HelperTests.test_pwdGetByName