summaryrefslogtreecommitdiff
path: root/www/navigator/Makefile.common
diff options
context:
space:
mode:
authorjlam <jlam>2007-07-29 05:18:36 +0000
committerjlam <jlam>2007-07-29 05:18:36 +0000
commitc79d13574d40ad8e282bd93bd622e8a195903691 (patch)
tree45cad36d8470a568b9136017b2dd79c9efcc65bc /www/navigator/Makefile.common
parenta9d6b45cddcb11e05e29eed50a9623fff3d06518 (diff)
downloadpkgsrc-c79d13574d40ad8e282bd93bd622e8a195903691.tar.gz
* Add new emulator framework in pkgsrc/mk/emulator that handles all
binary-only packages that require binary "emulation" on the native operating system. Please see pkgsrc/mk/emulator/README for more details. * Teach the plist framework to automatically use any existing PLIST.${EMUL_PLATFORM} as part of the default PLIST_SRC definition. * Convert all of the binary-only packages in pkgsrc to use the emulator framework. Most of them have been tested to install and deinstall correctly. This involves the following cleanup actions: * Remove use of custom PLIST code and use PLIST.${EMUL_PLATFORM} more consistently. * Simplify packages by using default INSTALL and DEINSTALL scripts instead of custom INSTALL/DEINSTALL code. * Remove "SUSE_COMPAT32" and "PKG_OPTIONS.suse" from pkgsrc. Packages only need to state exactly which emulations they support, and the framework handles any i386-on-x86_64 or sparc-on-sparc64 uses. * Remove "USE_NATIVE_LINUX" from pkgsrc. The framework will automatically detect when the package is installing on Linux. Specific changes to packages include: * Bump the PKGREVISIONs for all of the suse100* and suse91* packages due to changes in the +INSTALL/+DEINSTALL scripts used in all of the packages. * Remove pkgsrc/emulators/suse_linux, which is unused by any packages. * cad/lc -- remove custom code to create the distinfo file for all supported platforms; just use "emul-fetch" and "emul-distinfo" instead. * lang/Cg-compiler -- install the shared libraries under ${EMULDIR} instead of ${PREFIX}/lib so that compiled programs will find the shared libraries. * mail/thunderbird-bin-nightly -- update to latest binary distributions for supported platforms. * multimedia/ns-flash -- update Linux version to 9.0.48 as the older version is no longer available for interactive fetch. * security/uvscan -- set LD_LIBRARY_PATH explicitly so that it's not necessary to install library symlinks into ${EMULDIR}/usr/local/lib. * www/firefox-bin-flash -- update Linux version to 9.0.48 as the older version is no longer available for interactive fetch.
Diffstat (limited to 'www/navigator/Makefile.common')
-rw-r--r--www/navigator/Makefile.common217
1 files changed, 86 insertions, 131 deletions
diff --git a/www/navigator/Makefile.common b/www/navigator/Makefile.common
index e01fa83a2bd..8585851a0ca 100644
--- a/www/navigator/Makefile.common
+++ b/www/navigator/Makefile.common
@@ -1,8 +1,17 @@
-# $NetBSD: Makefile.common,v 1.85 2007/02/22 19:27:20 wiz Exp $
+# $NetBSD: Makefile.common,v 1.86 2007/07/29 05:19:57 jlam Exp $
#
# Common include file for communicator and navigator packages
-.include "../../mk/bsd.prefs.mk"
+CATEGORIES= www
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE?= http://www.netscape.com/browsers/index.html
+
+RESTRICTED= No re-distribution without agreement from Netscape
+NO_SRC_ON_CDROM= ${RESTRICTED}
+NO_BIN_ON_CDROM= ${RESTRICTED}
+NO_SRC_ON_FTP= ${RESTRICTED}
+NO_BIN_ON_FTP= ${RESTRICTED}
# Note - the version will be overridden for certain architectures which
# do not have the latest version available (eg: SunOS sparc)
@@ -16,112 +25,102 @@ MASTER_SITES= ftp://ftp.netscape.com/pub/communicator/${SUB}/ \
ftp://ftp-uk.netscape.com/pub/communicator/${SUB}/ \
ftp://sunsite.utk.edu/pub/netscape/communicator/${SUB}/ \
ftp://ftp.informatik.rwth-aachen.de/pub/mirror/ftp.netscape.com/pub/communicator/${SUB}/
-#
-# Based on OPSYS and MACHINE_ARCH, define:
-# PLIST_ARCH ARCH specific PLIST contents
+
+EMUL_PLATFORMS= bsdi-i386
+EMUL_PLATFORMS+= linux-i386
+EMUL_PLATFORMS+= osf1-alpha
+EMUL_PLATFORMS+= solaris-sparc
+EMUL_PLATFORMS+= sunos-sparc
+
+EMUL_MODULES.linux= compat x11
+
+# powerpc is "unusual"
+.if ${BINNAME} == "communicator"
+EMUL_PLATFORMS+= linux-powerpc
+.endif
+
+.include "../../mk/bsd.prefs.mk"
+
+.if (${EMUL_PLATFORM} == "linux-powerpc" ) && (${BINNAME} == "communicator")
+PKG_FAIL_REASON+= "There is no navigator-only package for PowerPC"
+PKG_FAIL_REASON+= "platform. Please cd to ../communicator and"
+PKG_FAIL_REASON+= "install the communicator package instead."
+.endif
+
+# Based on EMUL_PLATFORM, define:
# DISTUNAME Used to determine DISTNAME (tarfile on ftp server)
# DIST_DIR_NAME Directory on ftp site from which to download
# WRKNAME Used to determine WRKSRC (directoryname in tarfile)
-# VENDOR_NAME Only used in '128-bit key version' information message
#
-.if ${OPSYS} == "SunOS" && ${MACHINE_ARCH} == "sparc"
-PLIST_ARCH= solaris-sparc
-. if !empty(OS_VERSION:M5.5.1*) || !empty(OS_VERSION:M5.[67]*)
+.if ${EMUL_PLATFORM} == "solaris-sparc"
+. if (${OPSYS} == "SunOS") && \
+ (!empty(OS_VERSION:M5.5.1*) || !empty(OS_VERSION:M5.[67]*))
NS_VERS= 4.79
PKGNAME= ${BINNAME}-${NS_VERS}
DISTUNAME= sparc-sun-solaris2.5.1
DIST_DIR_NAME= supported/sunos551
WRKNAME= sparc-sun-solaris2.5.1
-VENDOR_NAME= Solaris 2.5.1
. else
DISTUNAME= sparc-sun-solaris2.8
DIST_DIR_NAME= supported/sunos58
WRKNAME= sparc-sun-solaris2.8
-VENDOR_NAME= Solaris 2.8
. endif
. if !defined(NS_NO_FLASH)
DEPENDS+= ns-flash>4.0:../../multimedia/ns-flash
. endif
-.elif ${MACHINE_ARCH} == "alpha"
-. if !exists(/emul/osf1/sbin/loader)
-PKG_FAIL_REASON+= "${PKGNAME} requires Digital UNIX libraries - see compat_osf1(8)"
-. endif
+.elif ${EMUL_PLATFORM} == "sunos-sparc"
+NS_VERS= 4.61
+PKGNAME= ${BINNAME}-${NS_VERS}
+NS_ENCRYPTION= export
+LDAP_VERS= 30
+DISTUNAME= sparc-sun-sunos4.1.3_U1
+DIST_DIR_NAME= unsupported/sunos413
+WRKNAME= ${DISTUNAME}
+MASTER_SITES= ftp://archive.netscape.com/archive/communicator/${SUB}/
+
+.elif ${EMUL_PLATFORM} == "osf1-alpha"
NS_VERS= 4.78
PKGNAME= ${BINNAME}-${NS_VERS}
-PLIST_ARCH= osf-alpha
DISTUNAME= alpha-dec-osf4.0
DIST_DIR_NAME= supported/dec_unix40
WRKNAME= alpha-dec-osf4.0
-VENDOR_NAME= Tru64 UNIX
-.elif ${MACHINE_ARCH} == "i386" && defined(NS_USE_BSDI)
+.elif ${EMUL_PLATFORM} == "bsdi-i386"
NS_VERS= 4.75
PKGREVISION= 1
PKGNAME= ${BINNAME}-${NS_VERS}
-PLIST_ARCH= bsdi-i386
DISTUNAME= x86-bsdi-bsd2
DIST_DIR_NAME= unsupported/bsdi21
WRKNAME= x86-bsdi-bsd2
-VENDOR_NAME= BSD/OS 2.1
BUILD_DEPENDS+= binpatch>=1.0:../../pkgtools/binpatch
post-install:
${SH} ../../www/navigator/files/binpatch-x86-bsdi-bsd2-4.75.sh \
${LOCALBASE} ${MOZILLA_HOME}/netscape
-.elif ${MACHINE_ARCH} == "i386"
+
+.elif ${EMUL_PLATFORM} == "linux-i386"
PKGREVISION= 1
-PLIST_ARCH= linux-i386
DISTUNAME= x86-unknown-linux2.2
DIST_DIR_NAME= supported/linux22
WRKNAME= x86-unknown-linux2.2
-VENDOR_NAME= Linux 2.2
. if !defined(NS_NO_FLASH)
DEPENDS+= ns-flash>4.0:../../multimedia/ns-flash
. endif
-
-.if ${BINNAME} == "communicator"
+. if ${BINNAME} == "communicator"
BUILD_DEPENDS= binpatch>=1.0:../../pkgtools/binpatch
post-install:
${SH} ../../www/navigator/files/binpatch-x86-unknown-linux2.2-4.80.sh \
${LOCALBASE} ${MOZILLA_HOME}/netscape
-.endif
-.elif ((${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64") && defined(NS_USE_SUNOS))
-. if !exists(/emul/sunos/usr/lib/ld.so)
-PKG_FAIL_REASON+= "${PKGNAME} requires SunOS libraries - see compat_sunos(8)"
. endif
-NS_VERS= 4.61
-PKGNAME= ${BINNAME}-${NS_VERS}
-NS_ENCRYPTION= export
-LDAP_VERS= 30
-PLIST_ARCH= sunos-sparc
-DISTUNAME= sparc-sun-sunos4.1.3_U1
-DIST_DIR_NAME= unsupported/sunos413
-WRKNAME= ${DISTUNAME}
-VENDOR_NAME= SunOS 4.1.3
-MASTER_SITES= ftp://archive.netscape.com/archive/communicator/${SUB}/
-
-.elif ${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64"
-PLIST_ARCH= solaris-sparc
-. if !exists(/emul/svr4/usr/lib/ld.so.1)
-PKG_FAIL_REASON+= "${PKGNAME} requires Solaris libraries - see compat_svr4(8)"
-. endif
-NS_VERS= 4.79
-PKGNAME= ${BINNAME}-${NS_VERS}
-DISTUNAME= sparc-sun-solaris2.5.1
-DIST_DIR_NAME= supported/sunos551
-WRKNAME= sparc-sun-solaris2.5.1
-VENDOR_NAME= Solaris 2.5.1
-# powerpc is "unusual"
-.elif ${MACHINE_ARCH} == "powerpc"
-. if ${BINNAME} == "navigator"
-PKG_FAIL_REASON+= "There is no navigator-only package for PowerPC"
-PKG_FAIL_REASON+= "platform. Please cd to ../communicator and"
-PKG_FAIL_REASON+= "install communicator package instead."
-. endif
+# linux-powerpc is "special" -- this is essentially an entire package
+# Makefile embedded within this Makefile.common file. This section
+# doesn't really share much code with the other platform targets.
+#
+.elif ${EMUL_PLATFORM} == "linux-powerpc"
NS_VERS= 4.73
PKGNAME= ${BINNAME}-${NS_VERS}
DISTNAME= netscape-4.7-3.ppc
@@ -129,57 +128,22 @@ WRKSRC= ${WRKDIR}
# was: ftp://ftp.linuxppc.org/linuxppc-halloween/software/
MASTER_SITES= http://www.gmd.de/ftp/mirrors3/ftp.linuxppc.org/linuxppc-halloween/software/
EXTRACT_SUFX= .rpm
+
HOMEPAGE= http://lwn.net/2000/0629/a/netscape-ppc.php3
-BUILD_DEPENDS+= rpm2pkg>=1.2:../../pkgtools/rpm2pkg
DESCR_SRC= ${WRKDIR}/DESCR.linux-powerpc
-PLIST_SRC= ${WRKDIR}/PLIST_DYNAMIC
-RPM2PKG= rpm2pkg
-RPM2PKGARGS= ${DISTDIR}/${DIST_SUBDIR}/${DISTNAME}${EXTRACT_SUFX}
-VENDOR_NAME= # empty. what should be here?
+PLIST_SRC= ${RPM2PKG_PLIST}
-.else
-PLIST_ARCH=
-.endif
-
-MAINTAINER= pkgsrc-users@NetBSD.org
-HOMEPAGE?= http://www.netscape.com/browsers/index.html
-RESTRICTED= No re-distribution without agreement from Netscape
-NO_SRC_ON_CDROM= ${RESTRICTED}
-NO_BIN_ON_CDROM= ${RESTRICTED}
-NO_SRC_ON_FTP= ${RESTRICTED}
-NO_BIN_ON_FTP= ${RESTRICTED}
-
-ONLY_FOR_PLATFORM= *-*-alpha *-*-i386 *-*-powerpc *-*-sparc *-*-sparc64
-CATEGORIES= www
-NS_NAME= ${BINNAME}-${NS_VERS}
-PKGNAME?= ${BINNAME}-${NS_VERS}
-DISTNAME?= ${BINNAME}-v${NS_VERS_SHORT}-${NS_ENCRYPTION}.${DISTUNAME}
-
-.if (${OPSYS} != "Linux" && ((${MACHINE_ARCH} == "i386" && !defined(NS_USE_BSDI)) || ${MACHINE_ARCH} == "powerpc"))
-.include "../../emulators/suse_linux/Makefile.application"
-
-DEPENDS+= suse_compat>=6.4:../../emulators/${SUSE_DIR_PREFIX}_compat
-DEPENDS+= suse_x11>=6.4:../../emulators/${SUSE_DIR_PREFIX}_x11
-.endif
-
-.if ${BINNAME} != "netscape"
-NO_BUILD= YES
-
-INSTALLATION_DIRS= bin
-
-# powerpc is "unusual"
-. if ${MACHINE_ARCH} == "powerpc"
-do-extract:
- ${MKDIR} ${WRKSRC}
+EMUL_PKG_FMT= rpm
+RPM2PKG_PREFIX= ${PREFIX}
+RPM2PKG_SUBPREFIX= ${EMULSUBDIR}
+RPM2PKG_STAGE= do-install
do-install:
${CP} ${PKGDIR}/DESCR.linux-powerpc ${WRKDIR}
- ${RM} -f ${PLIST_SRC}
- ${RPM2PKG} -d ${PREFIX} -f ${PLIST_SRC} -s 1 ${RPM2PKGARGS}
-
- ${SED} -e 's#@BINNAME@#${BINNAME}#g' \
- -e 's#@PREFIX@#${PREFIX}#g' \
- <${FILESDIR}/${BINNAME}.sh.linux-powerpc >${WRKDIR}/${BINNAME}.sh
+ ${SED} -e 's#@BINNAME@#${BINNAME}#g' \
+ -e 's#@PREFIX@#${PREFIX}#g' \
+ ${FILESDIR}/${BINNAME}.sh.linux-powerpc \
+ > ${WRKDIR}/${BINNAME}.sh
${INSTALL_SCRIPT} ${WRKDIR}/${BINNAME}.sh ${PREFIX}/bin/${NS_NAME}
${RM} -f ${PREFIX}/bin/${BINNAME}
${LN} -sf ${NS_NAME} ${PREFIX}/bin/${BINNAME}
@@ -187,7 +151,16 @@ do-install:
${ECHO} bin/${NS_NAME} >> ${PLIST_SRC}
${SORT} -r ${PLIST_SRC} > ${PLIST_SRC}.sorted
${MV} ${PLIST_SRC}.sorted ${PLIST_SRC}
-. else
+.endif
+
+NS_NAME= ${BINNAME}-${NS_VERS}
+PKGNAME?= ${BINNAME}-${NS_VERS}
+DISTNAME?= ${BINNAME}-v${NS_VERS_SHORT}-${NS_ENCRYPTION}.${DISTUNAME}
+
+BUILD_DIRS= # empty
+
+INSTALLATION_DIRS= bin
+
NS_VERS_SHORT= ${NS_VERS:S/.//}
SUB= english/${NS_VERS}/unix/${DIST_DIR_NAME}/${DIST_SDIR_NAME}
@@ -198,27 +171,25 @@ WRKSRC= ${WRKDIR}/${BINNAME}-v${NS_VERS_SHORT}.${WRKNAME}
MOZILLA_HOME= ${PREFIX}/lib/netscape/${NS_NAME}
NS_PLUGINS_DIR= ${PREFIX}/lib/netscape/plugins
-PLIST_SRC= ${PKGDIR}/PLIST.pre \
- ${PKGDIR}/PLIST.${PLIST_ARCH} \
- ${PKGDIR}/PLIST.post
PLIST_SUBST+= NS_VERS=${NS_VERS:Q} LDAP_VERS=${LDAP_VERS:Q} BINNAME=${BINNAME:Q}
+.if !target(do-install)
do-install:
${INSTALL_DATA_DIR} ${MOZILLA_HOME}/java/classes
${INSTALL_SCRIPT} ${WRKSRC}/vreg ${MOZILLA_HOME}
-. for file in ifc11.jar iiop10.jar jae40.jar java40.jar jio40.jar \
+. for file in ifc11.jar iiop10.jar jae40.jar java40.jar jio40.jar \
jsd10.jar ldap${LDAP_VERS}.jar resource.jar scd10.jar
${INSTALL_DATA} ${WRKSRC}/${file} ${MOZILLA_HOME}/java/classes
-. endfor
+. endfor
cd ${MOZILLA_HOME} && ${GZCAT} \
${WRKSRC}/nethelp-v${NS_VERS_SHORT}.nif | ${PAX} -r
cd ${MOZILLA_HOME} && ${GZCAT} \
${WRKSRC}/netscape-v${NS_VERS_SHORT}.nif | ${PAX} -cr \
'*libflashplayer.so' '*ShockwaveFlash.class' '*dynMotif*' \
|| ${TRUE}
-. if ${BINNAME} == "communicator"
+. if ${BINNAME} == "communicator"
cd ${MOZILLA_HOME} && ${TAR} -xpzf ${WRKSRC}/spellchk-v${NS_VERS_SHORT}.nif
-. endif
+. endif
${SED} -e 's#@@MOZILLA_HOME@@#${MOZILLA_HOME}#g' \
-e 's#@@NS_PLUGINS_DIR@@#${NS_PLUGINS_DIR}#g' \
@@ -227,36 +198,20 @@ do-install:
${RM} -f ${PREFIX}/bin/${BINNAME}
${LN} -sf ${NS_NAME} ${PREFIX}/bin/${BINNAME}
-. if ${PLIST_ARCH} == "sunos-sparc"
+. if ${EMUL_PLATFORM} == "sunos-sparc"
# Bizarre magic to handle the NIS and DNS versions. Make DNS default.
@${SED} -e 's#MOZILLA_HOME/netscape#MOZILLA_HOME/netscape_nis#g' \
<${WRKDIR}/${BINNAME}.sh >${WRKDIR}/${BINNAME}_nis.sh
${INSTALL_SCRIPT} ${WRKDIR}/${BINNAME}_nis.sh \
${PREFIX}/bin/${NS_NAME}_nis
-. if ${BINNAME} == "communicator"
+. if ${BINNAME} == "communicator"
${LN} -sf ${NS_NAME}_nis ${PREFIX}/bin/netscape_nis
-. endif
+. endif
${MV} ${MOZILLA_HOME}/netscape ${MOZILLA_HOME}/netscape_nis
${MV} ${MOZILLA_HOME}/netscape_dns ${MOZILLA_HOME}/netscape
-. endif
+. endif
${INSTALL_DATA_DIR} ${NS_PLUGINS_DIR}
${CHOWN} -R ${ROOT_USER}:${ROOT_GROUP} ${MOZILLA_HOME}
${CHMOD} -R go-w ${MOZILLA_HOME}
-. endif
-
-.endif
-
-.if ${OPSYS} == "NetBSD" && ${MACHINE_ARCH} == "i386" && !defined(NS_USE_BSDI)
-NS_NEED_LINUX= yes
-.elif ${OPSYS} == "NetBSD" && ${MACHINE_ARCH} == "powerpc"
-NS_NEED_LINUX= yes
-.elif ${OPSYS} == "Linux"
-NS_NEED_LINUX= yes
-.endif
-
-.if ${BINNAME} != "netscape"
-. if defined(NS_NEED_LINUX)
-. include "../../emulators/suse_linux/Makefile.application"
-. endif
.endif