Annotation of pkgsrc/devel/nss/Makefile, Revision 1.196
1.196 ! ryoon 1: # $NetBSD: Makefile,v 1.195 2020/11/18 14:24:00 ryoon Exp $
1.1 jschauma 2:
1.78 ryoon 3: DISTNAME= nss-${NSS_RELEASE:S/.0$//}
1.196 ! ryoon 4: NSS_RELEASE= 3.60.0
1.193 wiz 5: CATEGORIES= devel security
1.127 ryoon 6: MASTER_SITES= ${MASTER_SITE_MOZILLA_ALL:=security/nss/releases/NSS_${NSS_DIST_DIR_VERSION:S/_0$//}_RTM/src/}
1.1 jschauma 7:
1.65 wiz 8: MAINTAINER= pkgsrc-users@NetBSD.org
1.170 ryoon 9: HOMEPAGE= https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS
1.1 jschauma 10: COMMENT= Libraries to support development of security-enabled applications
1.62 ryoon 11: LICENSE= mpl-2.0
1.1 jschauma 12:
1.165 ryoon 13: CHECK_PORTABILITY_SKIP+= nss/tests/libpkix/libpkix.sh
14: CHECK_PORTABILITY_SKIP+= nss/tests/multinit/multinit.sh
15: CHECK_PORTABILITY_SKIP+= js/src/configure
16: CHECK_PORTABILITY_SKIP+= configure
1.28 jlam 17:
1.159 jperkin 18: CTF_SUPPORTED= no # https://smartos.org/bugview/OS-6510
19:
1.77 jperkin 20: USE_GCC_RUNTIME= yes
1.141 leot 21: USE_LANGUAGES= c99
1.35 tnn 22: USE_TOOLS+= gmake perl pax pkg-config
1.110 tnn 23: MAKE_JOBS_SAFE= no
1.24 gdt 24:
1.114 wiz 25: BUILD_DIRS= nss
26:
1.74 ryoon 27: .include "../../mk/bsd.prefs.mk"
1.1 jschauma 28:
1.108 jperkin 29: SUBST_CLASSES.Darwin+= exec_path
1.58 ryoon 30: SUBST_STAGE.exec_path= pre-configure
31: SUBST_MESSAGE.exec_path= Fixing @executable_path
1.82 pho 32: SUBST_FILES.exec_path= nss/coreconf/Darwin.mk
1.58 ryoon 33: SUBST_SED.exec_path= -e 's,@executable_path,${PREFIX}/lib/nss,g'
34:
1.110 tnn 35: SUBST_CLASSES+= zlib
36: SUBST_STAGE.zlib= pre-configure
37: SUBST_MESSAGE.zlib= Use ZLIB_LIBS from environment
38: SUBST_FILES.zlib= nss/coreconf/*.mk
39: SUBST_SED.zlib= -e 's,^ZLIB_LIBS,\#ZLIB_LIBS,g'
40:
1.109 ryoon 41: BUILDLINK_TRANSFORM+= rm:-Werror
42: BUILDLINK_TRANSFORM+= rm:-ansi
1.181 ryoon 43: LDFLAGS.NetBSD+= -lrt # sem_wait(3)
1.109 ryoon 44:
1.108 jperkin 45: MAKE_ENV.Linux+= FREEBL_NO_DEPEND=0
1.40 markd 46:
1.1 jschauma 47: .if ${OBJECT_FMT} == "ELF"
48: SO_SUFFIX= so
49: .elif ${OBJECT_FMT} == "Mach-O"
50: SO_SUFFIX= dylib
51: .else
52: SO_SUFFIX= so.1.0
53: .endif
1.11 rillig 54: PLIST_SUBST+= SO_SUFFIX=${SO_SUFFIX:Q}
1.1 jschauma 55:
1.145 jperkin 56: .if !empty(PKGSRC_COMPILER:Mclang) || !empty(PKGSRC_COMPILER:Mgcc)
1.190 tnn 57: MAKE_ENV+= NS_USE_GCC=YES
1.145 jperkin 58: .endif
59:
60: .if !empty(PKGSRC_COMPILER:Mclang)
1.190 tnn 61: MAKE_ENV+= CC_IS_CLANG=YES
1.9 dmcmahil 62: .endif
63:
1.119 maya 64: SUBST_CLASSES+= 64bit
1.154 jperkin 65: SUBST_STAGE.64bit= pre-configure
1.119 maya 66: SUBST_FILES.64bit= nss/lib/freebl/*
67: SUBST_SED.64bit= -e 's,NSS_USE_64,_LP64,g'
1.165 ryoon 68: SUBST_MESSAGE.64bit= Use a generic 64bit check
1.119 maya 69:
70: # Just to be safe, do this as well as the _LP64 replacement
71: # NSS has a lot more logic for USE_64
1.34 tnn 72: .for platform in ${LP64PLATFORMS}
73: . if ${MACHINE_PLATFORM:M${platform}}
74: MAKE_ENV+= USE_64=1
1.33 joerg 75: . endif
1.34 tnn 76: .endfor
77:
78: MAKE_ENV+= BUILD_OPT=1
79: #MAKE_ENV+= OPTIMIZER=${CFLAGS:Q}
80: MAKE_ENV+= INCLUDES=-I${BUILDLINK_PREFIX.nspr}/include/nspr
1.128 ryoon 81: MAKE_ENV+= NSS_USE_SYSTEM_SQLITE=1
1.110 tnn 82: MAKE_ENV+= ZLIB_LIBS="${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.zlib}/lib -L${BUILDLINK_PREFIX.zlib}/lib -lz"
83: MAKE_ENV+= USE_SYSTEM_ZLIB=1
1.137 wiz 84: MAKE_ENV+= EXTRA_SHARED_LIBS="${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.nspr}/lib/nspr ${COMPILER_RPATH_FLAG}${PREFIX}/lib/nss -L${BUILDLINK_PREFIX.nspr}/lib/nspr -lplc4 -lplds4 -lnspr4 "${LDFLAGS:Q}
1.104 ryoon 85: MAKE_ENV+= NSS_DISABLE_GTESTS=yes
1.127 ryoon 86: MAKE_ENV+= NSS_ENABLE_TLS_1_3=1
1.105 ryoon 87: .include "../../mk/compiler.mk"
88: .if !empty(CC_VERSION:Mgcc-4.[0-7]*)
89: CFLAGS+= -DNSS_NO_GCC48
90: .endif
1.33 joerg 91:
1.114 wiz 92: NSS_MAJOR_VERSION= ${NSS_RELEASE:C/\.[0-9.]*//}
93: NSS_MINOR_VERSION= ${NSS_RELEASE:S/3.//:C/\.[0-9]*//}
94: NSS_PATCH_VERSION= ${NSS_RELEASE:C/[0-9.]*\.//}
1.127 ryoon 95: NSS_DIST_DIR_VERSION= ${NSS_MAJOR_VERSION}_${NSS_MINOR_VERSION}_${NSS_PATCH_VERSION}
96:
1.114 wiz 97:
98: SUBST_CLASSES+= config
1.167 rillig 99: SUBST_VARS.config= PREFIX
100: SUBST_VARS.config+= NSS_MAJOR_VERSION
101: SUBST_VARS.config+= NSS_MINOR_VERSION
102: SUBST_VARS.config+= NSS_PATCH_VERSION
103: SUBST_VARS.config+= COMPILER_RPATH_FLAG
1.114 wiz 104: SUBST_SED.config+= -e "s,@PTHREAD@,${BUILDLINK_LIBS.pthread:Q},"
105: SUBST_STAGE.config= pre-build
106: SUBST_MESSAGE.config= Preparing *-config files.
107: SUBST_FILES.config+= nss.pc nss-config
108:
109: INSTALLATION_DIRS= bin include/nss lib/nss lib/pkgconfig
110: DIST= ${WRKSRC}/dist
111:
1.148 ryoon 112: INSTALL_CMDS+= certutil cmsutil crlutil derdump makepqg \
1.121 ryoon 113: mangle modutil ocspclnt oidcalc p7content p7env p7sign \
114: p7verify pk12util rsaperf shlibsign signtool signver \
115: ssltap strsclnt symkeyutil vfychain vfyserv
116:
1.55 ryoon 117: post-extract:
1.57 ryoon 118: find ${WRKSRC} -type f | xargs ${CHMOD} 644
119: find ${WRKSRC} -type d | xargs ${CHMOD} 755
1.114 wiz 120: ${CP} ${FILESDIR}/nss.pc.in ${WRKSRC}/nss.pc
121: ${CP} ${FILESDIR}/nss-config.in ${WRKSRC}/nss-config
1.7 reed 122:
1.1 jschauma 123: do-install:
1.58 ryoon 124: (cd ${DIST}/public && pax -Lrw . ${DESTDIR}${PREFIX}/include/nss/ )
1.22 dmcmahil 125: (cd ${DIST}/*_OPT.OBJ/lib && \
1.58 ryoon 126: pax -Lrw *.${SO_SUFFIX} ${DESTDIR}${PREFIX}/lib/nss/ )
1.186 nia 127: ${INSTALL_DATA} ${DIST}/*_OPT.OBJ/lib/libcrmf.a \
1.47 ryoon 128: ${DESTDIR}${PREFIX}/lib/nss/
1.114 wiz 129: ${INSTALL_DATA} ${WRKSRC}/nss.pc ${DESTDIR}${PREFIX}/lib/pkgconfig/nss.pc
130: ${INSTALL_SCRIPT} ${WRKSRC}/nss-config ${DESTDIR}${PREFIX}/bin/nss-config
1.121 ryoon 131: .for cmd in ${INSTALL_CMDS}
1.124 wiedi 132: ${INSTALL_PROGRAM} ${DIST}/*_OPT.OBJ/bin/${cmd} ${DESTDIR}${PREFIX}/bin
1.121 ryoon 133: .endfor
1.10 jmmv 134:
1.91 ryoon 135: # For consistency of libxul.so link in www/firefox.
1.115 ryoon 136: BUILDLINK_API_DEPENDS.sqlite3+= sqlite3>=3.8.4.2
1.37 dsainty 137: .include "../../databases/sqlite3/buildlink3.mk"
1.192 ryoon 138: BUILDLINK_API_DEPENDS.nspr+= nspr>=4.29
1.1 jschauma 139: .include "../../devel/nspr/buildlink3.mk"
1.37 dsainty 140: .include "../../devel/zlib/buildlink3.mk"
1.1 jschauma 141: .include "../../mk/pthread.buildlink3.mk"
142: .include "../../mk/bsd.pkg.mk"
CVSweb <webmaster@jp.NetBSD.org>