<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>