Commit graph

60 commits

Author SHA1 Message Date
jlam
ffd0fa8226 * Support netbsd-* as a valid platform in EMUL_PLATFORMS. Use the
pkgsrc/emulator/compat* and pkgsrc/emulator/netbsd32_compat* packages
  to provide the necessary shared libraries to run dynamically linked
  NetBSD binaries from the days of yore.

* Add some additional compat* packages for completeness:

	compat15, compat20, compat30

* Modify the compat* packages so that "compatNM" only provides files
  that aren't in "NetBSD-N.(M+1)".  For example, compat12 only provides
  files that don't exist in NetBSD-1.3.x, compat13 only provides files
  that don't exist in NetBSD-1.4.x, etc.

  As a result, if you are running NetBSD-3.0/alpha and want to run a
  1.3 dynamically linked binary, there is an automatic dependency
  chain that causes the following packages to be installed:

	compat13, compat14, compat15, compat16, compat20

  There are some deviations from this dependency chain on platforms
  that have changed executable formats, e.g. i386, m68, sparc, etc.
  However, in general pkgsrc will require that you have the necessary
  COMPAT_* options in your kernel to match the installed compat*
  packages.  This restriction is an artificial one imposed by pkgsrc,
  but allows for a single set of distfiles to be used on all versions
  of NetBSD.

* Provide compat* package support for every supported architecture
  of NetBSD.  Verily, it is now possible to run 1.2 binaries on
  NetBSD-1.5.3/pc532 by installing the compat12 package from pkgsrc.
  Rejoice, one and all!

* The netbsd32_compat* packages mirror the corresponding compat*
  packages for use by sparc64 and x86_64 to allow running 32-bit
  binaries with COMPAT_NETBSD32 kernel support.  The "extras" packages
  supply the additional shared libraries from the corresponding release
  of NetBSD so that the set of files in /emul/netbsd32 will be complete.

* pkgsrc/emulators/compat_netbsd contains infrastructure files shared
  by all of the compat* packages.
2007-08-21 22:49:02 +00:00
jlam
6aef13a50f Suppress the "depends on installed package(s)" message so it doesn't get
printed for each EMUL_PLATFORM that is supported by the package.
2007-08-13 15:17:09 +00:00
ghen
fbad5e6c89 We forgot DragonFly. 2007-08-03 23:16:02 +00:00
jlam
c30218a3ef Support automatically using pkgsrc/emulators/osf1_lib to satisfy
EMUL_PLATFORM osf1-alpha.
2007-08-01 17:19:22 +00:00
jlam
8101baad23 Support automatically using pkgsrc/emulators/darwin_lib to satisfy
EMUL_PLATFORMs darwin-i386 and darwin-powerpc.
2007-08-01 16:28:08 +00:00
jlam
3f468312f3 Remove unused _EMUL_OPSYSES. 2007-08-01 15:20:10 +00:00
jlam
5321117c50 Automatically add EMUL_{PLATFORM,OPSYS,ARCH} to FILES_SUBST and
PLIST_SUBST to make life easier for package maintainers.
2007-07-31 20:02:48 +00:00
jlam
02381a6b80 Better formatting for the package- and user-settable variables, and
document the emul-* helper targets.
2007-07-29 09:24:33 +00:00
jlam
fdd4eac242 Improve the example by adding a typical use of EMUL_MODULES.linux. 2007-07-29 08:58:52 +00:00
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