all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Po Lu <luangruo@yahoo.com>
Cc: stefankangas@gmail.com, emacs-devel@gnu.org
Subject: Re: Windows 9X without KernelEx
Date: Sun, 16 Jun 2024 08:36:28 +0300	[thread overview]
Message-ID: <86r0cxsb37.fsf@gnu.org> (raw)
In-Reply-To: <87wmmp4pdy.fsf@yahoo.com> (message from Po Lu on Sun, 16 Jun 2024 10:01:29 +0800)

> From: Po Lu <luangruo@yahoo.com>
> Cc: stefankangas@gmail.com,  emacs-devel@gnu.org
> Date: Sun, 16 Jun 2024 10:01:29 +0800
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > The GDI32.DLL part is specific to the functions used by w32font.c.
> > But the idea is general: all of the APIs that we call directly are
> > supposed to be present in some system DLL, even though some of them
> > have stub implementations.  For example, I have SHELL32.DLL (dated Sep
> > 1998!) from my old Windows 9X system, and in it I see both
> > ShellExecuteW and SHFileOperationW exports.
> 
> Mine reports a creation time of May 11th 1998, but upon running `nm' I
> see that it indeed exports those two functions, and a test program
> compiled in MinGW:
> 
>   int
>   main ()
>   {
>     extern int ShellExecuteW ();
>     extern int SHFileOperationW ();
>     char *x = (char *) &ShellExecuteW;
>     char *y = (char *) &SHFileOperationW;
>   }
> 
> starts and exits with no error dialog, and yet Emacs still does not link
> if it imports either symbol.  Might there perhaps be symbol versioning
> mechanisms or parameters in object files that influence its view of
> external symbols?  I'm lost, sorry.

I think the reason is we don't link with -lshell32 anymore.  We used
to do that until Emacs 25, but dropped that since for some reason.
Can you see if adding that to the link command fixes this problem?

> > What prevents us from calling globals_of_w32 before
> > w32_init_current_directory?
> 
> It resets numerous other variables and also initializes the "console
> ctrl handler", which gave me plenty of pause.

Does it solve the problem, though?  The variables it resets need all
to be reset anyway, and in the pdumper build this reset is a no-op
(they are static variables not recorded in the pdumper file).  So I
don't necessarily see why moving it up would cause any problem.



  reply	other threads:[~2024-06-16  5:36 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <875xub8sn8.fsf.ref@yahoo.com>
2024-06-14 15:12 ` Windows 9X without KernelEx Po Lu via Emacs development discussions.
2024-06-14 15:26   ` Eli Zaretskii
2024-06-14 15:37     ` Po Lu
2024-06-14 16:06       ` Eli Zaretskii
2024-06-15  1:42         ` Po Lu
2024-06-15  2:42         ` Po Lu
2024-06-15  6:58           ` Eli Zaretskii
2024-06-15  7:12             ` Po Lu
2024-06-15  7:37               ` Eli Zaretskii
2024-06-15  7:45                 ` Po Lu
2024-06-15  7:50                   ` Eli Zaretskii
2024-06-15  9:39                     ` Po Lu
2024-06-15 12:38                       ` Eli Zaretskii
2024-06-15 13:10                         ` Po Lu
2024-06-15 13:22                           ` Eli Zaretskii
2024-06-15 13:31                             ` Po Lu
2024-06-15  4:07     ` Stefan Kangas
2024-06-15  4:14       ` Po Lu
2024-06-15  4:45         ` Po Lu
2024-06-15  7:07           ` Eli Zaretskii
2024-06-15  7:22             ` Po Lu
2024-06-15  7:42               ` Eli Zaretskii
2024-06-15  9:35                 ` Po Lu via Emacs development discussions.
2024-06-15 13:52                   ` Eli Zaretskii
2024-06-15 14:18                     ` Po Lu
2024-06-15 14:55                       ` Eli Zaretskii
2024-06-15 15:15                         ` Po Lu
2024-06-15 16:01                           ` Eli Zaretskii
2024-06-16  2:01                             ` Po Lu
2024-06-16  5:36                               ` Eli Zaretskii [this message]
2024-06-16  5:50                                 ` Eli Zaretskii
2024-06-16  6:53                                   ` Po Lu
2024-06-16 11:34                                     ` Po Lu
2024-06-16 12:21                                       ` Eli Zaretskii
2024-06-23  8:35                                       ` Po Lu
2024-06-23  9:16                                         ` Eli Zaretskii
2024-06-23 20:25                                           ` Ken Brown
2024-06-24  2:30                                             ` Eli Zaretskii
2024-06-24  3:53                                               ` Po Lu
2024-06-25 19:20                                               ` Corwin Brust
2024-06-24 17:17                                             ` Ken Brown
2024-06-24 22:11                                               ` Ken Brown
2024-06-25 22:41                                                 ` Ken Brown
2024-06-27  1:59                                                 ` Po Lu
2024-06-27 13:18                                                   ` Ken Brown
2024-06-27 13:42                                                     ` Po Lu
2024-06-27 13:47                                                       ` Po Lu
2024-06-27 14:52                                                         ` Ken Brown
2024-06-30  2:07                                                           ` Po Lu
2024-06-15  7:01       ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=86r0cxsb37.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=luangruo@yahoo.com \
    --cc=stefankangas@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.