ruby-numo / numo-narray

Ruby/Numo::NArray - New NArray class library
http://ruby-numo.github.io/narray/
BSD 3-Clause "New" or "Revised" License
413 stars 41 forks source link

[macOS] Build does not respect env settings and picks an arbitrary Ruby from system prefix which is prone to failure #215

Open barracuda156 opened 5 months ago

barracuda156 commented 5 months ago
ruby /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb -l -o t_bit.c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/bit.rb
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:45: syntax error, unexpected ':', expecting kEND
  set line_number: $line_number
                  ^
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:46: syntax error, unexpected ':', expecting kEND
  set erb_dir: erb_dir
              ^
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:47: syntax error, unexpected ':', expecting kEND
  set erb_suffix: ".c"
                 ^
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:48: syntax error, unexpected ':', expecting kEND
  set ns_var: "mNumo"
             ^
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:50: syntax error, unexpected ':', expecting kEND
  set file_name: $output||""
                ^
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:51: syntax error, unexpected ':', expecting kEND
  set include_files: ["numo/types/#{type_name}.h"]
                    ^
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:52: syntax error, unexpected ':', expecting kEND
  set lib_name: "numo_"+type_name
               ^
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:55: syntax error, unexpected ':', expecting kEND
    set is_simd: true
                ^
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:57: syntax error, unexpected ':', expecting kEND
    set is_simd: false
                ^
make: *** [t_bit.c] Error 1

make failed, exit code 2
barracuda156 commented 3 months ago

Any update on this?

P. S. Opened a ticket on Trac too: https://trac.macports.org/ticket/70129

jneen commented 2 months ago

What is your ruby version? Colon syntax like this has been around in ruby for a long time. nevermind ignore me, it seems to be ruby 3.2 according to your directory structure. Maybe there's something wrong with your $PATH during build - perhaps calling the wrong ruby binary.

barracuda156 commented 2 months ago

@jneen Thank you. Directory structure is fine since we successfully build numerous Ruby ports, but you gave me an idea: it seems from the log that numo-narray build ignores environment and just calls for ruby, which would indeed pull in a wrong, system version of, Ruby. That will explain why the build fails on every system up to Sierra: https://ports.macports.org/port/rb32-numo-narray/details Perhaps after than system Ruby is new enough. This should be fixable, I need to patch build file to ensure it picks the right Ruby and not something random from system prefix.

barracuda156 commented 2 months ago

Honestly I think this is a bug: https://github.com/ruby-numo/numo-narray/blob/8ddb72847d563b735cad3e4161b7978e2bbf7b87/Rakefile#L8 There should be something to pick the right Ruby from environment, but instead it hardcodes ruby.

barracuda156 commented 2 months ago

UPD. Unfortunately, fixing that does not help. Here is the Makefile (on 10.8 x86_64):


SHELL = /bin/sh

# V=0 quiet, V=1 verbose.  other values don't work.
V = 0
V0 = $(V:0=)
Q1 = $(V:1=)
Q = $(Q1:0=@)
ECHO1 = $(V:1=@ :)
ECHO = $(ECHO1:0=@ echo)
NULLCMD = :

#### Start of system configuration section. ####

srcdir = .
topdir = /opt/local/include/ruby-3.2.4
hdrdir = $(topdir)
arch_hdrdir = /opt/local/include/ruby-3.2.4/x86_64-darwin12.0
PATH_SEPARATOR = :
VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby
prefix = $(DESTDIR)/opt/local
rubysitearchprefix = $(rubylibprefix)/$(sitearch)
rubyarchprefix = $(rubylibprefix)/$(arch)
rubylibprefix = $(exec_prefix)/lib/ruby3.2
exec_prefix = $(prefix)
vendorarchhdrdir = $(vendorhdrdir)/$(sitearch)
sitearchhdrdir = $(sitehdrdir)/$(sitearch)
rubyarchhdrdir = $(rubyhdrdir)/$(arch)
vendorhdrdir = $(rubyhdrdir)/vendor_ruby
sitehdrdir = $(rubyhdrdir)/site_ruby
rubyhdrdir = $(DESTDIR)/opt/local/include/ruby-3.2.4
vendorarchdir = $(vendorlibdir)/$(sitearch)
vendorlibdir = $(vendordir)/$(ruby_version)
vendordir = $(rubylibprefix)/vendor_ruby
sitearchdir = $(sitelibdir)/$(sitearch)
sitelibdir = $(sitedir)/$(ruby_version)
sitedir = $(rubylibprefix)/site_ruby
rubyarchdir = $(rubylibdir)/$(arch)
rubylibdir = $(rubylibprefix)/$(ruby_version)
sitearchincludedir = $(includedir)/$(sitearch)
archincludedir = $(includedir)/$(arch)
sitearchlibdir = $(libdir)/$(sitearch)
archlibdir = $(libdir)/$(arch)
ridir = $(datarootdir)/$(RI_BASE_NAME)
mandir = $(DESTDIR)/opt/local/share/man
localedir = $(datarootdir)/locale
libdir = $(exec_prefix)/lib
psdir = $(docdir)
pdfdir = $(docdir)
dvidir = $(docdir)
htmldir = $(docdir)
infodir = $(datarootdir)/info
docdir = $(datarootdir)/doc/$(PACKAGE)
oldincludedir = $(DESTDIR)/usr/include
includedir = $(SDKROOT)$(prefix)/include
runstatedir = $(localstatedir)/run
localstatedir = $(prefix)/var
sharedstatedir = $(prefix)/com
sysconfdir = $(prefix)/etc
datadir = $(datarootdir)
datarootdir = $(prefix)/share
libexecdir = $(exec_prefix)/libexec
sbindir = $(exec_prefix)/sbin
bindir = $(exec_prefix)/bin
archdir = $(rubyarchdir)

CC_WRAPPER = 
CC = /usr/bin/clang -std=gnu11
CXX = /usr/bin/clang++
LIBRUBY = $(LIBRUBY_SO)
LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
LIBRUBYARG_SHARED = -l$(RUBY_SO_NAME)
LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static -framework Security -framework CoreFoundation $(MAINLIBS)
empty =
OUTFLAG = -o $(empty)
COUTFLAG = -o $(empty)
CSRCFLAG = $(empty)

RUBY_EXTCONF_H = /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/numo/extconf.h
cflags   = $(optflags) $(debugflags) $(warnflags)
cxxflags = 
optflags = -O3 -fno-fast-math
debugflags = -ggdb3
warnflags = -Wall -Wextra -Wextra-tokens -Wdeprecated-declarations -Wdivision-by-zero -Wdiv-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wold-style-definition -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wundef
cppflags = 
CCDLFLAGS = -fno-common
CFLAGS   = $(CCDLFLAGS) -pipe -I/opt/local/libexec/openssl3/include -Os -fno-common $(ARCH_FLAG)
INCFLAGS = -I. -Itypes -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
DEFS     = 
CPPFLAGS = -DRUBY_EXTCONF_H=\"$(RUBY_EXTCONF_H)\" -I/opt/local/include -isystem/opt/local/include/LegacySupport -I/opt/local/libexec/openssl3/include -isystem/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT $(DEFS) $(cppflags)
CXXFLAGS = $(CCDLFLAGS) -pipe -I/opt/local/libexec/openssl3/include -Os -stdlib=libc++ $(ARCH_FLAG)
ldflags  = -L. -L/opt/local/libexec/openssl3/lib -Wl,-headerpad_max_install_names -L/opt/local/lib -lMacportsLegacySupport -fstack-protector -L/opt/local/lib
dldflags = -L/opt/local/libexec/openssl3/lib -Wl,-headerpad_max_install_names -L/opt/local/lib -lMacportsLegacySupport -arch x86_64 -L/opt/local/lib -Wl,-multiply_defined,suppress -Wl,-undefined,dynamic_lookup $(LIBRUBYARG_SHARED)
ARCH_FLAG =  -arch x86_64
DLDFLAGS = $(ldflags) $(dldflags) $(ARCH_FLAG)
LDSHARED = $(CC) -dynamic -bundle
LDSHAREDXX = $(CXX) -dynamic -bundle
AR = /opt/local/bin/ar
EXEEXT = 

RUBY_INSTALL_NAME = $(RUBY_BASE_NAME)3.2
RUBY_SO_NAME = ruby.3.2
RUBYW_INSTALL_NAME = 
RUBY_VERSION_NAME = $(RUBY_BASE_NAME)-$(ruby_version)
RUBYW_BASE_NAME = rubyw
RUBY_BASE_NAME = ruby

arch = x86_64-darwin12.0
sitearch = $(arch)
ruby_version = 3.2.0
ruby = $(bindir)/$(RUBY_BASE_NAME)3.2
RUBY = $(ruby)
BUILTRUBY = $(bindir)/$(RUBY_BASE_NAME)3.2
ruby_headers = $(hdrdir)/ruby.h $(hdrdir)/ruby/backward.h $(hdrdir)/ruby/ruby.h $(hdrdir)/ruby/defines.h $(hdrdir)/ruby/missing.h $(hdrdir)/ruby/intern.h $(hdrdir)/ruby/st.h $(hdrdir)/ruby/subst.h $(arch_hdrdir)/ruby/config.h $(RUBY_EXTCONF_H)

RM = rm -f
RM_RF = rm -fr
RMDIRS = rmdir -p
MAKEDIRS = mkdir -p
INSTALL = /usr/bin/install -c
INSTALL_PROG = $(INSTALL) -m 0755
INSTALL_DATA = $(INSTALL) -m 644
COPY = cp
TOUCH = exit >

#### End of system configuration section. ####

preload = 
libpath = . $(libdir) /opt/local/lib
LIBPATH =  -L. -L$(libdir) -L/opt/local/lib
DEFFILE = 

CLEANFILES = mkmf.log
DISTCLEANFILES = 
DISTCLEANDIRS = 

extout = 
extout_prefix = 
target_prefix = /numo
LOCAL_LIBS = 
LIBS = $(LIBRUBYARG_SHARED)  -lpthread  
ORIG_SRCS = SFMT.c array.c data.c index.c kwargs.c math.c narray.c ndloop.c rand.c step.c struct.c
SRCS = $(ORIG_SRCS) narray.c array.c step.c index.c ndloop.c data.c t_bit.c t_int8.c t_int16.c t_int32.c t_int64.c t_uint8.c t_uint16.c t_uint32.c t_uint64.c t_sfloat.c t_dfloat.c t_scomplex.c t_dcomplex.c t_robject.c math.c SFMT.c struct.c rand.c
OBJS = narray.o array.o step.o index.o ndloop.o data.o t_bit.o t_int8.o t_int16.o t_int32.o t_int64.o t_uint8.o t_uint16.o t_uint32.o t_uint64.o t_sfloat.o t_dfloat.o t_scomplex.o t_dcomplex.o t_robject.o math.o SFMT.o struct.o rand.o
HDRS = $(srcdir)/SFMT-params.h $(srcdir)/SFMT-params19937.h $(srcdir)/SFMT.h
LOCAL_HDRS = 
TARGET = narray
TARGET_NAME = narray
TARGET_ENTRY = Init_$(TARGET_NAME)
DLLIB = $(TARGET).bundle
EXTSTATIC = 
STATIC_LIB = 

TIMESTAMP_DIR = .
BINDIR        = $(bindir)
RUBYCOMMONDIR = $(sitedir)$(target_prefix)
RUBYLIBDIR    = $(sitelibdir)$(target_prefix)
RUBYARCHDIR   = $(sitearchdir)$(target_prefix)
HDRDIR        = $(sitehdrdir)$(target_prefix)
ARCHHDRDIR    = $(sitearchhdrdir)$(target_prefix)
TARGET_SO_DIR =
TARGET_SO     = $(TARGET_SO_DIR)$(DLLIB)
CLEANLIBS     = $(TARGET_SO) $(TARGET_SO).dSYM
CLEANOBJS     = $(OBJS) *.bak
TARGET_SO_DIR_TIMESTAMP = $(TIMESTAMP_DIR)/.sitearchdir.-.numo.time

all:    $(DLLIB)
static: $(STATIC_LIB)
.PHONY: all install static install-so install-rb
.PHONY: clean clean-so clean-static clean-rb

clean-static::
clean-rb-default::
clean-rb::
clean-so::
clean: clean-so clean-static clean-rb-default clean-rb
        -$(Q)$(RM_RF) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES) .*.time

distclean-rb-default::
distclean-rb::
distclean-so::
distclean-static::
distclean: clean distclean-so distclean-static distclean-rb-default distclean-rb
        -$(Q)$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log
        -$(Q)$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES)
        -$(Q)$(RMDIRS) $(DISTCLEANDIRS) 2> /dev/null || true

realclean: distclean
install: install-so install-rb

install-so: $(DLLIB) $(TARGET_SO_DIR_TIMESTAMP)
    $(INSTALL_PROG) $(DLLIB) $(RUBYARCHDIR)
clean-static::
    -$(Q)$(RM) $(STATIC_LIB)
install-rb: pre-install-rb do-install-rb install-rb-default
install-rb-default: pre-install-rb-default do-install-rb-default
pre-install-rb: Makefile
pre-install-rb-default: Makefile
do-install-rb:
do-install-rb-default:
pre-install-rb-default:
    @$(NULLCMD)
pre-install-rb: $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.time
do-install-rb: $(RUBYARCHDIR)/numo/compat.h
$(RUBYARCHDIR)/numo/compat.h: $(srcdir)/numo/compat.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/compat.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/intern.h
$(RUBYARCHDIR)/numo/intern.h: $(srcdir)/numo/intern.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/intern.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/narray.h
$(RUBYARCHDIR)/numo/narray.h: $(srcdir)/numo/narray.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/narray.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/ndloop.h
$(RUBYARCHDIR)/numo/ndloop.h: $(srcdir)/numo/ndloop.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/ndloop.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/template.h
$(RUBYARCHDIR)/numo/template.h: $(srcdir)/numo/template.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/template.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/extconf.h
$(RUBYARCHDIR)/numo/extconf.h: $(srcdir)/numo/extconf.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/extconf.h $(@D)
pre-install-rb: $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
do-install-rb: $(RUBYARCHDIR)/numo/types/bit.h
$(RUBYARCHDIR)/numo/types/bit.h: $(srcdir)/numo/types/bit.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/bit.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/complex.h
$(RUBYARCHDIR)/numo/types/complex.h: $(srcdir)/numo/types/complex.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/complex.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/complex_macro.h
$(RUBYARCHDIR)/numo/types/complex_macro.h: $(srcdir)/numo/types/complex_macro.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/complex_macro.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/dcomplex.h
$(RUBYARCHDIR)/numo/types/dcomplex.h: $(srcdir)/numo/types/dcomplex.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/dcomplex.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/dfloat.h
$(RUBYARCHDIR)/numo/types/dfloat.h: $(srcdir)/numo/types/dfloat.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/dfloat.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/float_def.h
$(RUBYARCHDIR)/numo/types/float_def.h: $(srcdir)/numo/types/float_def.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/float_def.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/float_macro.h
$(RUBYARCHDIR)/numo/types/float_macro.h: $(srcdir)/numo/types/float_macro.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/float_macro.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/int16.h
$(RUBYARCHDIR)/numo/types/int16.h: $(srcdir)/numo/types/int16.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/int16.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/int32.h
$(RUBYARCHDIR)/numo/types/int32.h: $(srcdir)/numo/types/int32.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/int32.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/int64.h
$(RUBYARCHDIR)/numo/types/int64.h: $(srcdir)/numo/types/int64.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/int64.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/int8.h
$(RUBYARCHDIR)/numo/types/int8.h: $(srcdir)/numo/types/int8.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/int8.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/int_macro.h
$(RUBYARCHDIR)/numo/types/int_macro.h: $(srcdir)/numo/types/int_macro.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/int_macro.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/real_accum.h
$(RUBYARCHDIR)/numo/types/real_accum.h: $(srcdir)/numo/types/real_accum.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/real_accum.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/robj_macro.h
$(RUBYARCHDIR)/numo/types/robj_macro.h: $(srcdir)/numo/types/robj_macro.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/robj_macro.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/robject.h
$(RUBYARCHDIR)/numo/types/robject.h: $(srcdir)/numo/types/robject.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/robject.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/scomplex.h
$(RUBYARCHDIR)/numo/types/scomplex.h: $(srcdir)/numo/types/scomplex.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/scomplex.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/sfloat.h
$(RUBYARCHDIR)/numo/types/sfloat.h: $(srcdir)/numo/types/sfloat.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/sfloat.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/uint16.h
$(RUBYARCHDIR)/numo/types/uint16.h: $(srcdir)/numo/types/uint16.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/uint16.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/uint32.h
$(RUBYARCHDIR)/numo/types/uint32.h: $(srcdir)/numo/types/uint32.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/uint32.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/uint64.h
$(RUBYARCHDIR)/numo/types/uint64.h: $(srcdir)/numo/types/uint64.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/uint64.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/uint8.h
$(RUBYARCHDIR)/numo/types/uint8.h: $(srcdir)/numo/types/uint8.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/uint8.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/uint_macro.h
$(RUBYARCHDIR)/numo/types/uint_macro.h: $(srcdir)/numo/types/uint_macro.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/uint_macro.h $(@D)
do-install-rb: $(RUBYARCHDIR)/numo/types/xint_macro.h
$(RUBYARCHDIR)/numo/types/xint_macro.h: $(srcdir)/numo/types/xint_macro.h $(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time
    $(Q) $(INSTALL_DATA) $(srcdir)/numo/types/xint_macro.h $(@D)
pre-install-rb:
    $(Q1:0=@$(MAKE) -q do-install-rb || )$(ECHO1:0=echo) installing narray libraries
$(TARGET_SO_DIR_TIMESTAMP):
    $(Q) $(MAKEDIRS) $(@D) $(RUBYARCHDIR)
    $(Q) $(TOUCH) $@
$(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.time:
    $(Q) $(MAKEDIRS) $(@D) $(RUBYARCHDIR)/numo
    $(Q) $(TOUCH) $@
$(TIMESTAMP_DIR)/.sitearchdir.-.numo.-.numo.-.types.time:
    $(Q) $(MAKEDIRS) $(@D) $(RUBYARCHDIR)/numo/types
    $(Q) $(TOUCH) $@

site-install: site-install-so site-install-rb
site-install-so: install-so
site-install-rb: install-rb

.SUFFIXES: .c .m .cc .mm .cxx .cpp .o .S

.cc.o:
    $(ECHO) compiling $(<)
    $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<

.cc.S:
    $(ECHO) translating $(<)
    $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<

.mm.o:
    $(ECHO) compiling $(<)
    $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<

.mm.S:
    $(ECHO) translating $(<)
    $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<

.cxx.o:
    $(ECHO) compiling $(<)
    $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<

.cxx.S:
    $(ECHO) translating $(<)
    $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<

.cpp.o:
    $(ECHO) compiling $(<)
    $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<

.cpp.S:
    $(ECHO) translating $(<)
    $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<

.c.o:
    $(ECHO) compiling $(<)
    $(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<

.c.S:
    $(ECHO) translating $(<)
    $(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<

.m.o:
    $(ECHO) compiling $(<)
    $(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<

.m.S:
    $(ECHO) translating $(<)
    $(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<

$(TARGET_SO): $(OBJS) Makefile
    $(ECHO) linking shared-object numo/$(DLLIB)
    -$(Q)$(RM) $(@)
    $(Q) $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
    $(Q) $(POSTLINK)

###
$(OBJS): $(RUBY_EXTCONF_H)

TAGSRC = \
 numo/types/*.h \
 *.c

tags : TAGS
TAGS : $(TAGSRC)
    etags $(TAGSRC)

doc :
    yard doc *.c

C_TMPL = /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/accum.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/accum_arg.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/accum_binary.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/accum_index.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/alloc_func.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/allocate.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/aref.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/aset.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/binary.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/binary2.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/binary_s.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/bincount.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/cast.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/cast_array.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/class.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/clip.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/coerce_cast.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/cond_binary.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/cond_unary.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/cum.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/each.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/each_with_index.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/ewcomp.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/extract.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/extract_data.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/eye.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/fill.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/format.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/format_to_a.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/frexp.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/init_class.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/init_module.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/inspect.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/lib.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/logseq.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/map_with_index.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/median.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/minmax.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/module.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/new_dim0.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/poly.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/pow.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/powint.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/qsort.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/rand.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/rand_norm.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/seq.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/set2.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/sort.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/sort_index.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/store.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/store_array.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/store_bit.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/store_from.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/store_numeric.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/to_a.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/unary.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/unary2.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/unary_ret2.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl/unary_s.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/allocate.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/aref.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/aset.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/binary.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/bit_count.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/bit_reduce.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/each.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/each_with_index.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/extract.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/fill.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/format.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/format_to_a.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/inspect.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/mask.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/none_p.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/store_array.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/store_bit.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/store_from.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/to_a.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/unary.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/where.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/tmpl_bit/where2.c

COGEN = /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb
DEPENDS = $(C_TMPL) /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/*.rb

t_bit.c: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/bit.rb $(DEPENDS)
    ruby $(COGEN) -l -o $@ /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/bit.rb

t_dcomplex.c: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/dcomplex.rb $(DEPENDS)
    ruby $(COGEN) -l -o $@ /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/dcomplex.rb

t_dfloat.c: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/dfloat.rb $(DEPENDS)
    ruby $(COGEN) -l -o $@ /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/dfloat.rb

t_int16.c: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/int16.rb $(DEPENDS)
    ruby $(COGEN) -l -o $@ /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/int16.rb

t_int32.c: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/int32.rb $(DEPENDS)
    ruby $(COGEN) -l -o $@ /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/int32.rb

t_int64.c: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/int64.rb $(DEPENDS)
    ruby $(COGEN) -l -o $@ /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/int64.rb

t_int8.c: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/int8.rb $(DEPENDS)
    ruby $(COGEN) -l -o $@ /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/int8.rb

t_robject.c: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/robject.rb $(DEPENDS)
    ruby $(COGEN) -l -o $@ /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/robject.rb

t_scomplex.c: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/scomplex.rb $(DEPENDS)
    ruby $(COGEN) -l -o $@ /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/scomplex.rb

t_sfloat.c: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/sfloat.rb $(DEPENDS)
    ruby $(COGEN) -l -o $@ /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/sfloat.rb

t_uint16.c: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/uint16.rb $(DEPENDS)
    ruby $(COGEN) -l -o $@ /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/uint16.rb

t_uint32.c: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/uint32.rb $(DEPENDS)
    ruby $(COGEN) -l -o $@ /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/uint32.rb

t_uint64.c: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/uint64.rb $(DEPENDS)
    ruby $(COGEN) -l -o $@ /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/uint64.rb

t_uint8.c: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/uint8.rb $(DEPENDS)
    ruby $(COGEN) -l -o $@ /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/uint8.rb

src : t_bit.c t_dcomplex.c t_dfloat.c t_int16.c t_int32.c t_int64.c t_int8.c t_robject.c t_scomplex.c t_sfloat.c t_uint16.c t_uint32.c t_uint64.c t_uint8.c

CLEANOBJS = *.o t_*.c *.bak
DISTCLEANFILES = depend TAGS

And it fails:

Executing:  cd "/opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/numo-narray-0.9.2.1" && /opt/local/bin/gem3.2 install --local --force --install-dir /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0 /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/numo-narray-0.9.2.1/numo-narray.gem 
Building native extensions. This could take a while...
ERROR:  Error installing /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/numo-narray-0.9.2.1/numo-narray.gem:
    ERROR: Failed to build gem native extension.

    current directory: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray
/opt/local/bin/ruby3.2 extconf.rb
checking for stdbool.h... yes
checking for stdint.h... yes
checking for bool in stdbool.h... yes
checking for u_int8_t in stdint.h... yes
checking for u_int16_t in stdint.h... yes
checking for int32_t in stdint.h... yes
checking for u_int32_t in stdint.h... yes
checking for int64_t in stdint.h... yes
checking for u_int64_t in stdint.h... yes
checking for exp10()... no
checking for rb_arithmetic_sequence_extract()... yes
checking for rb_cComplex... yes
creating /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/numo/extconf.h
creating Makefile

current directory: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray
make DESTDIR\= sitearchdir\=./.gem.20240619-85023-wzktxm sitelibdir\=./.gem.20240619-85023-wzktxm clean

current directory: /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray
make DESTDIR\= sitearchdir\=./.gem.20240619-85023-wzktxm sitelibdir\=./.gem.20240619-85023-wzktxm
compiling narray.c
compiling array.c
compiling step.c
compiling index.c
compiling ndloop.c
compiling data.c
ruby /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb -l -o t_bit.c /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/def/bit.rb
/opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:45: syntax error, unexpected ':', expecting kEND
  set line_number: $line_number
                  ^
/opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:46: syntax error, unexpected ':', expecting kEND
  set erb_dir: erb_dir
              ^
/opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:47: syntax error, unexpected ':', expecting kEND
  set erb_suffix: ".c"
                 ^
/opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:48: syntax error, unexpected ':', expecting kEND
  set ns_var: "mNumo"
             ^
/opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:50: syntax error, unexpected ':', expecting kEND
  set file_name: $output||""
                ^
/opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:51: syntax error, unexpected ':', expecting kEND
  set include_files: ["numo/types/#{type_name}.h"]
                    ^
/opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:52: syntax error, unexpected ':', expecting kEND
  set lib_name: "numo_"+type_name
               ^
/opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:55: syntax error, unexpected ':', expecting kEND
    set is_simd: true
                ^
/opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1/ext/numo/narray/gen/cogen.rb:57: syntax error, unexpected ':', expecting kEND
    set is_simd: false
                ^
make: *** [t_bit.c] Error 1

make failed, exit code 2

Gem files will remain installed in /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/gems/numo-narray-0.9.2.1 for inspection.
Results logged to /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0/extensions/x86_64-darwin-12/3.2.0/numo-narray-0.9.2.1/gem_make.out
Command failed:  cd "/opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/numo-narray-0.9.2.1" && /opt/local/bin/gem3.2 install --local --force --install-dir /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/destroot/opt/local/lib/ruby3.2/gems/3.2.0 /opt/local/var/macports/build/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/work/numo-narray-0.9.2.1/numo-narray.gem 
Exit code: 1
Error: Failed to destroot rb32-numo-narray: command execution failed
Error: See /opt/local/var/macports/logs/_opt_MountainLionPorts_ruby_rb-numo-narray/rb32-numo-narray/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets if you believe there
is a bug.
Error: Processing of port rb32-numo-narray failed
barracuda156 commented 2 months ago

UPD2. Ah, perhaps here it should be fixed too: ext/numo/narray/depend

barracuda156 commented 2 months ago

Bingo, the bug is here: https://github.com/ruby-numo/numo-narray/blob/8ddb72847d563b735cad3e4161b7978e2bbf7b87/ext/numo/narray/depend.erb#L24

barracuda156 commented 2 months ago

I can confirm that after patching in the right Ruby, this builds both on x86_64 and PowerPC.

barracuda156 commented 2 months ago

@jneen Is there some way to inform the build which specific Ruby to use? We have fixed numo-narray, but then other numo-* packages fail to build, and it is pretty troublesome to patch every one of them.