<pre style='margin:0'>
Marius Schamschula (Schamschula) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/5356ed1a6d5b3352b36e67445cecd179317879a3">https://github.com/macports/macports-ports/commit/5356ed1a6d5b3352b36e67445cecd179317879a3</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 5356ed1a6d5 octave-1.0.tcl: add support for bitbucket, github and gitlab repos
</span>5356ed1a6d5 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 5356ed1a6d5b3352b36e67445cecd179317879a3
</span>Author: Marius Schamschula <mschamschula@gmail.com>
AuthorDate: Mon Feb 5 19:27:14 2024 -0600

<span style='display:block; white-space:pre;color:#404040;'>    octave-1.0.tcl: add support for bitbucket, github and gitlab repos
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    This is backwards compatible and also supports sourceforge
</span><span style='display:block; white-space:pre;color:#404040;'>    packages while linking to their new homepages on github
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/69210
</span>---
 _resources/port1.0/group/octave-1.0.tcl | 91 ++++++++++++++++++++++++++-------
 1 file changed, 73 insertions(+), 18 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/_resources/port1.0/group/octave-1.0.tcl b/_resources/port1.0/group/octave-1.0.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 8c06c9bc956..7c957786f01 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/_resources/port1.0/group/octave-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/_resources/port1.0/group/octave-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -6,11 +6,18 @@
</span> # Usage:
 #
 #   PortGroup               octave 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+#   octave.repo             bitbucket, github, gitlab, or sourceforge
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#   octave.author           bitbucket, GitHub, gitlab author.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#                           Value is ignored on sourceforge (use octave)
</span> #   octave.module           module
 #
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# where module is the name of the module (e.g. communications)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#   tag_prefix and tag_suffix are optional arguments
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#   see the bitbucket, github, gitlab PortGroups for details.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#   where module is the name of the module w/o the octave- prefix
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#   (e.g. communications)
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-options octave.module octave.config_h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+options octave.author octave.module octave.config_h
</span> 
 # do not use this option unless absolutely necessary
 # see comments below
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -18,43 +25,91 @@ options octave.module octave.config_h
</span> default octave.config_h {no}
 
 # some header files from Octave require C++-11
<span style='display:block; white-space:pre;background:#ffe0e0;'>-compiler.cxx_standard  2011
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.cxx_standard       2011
</span> # error: field has incomplete type 'const octave::cdef_class'
 PortGroup compiler_blacklist_versions 1.0
 compiler.blacklist-append {clang < 700}
 
 # see https://trac.macports.org/ticket/51643
<span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup muniversal 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup                   muniversal 1.0
</span> default universal_archs_supported {i386 x86_64}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-proc octave.setup {module version} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    global octave.module
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    octave.module               ${module}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    version                     ${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+proc octave.setup {repo author {module ""} {version ""} {tag_prefix ""} {tag_suffix ""}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    global octave.author octave.module
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {$module eq ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # backward compatible behavior with two arguments: module version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        octave.module       ${repo}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        version             ${author}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        default homepage    https://gnu-octave.github.io/packages/${repo}/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        default master_sites \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            [list sourceforge:project/octave/Octave%20Forge%20Packages/Individual%20Package%20Releases \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            sourceforge:octave]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # default behavior
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        octave.author       ${author}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        octave.module       ${module}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        version             ${version}
</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;'>+    # handle repos
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    switch -- ${repo} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        "bitbucket" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            PortGroup       bitbucket 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            bitbucket.setup ${author} ${module} ${version} ${tag_prefix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            bitbucket.tarball_from \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            downloads
</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;'>+        "github" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            PortGroup       github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            github.setup    ${author} ${module} ${version} ${tag_prefix} ${tag_suffix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            github.tarball_from \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            archive
</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;'>+        "gitlab" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            PortGroup       gitlab 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            gitlab.setup    ${author} ${module} ${version} ${tag_prefix} ${tag_suffix}
</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;'>+        "sourceforge" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             default homepage \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            https://gnu-octave.github.io/packages/${octave.module}/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             default master_sites \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            [list sourceforge:project/octave/Octave%20Forge%20Packages/Individual%20Package%20Releases \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            sourceforge:octave]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span> }
 
 option_proc octave.module octave.set_module
 proc octave.set_module {opt action args} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    global octave.module
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    global octave.author octave.module
</span>     if {$action eq "set"} {
         name     octave-${octave.module}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        homepage https://octave.sourceforge.io/${octave.module}/
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-default categories   "octave math science"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-default master_sites [list sourceforge:project/octave/Octave%20Forge%20Packages/Individual%20Package%20Releases \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        sourceforge:octave]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-default distname     {${octave.module}-${version}}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-default worksrcdir   {${octave.module}}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default categories  "octave math science"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default distname    {${octave.module}-${version}}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default worksrcdir  {${octave.module}}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # do not build in parallel; many can't, and these are small builds
 # anyway, so no major need for this.
 default use_parallel_build {no}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> default livecheck.type     {regex}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-default livecheck.url      {https://octave.sourceforge.io/${octave.module}/}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-default livecheck.regex    {"package=${octave.module}-(\\\\d+(.\\\\d+)*)"}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default livecheck.url      {https://gnu-octave.github.io/packages/${octave.module}/}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default livecheck.regex    {"${octave.module}-(\\\\d+(.\\\\d+)*)"}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  path:bin/octave:octave
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib-append   path:bin/octave:octave
</span> # do not force all Portfiles to switch from depends_lib to depends_lib-append
 proc octave.add_dependencies {} {
     depends_lib-delete path:bin/octave:octave
</pre><pre style='margin:0'>

</pre>