I'm still on my quest to get a configure script to run under serenity using bash. I have tried a few different configure scripts for different programs. I change the hashbang to /usr/local/bin/bash first but they all only get as far as:
error: cannot find sources in or ..
You'd expect that error to read:
error: cannot find sources in . or ..

@alimpfard I see our expr doesn't support match yet and looks like configure autoHELL needs it.
Someone dropped autohell in irc recently and it's become an earworm of sorts, a fave phrase even.
I see our expr doesn't support match yet and looks like configure autoHELL needs it.
I did mention that a while back, until we get a regex library, expr won't have a working match
autohell
I'm glad it stuck
I also noticed these errors printed to the qemu terminal when I run configure:
[bash(30:30)]: CPU[0] NP(error) fault at invalid address V0x02101cc8
[bash(30:30)]: 0xc017c8fd Kernel::Process::sys$exit(int) +31
[bash(30:30)]: 0xc0176477 syscall_handler +905
[bash(30:30)]: 0xc017608f syscall_asm_entry +49
[bash(30:30)]: 0x080fd822 unsetenv +0
[bash(30:30)]: 0x0805f056 execute_disk_command +1014
[bash(30:30)]: 0x08061efd execute_command_internal +11053
[bash(30:30)]: 0x080639d3 execute_connection +195
[bash(30:30)]: 0x0805fe7b execute_command_internal +2731
[bash(30:30)]: 0x08062bca execute_in_subshell +794
[bash(30:30)]: 0x0805f5fe execute_command_internal +558
[bash(30:30)]: 0x08062673 execute_command +131
[bash(30:30)]: 0x08063a25 execute_connection +277
[bash(30:30)]: 0x0805fe7b execute_command_internal +2731
[bash(30:30)]: 0x080639d3 execute_connection +195
[bash(30:30)]: 0x0805fe7b execute_command_internal +2731
[bash(30:30)]: 0x08062673 execute_command +131
[bash(30:30)]: 0x080603e3 execute_command_internal +4115
[bash(30:30)]: 0x08062673 execute_command +131
[bash(30:30)]: 0x0804af0f reader_loop +431
[bash(30:30)]: 0x08048c8e main +2910
[bash(30:30)]: 0x08049de5 _start +94
[bash(29:29)]: CPU[0] NP(error) fault at invalid address V0x02101cc8
[bash(29:29)]: 0xc017c8fd Kernel::Process::sys$exit(int) +31
[bash(29:29)]: 0xc0176477 syscall_handler +905
[bash(29:29)]: 0xc017608f syscall_asm_entry +49
[bash(29:29)]: 0x080fd822 unsetenv +0
[bash(29:29)]: 0x0804a85e sh_exit +14
[bash(29:29)]: 0x0805f614 execute_command_internal +580
[bash(29:29)]: 0x08062673 execute_command +131
[bash(29:29)]: 0x08063a25 execute_connection +277
[bash(29:29)]: 0x0805fe7b execute_command_internal +2731
[bash(29:29)]: 0x080639d3 execute_connection +195
[bash(29:29)]: 0x0805fe7b execute_command_internal +2731
[bash(29:29)]: 0x08062673 execute_command +131
[bash(29:29)]: 0x080603e3 execute_command_internal +4115
[bash(29:29)]: 0x08062673 execute_command +131
[bash(29:29)]: 0x0804af0f reader_loop +431
[bash(29:29)]: 0x08048c8e main +2910
[bash(29:29)]: 0x08049de5 _start +94
[bash(34:34)]: CPU[0] NP(error) fault at invalid address V0x02101cc8
[bash(34:34)]: 0xc017c8fd Kernel::Process::sys$exit(int) +31
[bash(34:34)]: 0xc0176477 syscall_handler +905
[bash(34:34)]: 0xc017608f syscall_asm_entry +49
[bash(34:34)]: 0x080fd822 unsetenv +0
[bash(34:34)]: 0x0804a85e sh_exit +14
[bash(34:34)]: 0x0805f614 execute_command_internal +580
[bash(34:34)]: 0x08060420 execute_command_internal +4176
[bash(34:34)]: 0x080636f4 execute_function +1588
[bash(34:34)]: 0x08062476 execute_command_internal +12454
[bash(34:34)]: 0x08060420 execute_command_internal +4176
[bash(34:34)]: 0x080636f4 execute_function +1588
[bash(34:34)]: 0x08062476 execute_command_internal +12454
[bash(34:34)]: 0x08062673 execute_command +131
[bash(34:34)]: 0x08063a25 execute_connection +277
[bash(34:34)]: 0x0805fe7b execute_command_internal +2731
[bash(34:34)]: 0x080aa9da parse_and_execute +1146
[bash(34:34)]: 0x080aadc0 evalstring +64
[bash(34:34)]: 0x080a97d8 eval_builtin +56
[bash(34:34)]: 0x0805cec3 execute_builtin +835
[bash(34:34)]: 0x080621c6 execute_command_internal +11766
[bash(34:34)]: 0x08062bca execute_in_subshell +794
[bash(34:34)]: 0x0805f5fe execute_command_internal +558
[bash(34:34)]: 0x08062673 execute_command +131
[bash(34:34)]: 0x0806039f execute_command_internal +4047
[bash(34:34)]: 0x080639d3 execute_connection +195
[bash(34:34)]: 0x0805fe7b execute_command_internal +2731
[bash(34:34)]: 0x08062673 execute_command +131
[bash(34:34)]: 0x0806399e execute_connection +142
[bash(34:34)]: 0x0805fe7b execute_command_internal +2731
[bash(34:34)]: 0x08062673 execute_command +131
[bash(34:34)]: 0x080603e3 execute_command_internal +4115
[bash(34:34)]: 0x08062673 execute_command +131
[bash(34:34)]: 0x0804af0f reader_loop +431
[bash(34:34)]: 0x08048c8e main +2910
[bash(34:34)]: 0x08049de5 _start +94
[expr(40:40)]: CPU[0] NP(error) fault at invalid address V0x01f02908
[expr(40:40)]: 0xc017c8fd Kernel::Process::sys$exit(int) +31
[expr(40:40)]: 0xc0176477 syscall_handler +905
[expr(40:40)]: 0xc017608f syscall_asm_entry +49
[expr(40:40)]: 0x0805878a unsetenv +0
[expr(40:40)]: 0x0804a26c StringExpression::integer() const +268
[expr(40:40)]: 0x080482be main +489
[expr(40:40)]: 0x080484eb _start +94
[ln(54:54)]: VFS::symlink: 'conf24' (-> 'conf24.file') in 1:18251
ln(55): perror(): symlink: File already exists
[ln(55:55)]: CPU[0] NP(error) fault at invalid address V0x01f025c8
[ln(55:55)]: 0xc017c8fd Kernel::Process::sys$exit(int) +31
[ln(55:55)]: 0xc0176477 syscall_handler +905
[ln(55:55)]: 0xc017608f syscall_asm_entry +49
[ln(55:55)]: 0x0805848c unsetenv +0
[ln(55:55)]: 0x08048388 _start +102
sed(61): FIXME(LibC): setlocale(0, '')
[bash(59:59)]: Scheduler[0]: Reaped unparented process hostname(62), exit status: 0
[bash(24:24)]: CPU[0] NP(error) fault at invalid address V0x02101cc8
[bash(24:24)]: 0xc017c8fd Kernel::Process::sys$exit(int) +31
[bash(24:24)]: 0xc0176477 syscall_handler +905
[bash(24:24)]: 0xc017608f syscall_asm_entry +49
[bash(24:24)]: 0x080fd822 unsetenv +0
[bash(24:24)]: 0x0804a81b exit_shell +139
[bash(24:24)]: 0x08048c9c main +2924
[bash(24:24)]: 0x08049de5 _start +94
Shell(22): Job entry "./configure" deleted in 322 ms
[SyncTask(2:2)]: Ext2FS: Flushed 8 blocks to disk
[SyncTask(2:2)]: Ext2FS: Flushed 4 blocks to disk
Those are very likely just sys$exit() dumping a backtrace, it does that when the exit code isn't 0.
OK.
As for regex. doesn't LibJS already have some regex support? Shouldn't that that be pulled out of LibJS so other apps can use it without pulling in LibJS?
doesn't LibJS already have some regex support?
No. It parses regex literals to not choke on scripts containing them, but doesn't have any regex functionality beyond that.
I'm sure a saw a PR for a regex engine a while back. Did I imagine it or did that get scrapped?
EDIT
I wasn't imagining it, it was this:
Did I imagine it or did that get scrapped?
Issue: https://github.com/SerenityOS/serenity/issues/2352
PR 1, closed voluntarily by author: https://github.com/SerenityOS/serenity/pull/1654
PR 2, closed due to inactivity: https://github.com/SerenityOS/serenity/pull/2363
It's a shame #2363 got abandoned, it seemed more or less complete and functional.
Yeah, it looks like they had written a new grep to go with it too.
@danboid does the (now available) match support in expr help this issue?
Still cannae run configure:

Already done that L!
Why is that using our shell to run configure...?