diff options
-rw-r--r-- | emulators/compat14/Makefile | 61 | ||||
-rw-r--r-- | emulators/compat14/files/md5 | 4 | ||||
-rw-r--r-- | emulators/compat14/pkg/COMMENT | 1 | ||||
-rw-r--r-- | emulators/compat14/pkg/DEINSTALL | 34 | ||||
-rw-r--r-- | emulators/compat14/pkg/DESCR | 4 | ||||
-rw-r--r-- | emulators/compat14/pkg/INSTALL | 68 | ||||
-rw-r--r-- | emulators/compat14/pkg/PLIST | 39 |
7 files changed, 211 insertions, 0 deletions
diff --git a/emulators/compat14/Makefile b/emulators/compat14/Makefile new file mode 100644 index 00000000000..8fbab07fe8a --- /dev/null +++ b/emulators/compat14/Makefile @@ -0,0 +1,61 @@ +# $NetBSD: Makefile,v 1.1.1.1 2001/02/04 08:03:39 mrg Exp $ +# + +DISTNAME= compat14-${MACHINE_ARCH} +PKGNAME= compat14-1.4.3 +CATEGORIES= emulators +MASTER_SITES= ${MASTER_SITE_LOCAL} + +MAINTAINER= packages@netbsd.org +HOMEPAGE= http://www.netbsd.org/Releases/formal-1.4/index.html + +ONLY_FOR_PLATFORM= NetBSD-*-sparc NetBSD-*-i386 +NOT_FOR_PLATFORM= NetBSD-1.3*-* NetBSD-1.4*-* + +NO_MTREE= # defined +SHLIB_HANDLING= NO + +DEINSTALL_FILE= ${WRKDIR}/DEINSTALL +INSTALL_FILE= ${WRKDIR}/INSTALL + +.include "../../mk/bsd.prefs.mk" + +# This installs in /usr (or /emul/aout/usr) to avoid dynamic linker annoyances +.if ${OBJECT_FMT} == "ELF" && \ + (${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "sparc") +EMULSUBDIR= emul/aout +COMPAT_LIBDIR= ${EMULSUBDIR}/usr/lib +COMPAT_XLIBDIR= ${EMULSUBDIR}/usr/X11R6/lib +.else +LOCALBASE= /usr +COMPAT_LIBDIR= lib +COMPAT_XLIBDIR= X11R6/lib +.endif + +PLIST_SUBST+= COMPAT_LIBDIR=${COMPAT_LIBDIR} COMPAT_XLIBDIR=${COMPAT_XLIBDIR} + +do-build: + ${SED} -e "s,@MACHINE_ARCH@,${MACHINE_ARCH},g" \ + -e "s,@COMPAT_LIBDIR@,${COMPAT_LIBDIR},g" \ + -e "s,@COMPAT_XLIBDIR@,${COMPAT_XLIBDIR},g" \ + -e "s,@LDCONFIG@,${LDCONFIG},g" \ + < ${PKGDIR}/DEINSTALL > ${DEINSTALL_FILE} + ${SED} -e "s,@MACHINE_ARCH@,${MACHINE_ARCH},g" \ + -e "s,@OBJECT_FMT@,${OBJECT_FMT},g" \ + -e "s,@LDCONFIG@,${LDCONFIG},g" \ + < ${PKGDIR}/INSTALL > ${INSTALL_FILE} + +# note that the INSTALL_DATA for the lib*.so symlinks will copy the file, not the symlink. +# FIXME. +do-install: + ${INSTALL_DATA_DIR} ${PREFIX}/${COMPAT_LIBDIR} + ${INSTALL_DATA} ${WRKDIR}/lib/lib*.so* ${PREFIX}/${COMPAT_LIBDIR} + if [ -d ${WRKDIR}/X11R6/lib ]; then \ + ${INSTALL_DATA_DIR} ${PREFIX}/${COMPAT_XLIBDIR}; \ + ${INSTALL_DATA} ${WRKDIR}/X11R6/lib/lib*.so* ${PREFIX}/${COMPAT_XLIBDIR}; \ + fi + +post-install: + PKG_PREFIX=${PREFIX} ${SH} ${INSTALL_FILE} ${PKGNAME} POST-INSTALL + +.include "../../mk/bsd.pkg.mk" diff --git a/emulators/compat14/files/md5 b/emulators/compat14/files/md5 new file mode 100644 index 00000000000..f4069b1f6b3 --- /dev/null +++ b/emulators/compat14/files/md5 @@ -0,0 +1,4 @@ +$NetBSD: md5,v 1.1.1.1 2001/02/04 08:03:39 mrg Exp $ + +MD5 (compat14-sparc.tar.gz) = ff6617bbff745e81be92080244141960 +MD5 (compat14-i386.tar.gz) = 40fd9b6328922d2a6800537c05d3538b diff --git a/emulators/compat14/pkg/COMMENT b/emulators/compat14/pkg/COMMENT new file mode 100644 index 00000000000..05edf1b6f33 --- /dev/null +++ b/emulators/compat14/pkg/COMMENT @@ -0,0 +1 @@ +Shared libraries for NetBSD 1.4 (and earlier) compatibility diff --git a/emulators/compat14/pkg/DEINSTALL b/emulators/compat14/pkg/DEINSTALL new file mode 100644 index 00000000000..793dde1d7ea --- /dev/null +++ b/emulators/compat14/pkg/DEINSTALL @@ -0,0 +1,34 @@ +#!/bin/sh +# +# $NetBSD: DEINSTALL,v 1.1.1.1 2001/02/04 08:03:39 mrg Exp $ + +PKGNAME=$1 +STAGE=$2 + +case ${STAGE} in +DEINSTALL) + ;; +POST-DEINSTALL) + MACHINE_ARCH=@MACHINE_ARCH@ + COMPAT_LIBDIR=@COMPAT_LIBDIR@ + COMPAT_XLIBDIR=@COMPAT_XLIBDIR@ + + if [ "${MACHINE_ARCH}" = "mipsel" ] + then + rm -f ${PKG_PREFIX}/libexec/ld.so + rmdir -p ${PKG_PREFIX}/libexec 2>/dev/null || true + fi + + rmdir -p ${PKG_PREFIX}/${COMPAT_LIBDIR} ${PKG_PREFIX}/${COMPAT_XLIBDIR} 2>/dev/null || true + + # Regenerate the shared library cache. This should work on either + # a.out or on ELF with the 1.5 release. + # + ( @LDCONFIG@ || true ) >/dev/null 2>&1 + ;; +*) + echo "Unexpected argument: ${STAGE}" + exit 1 + ;; +esac +exit 0 diff --git a/emulators/compat14/pkg/DESCR b/emulators/compat14/pkg/DESCR new file mode 100644 index 00000000000..31b3a3a4f3e --- /dev/null +++ b/emulators/compat14/pkg/DESCR @@ -0,0 +1,4 @@ +This package supplies the user files necessary for full compatibility with +dynamically linked executables compiled under NetBSD 1.4. You still need +the option COMPAT_14 in your kernel configuration (and probably others; +see options(4) for more information) to make use of NetBSD 1.4 binaries. diff --git a/emulators/compat14/pkg/INSTALL b/emulators/compat14/pkg/INSTALL new file mode 100644 index 00000000000..7a941f04b39 --- /dev/null +++ b/emulators/compat14/pkg/INSTALL @@ -0,0 +1,68 @@ +#!/bin/sh +# +# $NetBSD: INSTALL,v 1.1.1.1 2001/02/04 08:03:39 mrg Exp $ + +PKGNAME=$1 +STAGE=$2 + +case ${STAGE} in +PRE-INSTALL) + ;; +POST-INSTALL) + MACHINE_ARCH=@MACHINE_ARCH@ + OBJECT_FMT=@OBJECT_FMT@ + + if [ "${MACHINE_ARCH}" = "mipsel" ] + then + ln -sf ld.elf_so /usr/libexec/ld.so + fi + + # Only create the symlink on certain platform/object combinations. Note + # that sparc64 a.out compatibility lives in /emul/aout, not /emul/netbsd32. + # + create_emul_symlink=0 + if [ "${OBJECT_FMT}" = "ELF" ] && \ + [ "${MACHINE_ARCH}" = "i386" -o "${MACHINE_ARCH}" = "sparc" ] + then + create_emul_symlink=1 + fi + + if [ ${create_emul_symlink} = 1 ] + then + # Create a symlink from /emul/aout --> ${PKG_PREFIX}/emul/aout + # if it doesn't already exist. Warn if we can't do this. + # + emul=aout + if [ "`cd /etc && cd ${PKG_PREFIX}/emul/$emul 2>/dev/null && pwd -P`" \ + != "`cd / && cd /emul/$emul 2>/dev/null && pwd -P`" ] + then + if [ -e /emul/$emul -o -L /emul/$emul ] || \ + [ \( -e /emul -o -L /emul \) -a ! -d /emul ] + then + cat <<EOF +============================================================================== + IMPORTANT: You must create a symbolic link from /emul/$emul + to ${PKG_PREFIX}/emul/$emul in order for this package to work + properly. + + (It seems there is something else located at /emul/$emul.) +============================================================================== +EOF + else + mkdir -p /emul + ln -sf ${PKG_PREFIX}/emul/$emul /emul/$emul + fi + fi + fi + + # Regenerate the shared library cache. This should work on either + # a.out or on ELF with the 1.5 release. + # + ( @LDCONFIG@ || true ) >/dev/null 2>&1 + ;; +*) + echo "Unexpected argument: ${STAGE}" + exit 1 + ;; +esac +exit 0 diff --git a/emulators/compat14/pkg/PLIST b/emulators/compat14/pkg/PLIST new file mode 100644 index 00000000000..944a004ec2a --- /dev/null +++ b/emulators/compat14/pkg/PLIST @@ -0,0 +1,39 @@ +@comment $NetBSD: PLIST,v 1.1.1.1 2001/02/04 08:03:39 mrg Exp $ +${COMPAT_LIBDIR}/libamu.so.1.1 +${COMPAT_LIBDIR}/libbfd.so.3.0 +${COMPAT_LIBDIR}/libbz2.so.0.0 +${COMPAT_LIBDIR}/libc.so.12.40.2 +${COMPAT_LIBDIR}/libcrypt.so.0.0 +${COMPAT_LIBDIR}/libcurses.so.2.2 +${COMPAT_LIBDIR}/libedit.so.2.2 +${COMPAT_LIBDIR}/libg2c.so.0.0 +${COMPAT_LIBDIR}/libgnumalloc.so.0.0 +${COMPAT_LIBDIR}/libkvm.so.5.0 +${COMPAT_LIBDIR}/libm.so.0.1 +${COMPAT_LIBDIR}/libntp.so.0.0 +${COMPAT_LIBDIR}/libobjc.so.0.0 +${COMPAT_LIBDIR}/libossaudio.so.0.0 +${COMPAT_LIBDIR}/libpcap.so.0.0 +${COMPAT_LIBDIR}/libposix.so.0.1 +${COMPAT_LIBDIR}/libresolv.so.1.0 +${COMPAT_LIBDIR}/libskey.so.0.0 +${COMPAT_LIBDIR}/libstdc++.so.2.0 +${COMPAT_LIBDIR}/libtelnet.so.1.0 +${COMPAT_LIBDIR}/libtermcap.so.0.0 +${COMPAT_LIBDIR}/libtermlib.so.0.0 +${COMPAT_LIBDIR}/libutil.so.5.0 +${COMPAT_LIBDIR}/libwrap.so.0.0 +${COMPAT_LIBDIR}/libz.so.0.1 +${COMPAT_XLIBDIR}/libICE.so.6.3 +${COMPAT_XLIBDIR}/libPEX5.so.6.0 +${COMPAT_XLIBDIR}/libSM.so.6.0 +${COMPAT_XLIBDIR}/libX11.so.6.1 +${COMPAT_XLIBDIR}/libXIE.so.6.0 +${COMPAT_XLIBDIR}/libXaw.so.6.1 +${COMPAT_XLIBDIR}/libXext.so.6.3 +${COMPAT_XLIBDIR}/libXi.so.6.0 +${COMPAT_XLIBDIR}/libXmu.so.6.0 +${COMPAT_XLIBDIR}/libXp.so.6.2 +${COMPAT_XLIBDIR}/libXt.so.6.0 +${COMPAT_XLIBDIR}/libXtst.so.6.1 +${COMPAT_XLIBDIR}/liboldX.so.6.0 |