mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 01:39:16 -04:00
This script had served its purpose.
This commit is contained in:
parent
7b1f7cb48c
commit
3d30f7c9c7
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=103981
1 changed files with 0 additions and 146 deletions
|
@ -1,146 +0,0 @@
|
||||||
#!/usr/bin/env ruby
|
|
||||||
#
|
|
||||||
# de-pkg-comment - converts pkg-comment to COMMENT
|
|
||||||
# (public domain)
|
|
||||||
#
|
|
||||||
# Usage:
|
|
||||||
# de-pkg-comment portdir ...
|
|
||||||
#
|
|
||||||
# Notes:
|
|
||||||
# - Local changes may be backed out and the previous file is renamed
|
|
||||||
# to .#* if conversion fails.
|
|
||||||
# - It requires a port have a MAINTAINER line.
|
|
||||||
# - It does not touch master/slave ports automatically; just shows
|
|
||||||
# some hints.
|
|
||||||
# - Do not commit resulted files without checking the diffs.
|
|
||||||
#
|
|
||||||
# MAINTAINER= knu@FreeBSD.org
|
|
||||||
#
|
|
||||||
# $FreeBSD$
|
|
||||||
#
|
|
||||||
|
|
||||||
begin
|
|
||||||
require 'features/ruby18'
|
|
||||||
rescue LoadError; end
|
|
||||||
|
|
||||||
if ARGV.empty?
|
|
||||||
STDERR.puts "usage: #{$0} portdir ..."
|
|
||||||
exit 64
|
|
||||||
end
|
|
||||||
|
|
||||||
def error(message)
|
|
||||||
STDERR.puts("#{$dir}: #{message}")
|
|
||||||
end
|
|
||||||
|
|
||||||
def info(message)
|
|
||||||
STDOUT.puts("#{$dir}: #{message}")
|
|
||||||
end
|
|
||||||
|
|
||||||
def backout(message)
|
|
||||||
error(message)
|
|
||||||
info("Backing out all modifications.")
|
|
||||||
system 'cvs', '-Q', 'up', '-CdP'
|
|
||||||
end
|
|
||||||
|
|
||||||
def cvs_up(*files)
|
|
||||||
system *['cvs', '-q', 'up', '-dP', *files]
|
|
||||||
end
|
|
||||||
|
|
||||||
def cvs_rm(*files)
|
|
||||||
system *['cvs', '-Q', 'rm', '-f', *files]
|
|
||||||
end
|
|
||||||
|
|
||||||
ARGV.each { |$dir|
|
|
||||||
if !File.directory?($dir)
|
|
||||||
error("Not a directory.")
|
|
||||||
next
|
|
||||||
end
|
|
||||||
|
|
||||||
Dir.chdir($dir) {
|
|
||||||
if !File.directory?('CVS')
|
|
||||||
error("Not a CVS working directory.")
|
|
||||||
next
|
|
||||||
end
|
|
||||||
|
|
||||||
info("Running cvs update")
|
|
||||||
cvs_up()
|
|
||||||
|
|
||||||
makefile = 'Makefile'
|
|
||||||
|
|
||||||
if !File.exist?(makefile)
|
|
||||||
error("No Makefile is found.")
|
|
||||||
next
|
|
||||||
end
|
|
||||||
|
|
||||||
commentfile = `make -V COMMENTFILE`.chomp
|
|
||||||
|
|
||||||
if !File.exist?(commentfile)
|
|
||||||
error("No need to convert.")
|
|
||||||
next
|
|
||||||
end
|
|
||||||
|
|
||||||
comment = nil
|
|
||||||
commentfile_defined = false
|
|
||||||
maintainer_defined = false
|
|
||||||
|
|
||||||
info("Modifying #{makefile}")
|
|
||||||
|
|
||||||
open(makefile, 'r+') { |rw|
|
|
||||||
contents = []
|
|
||||||
|
|
||||||
rw.each { |line|
|
|
||||||
contents << line
|
|
||||||
|
|
||||||
case line
|
|
||||||
when /^MAINTAINER\s*(\??=)/
|
|
||||||
maintainer_defined = true
|
|
||||||
|
|
||||||
assign = $1
|
|
||||||
|
|
||||||
if assign == '?='
|
|
||||||
info("Looks like a master port. Please check for slave ports.")
|
|
||||||
end
|
|
||||||
|
|
||||||
open(commentfile) { |f|
|
|
||||||
comment = f.gets.strip
|
|
||||||
quoted_comment = comment.gsub(/#/, '\\#').gsub(/\$/, '$$')
|
|
||||||
contents << "COMMENT#{assign}\t#{quoted_comment}\n"
|
|
||||||
}
|
|
||||||
when /^COMMENTFILE\s*([?!:]?=)/
|
|
||||||
info("COMMENTFILE is defined. Please check out and edit manually.")
|
|
||||||
commentfile_defined = true
|
|
||||||
when /^MASTERDIR\s*([?!:]?=)/
|
|
||||||
masterport = File.expand_path(`make -V MASTERDIR`.chomp)
|
|
||||||
masterport.sub!(%r".*(?:^|/)([^/]+/[^/]+)$", '\1')
|
|
||||||
|
|
||||||
info("Looks like a slave port. Please look into the master port (#{masterport}) also.")
|
|
||||||
end
|
|
||||||
}
|
|
||||||
|
|
||||||
rw.rewind
|
|
||||||
rw.puts contents
|
|
||||||
}
|
|
||||||
|
|
||||||
if !maintainer_defined
|
|
||||||
backout("No MAINTAINER line is found!")
|
|
||||||
next
|
|
||||||
end
|
|
||||||
|
|
||||||
newcomment = `make -V COMMENT`.chomp
|
|
||||||
|
|
||||||
if newcomment != comment
|
|
||||||
backout("Failed to convert!")
|
|
||||||
next
|
|
||||||
end
|
|
||||||
|
|
||||||
unless commentfile_defined
|
|
||||||
info("Removing #{commentfile}")
|
|
||||||
cvs_rm(commentfile)
|
|
||||||
end
|
|
||||||
|
|
||||||
info("Running cvs update again")
|
|
||||||
cvs_up()
|
|
||||||
|
|
||||||
info("Done.")
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Add table
Reference in a new issue