Xresources is incorrectly generated with FreeBSD's make
When automake generates Makefile.in from Makefile.am, it splits a command string in two causing the #endif /* XPM */
line not to be removed.
Here is the progression of the Makefile* files...
Makefile.am:
if USE_XPM
XPM_SED_FLAGS = -e '/ifdef XPM/d' -e '/endif \/\* XPM \*\//d'
XPM_SED_FLAGS += -e 's|BITMAPDIR|$(XDM_PIXMAPDIR)|'
...
Makefile.in:
@USE_XPM_TRUE@XPM_SED_FLAGS = -e '/ifdef XPM/d' -e '/endif \/\* XPM \
@USE_XPM_TRUE@ \*\//d' -e 's|BITMAPDIR|$(XDM_PIXMAPDIR)|' -e \
...
Makefile:
XPM_SED_FLAGS = -e '/ifdef XPM/d' -e '/endif \/\* XPM \
\*\//d' -e 's|BITMAPDIR|$(XDM_PIXMAPDIR)|' -e \
...
While this works with GNU make, it does not with FreeBSD make and possibly others. The issue is that XPM_SED_FLAGS will have an extra space for each backspace. Between commands is fine by not within the command. sed is unable to find the line to delete due to the command having two spaces after the XPM
.
$ make -V XPM_SED_FLAGS
-e '/ifdef XPM/d' -e '/endif \/\* XPM \*\//d' -e 's|BITMAPDIR|/usr/local/share/pixmaps|' -e 's|XDM_PIXMAP|xorg.xpm|' -e 's|XDM_BWPIXMAP|xorg-bw.xpm|'
Except for that line, Xresources is generated the same by GNU make and FreeBSD make. It would be great if there was a way to tell the autotools to not split the line as it does. Other solutions would be good too.