autobuild 1.5.1 → 1.5.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,11 @@
1
+ == Version 1.5.2
2
+ * fix broken mail reporting. The mail report was always saved in a file since
3
+ 1.5.1.
4
+ * fix small bugs in the patching part of the import
5
+ - be error tolerant: if patching/unpatching fails, we go back to a well
6
+ defined state instead of having to fix the package by hand
7
+ - do not apply patches unnecessarily
8
+
1
9
  == Version 1.5.1
2
10
  * autotools: must run libtool before the other tools
3
11
  * autotools: properly autodetect need for autoconf (autoconf was always enabled
@@ -1,5 +1,5 @@
1
1
  module Autobuild
2
- VERSION = "1.5.1" unless defined? Autobuild::VERSION
2
+ VERSION = "1.5.2" unless defined? Autobuild::VERSION
3
3
  end
4
4
 
5
5
  require 'autobuild/config'
@@ -88,7 +88,7 @@ class Importer
88
88
  # We assume that package.srcdir already exists (checkout is supposed to
89
89
  # have been called)
90
90
  def patchlist(package)
91
- "#{package.srcdir}/patches-autobuild-stamp"
91
+ File.join(package.srcdir, "patches-autobuild-stamp")
92
92
  end
93
93
 
94
94
  def call_patch(package, reverse, file)
@@ -111,6 +111,10 @@ class Importer
111
111
  end
112
112
  end
113
113
 
114
+ if cur_patches == patches
115
+ return
116
+ end
117
+
114
118
  if !patches.empty?
115
119
  package.progress "patching %s"
116
120
  end
@@ -118,8 +122,9 @@ class Importer
118
122
  # Do not be smart, remove all already applied patches
119
123
  # and then apply the new ones
120
124
  begin
121
- while p = cur_patches.pop
125
+ while p = cur_patches.last
122
126
  unapply(package, p)
127
+ cur_patches.pop
123
128
  end
124
129
 
125
130
  patches.to_a.each do |p|
@@ -142,6 +142,9 @@ module Autobuild
142
142
  # Called when the user asked for a full rebuild. It should delete the
143
143
  # build products so that a full build is retriggered.
144
144
  def prepare_for_rebuild
145
+ if File.exists?(installstamp)
146
+ FileUtils.rm_f installstamp
147
+ end
145
148
  end
146
149
 
147
150
  # Call the importer if there is one. Autodetection of "provides" should
@@ -156,7 +156,7 @@ module Autobuild
156
156
  end
157
157
 
158
158
  # Send the mails
159
- if File.directory?(File.dirname(smtp_hostname))
159
+ if smtp_hostname =~ /\// && File.directory?(File.dirname(smtp_hostname))
160
160
  File.open(smtp_hostname, 'w') do |io|
161
161
  io.puts "From: #{from_email}"
162
162
  io.puts "To: #{to_email.join(" ")}"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: autobuild
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.1
4
+ version: 1.5.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sylvain Joyeux
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2010-02-07 00:00:00 +01:00
12
+ date: 2010-02-15 00:00:00 +01:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency