diff options
author | jlam <jlam@pkgsrc.org> | 2007-07-29 05:18:36 +0000 |
---|---|---|
committer | jlam <jlam@pkgsrc.org> | 2007-07-29 05:18:36 +0000 |
commit | 28eeb8a5663998ab6cfc07ef15ed10e5d97cf91d (patch) | |
tree | 45cad36d8470a568b9136017b2dd79c9efcc65bc /emulators/suse91_linux | |
parent | 566d930409bea6d1ac48d9e1a3be5e5e1a6296e5 (diff) | |
download | pkgsrc-28eeb8a5663998ab6cfc07ef15ed10e5d97cf91d.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 'emulators/suse91_linux')
-rw-r--r-- | emulators/suse91_linux/Makefile.common | 127 | ||||
-rw-r--r-- | emulators/suse91_linux/arch.mk | 19 | ||||
-rw-r--r-- | emulators/suse91_linux/emulator.mk | 47 | ||||
-rw-r--r-- | emulators/suse91_linux/vars.mk | 9 |
4 files changed, 102 insertions, 100 deletions
diff --git a/emulators/suse91_linux/Makefile.common b/emulators/suse91_linux/Makefile.common index d5b873ae048..f672d42f045 100644 --- a/emulators/suse91_linux/Makefile.common +++ b/emulators/suse91_linux/Makefile.common @@ -1,87 +1,70 @@ -# $NetBSD: Makefile.common,v 1.16 2007/01/23 16:54:59 joerg Exp $ +# $NetBSD: Makefile.common,v 1.17 2007/07/29 05:19:17 jlam Exp $ -.include "../../emulators/suse91_linux/vars.mk" -.include "../../emulators/suse91_linux/arch.mk" +SUSE_PKG= yes +SUSE_VERSION= 9.1 +SUSE_VERSION_REQD= ${SUSE_VERSION} -ONLY_FOR_PLATFORM+= NetBSD-[2-9]*-i386 NetBSD-3.99*-x86_64 \ - NetBSD-[4-9]*-x86_64 FreeBSD-*-i386 \ - DragonFly-*-i386 +EMUL_PLATFORMS?= linux-i386 linux-x86_64 -_SUSE_FTP_SUBDIR= suse/discontinued/${SUSE_ARCH_DIR}/9.1/suse/${SUSE_ARCH}/ -_SUSE_FTP_SUBDIR_UPD= suse/discontinued/${SUSE_ARCH_DIR}/update/9.1/rpm/${SUSE_ARCH}/ +.include "../../mk/bsd.prefs.mk" -MASTER_SITE_SUSE91?= ftp://ftp.suse.com/pub/${_SUSE_FTP_SUBDIR} \ - ftp://ftp.suse.com/pub/${_SUSE_FTP_SUBDIR_UPD} \ - ftp://ftp.gwdg.de/pub/linux/suse/ftp.suse.com/${_SUSE_FTP_SUBDIR} \ - ftp://ftp.gwdg.de/pub/linux/suse/ftp.suse.com/${_SUSE_FTP_SUBDIR_UPD} \ - ftp://gd.tuwien.ac.at/linux/suse.com/${_SUSE_FTP_SUBDIR} \ - ftp://gd.tuwien.ac.at/linux/suse.com/${_SUSE_FTP_SUBDIR_UPD} \ - ftp://mirror.mcs.anl.gov/pub/${_SUSE_FTP_SUBDIR} \ - ftp://mirror.mcs.anl.gov/pub/${_SUSE_FTP_SUBDIR_UPD} \ - ftp://ftp.sh.cvut.cz/MIRRORS/${_SUSE_FTP_SUBDIR:C/^suse/suse\/pub/} \ - ftp://ftp.sh.cvut.cz/MIRRORS/${_SUSE_FTP_SUBDIR_UPD:C/^suse/suse\/pub/} +# The SuSE 10.x Linux packages are only usable on the following platforms. +ONLY_FOR_PLATFORM+= DragonFly-*-i386 +ONLY_FOR_PLATFORM+= FreeBSD-*-i386 +ONLY_FOR_PLATFORM+= NetBSD-[2-9]*-i386 +ONLY_FOR_PLATFORM+= NetBSD-3.99*-x86_64 +ONLY_FOR_PLATFORM+= NetBSD-[4-9]*-x86_64 +# _SUSE_ARCH.* is a table of ${EMUL_ARCH} to SuSE architectures. +_SUSE_ARCH.${EMUL_ARCH}= ${EMUL_ARCH} +_SUSE_ARCH.i386= i586 +_SUSE_ARCH= ${_SUSE_ARCH.${EMUL_ARCH}} +SUSE_ARCH= ${_SUSE_ARCH} + +_SUSE_FTP_SUBDIR= suse/discontinued/${MACHINE_ARCH}/9.1/suse/${SUSE_ARCH}/ +_SUSE_FTP_SUBDIR_UPD= suse/discontinued/${MACHINE_ARCH}/update/9.1/rpm/${SUSE_ARCH}/ + +MASTER_SITE_SUSE_${SUSE_VERSION}= \ + ftp://ftp.suse.com/pub/${_SUSE_FTP_SUBDIR} \ + ftp://ftp.suse.com/pub/${_SUSE_FTP_SUBDIR_UPD} \ + ftp://ftp.gwdg.de/pub/linux/suse/ftp.suse.com/${_SUSE_FTP_SUBDIR} \ + ftp://ftp.gwdg.de/pub/linux/suse/ftp.suse.com/${_SUSE_FTP_SUBDIR_UPD} \ + ftp://gd.tuwien.ac.at/linux/suse.com/${_SUSE_FTP_SUBDIR} \ + ftp://gd.tuwien.ac.at/linux/suse.com/${_SUSE_FTP_SUBDIR_UPD} \ + ftp://mirror.mcs.anl.gov/pub/${_SUSE_FTP_SUBDIR} \ + ftp://mirror.mcs.anl.gov/pub/${_SUSE_FTP_SUBDIR_UPD} \ + ftp://ftp.sh.cvut.cz/MIRRORS/${_SUSE_FTP_SUBDIR:C/^suse/suse\/pub/} \ + ftp://ftp.sh.cvut.cz/MIRRORS/${_SUSE_FTP_SUBDIR_UPD:C/^suse/suse\/pub/} + +MASTER_SITES?= ${MASTER_SITE_SUSE_${SUSE_VERSION}} DIST_SUBDIR?= suse${SUSE_VERSION:S/.//}/${SUSE_ARCH} +HOMEPAGE?= http://www.suse.com/ + WRKSRC?= ${WRKDIR} +BUILD_DIRS?= # empty MANCOMPRESSED?= yes -EMULSUBDIR= emul/linux -EMULDIR= ${PREFIX}/${EMULSUBDIR} +EMUL_PKG_FMT?= rpm +RPM2PKG_PREFIX?= ${PREFIX} +RPM2PKG_SUBPREFIX?= ${EMULSUBDIR} +RPM2PKG_STAGE?= do-install -# Set location of OPSYS-specific emulation directory -.if ${OPSYS} == "NetBSD" -OPSYS_EMULDIR= /${EMULSUBDIR} -.elif (${OPSYS} == "FreeBSD") || (${OPSYS} == "DragonFly") -OPSYS_EMULDIR= /compat/${EMULSUBDIR:T} +.if (${EMUL_ARCH} == "i386") && (${MACHINE_ARCH} == "x86_64") +PKGNAME:= ${DISTNAME:S/^suse_/suse32_/} +COMMENT:= ${COMMENT:S/Linux/Linux 32-bit/} +LINUX_BASE= linux32 .else -OPSYS_EMULDIR= /${EMULSUBDIR} -.endif -FILES_SUBST+= OPSYS_EMULDIR=${OPSYS_EMULDIR:Q} - -RPM2PKG= ${PREFIX}/sbin/rpm2pkg -BUILD_DEPENDS+= rpm2pkg>=2.1:../../pkgtools/rpm2pkg - -BUILD_DEFS+= RPMFILES -.if defined(RPMIGNOREPATH) -BUILD_DEFS+= RPMIGNOREPATH +LINUX_BASE= linux .endif +PLIST_SUBST+= LINUX_BASE=${LINUX_BASE:Q} +FILES_SUBST+= LINUX_BASE=${LINUX_BASE:Q} -# The SuSE Linux packages have circular dependencies. -LDD?= ${TRUE} +LINUX_LIBSUBDIR?= lib +PLIST_SUBST+= LINUX_LIBSUBDIR=${LINUX_LIBSUBDIR:Q} +FILES_SUBST+= LINUX_LIBSUBDIR=${LINUX_LIBSUBDIR:Q} -RPM2PKGSTRIP?= 1 -RPM2PKGARGS?= -d ${PREFIX} -f ${PLIST_SRC} -p ${EMULSUBDIR} -.if empty(RPM2PKGSTRIP:M0) -RPM2PKGARGS+= -s ${RPM2PKGSTRIP} -.endif -.for TEMP in ${RPMIGNOREPATH} -RPM2PKGARGS+= -i ${TEMP} -.endfor -.for TEMP in ${RPMFILES} -RPM2PKGARGS+= ${DISTDIR}/${DIST_SUBDIR}/${TEMP} -.endfor - -.if !target(do-install) -do-install: - @if [ -f ${PKGDIR}/PLIST ]; then \ - ${CP} ${PKGDIR}/PLIST ${PLIST_SRC}; \ - else \ - ${RM} -f ${PLIST_SRC}; \ - ${CP} ${PKGSRCDIR}/emulators/suse_linux/PLIST_dynamic ${PLIST_SRC} ; \ - fi - @if [ -f ${PKGDIR}/PLIST_rpmfix.${MACHINE_ARCH} ]; then \ - ${SED} -e 's,^/,${EMULSUBDIR}/,' ${PKGDIR}/PLIST_rpmfix.${MACHINE_ARCH} >> ${PLIST_SRC}; \ - fi - ${RPM2PKG} ${RPM2PKGARGS} - @if ${GREP} -q 'lib.*\.so' ${PLIST_SRC}; then \ - ${ECHO_MSG} "===> [Automatic Linux shared object handling]"; \ - ${EMULDIR}/sbin/ldconfig -r ${EMULDIR}; \ - ${MV} -f ${PLIST_SRC} ${PLIST_SRC}.old; \ - ${GREP} -v '^@dirrm' ${PLIST_SRC}.old >${PLIST_SRC} || ${TRUE}; \ - ${ECHO} "@exec %D/${EMULSUBDIR}/sbin/ldconfig -r %D/${EMULSUBDIR}" >>${PLIST_SRC}; \ - ${ECHO} "@unexec %D/${EMULSUBDIR}/sbin/ldconfig -r %D/${EMULSUBDIR} 2>/dev/null" >>${PLIST_SRC}; \ - ${GREP} '^@dirrm' ${PLIST_SRC}.old >>${PLIST_SRC} || ${TRUE}; \ - ${RM} -f ${PLIST_SRC}.old; \ - fi -.endif +# Include an "override" SuSE-specific and architecture-specific +# Makefile fragment if it exists. +# +.sinclude "suse.${EMUL_ARCH}.mk" diff --git a/emulators/suse91_linux/arch.mk b/emulators/suse91_linux/arch.mk deleted file mode 100644 index c4db621bfeb..00000000000 --- a/emulators/suse91_linux/arch.mk +++ /dev/null @@ -1,19 +0,0 @@ -# $NetBSD: arch.mk,v 1.1.1.1 2004/07/13 10:31:15 tron Exp $ - -.ifndef SUSE_ARCH_MK -SUSE_ARCH_MK=1 - -.include "../../mk/bsd.prefs.mk" - -.if ${MACHINE_ARCH} == "i386" -SUSE_ARCH?= i586 -SUSE_ARCH_DIR?= ${MACHINE_ARCH} -.elif ${MACHINE_ARCH} == "powerpc" -SUSE_ARCH?= ppc -.else -SUSE_ARCH?= ${MACHINE_ARCH} -.endif - -SUSE_ARCH_DIR?= ${SUSE_ARCH} - -.endif # SUSE_ARCH_MK diff --git a/emulators/suse91_linux/emulator.mk b/emulators/suse91_linux/emulator.mk new file mode 100644 index 00000000000..1ec73cab815 --- /dev/null +++ b/emulators/suse91_linux/emulator.mk @@ -0,0 +1,47 @@ +# $NetBSD: emulator.mk,v 1.1 2007/07/29 05:19:17 jlam Exp $ +# +# This file is included by linux-suse.mk in the emulator framework. +# +# Variables set by this file: +# +# EMUL_DISTRO +# The SuSE Linux distribution. +# +# DEPENDS_${EMUL_DISTRO}.* +# A table that maps "modules" to SuSE package dependencies. +# + +EMUL_DISTRO= suse-9.1 + +.if defined(SUSE_PKG) +_SUSE_VERSION_REQD= -${SUSE_VERSION_REQD}{,nb*} +.else +_SUSE_VERSION_REQD= >=${SUSE_VERSION_REQD} +.endif + +# DEPENDS_suse-9.1.* maps Linux "modules" to SuSE package dependencies. +DEPENDS_suse-9.1.aspell?= suse_aspell${_SUSE_VERSION_REQD}:../../emulators/suse91_aspell +DEPENDS_suse-9.1.base?= suse_base${_SUSE_VERSION_REQD}:../../emulators/suse91_base +DEPENDS_suse-9.1.compat?= suse_compat${_SUSE_VERSION_REQD}:../../emulators/suse91_compat +DEPENDS_suse-9.1.expat?= suse_expat${_SUSE_VERSION_REQD}:../../emulators/suse91_expat +DEPENDS_suse-9.1.fontconfig?= suse_fontconfig${_SUSE_VERSION_REQD}:../../emulators/suse91_fontconfig +DEPENDS_suse-9.1.freetype2?= suse_freetype2${_SUSE_VERSION_REQD}:../../emulators/suse91_freetype2 +DEPENDS_suse-9.1.gdk-pixbuf?= suse_gdk-pixbuf${_SUSE_VERSION_REQD}:../../emulators/suse91_gdk-pixbuf +DEPENDS_suse-9.1.glx?= suse_glx${_SUSE_VERSION_REQD}:../../emulators/suse91_glx +DEPENDS_suse-9.1.gtk?= suse_gtk${_SUSE_VERSION_REQD}:../../emulators/suse91_gtk +DEPENDS_suse-9.1.gtk2?= suse_gtk2${_SUSE_VERSION_REQD}:../../emulators/suse91_gtk2 +DEPENDS_suse-9.1.jpeg?= suse_libjpeg${_SUSE_VERSION_REQD}:../../emulators/suse91_libjpeg +DEPENDS_suse-9.1.locale?= suse_locale${_SUSE_VERSION_REQD}:../../emulators/suse91_locale +DEPENDS_suse-9.1.motif?= suse_openmotif${_SUSE_VERSION_REQD}:../../emulators/suse91_openmotif +DEPENDS_suse-9.1.png?= suse_libpng${_SUSE_VERSION_REQD}:../../emulators/suse91_libpng +DEPENDS_suse-9.1.slang?= suse_slang${_SUSE_VERSION_REQD}:../../emulators/suse91_slang +DEPENDS_suse-9.1.tiff?= suse_libtiff${_SUSE_VERSION_REQD}:../../emulators/suse91_libtiff +DEPENDS_suse-9.1.vmware?= suse_vmware${_SUSE_VERSION_REQD}:../../emulators/suse91_vmware +DEPENDS_suse-9.1.x11?= suse_x11${_SUSE_VERSION_REQD}:../../emulators/suse91_x11 + +.if (${EMUL_ARCH} == "i386") && (${MACHINE_ARCH} == "x86_64") +. for _mod_ in ${_LINUX_MODULES} +DEPENDS_suse-9.1.${_mod_}:= \ + ${DEPENDS_suse-9.1.${_mod_}:S/^suse_/suse32_/} +. endfor +.endif diff --git a/emulators/suse91_linux/vars.mk b/emulators/suse91_linux/vars.mk deleted file mode 100644 index ffe221743bb..00000000000 --- a/emulators/suse91_linux/vars.mk +++ /dev/null @@ -1,9 +0,0 @@ -# $NetBSD: vars.mk,v 1.1 2005/04/03 21:23:15 jdolecek Exp $ - -.ifndef SUSE_VARS_MK -SUSE_VARS_MK=1 - -SUSE_DIR_PREFIX= suse91 -SUSE_VERSION= 9.1 - -.endif # SUSE_VARS_MK |