pkgsrc/www/navigator/Makefile.common
jlam 33f30156fb * 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.
2007-07-29 05:18:36 +00:00

217 lines
6.9 KiB
Makefile

# $NetBSD: Makefile.common,v 1.86 2007/07/29 05:19:57 jlam Exp $
#
# Common include file for communicator and navigator packages
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)
NS_VERS= 4.8
PKGNAME= ${BINNAME}-4.80
NS_ENCRYPTION= us
LDAP_VERS= 40
MASTER_SITES= ftp://ftp.netscape.com/pub/communicator/${SUB}/ \
ftp://ftp.de.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}/
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)
#
.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
. else
DISTUNAME= sparc-sun-solaris2.8
DIST_DIR_NAME= supported/sunos58
WRKNAME= sparc-sun-solaris2.8
. endif
. if !defined(NS_NO_FLASH)
DEPENDS+= ns-flash>4.0:../../multimedia/ns-flash
. 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}
DISTUNAME= alpha-dec-osf4.0
DIST_DIR_NAME= supported/dec_unix40
WRKNAME= alpha-dec-osf4.0
.elif ${EMUL_PLATFORM} == "bsdi-i386"
NS_VERS= 4.75
PKGREVISION= 1
PKGNAME= ${BINNAME}-${NS_VERS}
DISTUNAME= x86-bsdi-bsd2
DIST_DIR_NAME= unsupported/bsdi21
WRKNAME= x86-bsdi-bsd2
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 ${EMUL_PLATFORM} == "linux-i386"
PKGREVISION= 1
DISTUNAME= x86-unknown-linux2.2
DIST_DIR_NAME= supported/linux22
WRKNAME= x86-unknown-linux2.2
. if !defined(NS_NO_FLASH)
DEPENDS+= ns-flash>4.0:../../multimedia/ns-flash
. endif
. 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
# 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
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
DESCR_SRC= ${WRKDIR}/DESCR.linux-powerpc
PLIST_SRC= ${RPM2PKG_PLIST}
EMUL_PKG_FMT= rpm
RPM2PKG_PREFIX= ${PREFIX}
RPM2PKG_SUBPREFIX= ${EMULSUBDIR}
RPM2PKG_STAGE= do-install
do-install:
${CP} ${PKGDIR}/DESCR.linux-powerpc ${WRKDIR}
${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}
${ECHO} bin/${BINNAME} >> ${PLIST_SRC}
${ECHO} bin/${NS_NAME} >> ${PLIST_SRC}
${SORT} -r ${PLIST_SRC} > ${PLIST_SRC}.sorted
${MV} ${PLIST_SRC}.sorted ${PLIST_SRC}
.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}
BUILD_DEFS+= NS_ENCRYPTION
DIST_SUBDIR= netscape
WRKSRC= ${WRKDIR}/${BINNAME}-v${NS_VERS_SHORT}.${WRKNAME}
MOZILLA_HOME= ${PREFIX}/lib/netscape/${NS_NAME}
NS_PLUGINS_DIR= ${PREFIX}/lib/netscape/plugins
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 \
jsd10.jar ldap${LDAP_VERS}.jar resource.jar scd10.jar
${INSTALL_DATA} ${WRKSRC}/${file} ${MOZILLA_HOME}/java/classes
. 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"
cd ${MOZILLA_HOME} && ${TAR} -xpzf ${WRKSRC}/spellchk-v${NS_VERS_SHORT}.nif
. endif
${SED} -e 's#@@MOZILLA_HOME@@#${MOZILLA_HOME}#g' \
-e 's#@@NS_PLUGINS_DIR@@#${NS_PLUGINS_DIR}#g' \
<${FILESDIR}/${BINNAME}.sh >${WRKDIR}/${BINNAME}.sh
${INSTALL_SCRIPT} ${WRKDIR}/${BINNAME}.sh ${PREFIX}/bin/${NS_NAME}
${RM} -f ${PREFIX}/bin/${BINNAME}
${LN} -sf ${NS_NAME} ${PREFIX}/bin/${BINNAME}
. 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"
${LN} -sf ${NS_NAME}_nis ${PREFIX}/bin/netscape_nis
. endif
${MV} ${MOZILLA_HOME}/netscape ${MOZILLA_HOME}/netscape_nis
${MV} ${MOZILLA_HOME}/netscape_dns ${MOZILLA_HOME}/netscape
. endif
${INSTALL_DATA_DIR} ${NS_PLUGINS_DIR}
${CHOWN} -R ${ROOT_USER}:${ROOT_GROUP} ${MOZILLA_HOME}
${CHMOD} -R go-w ${MOZILLA_HOME}
.endif