fix(ruby^2) (#4265)

* fix(ruby^2)

* allow rebuilds
This commit is contained in:
Jacob Heider 2023-11-29 17:34:38 -05:00 committed by GitHub
parent faf31aa423
commit b6fd4a247e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -20,21 +20,21 @@ build:
gnu.org/bison: ^3 gnu.org/bison: ^3
gnu.org/autoconf: '*' gnu.org/autoconf: '*'
linux: linux:
ruby-lang.org: ~3.1 # ruby requires ruby to build ruby-lang.org: '*' # ruby requires ruby to build
# ^^ only linux because we got issues on darwin currently and darwin provides ruby (for now) # ^^ only linux because we got issues on darwin currently and darwin provides ruby (for now)
env: env:
ARGS: ARGS:
- --prefix="{{prefix}}" - --prefix="{{prefix}}"
- --enable-load-relative # makes us relocatable - --enable-load-relative # makes us relocatable
- --without-gmp - --without-gmp
- --with-rubyarchprefix={{prefix}}/lib/ruby # no need for architecture specific crap - --with-rubyarchprefix={{prefix}}/lib/ruby # no need for architecture specific crap
- --with-rubyhdrdir={{prefix}}/include # ^^ - --with-rubyhdrdir={{prefix}}/include # ^^
- --with-rubyarchhdrdir={{prefix}}/include # ^^ - --with-rubyarchhdrdir={{prefix}}/include # ^^
- --disable-multiarch # ^^ - --disable-multiarch # ^^
- --with-vendordir=no # is empty so dont pollute - --with-vendordir=no # is empty so dont pollute
- --with-vendorarchdir=no # ^^ - --with-vendorarchdir=no # ^^
- --with-sitedir=no # ^^ - --with-sitedir=no # ^^
- --with-sitearchdir=no # ^^ - --with-sitearchdir=no # ^^
script: script:
- patch -p1 < props/mkconfig.rb.diff - patch -p1 < props/mkconfig.rb.diff
@ -53,8 +53,7 @@ build:
# a companion which in most use means gems are automatically added to the # a companion which in most use means gems are automatically added to the
# pkgenv. Ruby behaves well if gems isn't around but the user may get # pkgenv. Ruby behaves well if gems isn't around but the user may get
# unexpected errors in scenarios where they constructed an pkgenv manually # unexpected errors in scenarios where they constructed an pkgenv manually
- working-directory: - working-directory: ${{prefix}}/lib/ruby/{{version.marketing}}.0
${{prefix}}/lib/ruby/{{version.marketing}}.0
run: | run: |
for x in bundler rubygems bundler.rb rubygems.rb; do for x in bundler rubygems bundler.rb rubygems.rb; do
if test -d $x; then if test -d $x; then
@ -70,26 +69,24 @@ build:
rm -rf share/doc rm -rf share/doc
rm -rf lib/ruby/site_ruby rm -rf lib/ruby/site_ruby
rm -rf lib/ruby/vendor_ruby rm -rf lib/ruby/vendor_ruby
working-directory: working-directory: ${{prefix}}
${{prefix}}
# weirdly files get put here and we can't figure out how to stop it # weirdly files get put here and we can't figure out how to stop it
- run: | - run: |
if test -d pkgconfig; then rm -rf pkgconfig; fi
mv *-{{hw.platform}}*/* . mv *-{{hw.platform}}*/* .
rmdir *-{{hw.platform}}* rmdir *-{{hw.platform}}*
working-directory: working-directory: ${{prefix}}/lib
${{prefix}}/lib
- run: sed -i.bak - run: sed -i.bak
-e 's|$(DESTDIR){{prefix}}|$(topdir)|g' -e 's|$(DESTDIR){{prefix}}|$(topdir)|g'
-e 's|CONFIG\["topdir"\] = .*|CONFIG\["topdir"\] = TOPDIR|g' -e 's|CONFIG\["topdir"\] = .*|CONFIG\["topdir"\] = TOPDIR|g'
rbconfig.rb rbconfig.rb
working-directory: working-directory: ${{prefix}}/lib/ruby/{{version.marketing}}.0
${{prefix}}/lib/ruby/{{version.marketing}}.0
test: test:
dependencies: dependencies:
rubygems.org: '*' # is a companion __however__ brewkit doesnt add companions to the env automatically rubygems.org: '*' # is a companion __however__ brewkit doesnt add companions to the env automatically
script: script:
- | - |
ruby -e 'puts "Hello World!"' ruby -e 'puts "Hello World!"'
@ -122,11 +119,9 @@ provides:
- bin/irb - bin/irb
- bin/racc - bin/racc
- bin/rake - bin/rake
- bin/rbs
- bin/rdoc - bin/rdoc
- bin/ri - bin/ri
- bin/ruby - bin/ruby
- bin/typeprof
interprets: interprets:
extensions: rb extensions: rb