[BACK]Return to buildlink3.mk CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / devel / zlib

Annotation of pkgsrc/devel/zlib/buildlink3.mk, Revision 1.10

1.10    ! jlam        1: # $NetBSD: buildlink3.mk,v 1.9 2004/02/05 06:58:03 jlam Exp $
1.1       jlam        2:
                      3: BUILDLINK_DEPTH:=      ${BUILDLINK_DEPTH}+
                      4: ZLIB_BUILDLINK3_MK:=   ${ZLIB_BUILDLINK3_MK}+
                      5:
1.3       jlam        6: .include "../../mk/bsd.prefs.mk"
                      7:
1.2       jlam        8: .if !empty(ZLIB_BUILDLINK3_MK:M+)
1.3       jlam        9: BUILDLINK_PACKAGES+=           zlib
1.6       jlam       10: BUILDLINK_DEPENDS.zlib+=       zlib>=1.1.4nb1
1.1       jlam       11: BUILDLINK_PKGSRCDIR.zlib?=     ../../devel/zlib
                     12: .endif # ZLIB_BUILDLINK3_MK
                     13:
                     14: BUILDLINK_CHECK_BUILTIN.zlib?= NO
                     15:
1.5       jlam       16: _ZLIB_H=       /usr/include/zlib.h
                     17:
1.1       jlam       18: .if !defined(BUILDLINK_IS_BUILTIN.zlib)
                     19: BUILDLINK_IS_BUILTIN.zlib=     NO
1.5       jlam       20: .  if exists(${_ZLIB_H})
1.1       jlam       21: BUILDLINK_IS_BUILTIN.zlib=     YES
                     22: .  endif
                     23: .endif
                     24:
1.10    ! jlam       25: .if defined(PREFER_PKGSRC)
        !            26: .  if empty(PREFER_PKGSRC) || !empty(PREFER_PKGSRC:M[yY][eE][sS]) || \
        !            27:       !empty(PREFER_PKGSRC:Mzlib)
1.9       jlam       28: BUILDLINK_USE_BUILTIN.zlib=    NO
                     29: .  endif
                     30: .endif
                     31:
1.3       jlam       32: .if defined(USE_ZLIB)
                     33: BUILDLINK_USE_BUILTIN.zlib=    NO
                     34: .endif
                     35:
1.1       jlam       36: .if !empty(BUILDLINK_CHECK_BUILTIN.zlib:M[yY][eE][sS])
1.3       jlam       37: BUILDLINK_USE_BUILTIN.zlib=    YES
1.1       jlam       38: .endif
                     39:
1.3       jlam       40: .if !defined(BUILDLINK_USE_BUILTIN.zlib)
1.1       jlam       41: .  if !empty(BUILDLINK_IS_BUILTIN.zlib:M[nN][oO])
1.3       jlam       42: BUILDLINK_USE_BUILTIN.zlib=    NO
1.1       jlam       43: .  else
1.3       jlam       44: BUILDLINK_USE_BUILTIN.zlib=    YES
1.1       jlam       45: #
1.5       jlam       46: # Create an appropriate name for the built-in package distributed
                     47: # with the system.  This package name can be used to check against
                     48: # BUILDLINK_DEPENDS.<pkg> to see if we need to install the pkgsrc
                     49: # version or if the built-in one is sufficient.
                     50: #
                     51: _ZLIB_VERSION!=                                                                \
                     52:        ${AWK} '/\#define[      ]*ZLIB_VERSION/ {                       \
                     53:                        vers = $$3;                                     \
                     54:                        gsub("\"", "", vers);                           \
                     55:                        print vers;                                     \
                     56:                }                                                       \
                     57:        ' ${_ZLIB_H}
                     58: _ZLIB_PKG=     zlib-${_ZLIB_VERSION}
                     59: #
                     60: # If the built-in zlib is 1.1.4, then check whether it has the security
                     61: # fix for CAN-2003-0107, which was a buffer overflow in the gzprintf
                     62: # function.  If it does, then treat it as the equivalent of zlib-1.1.4nb1.
                     63: #
                     64: _HAVE_CAN_2003_0107_FIX=       NetBSD-1.3[I-Z]*-* NetBSD-1.[456]*-*
                     65: _HAVE_CAN_2003_0107_FIX+=      NetBSD-[2-9]*-* NetBSD-1[0-9]*-*
1.1       jlam       66: #
1.5       jlam       67: # XXX These patterns for {Free,Open}BSD are too permissive, but I'm not
                     68: # XXX sure which versions of those OSes provide secure versions of
                     69: # XXX zlib-1.1.4.
                     70: #
                     71: _HAVE_CAN_2003_0107_FIX+=      FreeBSD-*-* OpenBSD-*-*
                     72: .    if ${_ZLIB_VERSION} == "1.1.4"
                     73: .      for _pattern_ in ${_HAVE_CAN_2003_0107_FIX}
                     74: .        if !empty(MACHINE_PLATFORM:M${_pattern_})
                     75: _ZLIB_PKG=     zlib-1.1.4nb1
                     76: .        endif
                     77: .      endfor
                     78: .    endif
                     79:
1.6       jlam       80: BUILDLINK_USE_BUILTIN.zlib?=   YES
                     81: .    for _depend_ in ${BUILDLINK_DEPENDS.zlib}
                     82: .      if !empty(BUILDLINK_USE_BUILTIN.zlib:M[yY][eE][sS])
1.5       jlam       83: BUILDLINK_USE_BUILTIN.zlib!=   \
1.6       jlam       84:        if ${PKG_ADMIN} pmatch '${_depend_}' ${_ZLIB_PKG}; then         \
1.5       jlam       85:                ${ECHO} "YES";                                          \
                     86:        else                                                            \
                     87:                ${ECHO} "NO";                                           \
                     88:        fi
1.6       jlam       89: .      endif
                     90: .    endfor
1.1       jlam       91: .  endif
1.3       jlam       92: MAKEFLAGS+=    BUILDLINK_USE_BUILTIN.zlib="${BUILDLINK_USE_BUILTIN.zlib}"
1.1       jlam       93: .endif
                     94:
1.3       jlam       95: .if !empty(BUILDLINK_USE_BUILTIN.zlib:M[nN][oO])
1.5       jlam       96: #
                     97: # If we depend on the package, depend on the latest version with a library
                     98: # major number bump.
                     99: #
1.8       grant     100: BUILDLINK_DEPENDS.zlib+=       zlib>=1.2.1
1.2       jlam      101: .  if !empty(BUILDLINK_DEPTH:M+)
1.1       jlam      102: BUILDLINK_DEPENDS+=    zlib
                    103: .  endif
                    104: .endif
                    105:
1.4       jlam      106: BUILDLINK_DEPTH:=      ${BUILDLINK_DEPTH:S/+$//}

CVSweb <webmaster@jp.NetBSD.org>