emacs-devel
[Top][All Lists]
Advanced

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

Re: macOS fullscreen crashes


From: Charles A. Roelli
Subject: Re: macOS fullscreen crashes
Date: Sat, 01 Dec 2018 15:45:57 +0100

> Date: Sat, 1 Dec 2018 13:18:51 +0000
> From: Alan Third <address@hidden>
>
> BTW, it looks like there are two different sets of macros for this,
> there are the ones we’re using, and newer ones defined in
> Availability.h that have two underscores at the start. It looks like
> the newer ones are a bit neater. If you use
> 
>     -mmacosx-version-min=10.x
> 
> it disables a great many deprecation warnings that you get if you just
> set MAC_OS_X_VERSION_MIN_REQUIRED like we do.
> 
> I don’t think we should be changing anything at the moment, and I
> don’t know if those macros are available on macOS 10.6 so they may not
> be much use to us, but it is nice how it makes the compiler output a
> lot quieter.

__MAC_OS_X_VERSION_MIN_REQUIRED and __MAC_OS_X_VERSION_MAX_ALLOWED are
available in 10.6 (and the use of, e.g. -mmacosx-version-min=10.x, is
recommended in Availability.h).  But it's unlikely that FSF GCC would
support the "-mmacosx-version-min" flag, so we may not be able to use
it.
 
> So, anyway, perhaps we want to put something like this in
> nextstep/INSTALL:
> 
> Targeting different macOS versions
> ----------------------------------
> 
> The Emacs build process automatically enables or disables macOS
> features according to the version of macOS it is being built on. It is
> possible to over-ride this automatic configuration if you are
> targeting a different version of macOS, or wish to build one
> executable that is able to enable or disable features at run-time.
> 
> To build a version compatible with an older version of macOS use this
> flag:
> 
>   -DMAC_OS_X_VERSION_MIN_REQUIRED=x
> 
> and to build for a newer version of macOS:
> 
>   -DMAC_OS_X_VERSION_MAX_ALLOWED=x
> 
> For example, to enable run-time checks for features available between
> macOS 10.6, and 10.12 inclusive:
> 
>   ./configure --with-ns CFLAGS="-DMAC_OS_X_VERSION_MIN_REQUIRED=1060 \
>     -DMAC_OS_X_VERSION_MAX_ALLOWED=101200 -g3 -O2"
> 
> The macOS version numbers are formatted as 10x0 for macOS up to 10.10,
> and 10xx00 for macOS 10.10 and above. A full list is available in
> /usr/include/AvailabilityMacros.h.

Thanks, this looks good.  We should also mention in NEWS that this is
a change in build behavior from previous Emacs versions (and that this
change was originally made in Emacs 26.1 but not mentioned in its NEWS).



reply via email to

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