@@ -41,7 +41,7 @@ COPY patch /all-ruby/patch/
4141RUN rake setup_build
4242
4343# =============================================================================
44- # Ruby 0.x, 1.0, 1.1, 1.8.0-1.8.5, 2.0.0 on Debian Buster
44+ # Ruby 0.x- 2.0.0 on Debian Buster
4545# =============================================================================
4646FROM builder-buster AS ruby-0.x-2.0
4747ARG j=numcpu_plus_alpha
@@ -88,13 +88,26 @@ COPY patch /all-ruby/patch/
8888RUN rake setup_build
8989
9090# =============================================================================
91- # Ruby 1.2-1.8.7, 1.9.x
91+ # Ruby 1.2-1.8.7
9292# =============================================================================
93- FROM builder-bullseye AS ruby-1.2-1.9
93+ FROM builder-bullseye AS ruby-1.2-1.8.7
9494ARG j=numcpu_plus_alpha
9595
96- COPY versions/1.2* versions/1.3* versions/1.4* versions/1.6* versions/1.8.6* versions/1.8.7* versions/1.9* /all-ruby/versions/
96+ COPY versions/1.2* versions/1.3* versions/1.4* versions/1.6* versions/1.8.6* versions/1.8.7* /all-ruby/versions/
9797RUN rake -j ${j} all-1.2 all-1.3 all-1.4 all-1.6 all-1.8.6 all-1.8.7
98+
99+ RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
100+ build/*/man build/*/share/man build/*/share/doc build/*/share/ri && \
101+ rm -f build/*/lib/libruby-static.a build/*/bin/gcc build/*/bin/cc
102+ RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'file $1 | grep -q "not stripped"' - '{}' \; -print0 | xargs -0 strip
103+
104+ # =============================================================================
105+ # Ruby 1.9.x
106+ # =============================================================================
107+ FROM builder-bullseye AS ruby-1.9
108+ ARG j=numcpu_plus_alpha
109+
110+ COPY versions/1.9* /all-ruby/versions/
98111RUN rake -j ${j} all-1.9.0 all-1.9.1 all-1.9.2
99112RUN rake -j ${j} all-1.9.3
100113
@@ -104,55 +117,181 @@ RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
104117RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'file $1 | grep -q "not stripped"' - '{}' \; -print0 | xargs -0 strip
105118
106119# =============================================================================
107- # Ruby 2.1-2.4
120+ # Ruby 2.1
121+ # =============================================================================
122+ FROM builder-bullseye AS ruby-2.1
123+ ARG j=numcpu_plus_alpha
124+
125+ COPY versions/2.1* /all-ruby/versions/
126+ RUN rake -j ${j} all-2.1
127+
128+ RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
129+ build/*/man build/*/share/man build/*/share/doc build/*/share/ri && \
130+ rm -f build/*/lib/libruby-static.a build/*/bin/gcc build/*/bin/cc
131+ RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'file $1 | grep -q "not stripped"' - '{}' \; -print0 | xargs -0 strip
132+
133+ # =============================================================================
134+ # Ruby 2.2
135+ # =============================================================================
136+ FROM builder-bullseye AS ruby-2.2
137+ ARG j=numcpu_plus_alpha
138+
139+ COPY versions/2.2* /all-ruby/versions/
140+ RUN rake -j ${j} all-2.2
141+
142+ RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
143+ build/*/man build/*/share/man build/*/share/doc build/*/share/ri && \
144+ rm -f build/*/lib/libruby-static.a build/*/bin/gcc build/*/bin/cc
145+ RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'file $1 | grep -q "not stripped"' - '{}' \; -print0 | xargs -0 strip
146+
147+ # =============================================================================
148+ # Ruby 2.3
149+ # =============================================================================
150+ FROM builder-bullseye AS ruby-2.3
151+ ARG j=numcpu_plus_alpha
152+
153+ COPY versions/2.3* /all-ruby/versions/
154+ RUN rake -j ${j} all-2.3
155+
156+ RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
157+ build/*/man build/*/share/man build/*/share/doc build/*/share/ri && \
158+ rm -f build/*/lib/libruby-static.a build/*/bin/gcc build/*/bin/cc
159+ RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'file $1 | grep -q "not stripped"' - '{}' \; -print0 | xargs -0 strip
160+
161+ # =============================================================================
162+ # Ruby 2.4
163+ # =============================================================================
164+ FROM builder-bullseye AS ruby-2.4
165+ ARG j=numcpu_plus_alpha
166+
167+ COPY versions/2.4* /all-ruby/versions/
168+ RUN rake -j ${j} all-2.4
169+
170+ RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
171+ build/*/man build/*/share/man build/*/share/doc build/*/share/ri && \
172+ rm -f build/*/lib/libruby-static.a build/*/bin/gcc build/*/bin/cc
173+ RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'file $1 | grep -q "not stripped"' - '{}' \; -print0 | xargs -0 strip
174+
175+ # =============================================================================
176+ # Ruby 2.5
177+ # =============================================================================
178+ FROM builder-bullseye AS ruby-2.5
179+ ARG j=numcpu_plus_alpha
180+
181+ COPY versions/2.5* /all-ruby/versions/
182+ RUN rake -j ${j} all-2.5
183+
184+ RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
185+ build/*/man build/*/share/man build/*/share/doc build/*/share/ri && \
186+ rm -f build/*/lib/libruby-static.a build/*/bin/gcc build/*/bin/cc
187+ RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'file $1 | grep -q "not stripped"' - '{}' \; -print0 | xargs -0 strip
188+
189+ # =============================================================================
190+ # Ruby 2.6
191+ # =============================================================================
192+ FROM builder-bullseye AS ruby-2.6
193+ ARG j=numcpu_plus_alpha
194+
195+ COPY versions/2.6* /all-ruby/versions/
196+ RUN rake -j ${j} all-2.6
197+
198+ RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
199+ build/*/man build/*/share/man build/*/share/doc build/*/share/ri && \
200+ rm -f build/*/lib/libruby-static.a build/*/bin/gcc build/*/bin/cc
201+ RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'file $1 | grep -q "not stripped"' - '{}' \; -print0 | xargs -0 strip
202+
203+ # =============================================================================
204+ # Ruby 2.7
205+ # =============================================================================
206+ FROM builder-bullseye AS ruby-2.7
207+ ARG j=numcpu_plus_alpha
208+
209+ COPY versions/2.7* /all-ruby/versions/
210+ RUN rake -j ${j} all-2.7
211+
212+ RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
213+ build/*/man build/*/share/man build/*/share/doc build/*/share/ri && \
214+ rm -f build/*/lib/libruby-static.a build/*/bin/gcc build/*/bin/cc
215+ RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'file $1 | grep -q "not stripped"' - '{}' \; -print0 | xargs -0 strip
216+
217+ # =============================================================================
218+ # Ruby 3.0
219+ # =============================================================================
220+ FROM builder-bullseye AS ruby-3.0
221+ ARG j=numcpu_plus_alpha
222+
223+ COPY versions/3.0* /all-ruby/versions/
224+ RUN rake -j ${j} all-3.0
225+
226+ RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
227+ build/*/man build/*/share/man build/*/share/doc build/*/share/ri && \
228+ rm -f build/*/lib/libruby-static.a build/*/bin/gcc build/*/bin/cc
229+ RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'file $1 | grep -q "not stripped"' - '{}' \; -print0 | xargs -0 strip
230+
231+ # =============================================================================
232+ # Ruby 3.1
233+ # =============================================================================
234+ FROM builder-bullseye AS ruby-3.1
235+ ARG j=numcpu_plus_alpha
236+
237+ COPY versions/3.1* /all-ruby/versions/
238+ RUN rake -j ${j} all-3.1
239+
240+ RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
241+ build/*/man build/*/share/man build/*/share/doc build/*/share/ri && \
242+ rm -f build/*/lib/libruby-static.a build/*/bin/gcc build/*/bin/cc
243+ RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'file $1 | grep -q "not stripped"' - '{}' \; -print0 | xargs -0 strip
244+
245+ # =============================================================================
246+ # Ruby 3.2
108247# =============================================================================
109- FROM builder-bullseye AS ruby-2.1-2.4
248+ FROM builder-bullseye AS ruby-3.2
110249ARG j=numcpu_plus_alpha
111250
112- COPY versions/2.1* versions/2.2* versions/2.3* versions/2.4 * /all-ruby/versions/
113- RUN rake -j ${j} all-2.1 all-2.2 all-2.3 all-2.4
251+ COPY versions/3.2 * /all-ruby/versions/
252+ RUN rake -j ${j} all-3.2
114253
115254RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
116255 build/*/man build/*/share/man build/*/share/doc build/*/share/ri && \
117256 rm -f build/*/lib/libruby-static.a build/*/bin/gcc build/*/bin/cc
118257RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'file $1 | grep -q "not stripped"' - '{}' \; -print0 | xargs -0 strip
119258
120259# =============================================================================
121- # Ruby 2.5-2.7
260+ # Ruby 3.3
122261# =============================================================================
123- FROM builder-bullseye AS ruby-2.5-2.7
262+ FROM builder-bullseye AS ruby-3.3
124263ARG j=numcpu_plus_alpha
125264
126- COPY versions/2.5* versions/2.6* versions/2.7 * /all-ruby/versions/
127- RUN rake -j ${j} all-2.5 all-2.6 all-2.7
265+ COPY versions/3.3 * /all-ruby/versions/
266+ RUN rake -j ${j} all-3.3
128267
129268RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
130269 build/*/man build/*/share/man build/*/share/doc build/*/share/ri && \
131270 rm -f build/*/lib/libruby-static.a build/*/bin/gcc build/*/bin/cc
132271RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'file $1 | grep -q "not stripped"' - '{}' \; -print0 | xargs -0 strip
133272
134273# =============================================================================
135- # Ruby 3.0-3.2
274+ # Ruby 3.4
136275# =============================================================================
137- FROM builder-bullseye AS ruby-3.0-3.2
276+ FROM builder-bullseye AS ruby-3.4
138277ARG j=numcpu_plus_alpha
139278
140- COPY versions/3.0* versions/3.1* versions/3.2 * /all-ruby/versions/
141- RUN rake -j ${j} all-3.0 all-3.1 all-3.2
279+ COPY versions/3.4 * /all-ruby/versions/
280+ RUN rake -j ${j} all-3.4
142281
143282RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
144283 build/*/man build/*/share/man build/*/share/doc build/*/share/ri && \
145284 rm -f build/*/lib/libruby-static.a build/*/bin/gcc build/*/bin/cc
146285RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'file $1 | grep -q "not stripped"' - '{}' \; -print0 | xargs -0 strip
147286
148287# =============================================================================
149- # Ruby 3.3 -4.0
288+ # Ruby 3.5 -4.0
150289# =============================================================================
151- FROM builder-bullseye AS ruby-3.3 -4.0
290+ FROM builder-bullseye AS ruby-3.5 -4.0
152291ARG j=numcpu_plus_alpha
153292
154- COPY versions/3.3* versions/3.4* versions/3. 5* versions/4.0* /all-ruby/versions/
155- RUN rake -j ${j} all-3.3 all-3.4 3.5.0-preview1 all-4.0
293+ COPY versions/3.5* versions/4.0* /all-ruby/versions/
294+ RUN rake -j ${j} 3.5.0-preview1 all-4.0
156295
157296RUN rm -rf Rakefile versions/ patch/ DIST build/*/log build/*/ruby*/ \
158297 build/*/man build/*/share/man build/*/share/doc build/*/share/ri && \
@@ -166,11 +305,21 @@ RUN find /build-all-ruby -type f \( -name ruby -o -name '*.so' \) -exec sh -c 'f
166305FROM builder-bullseye AS aggregator
167306
168307COPY --from=ruby-0.x-2.0 /build-all-ruby/ /build-all-ruby/
169- COPY --from=ruby-1.2-1.9 /build-all-ruby/ /build-all-ruby/
170- COPY --from=ruby-2.1-2.4 /build-all-ruby/ /build-all-ruby/
171- COPY --from=ruby-2.5-2.7 /build-all-ruby/ /build-all-ruby/
172- COPY --from=ruby-3.0-3.2 /build-all-ruby/ /build-all-ruby/
173- COPY --from=ruby-3.3-4.0 /build-all-ruby/ /build-all-ruby/
308+ COPY --from=ruby-1.2-1.8.7 /build-all-ruby/ /build-all-ruby/
309+ COPY --from=ruby-1.9 /build-all-ruby/ /build-all-ruby/
310+ COPY --from=ruby-2.1 /build-all-ruby/ /build-all-ruby/
311+ COPY --from=ruby-2.2 /build-all-ruby/ /build-all-ruby/
312+ COPY --from=ruby-2.3 /build-all-ruby/ /build-all-ruby/
313+ COPY --from=ruby-2.4 /build-all-ruby/ /build-all-ruby/
314+ COPY --from=ruby-2.5 /build-all-ruby/ /build-all-ruby/
315+ COPY --from=ruby-2.6 /build-all-ruby/ /build-all-ruby/
316+ COPY --from=ruby-2.7 /build-all-ruby/ /build-all-ruby/
317+ COPY --from=ruby-3.0 /build-all-ruby/ /build-all-ruby/
318+ COPY --from=ruby-3.1 /build-all-ruby/ /build-all-ruby/
319+ COPY --from=ruby-3.2 /build-all-ruby/ /build-all-ruby/
320+ COPY --from=ruby-3.3 /build-all-ruby/ /build-all-ruby/
321+ COPY --from=ruby-3.4 /build-all-ruby/ /build-all-ruby/
322+ COPY --from=ruby-3.5-4.0 /build-all-ruby/ /build-all-ruby/
174323
175324RUN rdfind -makehardlinks true -makeresultsfile false /build-all-ruby
176325
@@ -211,11 +360,21 @@ RUN dpkg --add-architecture i386 \
211360
212361COPY --from=aggregator /build-all-ruby/ /build-all-ruby/
213362COPY --from=ruby-0.x-2.0 /all-ruby/ /all-ruby/
214- COPY --from=ruby-1.2-1.9 /all-ruby/bin/ /all-ruby/bin/
215- COPY --from=ruby-2.1-2.4 /all-ruby/bin/ /all-ruby/bin/
216- COPY --from=ruby-2.5-2.7 /all-ruby/bin/ /all-ruby/bin/
217- COPY --from=ruby-3.0-3.2 /all-ruby/bin/ /all-ruby/bin/
218- COPY --from=ruby-3.3-4.0 /all-ruby/bin/ /all-ruby/bin/
363+ COPY --from=ruby-1.2-1.8.7 /all-ruby/bin/ /all-ruby/bin/
364+ COPY --from=ruby-1.9 /all-ruby/bin/ /all-ruby/bin/
365+ COPY --from=ruby-2.1 /all-ruby/bin/ /all-ruby/bin/
366+ COPY --from=ruby-2.2 /all-ruby/bin/ /all-ruby/bin/
367+ COPY --from=ruby-2.3 /all-ruby/bin/ /all-ruby/bin/
368+ COPY --from=ruby-2.4 /all-ruby/bin/ /all-ruby/bin/
369+ COPY --from=ruby-2.5 /all-ruby/bin/ /all-ruby/bin/
370+ COPY --from=ruby-2.6 /all-ruby/bin/ /all-ruby/bin/
371+ COPY --from=ruby-2.7 /all-ruby/bin/ /all-ruby/bin/
372+ COPY --from=ruby-3.0 /all-ruby/bin/ /all-ruby/bin/
373+ COPY --from=ruby-3.1 /all-ruby/bin/ /all-ruby/bin/
374+ COPY --from=ruby-3.2 /all-ruby/bin/ /all-ruby/bin/
375+ COPY --from=ruby-3.3 /all-ruby/bin/ /all-ruby/bin/
376+ COPY --from=ruby-3.4 /all-ruby/bin/ /all-ruby/bin/
377+ COPY --from=ruby-3.5-4.0 /all-ruby/bin/ /all-ruby/bin/
219378
220379COPY lib/* /all-ruby/lib/
221380COPY all-ruby /all-ruby/
0 commit comments