| | 106 | {-| |
| | 107 | Combine @%*ENV\<PERL6LIB\>@, -I, 'Pugs.Config.config' values and \".\" into the |
| | 108 | @\@*INC@ list for 'Main.printConfigInfo'. If @%*ENV\<PERL6LIB\>@ is not set, |
| | 109 | @%*ENV\<PERLLIB\>@ is used instead. |
| | 110 | -} |
| | 111 | getLibs :: IO [String] |
| | 112 | getLibs = do |
| | 113 | args <- getArgs |
| | 114 | p6lib <- (getEnv "PERL6LIB") >>= (return . (fromMaybe "")) |
| | 115 | plib <- (getEnv "PERLLIB") >>= (return . (fromMaybe "")) |
| | 116 | let lib = if (p6lib == "") then plib else p6lib |
| | 117 | return $ filter (not . null) (libs lib $ canonicalArgs args) |
| | 118 | where |
| | 119 | -- broken, need real parser |
| | 120 | inclibs ("-I":dir:rest) = [dir] ++ inclibs(rest) |
| | 121 | inclibs (_:rest) = inclibs(rest) |
| | 122 | inclibs ([]) = [] |
| | 123 | libs p6lib args = (inclibs args) |
| | 124 | ++ (split (getConfig "path_sep") p6lib) |
| | 125 | ++ [ getConfig "archlib" |
| | 126 | , getConfig "privlib" |
| | 127 | , getConfig "sitearch" |
| | 128 | , getConfig "sitelib" |
| | 129 | ] |
| | 130 | ++ [ "." ] |
| | 131 | |