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 +4 -4
- data/.github/workflows/ci.yml +31 -23
- data/Dockerfile.mri.erb +8 -4
- data/History.md +15 -7
- data/build/mk_pkg_config.sh +24 -0
- data/lib/rake_compiler_dock/version.rb +2 -2
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d92bbeed535452c8abbcc2f132b42027ba12bcbcbab03d1708fc57c6d2bd4c24
|
4
|
+
data.tar.gz: a04b629209b03da4e64910621e71392d56410877d9a291978a6a075d26cadb73
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9e17ec04f585b6f548ca1596d6b07f9435a18f0a66276543b1e15c4a2c8f905af306cb03024f3ecc8c2249a458d2c7c73eb8034abdf024f666b9750545570eb5
|
7
|
+
data.tar.gz: f0908f10dd36ee92f4c7586362c59059975508c205f3fcb88ec4d34620711d438a925a405bca6fa43d79ee5871597fc5bad921fe1246d53cab75fb9286726654
|
data/.github/workflows/ci.yml
CHANGED
@@ -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 }}
|
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:
|
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 }}
|
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 }}
|
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
|
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
|
-
#
|
1
|
+
# `rake-compiler/rake-compiler-dock` Changelog
|
2
2
|
|
3
|
-
##
|
3
|
+
## 1.5.1 / 2024-06-03
|
4
4
|
|
5
|
-
###
|
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
|
-
|
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
|
-
|
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"
|
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.
|
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-
|
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.
|
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
|