[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