The current code does this: if [ -f /usr/include/ncursesw/curses.h ]; then echo '-I/usr/include/ncursesw -DCURSES_LOC="<ncursesw/curses.h>"' elif [ -f /usr/include/ncurses/ncurses.h ]; then echo '-I/usr/include/ncurses -DCURSES_LOC="<ncurses.h>"' elif [ -f /usr/include/ncurses/curses.h ]; then echo '-I/usr/include/ncurses -DCURSES_LOC="<ncurses/curses.h>"' [...] This is merely inconsistent: - adding the full path to the directory in the -I directive, - especially since that path is already a sub-path of the system include path, - and then repeating the sub-path in the #include directive. Rationalise each include directive: - only use the filename in the #include directive, - keep the -I directives: they are always searched for before the system include path; this ensures the correct header is used. Using the -I directives and the filename-only in #include is more in line with how pkg-config behaves, eg.: $ pkg-config --cflags ncursesw -I/usr/include/ncursesw This paves the way for using pkg-config for CFLAGS, too, now we use it to find the libraries.
Unified · Split
| @@ -22,12 +22,12 @@ ldflags() · 21 unmodified lines | |||
| 22 | ccflags() | 22 | ccflags() |
| 23 | { | 23 | { |
| 24 | if [ -f /usr/include/ncursesw/curses.h ]; then | 24 | if [ -f /usr/include/ncursesw/curses.h ]; then |
| 25 | echo '-I/usr/include/ncursesw -DCURSES_LOC="<ncursesw/curses.h>"' | 25 | echo '-I/usr/include/ncursesw -DCURSES_LOC="<curses.h>"' |
| 26 | echo ' -DNCURSES_WIDECHAR=1' | 26 | echo ' -DNCURSES_WIDECHAR=1' |
| 27 | elif [ -f /usr/include/ncurses/ncurses.h ]; then | 27 | elif [ -f /usr/include/ncurses/ncurses.h ]; then |
| 28 | echo '-I/usr/include/ncurses -DCURSES_LOC="<ncurses.h>"' | 28 | echo '-I/usr/include/ncurses -DCURSES_LOC="<ncurses.h>"' |
| 29 | elif [ -f /usr/include/ncurses/curses.h ]; then | 29 | elif [ -f /usr/include/ncurses/curses.h ]; then |
| 30 | echo '-I/usr/include/ncurses -DCURSES_LOC="<ncurses/curses.h>"' | 30 | echo '-I/usr/include/ncurses -DCURSES_LOC="<curses.h>"' |
| 31 | elif [ -f /usr/include/ncurses.h ]; then | 31 | elif [ -f /usr/include/ncurses.h ]; then |
| 32 | echo '-DCURSES_LOC="<ncurses.h>"' | 32 | echo '-DCURSES_LOC="<ncurses.h>"' |
| 33 | else | 33 | else |