Subject: Re: bug#18302: MSYS2 build issues

From: Ken Brown <[email-masked]>
Date: Thu, 21 Aug 2014 14:38:13 -0400

On 8/21/2014 10:30 AM, Eli Zaretskii wrote:
>> 4. CPPFLAGS for XPM change follows the same pattern as cygwin.  Both
>> cygwin and MSYS2 install the XPM library in an unusual place.  Since
>> adding an include path for cygwin was already accepted, I did not see
>> any issue with adding a similar solution for MSYS2.
>
> IMO, it is a mistake in the Cygwin case as well.  These issues should
> be resolved in the compiler installation, not in packages.  If the
> user installs xpm (or any other library) she should either install its
> headers and library files in the standard places, or configure the
> compiler to look in the non-standard places (e.g., by setting
> C_INCLUDE_PATH in the environment).  Otherwise, your build environment
> is not really 100% functional.
>
> I'd urge the Cygwin Emacs maintainers to revert that special case, but
> that's their call.  For native Windows builds, I certainly object to
> introducing this deviation.

The Cygwin situation is not comparable.  The headers are installed in 
the standard places.  But Cygwin provides two versions of xpm.h, one in 
/usr/include/X11 and one in /usr/include/noX.  The Cygwin w32 build 
needs to add -I/usr/include/noX to CPPFLAGS (and -L/usr/lib/noX to 
LDFLAGS) in order to pick up the correct version.

Ken