Tue Feb 26 17:21:13 2008 UTC ()
Always make ncurses headers and libraries available as <curses.h> and
-lcurses so that GNU configure scripts that check for those ahead of
<ncurses.h> and -lncurses will still use ncurses instead of picking up
a system curses.

This was a regression introduced by my recent ncurses commits.


(jlam)
diff -r1.28 -r1.29 pkgsrc/devel/ncurses/buildlink3.mk
diff -r1.15 -r1.16 pkgsrc/devel/ncurses/builtin.mk

cvs diff -r1.28 -r1.29 pkgsrc/devel/ncurses/buildlink3.mk (expand / switch to unified diff)

--- pkgsrc/devel/ncurses/buildlink3.mk 2008/02/25 04:19:34 1.28
+++ pkgsrc/devel/ncurses/buildlink3.mk 2008/02/26 17:21:13 1.29
@@ -1,39 +1,37 @@ @@ -1,39 +1,37 @@
1# $NetBSD: buildlink3.mk,v 1.28 2008/02/25 04:19:34 jlam Exp $ 1# $NetBSD: buildlink3.mk,v 1.29 2008/02/26 17:21:13 jlam Exp $
2 2
3BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+ 3BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+
4NCURSES_BUILDLINK3_MK:= ${NCURSES_BUILDLINK3_MK}+ 4NCURSES_BUILDLINK3_MK:= ${NCURSES_BUILDLINK3_MK}+
5 5
6.if !empty(BUILDLINK_DEPTH:M+) 6.if !empty(BUILDLINK_DEPTH:M+)
7BUILDLINK_DEPENDS+= ncurses 7BUILDLINK_DEPENDS+= ncurses
8.endif 8.endif
9 9
10BUILDLINK_PACKAGES:= ${BUILDLINK_PACKAGES:Nncurses} 10BUILDLINK_PACKAGES:= ${BUILDLINK_PACKAGES:Nncurses}
11BUILDLINK_PACKAGES+= ncurses 11BUILDLINK_PACKAGES+= ncurses
12BUILDLINK_ORDER:= ${BUILDLINK_ORDER} ${BUILDLINK_DEPTH}ncurses 12BUILDLINK_ORDER:= ${BUILDLINK_ORDER} ${BUILDLINK_DEPTH}ncurses
13 13
14.if !empty(NCURSES_BUILDLINK3_MK:M+) 14.if !empty(NCURSES_BUILDLINK3_MK:M+)
15BUILDLINK_API_DEPENDS.ncurses+= ncurses>=5.3nb1 15BUILDLINK_API_DEPENDS.ncurses+= ncurses>=5.3nb1
16BUILDLINK_ABI_DEPENDS.ncurses+= ncurses>=5.4nb1 16BUILDLINK_ABI_DEPENDS.ncurses+= ncurses>=5.4nb1
17BUILDLINK_PKGSRCDIR.ncurses?= ../../devel/ncurses 17BUILDLINK_PKGSRCDIR.ncurses?= ../../devel/ncurses
18BUILDLINK_LDADD.ncurses?= -lncurses 18BUILDLINK_LDADD.ncurses?= -lncurses
19 19
20# _PKG_USE_CURSES is defined by curses.buildlink3.mk to indicate that 20# Many packages expect the ncurses headers and libraries to be usable as
21# the headers and libraries should be usable as <curses.h> and -lcurses. 21# <curses.h> and -lcurses.
22# 22#
23. if defined(_PKG_USE_CURSES) 
24BUILDLINK_TARGETS+= buildlink-ncurses-curses-h 23BUILDLINK_TARGETS+= buildlink-ncurses-curses-h
25BUILDLINK_TRANSFORM+= l:curses:ncurses 24BUILDLINK_TRANSFORM+= l:curses:ncurses
26. endif 
27 25
28.PHONY: buildlink-ncurses-curses-h 26.PHONY: buildlink-ncurses-curses-h
29buildlink-ncurses-curses-h: 27buildlink-ncurses-curses-h:
30 ${RUN} \ 28 ${RUN} \
31 src=${BUILDLINK_PREFIX.ncurses:Q}"/include/ncurses.h"; \ 29 src=${BUILDLINK_PREFIX.ncurses:Q}"/include/ncurses.h"; \
32 dest=${BUILDLINK_DIR:Q}"/include/curses.h"; \ 30 dest=${BUILDLINK_DIR:Q}"/include/curses.h"; \
33 if ${TEST} ! -f "$$dest" -a -f "$$src"; then \ 31 if ${TEST} ! -f "$$dest" -a -f "$$src"; then \
34 ${ECHO_BUILDLINK_MSG} "Linking curses.h -> ncurses.h."; \ 32 ${ECHO_BUILDLINK_MSG} "Linking curses.h -> ncurses.h."; \
35 ${MKDIR} `${DIRNAME} "$$dest"`; \ 33 ${MKDIR} `${DIRNAME} "$$dest"`; \
36 ${LN} -s "$$src" "$$dest"; \ 34 ${LN} -s "$$src" "$$dest"; \
37 fi 35 fi
38 36
39.endif # NCURSES_BUILDLINK3_MK 37.endif # NCURSES_BUILDLINK3_MK

cvs diff -r1.15 -r1.16 pkgsrc/devel/ncurses/builtin.mk (expand / switch to unified diff)

--- pkgsrc/devel/ncurses/builtin.mk 2008/02/26 17:02:30 1.15
+++ pkgsrc/devel/ncurses/builtin.mk 2008/02/26 17:21:13 1.16
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1# $NetBSD: builtin.mk,v 1.15 2008/02/26 17:02:30 jlam Exp $ 1# $NetBSD: builtin.mk,v 1.16 2008/02/26 17:21:13 jlam Exp $
2 2
3BUILTIN_PKG:= ncurses 3BUILTIN_PKG:= ncurses
4 4
5BUILTIN_FIND_LIBS:= ncurses curses 5BUILTIN_FIND_LIBS:= ncurses curses
6BUILTIN_FIND_FILES_VAR:= H_NCURSES 6BUILTIN_FIND_FILES_VAR:= H_NCURSES
7BUILTIN_FIND_FILES.H_NCURSES= /usr/include/ncurses.h /usr/include/curses.h 7BUILTIN_FIND_FILES.H_NCURSES= /usr/include/ncurses.h /usr/include/curses.h
8BUILTIN_FIND_GREP.H_NCURSES= \#define[ ]*NCURSES_VERSION 8BUILTIN_FIND_GREP.H_NCURSES= \#define[ ]*NCURSES_VERSION
9 9
10.include "../../mk/buildlink3/bsd.builtin.mk" 10.include "../../mk/buildlink3/bsd.builtin.mk"
11 11
12### 12###
13### Determine if there is a built-in implementation of the package and 13### Determine if there is a built-in implementation of the package and
14### set IS_BUILTIN.<pkg> appropriately ("yes" or "no"). 14### set IS_BUILTIN.<pkg> appropriately ("yes" or "no").
@@ -117,27 +117,26 @@ BUILDLINK_TRANSFORM+= l:ncurses:curses @@ -117,27 +117,26 @@ BUILDLINK_TRANSFORM+= l:ncurses:curses
117# 117#
118# On Interix, there is a libncurses.a and a libcurses.so but strangely, 118# On Interix, there is a libncurses.a and a libcurses.so but strangely,
119# no libncurses.so. We want to link against the shared library, so 119# no libncurses.so. We want to link against the shared library, so
120# turn "-lncurses" into "-lcurses". 120# turn "-lncurses" into "-lcurses".
121# 121#
122. if (${OPSYS} == "Interix") && \ 122. if (${OPSYS} == "Interix") && \
123 !empty(BUILTIN_LIB_FOUND.curses:M[yY][eE][sS]) 123 !empty(BUILTIN_LIB_FOUND.curses:M[yY][eE][sS])
124BUILDLINK_LDADD.ncurses= -lcurses 124BUILDLINK_LDADD.ncurses= -lcurses
125BUILDLINK_TRANSFORM+= l:ncurses:curses 125BUILDLINK_TRANSFORM+= l:ncurses:curses
126. endif 126. endif
127BUILDLINK_TARGETS+= buildlink-curses-ncurses-h 127BUILDLINK_TARGETS+= buildlink-curses-ncurses-h
128BUILDLINK_TARGETS+= buildlink-ncurses-extra-includes 128BUILDLINK_TARGETS+= buildlink-ncurses-extra-includes
129. endif 129. endif
130BUILDLINK_TARGETS+= buildlink-ncurses-curses-h 
131 130
132# A full ncurses implementation provides more headers than some curses 131# A full ncurses implementation provides more headers than some curses
133# implementations. Touch empty replacements for those headers so that 132# implementations. Touch empty replacements for those headers so that
134# packages can continue to use the familiar ncurses header names. 133# packages can continue to use the familiar ncurses header names.
135# 134#
136. if !target(buildlink-ncurses-extra-includes) 135. if !target(buildlink-ncurses-extra-includes)
137.PHONY: buildlink-ncurses-extra-includes 136.PHONY: buildlink-ncurses-extra-includes
138buildlink-ncurses-extra-includes: 137buildlink-ncurses-extra-includes:
139 ${RUN} \ 138 ${RUN} \
140 extra_includes="include/term.h"; \ 139 extra_includes="include/term.h"; \
141 for f in $$extra_includes; do \ 140 for f in $$extra_includes; do \
142 src=${BUILDLINK_PREFIX.ncurses:Q}"/$$f"; \ 141 src=${BUILDLINK_PREFIX.ncurses:Q}"/$$f"; \
143 dest=${BUILDLINK_DIR:Q}"/$$f"; \ 142 dest=${BUILDLINK_DIR:Q}"/$$f"; \