rake-compiler-dock 1.5.0 → 1.5.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ecf9523e93d97a66f6dd1fe7155fba58309e260e43cec95193d2a2547cb43bb4
4
- data.tar.gz: 5c6298e90e0612236e72bae47cb03b57c50ee7fe2222428a712fa800d5e393e1
3
+ metadata.gz: d92bbeed535452c8abbcc2f132b42027ba12bcbcbab03d1708fc57c6d2bd4c24
4
+ data.tar.gz: a04b629209b03da4e64910621e71392d56410877d9a291978a6a075d26cadb73
5
5
  SHA512:
6
- metadata.gz: 8e66bf4925c3596be41032a7ffa833db592406124ae89b4fcccdfc8d4d08d8ba9c9fc85286b252030ca859dfb1f6c93dc1cf2e5524d00b46ef98c4f2e5b22c78
7
- data.tar.gz: 9dd9782cfe62ffdefe57cfe2ba5384d7573d03eed4fa938c61d04ab32d6ff20bbf3ff4d4b50f6282f98ddeac1f791fffecec288151190e639e1fb7f830dbff5c
6
+ metadata.gz: 9e17ec04f585b6f548ca1596d6b07f9435a18f0a66276543b1e15c4a2c8f905af306cb03024f3ecc8c2249a458d2c7c73eb8034abdf024f666b9750545570eb5
7
+ data.tar.gz: f0908f10dd36ee92f4c7586362c59059975508c205f3fcb88ec4d34620711d438a925a405bca6fa43d79ee5871597fc5bad921fe1246d53cab75fb9286726654
@@ -143,9 +143,9 @@ jobs:
143
143
  strategy:
144
144
  fail-fast: false
145
145
  matrix:
146
- os: [ubuntu]
146
+ os: [ubuntu-latest]
147
147
  ruby: ["3.3", "3.2", "3.1", "3.0", "2.7", "2.6", "2.5", "2.4"]
148
- runs-on: ${{ matrix.os }}-latest
148
+ runs-on: ${{ matrix.os }}
149
149
  steps:
150
150
  - uses: actions/checkout@v4
151
151
  - uses: ruby/setup-ruby@v1
@@ -261,39 +261,47 @@ jobs:
261
261
  strategy:
262
262
  fail-fast: false
263
263
  matrix:
264
- os: [macos]
264
+ os: [macos-13, macos-14]
265
265
  ruby: ["3.3", "3.2", "3.1", "3.0", "2.7", "2.6", "2.5", "2.4"]
266
+ exclude:
267
+ # setup-ruby does not provide ruby 2.4 or 2.5 on arm64-darwin as of 2024-05-01
268
+ - os: macos-14
269
+ ruby: "2.4"
270
+ - os: macos-14
271
+ ruby: "2.5"
266
272
  include:
267
- - os: macos
273
+ - os: macos-13
268
274
  platform: x86_64-darwin
269
- - os: ubuntu
275
+ - os: macos-14
276
+ platform: arm64-darwin
277
+ - os: ubuntu-latest
270
278
  ruby: jruby
271
279
  platform: jruby
272
- - os: windows
280
+ - os: windows-latest
273
281
  ruby: "2.4"
274
282
  platform: x64-mingw32
275
- - os: windows
283
+ - os: windows-latest
276
284
  ruby: "2.5"
277
285
  platform: x64-mingw32
278
- - os: windows
286
+ - os: windows-latest
279
287
  ruby: "2.6"
280
288
  platform: x64-mingw32
281
- - os: windows
289
+ - os: windows-latest
282
290
  ruby: "2.7"
283
291
  platform: x64-mingw32
284
- - os: windows
292
+ - os: windows-latest
285
293
  ruby: "3.0"
286
294
  platform: x64-mingw32
287
- - os: windows
295
+ - os: windows-latest
288
296
  ruby: "3.1"
289
297
  platform: x64-mingw-ucrt
290
- - os: windows
298
+ - os: windows-latest
291
299
  ruby: "3.2"
292
300
  platform: x64-mingw-ucrt
293
- - os: windows
301
+ - os: windows-latest
294
302
  ruby: "3.3"
295
303
  platform: x64-mingw-ucrt
296
- runs-on: ${{ matrix.os }}-latest
304
+ runs-on: ${{ matrix.os }}
297
305
  steps:
298
306
  - uses: actions/checkout@v4
299
307
  - uses: ruby/setup-ruby@v1
@@ -321,31 +329,31 @@ jobs:
321
329
  fail-fast: false
322
330
  matrix:
323
331
  include:
324
- - os: windows
332
+ - os: windows-latest
325
333
  ruby: "2.4"
326
334
  platform: x64-mingw32
327
- - os: windows
335
+ - os: windows-latest
328
336
  ruby: "2.5"
329
337
  platform: x64-mingw32
330
- - os: windows
338
+ - os: windows-latest
331
339
  ruby: "2.6"
332
340
  platform: x64-mingw32
333
- - os: windows
341
+ - os: windows-latest
334
342
  ruby: "2.7"
335
343
  platform: x64-mingw32
336
- - os: windows
344
+ - os: windows-latest
337
345
  ruby: "3.0"
338
346
  platform: x64-mingw32
339
- - os: windows
347
+ - os: windows-latest
340
348
  ruby: "3.1"
341
349
  platform: x64-mingw-ucrt
342
- - os: windows
350
+ - os: windows-latest
343
351
  ruby: "3.2"
344
352
  platform: x64-mingw-ucrt
345
- - os: windows
353
+ - os: windows-latest
346
354
  ruby: "3.3"
347
355
  platform: x64-mingw-ucrt
348
- runs-on: ${{ matrix.os }}-latest
356
+ runs-on: ${{ matrix.os }}
349
357
  steps:
350
358
  - uses: actions/checkout@v4
351
359
  - uses: ruby/setup-ruby@v1
data/Dockerfile.mri.erb CHANGED
@@ -1,8 +1,8 @@
1
1
  <%
2
2
  image = case platform
3
- when /x86_64-linux-gnu/ then "quay.io/pypa/manylinux2014_x86_64"
4
- when /x86-linux-gnu/ then "quay.io/pypa/manylinux2014_i686"
5
- else "ubuntu:20.04"
3
+ when /x86_64-linux-gnu/ then "quay.io/pypa/manylinux2014_x86_64:latest@sha256:b4d7d9e15f3f5d143cd5aa0e2a2b6f2563bed17df1808c8f6662f9d57db72fa1"
4
+ when /x86-linux-gnu/ then "quay.io/pypa/manylinux2014_i686:latest@sha256:f2b004703f4712e0c88d89cd206447fe67d9efa881916dc7f4afefd7387eb0b2"
5
+ else "docker.io/library/ubuntu:20.04@sha256:80ef4a44043dec4490506e6cc4289eeda2d106a70148b74b5ae91ee670e9c35d"
6
6
  end
7
7
  manylinux = !!(image =~ /manylinux/)
8
8
  %>
@@ -226,13 +226,17 @@ RUN mv /opt/osxcross/target/bin/<%= target %>-strip /opt/osxcross/target/bin/<%=
226
226
  RUN echo "export PATH=\$DEVTOOLSET_ROOTPATH/usr/bin:\$PATH" >> /etc/rubybashrc
227
227
 
228
228
  # Add prefixed versions of compiler tools
229
- RUN for f in addr2line gcc gcov-tool ranlib ar dwp gcc-ranlib nm readelf as elfedit gcc-ar gprof objcopy size c++filt g++ gcov ld objdump strings cpp gcc-nm pkg-config strip ; do ln -sf $DEVTOOLSET_ROOTPATH/usr/bin/$f $DEVTOOLSET_ROOTPATH/usr/bin/<%= target %>-$f ; done
229
+ RUN for f in addr2line gcc gcov-tool ranlib ar dwp gcc-ranlib nm readelf as elfedit gcc-ar gprof objcopy size c++filt g++ gcov ld objdump strings cpp gcc-nm strip ; do ln -sf $DEVTOOLSET_ROOTPATH/usr/bin/$f $DEVTOOLSET_ROOTPATH/usr/bin/<%= target %>-$f ; done
230
230
 
231
231
  # Use builtin functions of newer gcc to avoid linker issues on Musl based Linux
232
232
  # TODO: remove in v1.6.0 once musl builds have been out for full minor release cycle, see 864be5b2
233
233
  COPY build/math_h.patch /root/
234
234
  RUN cd /usr/include/ && \
235
235
  patch -p1 < /root/math_h.patch
236
+
237
+ # Update pkg-config because the distro ships 0.27.1 which is old and has bugs and performance issues.
238
+ COPY build/mk_pkg_config.sh /root/
239
+ RUN /root/mk_pkg_config.sh
236
240
  <% end %>
237
241
 
238
242
  <% if platform =~ /arm64-darwin/ %>
data/History.md CHANGED
@@ -1,8 +1,17 @@
1
- # v1.5.0 / 2024-02-25
1
+ # `rake-compiler/rake-compiler-dock` Changelog
2
2
 
3
- ## Notable changes
3
+ ## 1.5.1 / 2024-06-03
4
4
 
5
- ### First-class Linux `musl` libc support
5
+ ### Improvements
6
+
7
+ The `x86_64-linux-gnu` and `x86-linux-gnu` containers (based on `manylinux_2014`) now have a modern version of `pkg-config`, v0.29.2, installed on them in `/usr/local/bin/pkg-config`. The distro's version (v0.27.1) is still in `/usr/bin/pkg-config` if you need to fall back for some reason, but the newer version will be used by default and should be backwards-compatible. (#121, #123 by @flavorjones)
8
+
9
+
10
+ ## 1.5.0 / 2024-02-25
11
+
12
+ ### Notable changes
13
+
14
+ #### First-class Linux `musl` libc support
6
15
 
7
16
  * Add Linux musl cross build targets `aarch64-linux-musl`, `arm-linux-musl`, `x86-linux-musl`, and `x86_64-linux-musl`. #75, #111 (@flavorjones)
8
17
  * Add Linux cross build targets `aarch64-linux-gnu`, `arm-linux-gnu`, `x86-linux-gnu`, and `x86_64-linux-gnu`. #111 (@flavorjones)
@@ -11,13 +20,12 @@
11
20
  **Please read the README for details and caveats!**
12
21
 
13
22
 
14
- ## Improvements
23
+ ### Improvements
15
24
 
16
- * Predefined user and group list is more complete, and represents the union of users and groups
17
- across all RCD images.
25
+ * Predefined user and group list is more complete, and represents the union of users and groups across all RCD images.
18
26
 
19
27
 
20
- ## Changes to build containers
28
+ ### Changes to build containers
21
29
 
22
30
  * Replace `rvm` with `rbenv` and `ruby-build` in the build containers.
23
31
  - `rvm` has been replaced by `rbenv` and `ruby-build`
@@ -0,0 +1,24 @@
1
+ #! /usr/bin/env bash
2
+
3
+ set -o errexit
4
+ set -o pipefail
5
+ set -x
6
+
7
+ # sha256 from https://lists.freedesktop.org/archives/pkg-config/2017-March/001084.html
8
+ TARFILE=pkg-config-0.29.2.tar.gz
9
+ DIR=pkg-config-0.29.2
10
+ CHECKSUM=6fc69c01688c9458a57eb9a1664c9aba372ccda420a02bf4429fe610e7e7d591
11
+
12
+ cd /tmp
13
+
14
+ wget https://pkgconfig.freedesktop.org/releases/${TARFILE}
15
+ sha256sum ${TARFILE} | grep "${CHECKSUM}"
16
+
17
+ tar -xzvf ${TARFILE}
18
+ cd $DIR
19
+
20
+ ./configure --prefix=/usr/local
21
+ make install
22
+
23
+ pkg-config --version
24
+ echo "OK"
@@ -1,4 +1,4 @@
1
1
  module RakeCompilerDock
2
- VERSION = "1.5.0"
3
- IMAGE_VERSION = "1.5.0"
2
+ VERSION = "1.5.1"
3
+ IMAGE_VERSION = "1.5.1"
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rake-compiler-dock
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.0
4
+ version: 1.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lars Kanis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-04-15 00:00:00.000000000 Z
11
+ date: 2024-06-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -86,6 +86,7 @@ files:
86
86
  - build/mk_i686.rb
87
87
  - build/mk_musl_cross.sh
88
88
  - build/mk_osxcross.sh
89
+ - build/mk_pkg_config.sh
89
90
  - build/parallel_docker_build.rb
90
91
  - build/patches2/rake-compiler-1.2.5/0004-Enable-build-of-static-libruby.patch
91
92
  - build/rcd-env.sh
@@ -140,7 +141,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
140
141
  - !ruby/object:Gem::Version
141
142
  version: '0'
142
143
  requirements: []
143
- rubygems_version: 3.5.3
144
+ rubygems_version: 3.5.10
144
145
  signing_key:
145
146
  specification_version: 4
146
147
  summary: Easy to use and reliable cross compiler environment for building Windows