[137934] branches/gsoc15-portfile

chunyang at macports.org chunyang at macports.org
Tue Jun 23 03:39:00 PDT 2015


Revision: 137934
          https://trac.macports.org/changeset/137934
Author:   chunyang at macports.org
Date:     2015-06-23 03:39:00 -0700 (Tue, 23 Jun 2015)
Log Message:
-----------
Merge bitbucket2port into github2port

Modified Paths:
--------------
    branches/gsoc15-portfile/github2port/github2port
    branches/gsoc15-portfile/port-create

Removed Paths:
-------------
    branches/gsoc15-portfile/github2port/bitbucket2port

Deleted: branches/gsoc15-portfile/github2port/bitbucket2port
===================================================================
--- branches/gsoc15-portfile/github2port/bitbucket2port	2015-06-23 10:30:09 UTC (rev 137933)
+++ branches/gsoc15-portfile/github2port/bitbucket2port	2015-06-23 10:39:00 UTC (rev 137934)
@@ -1,92 +0,0 @@
-#!/usr/bin/env port-tclsh
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-#
-# Generate a bitbucket group template Portfile given bitbucket homepage or tarball URL
-
-package require uri
-
-proc usage {{channel stderr}} {
-    global argv0
-    puts $channel "Usage: $argv0 URL"
-    puts $channel ""
-    puts $channel "URL is the bitbucket homepage URL"
-    puts $channel ""
-    puts $channel "Example:"
-    puts $channel "  $argv0 https://bitbucket.org/sshguard/sshguard"
-}
-
-proc val_or_def {val def} {
-    expr {$val ne "" ? $val : $def}
-}
-
-proc parse_tarball_name {v} {
-    set version ""
-    set tag_prefix ""
-
-    if {[regexp {[0-9]+([.-][0-9]+)+} $v version]} {
-        if {[string length $version] < [string length $v]} {
-            set tag_prefix [string range $v 0 [expr [string first $version $v] -1]]
-        }
-    }
-    return [list $version $tag_prefix]
-}
-
-proc parse_bitbucket_url {url} {
-    array set urlparts [uri::split $url]
-
-    if {![string equal $urlparts(host) bitbucket.org]} {
-        return -code error \
-            "expected bitbucket url but got \"$url\""
-    }
-
-    set path [split $urlparts(path) /]
-    set author [lindex $path 0]
-    set project [lindex $path 1]
-    set tarball [lindex $path end]
-
-    return [concat $author $project [parse_tarball_name $tarball]]
-}
-
-if {$argc != 1} {
-    usage
-    exit 1
-}
-
-set url [lindex $argv 0]
-set tmp [parse_bitbucket_url $url]
-
-set author     [val_or_def [lindex $tmp 0] "author"]
-set project    [val_or_def [lindex $tmp 1] "project"]
-set version    [val_or_def [lindex $tmp 2] "version"]
-set tag_prefix [val_or_def [lindex $tmp 3] "tag_prefix"]
-
-puts "# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4"
-puts "# \$Id\$"
-puts ""
-puts "PortSystem          1.0"
-
-puts "PortGroup           bitbucket 1.0"
-puts ""
-puts "bitbucket.setup     ${author} ${project} ${version} ${tag_prefix}"
-
-puts "categories          replaceme"
-puts "platforms           darwin"
-
-set maintainers "replaceme"
-
-if {[info exist env(EMAIL)]} {
-    set maintainers $env(EMAIL)
-}
-
-puts "maintainers         $maintainers"
-
-puts "license             replaceme"
-
-puts ""
-puts "description         replaceme"
-puts "long_description    replaceme"
-puts ""
-
-puts ""
-puts "checksums           rmd160  12345 \\"
-puts "                    sha256  6789a"

Modified: branches/gsoc15-portfile/github2port/github2port
===================================================================
--- branches/gsoc15-portfile/github2port/github2port	2015-06-23 10:30:09 UTC (rev 137933)
+++ branches/gsoc15-portfile/github2port/github2port	2015-06-23 10:39:00 UTC (rev 137934)
@@ -8,14 +8,14 @@
 
 proc usage {{channel stderr}} {
     global argv0
-    puts $channel "Usage: $argv0 URL"
+    puts $channel "Usage: $argv0 \[-github|-bitbucket <URL>\]"
     puts $channel ""
-    puts $channel "URL is the github tarball or project URL"
+    puts $channel "URL is the github/bitbucket tarball or project URL"
     puts $channel ""
     puts $channel "Example:"
-    puts $channel "  $argv0 https://github.com/tmux/tmux"
-    puts $channel "  $argv0 https://github.com/tmux/tmux/releases/download/2.0/tmux-2.0.tar.gz"
-    puts $channel "  $argv0 https://github.com/jonas/tig/archive/tig-2.1.1.tar.gz"
+    puts $channel "  $argv0 -github https://github.com/tmux/tmux"
+    puts $channel "  $argv0 -github https://github.com/tmux/tmux/releases/download/2.0/tmux-2.0.tar.gz"
+    puts $channel "  $argv0 -bitbucket https://bitbucket.org/sshguard/sshguard"
 }
 
 proc val_or_def {val def} {
@@ -52,6 +52,22 @@
     return [concat $author $project [parse_tarball_name $tarball] $tarball_from]
 }
 
+proc parse_bitbucket_url {url} {
+    array set urlparts [uri::split $url]
+
+    if {![string equal $urlparts(host) bitbucket.org]} {
+        return -code error \
+            "expected bitbucket url but got \"$url\""
+    }
+
+    set path [split $urlparts(path) /]
+    set author [lindex $path 0]
+    set project [lindex $path 1]
+    set tarball [lindex $path end]
+
+    return [concat $author $project [parse_tarball_name $tarball]]
+}
+
 proc request_github {author project} {
     set json "/tmp/${author}-${project}.json"
     set api "https://api.github.com/repos/${author}/${project}"
@@ -73,31 +89,59 @@
     }
 }
 
-if {$argc != 1} {
-    usage
-    exit 1
-}
+set PortGroup ""
 
-set url [lindex $argv 0]
-set tmp [parse_github_url $url]
+set author author
+set project project
+set version version
+set tag_prefix tag_prefix
 
-set author        [val_or_def [lindex $tmp 0] "author"]
-set project       [val_or_def [lindex $tmp 1] "project"]
-set version       [val_or_def [lindex $tmp 2] "version"]
-set tag_prefix    [val_or_def [lindex $tmp 3] "tag_prefix"]
-set tarball_from  [val_or_def [lindex $tmp 4] ""]
+set tarball_from ""
 
 set description replaceme
 set homepage ""
 
-# request_github
+if {$argc != 2} {
+    usage ; exit 1
+} else {
+    if {[string equal [lindex $argv 0] "-github"]} {
+        set PortGroup "github 1.0"
 
+        set url [lindex $argv 1]
+        set tmp [parse_github_url $url]
+
+        set author        [val_or_def [lindex $tmp 0] "author"]
+        set project       [val_or_def [lindex $tmp 1] "project"]
+        set version       [val_or_def [lindex $tmp 2] "version"]
+        set tag_prefix    [val_or_def [lindex $tmp 3] "tag_prefix"]
+        set tarball_from  [val_or_def [lindex $tmp 4] ""]
+
+        set description replaceme
+        set homepage ""
+
+        # request_github
+
+    } elseif {[string equal [lindex $argv 0] "-bitbucket"]} {
+        set PortGroup "bitbucket 1.0"
+
+        set url [lindex $argv 1]
+        set tmp [parse_bitbucket_url $url]
+
+        set author     [val_or_def [lindex $tmp 0] "author"]
+        set project    [val_or_def [lindex $tmp 1] "project"]
+        set version    [val_or_def [lindex $tmp 2] "version"]
+        set tag_prefix [val_or_def [lindex $tmp 3] "tag_prefix"]
+    } else {
+        usage ; exit 1
+    }
+}
+
 puts "# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4"
 puts "# \$Id\$"
 puts ""
 puts "PortSystem          1.0"
 
-puts "PortGroup           github 1.0"
+puts "PortGroup           ${PortGroup}"
 puts ""
 puts "github.setup        ${author} ${project} ${version} ${tag_prefix}"
 

Modified: branches/gsoc15-portfile/port-create
===================================================================
--- branches/gsoc15-portfile/port-create	2015-06-23 10:30:09 UTC (rev 137933)
+++ branches/gsoc15-portfile/port-create	2015-06-23 10:39:00 UTC (rev 137934)
@@ -38,10 +38,10 @@
 proc get_group {group argv} {
     switch $group {
         github {
-            puts [exec github2port/github2port {*}$argv]
+            puts [exec github2port/github2port -github {*}$argv]
         }
         bitbucket {
-            puts [exec github2port/bitbucket2port {*}$argv]
+            puts [exec github2port/github2port -bitbucket {*}$argv]
         }
         default {
             puts [exec portfile-gen/portfile-gen -g $group {*}$argv]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20150623/fba66d51/attachment.html>


More information about the macports-changes mailing list