Re: MacPorts vs. Apple compiler issues, Handle

2024-03-19 Thread Joshua Root

On 20/3/2024 03:23, Riccardo Mottola wrote:

Hi,

Joshua Root wrote:
And this is where it happened. Since this is not a full debug build, 
there is no line number information, but you at least know which 
method is doing the bad memory access.




But it should be a debug build. Well a build with debug symbols (not a 
firefox-style debug which adds also a lot of debug code).

I add:
ac_add_options --disable-strip

and this helps on Linux usually.


If the binary was stripped, you wouldn't see any names, just addresses. 
To see line numbers, you have to build with -g, and the DWARF 
information has to be available at runtime, by default in the build 
directory in .dSYM bundles.


Still, the nsWindowWatcher class gave me a clue and I found a couple of 
Firefox patches to import which initialized parameters, checked them, 
etc and now the error changed to>


0   XUL       0x0001035f5c44 
JS::Rooted::registerWithRootLists(js::RootLists&) + 20
1   ???       0x7ffeecb477f0 0 + 
140732869670896


this is bad, since it is inside the JS engine. Also the JS engine works 
on other system when compiled with modern clang and gcc!


Also here I don't have a class name which maps directly to a file which 
I can easily inspect.


Looks like its defined in js/public/RootingAPI.h ?

- Josh


Re: external build progress reporting cli utility?

2024-03-19 Thread René J . V . Bertin
>You can run the build under screen / tmux.

Sure, but that only works if you think about it before launching it. And I only 
know `screen` as a utility to run multiple commands/sessions from a single 
shell, a more advanced for of the Ctrl-Z, bg and fg shell commands. What I'm 
thinking about is phoning in from anywhere and peek at the logfile through a 
filter that detects the `:info:[^ ]* [X/Y] .*` from the possibly interminable 
compiler commands in that file and presents them in an easy to digest fashion.

My initial idea was to roll my own, and then I realised the code to do this 
exists and that it might be possible to write a Tcl script that reuses that 
code. Heck, maybe it's even an idea to implement something like a `port state 
foo` command that prints the currently executing phase for port:foo and the 
current progress if that information is available.

R.


Re: MacPorts vs. Apple compiler issues, Handle

2024-03-19 Thread Sergio Had
Well, “involved” perhaps was too much of a statement, I meant we communicated 
on the matter and it was/is work-in-progress to make it work on PowerPC.

We got White Star (Palemoon) building on ppc not long ago btw, but it does not 
yet run.

P. S. I should change my Gmail settings, otherwise I’m unrecognizable :)
@barracuda156
On Mar 20, 2024 at 00:30 +0800, Riccardo Mottola , 
wrote:
> Hi,
>
> Sergio Had wrote:
> > Could you refer me to the beginning of this discussion please?
> it started on the Mac Users mailing list, you can find in the archives!
>
>
> >
> > I am also involved in AF project:)
>
> Oh, I am curious, how?
> I am essentially the only active developer currently, except Roy who
> does its windows fork.
>
> Riccardo


Re: MacPorts vs. Apple compiler issues, Handle

2024-03-19 Thread Riccardo Mottola via macports-dev

Hi,

Sergio Had wrote:

Could you refer me to the beginning of this discussion please?

it started on the Mac Users mailing list, you can find in the archives!




I am also involved in AF project:)


Oh, I am curious, how?
I am essentially the only active developer currently, except Roy who 
does its windows fork.


Riccardo


Re: external build progress reporting cli utility?

2024-03-19 Thread David Gilman
You can run the build under screen / tmux.

David Gilman
:DG<


On Tue, Mar 19, 2024 at 10:42 AM René J.V. Bertin 
wrote:

> Hi,
>
> Does anyone else ever launch a substantial build on the "local console"
> and then leaves the Mac, but would like to monitor progress remotely
> sometimes from a simple SSH remote connection?
>
> I do, and wonder how difficult it would be to be able to do something like
> `tail -f `port logfile foo` | port_progress` and get the same kind of
> progress report shown on the terminal where you launched the build command.
>
> I know the progress bar is built from information that's also sent to the
> log file but not how straightforward it would be to write a Tcl script that
> loads the appropriate package(s) and applies the progress reporting
> routines on input read from stdin.
>
> Implementing `tail -f` in Tcl would be a next-level exercise ;)
>
> Thanks,
> R.
>


Re: MacPorts vs. Apple compiler issues, Handle

2024-03-19 Thread Riccardo Mottola via macports-dev

Hi,

Joshua Root wrote:

(Moving to macports-dev as it is a better fit for this topic.)


indeed, it is a development issue, although well, not for a MacPorts 
package (yet?) but use of MP development tools.


Issues that only appear at higher optimisation levels also often 
involve undefined behaviour.




Right.. I reduced optimization to O1 with no change, I have strange 
issues compiling with O0!




Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   XUL       0x00010f5468e1 
nsWindowWatcher::OpenWindowInternal(mozIDOMWindowProxy*, char const*, 
char const*, char const*, bool, bool, bool, nsITabParent*, nsIArray*, 
nsIDocShellLoadInfo*, mozIDOMWindowProxy**) + 273


And this is where it happened. Since this is not a full debug build, 
there is no line number information, but you at least know which 
method is doing the bad memory access.




But it should be a debug build. Well a build with debug symbols (not a 
firefox-style debug which adds also a lot of debug code).

I add:
ac_add_options --disable-strip

and this helps on Linux usually.

Still, the nsWindowWatcher class gave me a clue and I found a couple of 
Firefox patches to import which initialized parameters, checked them, 
etc and now the error changed to>


0   XUL       0x0001035f5c44 
JS::Rooted::registerWithRootLists(js::RootLists&) + 20

1   ???       0x7ffeecb477f0 0 + 140732869670896

this is bad, since it is inside the JS engine. Also the JS engine works 
on other system when compiled with modern clang and gcc!


Also here I don't have a class name which maps directly to a file which 
I can easily inspect.


I will try clang 7 & 8, just so.

Riccardo


external build progress reporting cli utility?

2024-03-19 Thread René J . V . Bertin
Hi,

Does anyone else ever launch a substantial build on the "local console" and 
then leaves the Mac, but would like to monitor progress remotely sometimes from 
a simple SSH remote connection?

I do, and wonder how difficult it would be to be able to do something like 
`tail -f `port logfile foo` | port_progress` and get the same kind of progress 
report shown on the terminal where you launched the build command.

I know the progress bar is built from information that's also sent to the log 
file but not how straightforward it would be to write a Tcl script that loads 
the appropriate package(s) and applies the progress reporting routines on input 
read from stdin.

Implementing `tail -f` in Tcl would be a next-level exercise ;)

Thanks,
R.