summaryrefslogtreecommitdiff
path: root/emulators/suse91_linux
diff options
context:
space:
mode:
authorjlam <jlam@pkgsrc.org>2007-07-29 05:18:36 +0000
committerjlam <jlam@pkgsrc.org>2007-07-29 05:18:36 +0000
commit28eeb8a5663998ab6cfc07ef15ed10e5d97cf91d (patch)
tree45cad36d8470a568b9136017b2dd79c9efcc65bc /emulators/suse91_linux
parent566d930409bea6d1ac48d9e1a3be5e5e1a6296e5 (diff)
downloadpkgsrc-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.common127
-rw-r--r--emulators/suse91_linux/arch.mk19
-rw-r--r--emulators/suse91_linux/emulator.mk47
-rw-r--r--emulators/suse91_linux/vars.mk9
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