rbe-tebako 0.16.2 → 0.16.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/tebako/build_commands.rb +8 -0
- data/lib/tebako/runtime_sdk.rb +19 -0
- data/lib/tebako/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 97a6d17aea5200c67fb5b50ad539b343664a1beb3e3b7e06bf67047af3ea7f81
|
|
4
|
+
data.tar.gz: 8a3918f64d12b677130ed17c5c0f1e058e9ff3ee41cf32caafa83402a5d65db0
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 88706b0b30adef57406c263db4f0101d2c0c60217ffbac1a8eab115c57332f7655a74a0de0291d89d1eca00302d86d7925576b5748de1d5c1e678f8b264032d9
|
|
7
|
+
data.tar.gz: 1b9c4944a8e5d99d997177954097feae1695190ddfe15a414317727fa66e14dc0c3a7592eef42aac5fd2c1a9fe92ff9f74996a097aa5042b4a0be3579651e9af
|
|
@@ -113,6 +113,14 @@ module Tebako
|
|
|
113
113
|
sdk_dependency_paths(options_manager).each do |path|
|
|
114
114
|
components["deps/#{path.delete_prefix("#{options_manager.deps}/")}"] = path
|
|
115
115
|
end
|
|
116
|
+
# The patched exts.mk links every press with `-L<prefix>/o -ltebako-fs`,
|
|
117
|
+
# and libtebako-fs.a is the ONE library CMake builds into o/ instead of
|
|
118
|
+
# deps/lib — without it an SDK install fails its first application
|
|
119
|
+
# relink with "ld: library 'tebako-fs' not found".
|
|
120
|
+
libtebako_fs = File.join(options_manager.output_folder, "libtebako-fs.a")
|
|
121
|
+
raise Tebako::Error.new("Runtime build did not produce #{libtebako_fs}", 121) unless File.exist?(libtebako_fs)
|
|
122
|
+
|
|
123
|
+
components["o/libtebako-fs.a"] = libtebako_fs
|
|
116
124
|
sdk = options["sdk-output"]
|
|
117
125
|
Tebako::RuntimeSdk.pack(
|
|
118
126
|
output: sdk,
|
data/lib/tebako/runtime_sdk.rb
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
require "digest"
|
|
8
8
|
require "fileutils"
|
|
9
|
+
require "find"
|
|
9
10
|
require "json"
|
|
10
11
|
require "pathname"
|
|
11
12
|
require "rubygems/package"
|
|
@@ -47,6 +48,7 @@ module Tebako
|
|
|
47
48
|
relocate_install(temporary, manifest, destination)
|
|
48
49
|
activate_runtime(temporary, manifest) if manifest["runtime_path"]
|
|
49
50
|
register_environment(temporary)
|
|
51
|
+
normalize_mtimes(temporary)
|
|
50
52
|
publish_install(temporary, destination)
|
|
51
53
|
manifest
|
|
52
54
|
ensure
|
|
@@ -310,6 +312,23 @@ module Tebako
|
|
|
310
312
|
File.symlink(link, target)
|
|
311
313
|
end
|
|
312
314
|
|
|
315
|
+
# The archive stores no mtimes: extraction stamps each file as it is
|
|
316
|
+
# written, in archive (alphabetical) order — which inverts autotools
|
|
317
|
+
# dependencies. "configure" sorts before "configure.ac", so make inside
|
|
318
|
+
# the installed Ruby build tree would try to regenerate configure with
|
|
319
|
+
# autoconf (absent on build runners). One shared timestamp across the
|
|
320
|
+
# whole tree makes it quiescent: make rebuilds only when a prerequisite
|
|
321
|
+
# is strictly NEWER than its target. Runs last, after relocation and
|
|
322
|
+
# activation have finished mutating files.
|
|
323
|
+
def normalize_mtimes(root)
|
|
324
|
+
stamp = Time.now
|
|
325
|
+
Find.find(root) do |path|
|
|
326
|
+
File.utime(stamp, stamp, path) unless File.symlink?(path)
|
|
327
|
+
end
|
|
328
|
+
rescue SystemCallError => e
|
|
329
|
+
raise Tebako::Error.new("Unable to normalize runtime SDK timestamps: #{e.message}", 121)
|
|
330
|
+
end
|
|
331
|
+
|
|
313
332
|
def publish_install(temporary, destination)
|
|
314
333
|
destination = File.expand_path(destination)
|
|
315
334
|
backup = "#{destination}.previous"
|
data/lib/tebako/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rbe-tebako
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.16.
|
|
4
|
+
version: 0.16.4
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Andrea Fomera
|
|
@@ -310,7 +310,7 @@ licenses:
|
|
|
310
310
|
- BSD-2-Clause
|
|
311
311
|
metadata:
|
|
312
312
|
homepage_uri: https://github.com/RubyEverywhere/tebako
|
|
313
|
-
source_code_uri: https://github.com/RubyEverywhere/tebako/tree/v0.16.
|
|
313
|
+
source_code_uri: https://github.com/RubyEverywhere/tebako/tree/v0.16.4
|
|
314
314
|
allowed_push_host: https://rubygems.org
|
|
315
315
|
rdoc_options: []
|
|
316
316
|
require_paths:
|