[MacPorts] #66639: ruby31 3.1.3: fails to build on OS X 10.8 and 10.9
MacPorts
noreply at macports.org
Sat Jan 7 14:17:09 UTC 2023
#66639: ruby31 3.1.3: fails to build on OS X 10.8 and 10.9
---------------------+-------------------------------------
Reporter: erikbs | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords: mountainlion, mavericks
Port: ruby31 |
---------------------+-------------------------------------
Description changed by ryandesign:
Old description:
> The build configures as usual, but fails during the build stage. Log
> extract:
> {{{
> ...
> :info:build make[1]: Leaving directory
> `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_ruby31/ruby31/work/ruby-3.1.3'
> :info:build generating makefile exts.mk
> :info:build compiling ./enc/trans/emoji_sjis_kddi.c
> :info:build compiling ./enc/iso_8859_2.c
> :info:build compiling ./enc/iso_8859_3.c
> :info:build exts.mk updated
> :info:build make[1]: Entering directory
> `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_ruby31/ruby31/work/ruby-3.1.3'
> :info:build make[2]: Entering directory
> `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_ruby31/ruby31/work/ruby-3.1.3/ext/-test-/RUBY_ALIGNOF'
> :info:build make[2]: *** No rule to make target `all'. Stop.
> :info:build make[2]: Leaving directory
> `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_ruby31/ruby31/work/ruby-3.1.3/ext/-test-/RUBY_ALIGNOF'
> :info:build make[1]: *** [ext/-test-/RUBY_ALIGNOF/all] Error 2
> }}}
>
> The error is not that `ext/-test-/RUBY_ALIGNOF/Makefile` does not contain
> a target `all`, but that the Makefile in this directory does not exist at
> all. According to a comment on an earlier ticket from a few months ago
> (https://trac.macports.org/ticket/65290#comment:1), the generation of
> this Makefile overwrites the Makefile in the build root directory, and
> that seems to be the case on my system as well.
>
> I have tried compiling with Clang 14, Clang 15 and GCC 11 – the result is
> always the same. I also tried using `gmake` instead of `make` and to
> build with `use_autoreconf yes` in the Portfile (required an additional
> patch akin to `patch-configure.diff` for `configure.ac`). Nothing helped.
>
> If I build Ruby from source outside of Macports (same source tgz), I do
> not encounter this issue. I noticed that even if I pass all the Portfile
> configure options, the generated Makefiles are quite different (I will
> attach both files).
New description:
The build configures as usual, but fails during the build stage. Log
extract:
{{{
...
:info:build make[1]: Leaving directory
`/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_ruby31/ruby31/work/ruby-3.1.3'
:info:build generating makefile exts.mk
:info:build compiling ./enc/trans/emoji_sjis_kddi.c
:info:build compiling ./enc/iso_8859_2.c
:info:build compiling ./enc/iso_8859_3.c
:info:build exts.mk updated
:info:build make[1]: Entering directory
`/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_ruby31/ruby31/work/ruby-3.1.3'
:info:build make[2]: Entering directory
`/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_ruby31/ruby31/work/ruby-3.1.3/ext/-test-/RUBY_ALIGNOF'
:info:build make[2]: *** No rule to make target `all'. Stop.
:info:build make[2]: Leaving directory
`/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_ruby31/ruby31/work/ruby-3.1.3/ext/-test-/RUBY_ALIGNOF'
:info:build make[1]: *** [ext/-test-/RUBY_ALIGNOF/all] Error 2
}}}
The error is not that `ext/-test-/RUBY_ALIGNOF/Makefile` does not contain
a target `all`, but that the Makefile in this directory does not exist at
all. According to a comment on an earlier ticket from a few months ago
(comment:ticket:65290:1), the generation of this Makefile overwrites the
Makefile in the build root directory, and that seems to be the case on my
system as well.
I have tried compiling with Clang 14, Clang 15 and GCC 11 – the result is
always the same. I also tried using `gmake` instead of `make` and to build
with `use_autoreconf yes` in the Portfile (required an additional patch
akin to `patch-configure.diff` for `configure.ac`). Nothing helped.
If I build Ruby from source outside of Macports (same source tgz), I do
not encounter this issue. I noticed that even if I pass all the Portfile
configure options, the generated Makefiles are quite different (I will
attach both files).
--
--
Ticket URL: <https://trac.macports.org/ticket/66639#comment:2>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list