- When I introduce wide character enabled ncurses into base, all headers

are installed twice (once in non-widec version, onec in widec version).
  Headers with widec enabled are compatible with non-widec version
  for libraries. However, if you do a repeat build/install, the curses.h
  is always overwritten. The reason is that headers and statics libraries
  are installed with -S option to preserve their mtime if no actual changes,
  which saves time when doing incremental builds. The curses.h is installed
  by non-widec ncurses first, then by widec ncurses. So next time, it happens
  again. You see something like this:

  # pwd
  /usr/src/lib/ncurses
  # make -s installincludes INSTALL="install -v"
  ===> ncurses (installincludes)
  install: curses.h -> /usr/include/curses.h
  ===> ncursesw (installincludes)
  install: curses.h -> /usr/include/curses.h
  # make -s installincludes INSTALL="install -v"
  ===> ncurses (installincludes)
  install: curses.h -> /usr/include/curses.h
  ===> ncursesw (installincludes)
  install: curses.h -> /usr/include/curses.h

  The solution is to disable installing headers in non-widec version. Now
  you see this:

  # pwd
  /usr/src/lib/ncurses
  # make -s installincludes INSTALL="install -v"
  ===> ncurses (installincludes)
  ===> ncursesw (installincludes)
  # make -s installincludes INSTALL="install -v"
  ===> ncurses (installincludes)
  ===> ncursesw (installincludes)

  For form/panel/menu libraries, the headers are the same for both version.
  To be consistent with ncurses, I also disable the installation in non-widec
  version.

Reported by:	des
Reviewed by:	ru
Thanks to:	ru
Approved by:	delphij (mentor)
MFC after:	2 weeks
This commit is contained in:
Rong-En Fan 2007-05-25 02:27:46 +00:00
parent fdd54a53de
commit 4409495bc8
4 changed files with 9 additions and 0 deletions

View File

@ -57,7 +57,9 @@ CFLAGS+= -I${NCURSES_DIR}/menu
DPADD= ${LIBNCURSES${LIB_SUFFIX:U}} DPADD= ${LIBNCURSES${LIB_SUFFIX:U}}
LDADD= -lncurses${LIB_SUFFIX} LDADD= -lncurses${LIB_SUFFIX}
.if defined(ENABLE_WIDEC)
INCS= form.h INCS= form.h
.endif
.PATH: ${NCURSES_DIR}/man .PATH: ${NCURSES_DIR}/man
MAN= \ MAN= \

View File

@ -43,7 +43,9 @@ CFLAGS+= -I${SRCDIR}
DPADD= ${LIBNCURSES${LIB_SUFFIX:U}} DPADD= ${LIBNCURSES${LIB_SUFFIX:U}}
LDADD= -lncurses${LIB_SUFFIX} LDADD= -lncurses${LIB_SUFFIX}
.if defined(ENABLE_WIDEC)
INCS= menu.h eti.h INCS= menu.h eti.h
.endif
.PATH: ${NCURSES_DIR}/man .PATH: ${NCURSES_DIR}/man
MAN= \ MAN= \

View File

@ -274,8 +274,11 @@ CFLAGS+= -DFREEBSD_NATIVE -DTERMIOS
# Installed # Installed
HEADERS= curses.h term.h termcap.h unctrl.h HEADERS= curses.h term.h termcap.h unctrl.h
SRCHDRS= ncurses_dll.h SRCHDRS= ncurses_dll.h
.if defined(ENABLE_WIDEC)
INCS= ${HEADERS} ${SRCHDRS} INCS= ${HEADERS} ${SRCHDRS}
INCSLINKS= curses.h ${INCLUDEDIR}/ncurses.h INCSLINKS= curses.h ${INCLUDEDIR}/ncurses.h
.endif
.if !defined(NO_INSTALLLIB) .if !defined(NO_INSTALLLIB)
SYMLINKS+= libncurses${LIB_SUFFIX}.a ${LIBDIR}/libcurses${LIB_SUFFIX}.a SYMLINKS+= libncurses${LIB_SUFFIX}.a ${LIBDIR}/libcurses${LIB_SUFFIX}.a

View File

@ -32,7 +32,9 @@ CFLAGS+= -I${SRCDIR}
DPADD= ${LIBNCURSES${LIB_SUFFIX:U}} DPADD= ${LIBNCURSES${LIB_SUFFIX:U}}
LDADD= -lncurses${LIB_SUFFIX} LDADD= -lncurses${LIB_SUFFIX}
.if defined(ENABLE_WIDEC)
INCS= panel.h INCS= panel.h
.endif
# generate MAN # generate MAN
.PATH: ${NCURSES_DIR}/man .PATH: ${NCURSES_DIR}/man