freebsd-dev/lib/ncurses/menu/Makefile

140 lines
2.9 KiB
Makefile
Raw Normal View History

# $FreeBSD$
.include "${.CURDIR}/../config.mk"
SRCDIR= ${NCURSES_DIR}/menu
LIB= menu${LIB_SUFFIX}
.PATH: ${SRCDIR}
SRCS= \
ncurses_def.h \
m_attribs.c \
m_cursor.c \
m_driver.c \
m_format.c \
m_global.c \
m_hook.c \
m_item_cur.c \
m_item_nam.c \
m_item_new.c \
m_item_opt.c \
m_item_top.c \
m_item_use.c \
m_item_val.c \
m_item_vis.c \
m_items.c \
m_new.c \
m_opts.c \
m_pad.c \
m_pattern.c \
m_post.c \
m_req_name.c \
m_scale.c \
m_spacing.c \
m_sub.c \
m_userptr.c \
m_win.c
CLEANFILES= ncurses_def.h
CFLAGS+= -I${SRCDIR}
DPADD= ${LIBNCURSES${LIB_SUFFIX:U}}
LDADD= -lncurses${LIB_SUFFIX}
- 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
2007-05-25 02:27:46 +00:00
.if defined(ENABLE_WIDEC)
INCS= menu.h eti.h
- 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
2007-05-25 02:27:46 +00:00
.endif
2000-10-11 08:14:44 +00:00
.PATH: ${NCURSES_DIR}/man
MAN= \
menu.3 \
menu_attributes.3 \
menu_cursor.3 \
menu_driver.3 \
menu_format.3 \
menu_hook.3 \
menu_items.3 \
menu_mark.3 \
menu_new.3 \
menu_opts.3 \
menu_pattern.3 \
menu_post.3 \
menu_requestname.3 \
menu_spacing.3 \
menu_userptr.3 \
menu_win.3 \
mitem_current.3 \
mitem_name.3 \
mitem_new.3 \
mitem_opts.3 \
mitem_userptr.3 \
mitem_value.3 \
mitem_visible.3
CLEANFILES+= ${MAN:M*.3}
MLINKS= menu_attributes.3 menu_back.3 \
menu_attributes.3 menu_fore.3 \
menu_attributes.3 menu_grey.3 \
menu_attributes.3 menu_pad.3 \
menu_attributes.3 set_menu_back.3 \
menu_attributes.3 set_menu_fore.3 \
menu_attributes.3 set_menu_grey.3 \
menu_attributes.3 set_menu_pad.3 \
menu_cursor.3 pos_menu_cursor.3 \
menu_format.3 set_menu_format.3 \
menu_hook.3 item_init.3 \
menu_hook.3 item_term.3 \
menu_hook.3 menu_init.3 \
menu_hook.3 menu_term.3 \
menu_hook.3 set_item_init.3 \
menu_hook.3 set_item_term.3 \
menu_hook.3 set_menu_init.3 \
menu_hook.3 set_menu_term.3 \
menu_items.3 item_count.3 \
menu_items.3 set_menu_items.3 \
menu_mark.3 set_menu_mark.3 \
menu_new.3 free_menu.3 \
menu_new.3 new_menu.3 \
menu_opts.3 menu_opts_off.3 \
menu_opts.3 menu_opts_on.3 \
menu_opts.3 set_menu_opts.3 \
menu_pattern.3 set_menu_pattern.3 \
menu_post.3 post_menu.3 \
menu_post.3 unpost_menu.3 \
menu_requestname.3 menu_request_by_name.3 \
menu_requestname.3 menu_request_name.3 \
menu_spacing.3 set_menu_spacing.3 \
menu_userptr.3 set_menu_userptr.3 \
menu_win.3 menu_sub.3 \
menu_win.3 scale_menu.3 \
menu_win.3 set_menu_sub.3 \
menu_win.3 set_menu_win.3 \
mitem_current.3 current_item.3 \
mitem_current.3 item_index.3 \
mitem_current.3 set_current_item.3 \
mitem_current.3 set_top_row.3 \
mitem_current.3 top_row.3 \
mitem_name.3 item_description.3 \
mitem_name.3 item_name.3 \
mitem_new.3 free_item.3 \
mitem_new.3 new_item.3 \
mitem_opts.3 item_opts.3 \
mitem_opts.3 item_opts_off.3 \
mitem_opts.3 item_opts_on.3 \
mitem_opts.3 set_item_opts.3 \
mitem_userptr.3 item_userptr.3 \
mitem_userptr.3 set_item_userptr.3 \
mitem_value.3 item_value.3 \
mitem_value.3 set_item_value.3 \
mitem_visible.3 item_visible.3
.include <bsd.lib.mk>
# Keep the .SUFFIXES line after the include of bsd.lib.mk
.SUFFIXES: .3 .3x
.3x.3:
cat ${.IMPSRC} > ${.TARGET}