run-jsc with the --debugger option should work with SIP enabled
Created attachment 464332 [details] Patch
Comment on attachment 464332 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=464332&action=review This somehow lacks a commit message? > Tools/Scripts/run-jsc:56 > $jsc = $debuggerCmd . " " . File::Spec->catfile(jscProductDir(), "jsc -- --useDollarVM=1 ") . "@ARGV"; Huh, this is not nice. "jsc -- --useDollarVM=1 " is not a path component. I'd suggest improving this line while at it. > Tools/Scripts/run-jsc:62 > $ENV{"DYLD_FRAMEWORK_PATH"} = $dyld; Is this still needed?
Comment on attachment 464332 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=464332&action=review >> Tools/Scripts/run-jsc:56 >> $jsc = $debuggerCmd . " " . File::Spec->catfile(jscProductDir(), "jsc -- --useDollarVM=1 ") . "@ARGV"; > > Huh, this is not nice. "jsc -- --useDollarVM=1 " is not a path component. I'd suggest improving this line while at it. Yeah, that's kinda weird. I'll fix. >> Tools/Scripts/run-jsc:62 >> $ENV{"DYLD_FRAMEWORK_PATH"} = $dyld; > > Is this still needed? I left it in case you have a custom debugger you want to use. It's also needed for the non-debugger case. Really though, I wanna know if there's a way to have the jsc binary specify where to find the library.
> Really though, I wanna know if there's a way to have the jsc binary specify where to find the library. Technically, there's @rpath that can be embedded in Mach-O loader commands (`otool -l` to see those in existing binaries). That would be tricky, as I don't think that jsc is always at the same relative path to the framework in all CI and development scenarios. I think that your approach in this patch is better.
Pull request: https://github.com/WebKit/WebKit/pull/8789
Committed 259103@main (0e5741eb7500): <https://commits.webkit.org/259103@main> Reviewed commits have been landed. Closing PR #8789 and removing active labels.