3
0
Fork 0
forked from mirrors/nixpkgs
nixpkgs/pkgs
Bjørn Forsman 3227c1d215 ncurses: fix includedir setting
${out} in configureFlags isn't expanded, so ncursesw5-config ends up
expanding ${out} at *runtime*. Here is the relevant ncursesw5-config
snippet showing how includedir gets its value at runtime.

  bindir="${exec_prefix}/bin"
  includedir="${out}/include"
  libdir="${exec_prefix}/lib"
  datadir="${prefix}/share"
  mandir="${prefix}/man"

When running in a plain shell you get this:
  $ ncursesw5-config --cflags
  -I/include/ncursesw -I/include

And when run in a nix-build shell for e.g. gpsd:
  $ ncursesw5-config --cflags
  -I/nix/store/HASH-gpsd-3.10/include/ncursesw -I/nix/store/HASH-gpsd-3.10/include

This is clearly wrong.

Q: How come this has gone undetected for years?
A: It seems few packages use ncursesw5-config to get the compiler
flags. For example, our python curses module builds its own compiler
flags.

Fix this by moving the --includedir setting to preConfigure where shell
variables are expanded.
2013-12-10 19:47:52 +01:00
..
applications Merge remote-tracking branch 'origin/master' into stdenv-updates. 2013-12-10 00:25:54 +01:00
build-support
data
desktops
development ncurses: fix includedir setting 2013-12-10 19:47:52 +01:00
games Merge remote-tracking branch 'origin/master' into stdenv-updates. 2013-12-10 00:25:54 +01:00
misc Merge remote-tracking branch 'origin/master' into stdenv-updates. 2013-12-10 00:25:54 +01:00
os-specific Linux 3.12.4 2013-12-09 12:01:37 -05:00
servers Merge remote-tracking branch 'origin/master' into stdenv-updates. 2013-12-10 00:25:54 +01:00
shells
stdenv
test
tools Merge remote-tracking branch 'origin/master' into stdenv-updates. 2013-12-10 00:25:54 +01:00
top-level Merge remote-tracking branch 'origin/master' into stdenv-updates. 2013-12-10 00:25:54 +01:00