# HG changeset patch # User Jan Vrany # Date 1501538626 -3600 # Node ID 78f8c3f3390ddb185157ece080d2f45ee68919ac # Parent 8229af6e81df7658b2c6a0c9afda9b796c9938cd Makefiles: Added our own implementation of `stmkmf` This is a preparation to fork and clean Smalltalk/X makefiles. Since package makefile is generated by stmkmf, we need to use our own in order to include our own makefiles. diff -r 8229af6e81df -r 78f8c3f3390d bin/stmkmf.rb --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/bin/stmkmf.rb Mon Jul 31 23:03:46 2017 +0100 @@ -0,0 +1,86 @@ +#!/usr/bin/env ruby +DOCUMENTATION = < [ BUILD_DIR / pkg.directory / 'makefile' ] file BUILD_DIR / pkg.directory / 'makefile' do chdir BUILD_DIR / pkg.directory do - if not system "sh #{ pkg.top() / 'stx' / 'rules' / 'stmkmf'}" + if not system "#{ pkg.top() / 'stx' / 'rules' / 'stmkmf'}" raise Exception.new("Canmot run stmkmf for #{pkg.directory}") end end diff -r 8229af6e81df -r 78f8c3f3390d specs/baseline.rbspec --- a/specs/baseline.rbspec Wed Aug 02 20:21:39 2017 +0100 +++ b/specs/baseline.rbspec Mon Jul 31 23:03:46 2017 +0100 @@ -50,6 +50,14 @@ file BUILD_DIR / 'stx' / 'rules' => BUILD_DIR do | t | checkout :'exept:public', 'stx/rules' + if unix? then + chdir BUILD_DIR / 'stx' / 'rules' do + rm_f 'stmkmf' + # Argh, cannot use ln_s as it cannot make symlinks with relative + # paths. Sigh, + sh "ln -s \'../../../bin/stmkmf.rb\' stmkmf" + end + end # the clear is here to avoid multiple checkouts t.clear() end