<pre style='margin:0'>
Ryan Schmidt (ryandesign) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/f6eb5a8f82f29a591338ece6f589a59329867ad2">https://github.com/macports/macports-ports/commit/f6eb5a8f82f29a591338ece6f589a59329867ad2</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit f6eb5a8f82f29a591338ece6f589a59329867ad2
</span>Author: Ryan Schmidt <ryandesign@macports.org>
AuthorDate: Mon Jun 11 18:32:44 2018 -0500
<span style='display:block; white-space:pre;color:#404040;'> minivmac*: Use a subport for each model
</span>---
emulators/minivmac-devel/Portfile | 248 ++++++++++++++++++++++++++------------
emulators/minivmac/Portfile | 242 +++++++++++++++++++++++++------------
2 files changed, 340 insertions(+), 150 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/emulators/minivmac-devel/Portfile b/emulators/minivmac-devel/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 20ad9ca..23dce72 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/emulators/minivmac-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/emulators/minivmac-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,9 +4,11 @@ PortSystem 1.0
</span>
# Please keep the minivmac and minivmac-devel ports as similar as possible.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-name minivmac-devel
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-conflicts minivmac
</span> set my_name minivmac
<span style='display:block; white-space:pre;background:#e0ffe0;'>+set my_suffix -devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name ${my_name}${my_suffix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set my_subport [regsub -- {-devel$} ${subport} {}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts [lsearch -all -inline -not -exact [list ${my_subport} ${my_subport}-devel] ${subport}]
</span> epoch 4
version 36.00alpha-20180506
set branch [join [lrange [split ${version} .] 0 1] .]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -15,21 +17,55 @@ categories emulators aqua
</span> maintainers {ryandesign @ryandesign}
license GPL-2
homepage http://www.gryphel.com/c/minivmac/alpha.html
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_zip yes
</span> platforms macosx
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_parallel_build yes
</span> dist_subdir ${my_name}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#distname ${my_name}${my_version}-${branch}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-distname ${my_name}${my_version}
</span>
description an emulator of the Macintosh Plus and other early Macintosh models
<span style='display:block; white-space:pre;background:#ffe0e0;'>-long_description The Mini vMac emulator helps preserve software made for early \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Macintosh computers -- those sold by Apple from 1984 to 1996 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- based on Motorola's 680x0 microprocessors. \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- The best-tested version emulates a Macintosh Plus, but there are \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- also emulations of the Macintosh 128K, 512K, 512Ke, SE, Classic, \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- and SE FDHD, and work on Macintosh II emulation is in progress.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description Mini vMac emulates early Macintosh computers that use \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Motorola's 680x0 processors, sold by Apple from 1984 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ to 1996.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+options my_variations
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default my_variations {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} eq ${name}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ livecheck.type regex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ livecheck.url ${homepage}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# livecheck.version ${my_version}-${branch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ livecheck.version ${my_version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ livecheck.regex ${my_name}-?(\[0-9.-\]+)\\.src
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ The best-tested variation emulates a Macintosh Plus, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ but it can also emulate a Macintosh 128K, 512K, 512Ke, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SE, SE FDHD, Classic, or Macintosh II.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ supported_archs noarch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_run port:${my_name}-plus${my_suffix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ distfiles
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ use_configure no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${prefix}/share/doc/${subport}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system "echo ${subport} is a stub port > ${destroot}${prefix}/share/doc/${subport}/README"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ notes "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ The ${subport} stub port is not meant to be installed. Instead,\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ install one (or more) of the available subports corresponding to the\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Macintosh model(s) you wish to emulate. Use `port info --subports\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${subport}\' to see the list of available subports.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ livecheck.type none
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ supported_archs i386 ppc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# distname ${my_name}${my_version}-${branch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ distname ${my_name}${my_version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ use_zip yes
</span>
master_sites http://www.gryphel.com/d/minivmac/c/:minivmacsource \
sourceforge:project/minivmac/minivmac-extras/extras6:minivmacextras6 \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -92,35 +128,7 @@ set my_bootstrap_app "Mini vMac Bootstrap.app"
</span> set my_rom_file vMac.ROM
set my_base_options "-ef 1 -maintainer MacPorts -homepage https://www.macports.org -cl -eol unx -sony-sum 1 -sony-tag 1"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-options my_variations
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-my_variations {128K} {-m 128K} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {512K} {-m 128K -mem 512K} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {512Ke} {-m 512Ke} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {Plus} {-m Plus -im 1} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {SE} {-m SE} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {SE FDHD} {-m SEFDHD} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {Classic} {-m Classic} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {II} {-m II -mem 8M -hres 800 -vres 600 -depth 3}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# To build the bootstrap, use "sudo port install bootstrap=yes +bootstrap".
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# The variant is hidden because it is useful only to the port maintainer.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {[tbool bootstrap]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- variant bootstrap conflicts unsupported requires universal description {Build the bootstrap version of Mini vMac} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- my_variations {Bootstrap} {-m Plus -as 0 -bg 1 -mf 1 -sound 0 -speed a -var-fullscreen 0}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_build-append port:p7zip
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_skip_archcheck p7zip
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- post-destroot {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- exec 7za a ${destroot}${my_app_dir}/${my_name}-bootstrap-${version}_${revision}.zip ${destroot}${my_app_dir}/${my_bootstrap_app}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- default_variants +bootstrap
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-variant universal {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.universal_args
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.universal_archs ppc i386
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-supported_archs i386 ppc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.universal_archs {*}${supported_archs}
</span>
pre-extract {
if {[my_real_rom_file] eq ""} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -213,6 +221,7 @@ pre-configure {
</span> foreach my_arch [get_canonical_archs] {
set my_target [my_arch_to_target ${my_arch}]
foreach {my_machine my_variation_options} ${my_variations} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ set my_variation ${my_version}_${revision}-[strsed [string tolower ${my_machine}] {g/[^a-z0-9_-]//}]-${my_target}
</span> if {${i} > 0} {
lappend configure_args \;
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -220,7 +229,7 @@ pre-configure {
</span> ${my_base_options} \
-t ${my_target} \
${my_variation_options} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- -n ${my_version}_${revision}-[strsed [string tolower ${my_machine}] {g/[^a-z0-9_-]//}]-${my_target}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -n ${my_variation}
</span> incr i
}
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -281,7 +290,7 @@ post-configure {
</span> system -W ${build.dir} "tar xf '${my_src_tarball}'"
move ${build.dir}/${my_variation} ${build.dir}/${my_variation_dir}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[variant_exists bootstrap] && [variant_isset bootstrap]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${subport} eq "${my_name}-bootstrap${my_suffix}"} {
</span> # Change the "export" function so that exported files are written to the same
# directory as Mini vMac, instead of prompting for a location.
system -W ${build.dir}/${my_variation_dir} "patch -p0 < ${filespath}/patch-src-MYOSGLUE.c.diff"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -308,45 +317,26 @@ post-configure {
</span> }
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set my_share_dir ${prefix}/share/${my_name}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> post-build {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- set i 0
</span> foreach my_arch [get_canonical_archs] {
set my_target [my_arch_to_target ${my_arch}]
foreach {my_machine unused} ${my_variations} {
if {[variant_isset universal]} {
reinplace "s|${my_target}|umch|" ${build.dir}/${my_arch}/${my_machine}/minivmac.app/Contents/Info.plist
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if {![variant_exists bootstrap] || ![variant_isset bootstrap]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # To save space, keep only a single copy of the Resources directory.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set my_resources_dir ${build.dir}/${my_arch}/${my_machine}/minivmac.app/Contents/Resources
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {0 == ${i}} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- move ${my_resources_dir} ${build.dir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- delete ${my_resources_dir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ln -s ${my_share_dir}/Resources ${my_resources_dir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- incr i
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Install the prettier icons.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 0644 ${worksrcpath}/${my_icons}/icons/AppIcon.icns \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${build.dir}/${my_arch}/${my_machine}/minivmac.app/Contents/Resources/ICONAPPO.icns
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 0644 ${worksrcpath}/${my_icons}/icons/DskIcon.icns \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${build.dir}/${my_arch}/${my_machine}/minivmac.app/Contents/Resources/ICONDSKO.icns
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 0644 ${worksrcpath}/${my_icons}/icons/RomIcon.icns \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${build.dir}/${my_arch}/${my_machine}/minivmac.app/Contents/Resources/ICONROMO.icns
</span> }
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {![variant_exists bootstrap] || ![variant_isset bootstrap]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Install the prettier icons.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -m 0644 ${worksrcpath}/${my_icons}/icons/AppIcon.icns ${build.dir}/Resources/ICONAPPO.icns
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -m 0644 ${worksrcpath}/${my_icons}/icons/DskIcon.icns ${build.dir}/Resources/ICONDSKO.icns
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -m 0644 ${worksrcpath}/${my_icons}/icons/RomIcon.icns ${build.dir}/Resources/ICONROMO.icns
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span> }
destroot {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if {![variant_exists bootstrap] || ![variant_isset bootstrap]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Install the global Resources directory.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -d ${destroot}${my_share_dir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- copy ${build.dir}/Resources ${destroot}${my_share_dir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> # Install the programs.
foreach my_arch [get_canonical_archs] {
if {[variant_isset universal]} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -365,6 +355,118 @@ destroot {
</span> }
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ pre-activate {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {![catch {set installed [lindex [registry_active ${name}] 0]}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set installed_version [lindex ${installed} 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set installed_revision [lindex ${installed} 2]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set installed_epoch [lindex ${installed} 5]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[vercmp ${installed_epoch} 4] < 0 || (
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [vercmp ${installed_epoch} 4] == 0 && (
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [vercmp ${installed_version} 36.00alpha-20180506] < 0 || (
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [vercmp ${installed_version} 36.00alpha-20180506] == 0 && [vercmp ${installed_revision} 1] < 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ )} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ registry_deactivate_composite ${name} "" [list ports_nodepcheck 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-128k${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {128K} {-m 128K}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-512k${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {512K} {-m 128K -mem 512K}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-512ke${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {512Ke} {-m 512Ke}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-plus${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {Plus} {-m Plus}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants +icon_master
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-se${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {SE} {-m SE}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-sefdhd${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {SE FDHD} {-m SEFDHD}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-classic${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {Classic} {-m Classic}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-ii${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {II} {-m II -mem 8M -hres 800 -vres 600 -depth 3}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# To build the bootstrap application, use:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# sudo port destroot minivmac-devel bootstrap=yes subport=minivmac-bootstrap-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# The subport is hidden because it is useful only to the port maintainer.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {[tbool bootstrap]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ subport ${my_name}-bootstrap${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {Bootstrap} {-m Plus -as 0 -bg 1 -mf 1 -sound 0 -speed a -var-fullscreen 0}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description Mini vMac Bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description A copy of Mini vMac specially configured to be \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ used to build other copies of Mini vMac.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build-append port:p7zip
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_skip_archcheck-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ p7zip
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants +universal
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set output_archive ${workpath}/${my_name}-bootstrap-${version}_${revision}.zip
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ exec 7za a ${output_archive} ${destroot}${my_app_dir}/${my_bootstrap_app}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_msg "The distribution zip file has been created:"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_msg
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_msg "${output_archive}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {![variant_isset universal] || "ppc" ni ${configure.universal_archs}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_msg
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_warn "DON'T DISTRIBUTE THIS FILE! It doesn't contain all the"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_warn "necessary architectures. To build a distributable"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_warn "bootstrap app, use the universal variant and build on"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_warn "Mac OS X Leopard or Snow Leopard."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} ni [list "${my_name}${my_suffix}" "${my_name}-bootstrap${my_suffix}"]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description a Macintosh [lindex ${my_variations} 0] emulator
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ This subport emulates a Macintosh \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [lindex ${my_variations} 0].
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[lindex ${my_variations} 0] eq "Plus"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ This is the best-tested variation.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ There are other subports that emulate other Macintosh \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ models.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ variant icon_master description {Take ownership of disk image files and ROM image files; at most one copy of Mini vMac should do this} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set my_base_options "${my_base_options} -im 1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # Returns the full path to the ROM file, wherever the user has it,
# or the empty string if the user doesn't have it.
proc my_real_rom_file {} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -415,9 +517,3 @@ proc my_detach_disk_image {mountpoint} {
</span> system "hdiutil detach ${mountpoint} -force"
delete ${mountpoint}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.type regex
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.url ${homepage}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#livecheck.version ${my_version}-${branch}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.version ${my_version}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.regex ${my_name}-?(\[0-9.-\]+)\\.src
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/emulators/minivmac/Portfile b/emulators/minivmac/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 8fcd350..573d5a2 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/emulators/minivmac/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/emulators/minivmac/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,29 +4,63 @@ PortSystem 1.0
</span>
# Please keep the minivmac and minivmac-devel ports as similar as possible.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-name minivmac
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-conflicts minivmac-devel
</span> set my_name minivmac
<span style='display:block; white-space:pre;background:#e0ffe0;'>+set my_suffix {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name ${my_name}${my_suffix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set my_subport [regsub -- {-devel$} ${subport} {}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts [lsearch -all -inline -not -exact [list ${my_subport} ${my_subport}-devel] ${subport}]
</span> version 3.5.8
set my_version [strsed ${version} {g/^.*-20//}]
categories emulators aqua
maintainers {ryandesign @ryandesign}
license GPL-2
homepage http://www.gryphel.com/c/minivmac/
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_zip yes
</span> platforms macosx
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_parallel_build yes
</span> dist_subdir ${my_name}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-distname ${my_name}-${my_version}
</span>
description an emulator of the Macintosh Plus and other early Macintosh models
<span style='display:block; white-space:pre;background:#ffe0e0;'>-long_description The Mini vMac emulator helps preserve software made for early \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Macintosh computers -- those sold by Apple from 1984 to 1996 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- based on Motorola's 680x0 microprocessors. \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- The best-tested version emulates a Macintosh Plus, but there are \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- also emulations of the Macintosh 128K, 512K, 512Ke, SE, Classic, \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- and SE FDHD, and work on Macintosh II emulation is in progress.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description Mini vMac emulates early Macintosh computers that use \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Motorola's 680x0 processors, sold by Apple from 1984 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ to 1996.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+options my_variations
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default my_variations {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} eq ${name}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ livecheck.type regex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ livecheck.url ${homepage}doc/download.html
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ livecheck.regex ${my_name}-(\[0-9.\]+)\\.src
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ The best-tested variation emulates a Macintosh Plus, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ but it can also emulate a Macintosh 128K, 512K, 512Ke, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SE, SE FDHD, Classic, or Macintosh II.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ supported_archs noarch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_run port:${my_name}-plus${my_suffix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ distfiles
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ use_configure no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${prefix}/share/doc/${subport}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system "echo ${subport} is a stub port > ${destroot}${prefix}/share/doc/${subport}/README"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ notes "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ The ${subport} stub port is not meant to be installed. Instead,\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ install one (or more) of the available subports corresponding to the\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Macintosh model(s) you wish to emulate. Use `port info --subports\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${subport}\' to see the list of available subports.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ livecheck.type none
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ supported_archs i386 ppc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ distname ${my_name}-${my_version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ use_zip yes
</span>
master_sites http://www.gryphel.com/d/minivmac/minivmac-${my_version}/:minivmacsource \
sourceforge:project/minivmac/minivmac-extras/extras6:minivmacextras6 \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -88,35 +122,7 @@ set my_bootstrap_app "Mini vMac Bootstrap.app"
</span> set my_rom_file vMac.ROM
set my_base_options "-maintainer MacPorts -homepage https://www.macports.org -cl -eol unx -sony-sum 1 -sony-tag 1"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-options my_variations
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-my_variations {128K} {-m 128K} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {512K} {-m 128K -mem 512K} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {512Ke} {-m 512Ke} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {Plus} {-m Plus -im 1} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {SE} {-m SE} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {SE FDHD} {-m SEFDHD} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {Classic} {-m Classic} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {II} {-m II -mem 8M -hres 800 -vres 600 -depth 3}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# To build the bootstrap, use "sudo port install bootstrap=yes +bootstrap".
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# The variant is hidden because it is useful only to the port maintainer.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {[tbool bootstrap]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- variant bootstrap conflicts unsupported requires universal description {Build the bootstrap version of Mini vMac} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- my_variations {Bootstrap} {-m Plus -as 0 -bg 1 -mf 1 -sound 0 -speed a -var-fullscreen 0}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_build-append port:p7zip
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_skip_archcheck p7zip
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- post-destroot {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- exec 7za a ${destroot}${my_app_dir}/${my_name}-bootstrap-${version}_${revision}.zip ${destroot}${my_app_dir}/${my_bootstrap_app}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- default_variants +bootstrap
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-variant universal {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.universal_args
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.universal_archs ppc i386
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-supported_archs i386 ppc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.universal_archs {*}${supported_archs}
</span>
pre-extract {
if {[my_real_rom_file] eq ""} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -185,7 +191,7 @@ post-patch {
</span> # See README-binary-patchfiles.md in the files directory for instructions
# on recreating these binary patchfiles.
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # Modify the AutQuit7 disk to have an alias "app" pointing to the MnvM_b34
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Modify the AutQuit7 disk to have an alias "app" pointing to the MnvM_b35
</span> # application and an 8192-byte TeachText file called "doc" (containing
# "@START@", 8180 periods and spaces, and "@END@").
system -W ${worksrcpath}/${my_autoquit} "${prefix}/bin/bspatch '${my_autoquit}.dsk' '${my_autoquit}.dsk.tmp' '${filespath}/patch-${my_autoquit}.dsk.bsdiff'"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -209,6 +215,7 @@ pre-configure {
</span> foreach my_arch [get_canonical_archs] {
set my_target [my_arch_to_target ${my_arch}]
foreach {my_machine my_variation_options} ${my_variations} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ set my_variation ${my_version}_${revision}-[strsed [string tolower ${my_machine}] {g/[^a-z0-9_-]//}]-${my_target}
</span> if {${i} > 0} {
lappend configure_args \;
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -216,7 +223,7 @@ pre-configure {
</span> ${my_base_options} \
-t ${my_target} \
${my_variation_options} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- -n ${my_version}_${revision}-[strsed [string tolower ${my_machine}] {g/[^a-z0-9_-]//}]-${my_target}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -n ${my_variation}
</span> incr i
}
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -257,7 +264,7 @@ post-configure {
</span> system -W ${build.dir} "tar xf '${my_src_tarball}'"
move ${build.dir}/${my_variation} ${build.dir}/${my_variation_dir}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[variant_exists bootstrap] && [variant_isset bootstrap]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${subport} eq "${my_name}-bootstrap${my_suffix}"} {
</span> # Change the "export" function so that exported files are written to the same
# directory as Mini vMac, instead of prompting for a location.
system -W ${build.dir}/${my_variation_dir} "patch -p0 < ${filespath}/patch-src-MYOSGLUE.c.diff"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -284,45 +291,26 @@ post-configure {
</span> }
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set my_share_dir ${prefix}/share/${my_name}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> post-build {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- set i 0
</span> foreach my_arch [get_canonical_archs] {
set my_target [my_arch_to_target ${my_arch}]
foreach {my_machine unused} ${my_variations} {
if {[variant_isset universal]} {
reinplace "s|${my_target}|umch|" ${build.dir}/${my_arch}/${my_machine}/minivmac.app/Contents/Info.plist
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if {![variant_exists bootstrap] || ![variant_isset bootstrap]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # To save space, keep only a single copy of the Resources directory.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set my_resources_dir ${build.dir}/${my_arch}/${my_machine}/minivmac.app/Contents/Resources
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {0 == ${i}} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- move ${my_resources_dir} ${build.dir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- delete ${my_resources_dir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ln -s ${my_share_dir}/Resources ${my_resources_dir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- incr i
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Install the prettier icons.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 0644 ${worksrcpath}/${my_icons}/icons/AppIcon.icns \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${build.dir}/${my_arch}/${my_machine}/minivmac.app/Contents/Resources/ICONAPPO.icns
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 0644 ${worksrcpath}/${my_icons}/icons/DskIcon.icns \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${build.dir}/${my_arch}/${my_machine}/minivmac.app/Contents/Resources/ICONDSKO.icns
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 0644 ${worksrcpath}/${my_icons}/icons/RomIcon.icns \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${build.dir}/${my_arch}/${my_machine}/minivmac.app/Contents/Resources/ICONROMO.icns
</span> }
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {![variant_exists bootstrap] || ![variant_isset bootstrap]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Install the prettier icons.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -m 0644 ${worksrcpath}/${my_icons}/icons/AppIcon.icns ${build.dir}/Resources/ICONAPPO.icns
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -m 0644 ${worksrcpath}/${my_icons}/icons/DskIcon.icns ${build.dir}/Resources/ICONDSKO.icns
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -m 0644 ${worksrcpath}/${my_icons}/icons/RomIcon.icns ${build.dir}/Resources/ICONROMO.icns
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span> }
destroot {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if {![variant_exists bootstrap] || ![variant_isset bootstrap]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Install the global Resources directory.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -d ${destroot}${my_share_dir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- copy ${build.dir}/Resources ${destroot}${my_share_dir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> # Install the programs.
foreach my_arch [get_canonical_archs] {
if {[variant_isset universal]} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -341,6 +329,116 @@ destroot {
</span> }
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ pre-activate {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {![catch {set installed [lindex [registry_active ${name}] 0]}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set installed_version [lindex ${installed} 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set installed_revision [lindex ${installed} 2]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set installed_epoch [lindex ${installed} 5]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[vercmp ${installed_epoch} 0] == 0 && (
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [vercmp ${installed_version} 3.5.8] < 0 || (
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [vercmp ${installed_version} 3.5.8] == 0 && [vercmp ${installed_revision} 1] < 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ )} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ registry_deactivate_composite ${name} "" [list ports_nodepcheck 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-128k${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {128K} {-m 128K}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-512k${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {512K} {-m 128K -mem 512K}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-512ke${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {512Ke} {-m 512Ke}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-plus${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {Plus} {-m Plus}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants +icon_master
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-se${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {SE} {-m SE}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-sefdhd${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {SE FDHD} {-m SEFDHD}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-classic${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {Classic} {-m Classic}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${my_name}-ii${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {II} {-m II -mem 8M -hres 800 -vres 600 -depth 3}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# To build the bootstrap application, use:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# sudo port destroot minivmac bootstrap=yes subport=minivmac-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# The subport is hidden because it is useful only to the port maintainer.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {[tbool bootstrap]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ subport ${my_name}-bootstrap${my_suffix} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ my_variations {Bootstrap} {-m Plus -as 0 -bg 1 -mf 1 -sound 0 -speed a -var-fullscreen 0}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description Mini vMac Bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description A copy of Mini vMac specially configured to be \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ used to build other copies of Mini vMac.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build-append port:p7zip
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_skip_archcheck-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ p7zip
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants +universal
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set output_archive ${workpath}/${my_name}-bootstrap-${version}_${revision}.zip
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ exec 7za a ${output_archive} ${destroot}${my_app_dir}/${my_bootstrap_app}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_msg "The distribution zip file has been created:"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_msg
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_msg "${output_archive}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {![variant_isset universal] || "ppc" ni ${configure.universal_archs}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_msg
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_warn "DON'T DISTRIBUTE THIS FILE! It doesn't contain all the"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_warn "necessary architectures. To build a distributable"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_warn "bootstrap app, use the universal variant and build on"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_warn "Mac OS X Leopard or Snow Leopard."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} ni [list "${my_name}${my_suffix}" "${my_name}-bootstrap${my_suffix}"]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description a Macintosh [lindex ${my_variations} 0] emulator
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ This subport emulates a Macintosh \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [lindex ${my_variations} 0].
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[lindex ${my_variations} 0] eq "Plus"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ This is the best-tested variation.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ There are other subports that emulate other Macintosh \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ models.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ variant icon_master description {Take ownership of disk image files and ROM image files; at most one copy of Mini vMac should do this} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set my_base_options "${my_base_options} -im 1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # Returns the full path to the ROM file, wherever the user has it,
# or the empty string if the user doesn't have it.
proc my_real_rom_file {} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -375,7 +473,3 @@ proc my_arch_to_target {arch} {
</span> }
}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.type regex
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.url ${homepage}doc/download.html
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.regex ${my_name}-(\[0-9.\]+)\\.src
</span></pre><pre style='margin:0'>
</pre>