ghc-pkg, package database path containing a trailing slash, and ${pkgroot}

2016-06-15 Thread Nicolas Dudebout
When passing a package database to ghc-pkg via GHC_PACKAGE_PATH or
--package-db, ${pkgroot} does not get computed properly if the input path
contains a trailing slash.

Default behavior:
$ ghc-pkg describe base | grep pkgroot
pkgroot: "/usr/lib/ghc-7.10.2"

Correct behavior (no trailing slash):
$ ghc-pkg --package-db /usr/lib/ghc-7.10.2/package.conf.d describe base
| grep pkgroot
pkgroot: "/usr/lib/ghc-7.10.2"

$ GHC_PACKAGE_PATH=/usr/lib/ghc-7.10.2/package.conf.d ghc-pkg describe
base | grep pkgroot
pkgroot: "/usr/lib/ghc-7.10.2"

Incorrect behavior (with trailing slash):
$ ghc-pkg --package-db /usr/lib/ghc-7.10.2/package.conf.d/ describe
base | grep pkgroot
pkgroot: "/usr/lib/ghc-7.10.2/package.conf.d"

$ GHC_PACKAGE_PATH=/usr/lib/ghc-7.10.2/package.conf.d/ ghc-pkg describe
base | grep pkgroot
pkgroot: "/usr/lib/ghc-7.10.2/package.conf.d"

When this bug happens, ghc-pkg check complains about missing files for
packages using ${pkgroot}.

This bug happens because ${pkgroot} is computed using takeDirectory. It
should instead use (takeDirectory . dropTrailingPathSeparator)
___
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs


Re: ghc-pkg, package database path containing a trailing slash, and ${pkgroot}

2016-06-15 Thread Ryan Scott
Good catch! This seems like a straightforward bug. Do you mind
creating a ticket for this issue on GHC Trac at
https://ghc.haskell.org/trac/ghc/newticket ?

Best,
Ryan S.
___
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs


Re: ghc-pkg, package database path containing a trailing slash, and ${pkgroot}

2016-06-16 Thread Ben Gamari
Nicolas Dudebout  writes:

> When passing a package database to ghc-pkg via GHC_PACKAGE_PATH or
> --package-db, ${pkgroot} does not get computed properly if the input path
> contains a trailing slash.
>
Thanks for the report, Nicolas. I've opened #12196 to track this and
proposed a fix in D2336.

Cheers,

- Ben



signature.asc
Description: PGP signature
___
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs