emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Possible build configurations


From: Stefan Monnier
Subject: Re: Possible build configurations
Date: Sat, 20 Jan 2024 15:06:41 -0500
User-agent: Gnus/5.13 (Gnus v5.13)

> The FOO-win features are provided by the corresponding FOO-win.el
> files in lisp/term/, not by FOOterm.c.

Oh, right, I was confusing the `<GUI>` and `<GUI>-win` features.
This said, the `<GUI>-win.el` files are loaded by `loadup.el` only
when the corresponding `<GUI>` is defined and those are defined
in `<GUI>term.c`, so I think the end result is "the same".

> So I'm not sure what you are asking about here.  For example, my
> rading of the code is that 'x and 'xinput2 _can_ coexist with
> 'pgtk-win (but not with any other FOO-win, AFAICT).

Hmm... interesting.  `pgtk-win` is provided by `pgtk-win.el`
which is loaded in loadup via:

    (if (featurep 'pgtk)
        (progn
          (load "pgtk-dnd")
          (load "term/common-win")
          (load "term/pgtk-win")))

so it's only defined if the `pgtk` feature is provided.  In turn

    grep Fprovide.\*pgtk ~/src/emacs/main/src/**/*.[ch]

suggests it's provided only by `pgtkterm.c` and my reading of
`configure.ac` suggests `pgtkterm.c` and `xfns.c` (the file where
`xinput2` and `x` are provided) can't be both linked into the `emacs`
executable at the same time.

Am I missing something?


        Stefan


PS: As for why I'm asking, this is basically to determine if

    ;; FIXME: Yuck!
    (if (or (featurep 'w32-win) (featurep 'ns-win)
            (featurep 'haiku-win) (featurep 'pgtk-win)
            (featurep 'android-win))
        (if (featurep 'xinput2)
            nil
          (unless (featurep 'x)
            t))
      t)

is just a roundabout way to write `t`.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]