Subject: bug#20332: 24.5; With jpeg-6b configure says "WARNING: libjpeg found, but not version 6b or later"

From: 白井彰 <[email-masked]>
Date: Fri, 17 Apr 2015 01:42:36 +0900

Adding -Xs works.  Thanks.

$ cc -V
cc: Sun C 5.9 SunOS_i386 Patch 124868-01 2007/07/12
usage: cc [ options] files.  Use 'cc -flags' for details
$ cc -flags | egrep '^-E|^-Xs'
-E              Compile source through preprocessor only, output to stdout
-Xs             Compile assuming (pre-ANSI) K & R C style code

$ echo 'version 6b or later' > aaa_emacs-24.5.c; cc -E -Xs aaa_emacs-24.5.c
# 1 "aaa_emacs-24.5.c"
version 6b or later
$ echo $?
0

> 2015/04/16 2:59、Glenn Morris <[email-masked]> のメール：
> 
> 
>> $ echo 'version 6b or later' > aaa_emacs-24.5.c; cc -E aaa_emacs-24.5.c
>> # 1 "aaa_emacs-24.5.c"
>> "aaa_emacs-24.5.c", line 1: invalid input token: 6b
>> version  6b or later
>> #ident "acomp: Sun C 5.9 SunOS_i386 Patch 124868-01 2007/07/12"
>> cc: acomp failed for aaa_emacs-24.5.c
>> $ echo $?
>> 2
> 
> Funnily enough, our own etc/PROBLEMS file used to contain a solution for
> this very issue:
> 
>    *** `configure' fails with ``"junk.c", line 660: invalid input token: 8.elc''
> 
>    The final stage of the Emacs configure process uses the C preprocessor
>    to generate the Makefiles.  Errors of this form can occur if the C
>    preprocessor inserts extra whitespace into its output.  The solution
>    is to find the switches that stop your preprocessor from inserting extra
>    whitespace, add them to CPPFLAGS, and re-run configure.  For example,
>    this error can occur on Solaris 10 when using the Sun Studio compiler
>    ``Sun C 5.8'' with its preprocessor CPP="/opt/SUNWspro/bin/cc -E".
>    The relevant switch in this case is "-Xs" (``compile assuming
>    (pre-ANSI) K & R C style code'').
> 
> And indeed adding -Xs seems to avoid the issue.
> 
> I don't think this is a real solution to this case,
> just a historical curiosity. :)