GNU bug report logs - #507
compilation problem under Solaris

Previous Next

Package: emacs;

Reported by: "Langella Raphael" <raphael.langella <at> steria.cnes.fr>

Date: Mon, 30 Jun 2008 12:50:03 UTC

Severity: normal

Fixed in version 23.0.60

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 507 in the body.
You can then email your comments to 507 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#507; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to "Langella Raphael" <raphael.langella <at> steria.cnes.fr>:
New bug report received and forwarded. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #5 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):

From: "Langella Raphael" <raphael.langella <at> steria.cnes.fr>
To: <bug-gnu-emacs <at> gnu.org>
Subject: compilation problem under Solaris
Date: Mon, 30 Jun 2008 14:41:03 +0200
I'm compiling Emacs 22.2 under Sparc/Solaris 9. I've got librairies
under non-standard directories, so I've set LDFLAGS and CPPFLAGS with -I
and -L options to include these directories. The path to those
directories has the string "sparc" within. In src/Makefile, "sparc" has
been replaced by "1 " on the lines defining ALL_CFLAGS and LIBW. I've
corrected it manually and it compiles fine.
Here's an example if my explanation isn't clear. I set :
LDFLAGS="-L/Produits/publics/sparc.SunOS.5.8/tiff/3.8.2/lib"

in src/Makefile :
LIBW="-L/Produits/publics/1 .SunOS.5.8/tiff/3.8.2/lib"





Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#507; Package emacs. Full text and rfc822 format available.

Message #8 received at 507 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: Langella Raphael <raphael.langella <at> steria.cnes.fr>
Cc: 507 <at> debbugs.gnu.org
Subject: Re: bug#507: compilation problem under Solaris
Date: Mon, 30 Jun 2008 16:30:29 -0400
"Langella Raphael" wrote:

> I'm compiling Emacs 22.2 under Sparc/Solaris 9. I've got librairies
> under non-standard directories, so I've set LDFLAGS and CPPFLAGS with -I
> and -L options to include these directories. The path to those
> directories has the string "sparc" within. In src/Makefile, "sparc" has
> been replaced by "1 " on the lines defining ALL_CFLAGS and LIBW. I've
> corrected it manually and it compiles fine.

Please try this patch to Emacs 22's configure, followed by
re-configuring.

*** configure.ORIG	2008-06-30 13:26:14.000000000 -0700
--- configure	2008-06-30 13:27:33.000000000 -0700
***************
*** 23173,23178 ****
--- 23173,23188 ----
  test "${exec_prefix}" != NONE &&
    exec_prefix=`echo "${exec_prefix}" | sed 's,\([^/]\)/*$,\1,'`
  
+ # Now get this: Some word that is part of the ${srcdir} directory name
+ # or the ${configuration} value might, just might, happen to be an
+ # identifier like `sun4' or `i386' or something, and be predefined by
+ # the C preprocessor to some helpful value like 1, or maybe the empty
+ # string.  Needless to say consequent macro substitutions are less
+ # than conducive to the makefile finding the correct directory.
+ cpp_undefs="`echo $srcdir $configuration $canonical |
+   sed -e 's/[^a-zA-Z0-9_]/ /g' -e 's/^/ /' -e 's/  *$//' \
+   -e 's/  */ -U/g' -e 's/-U[0-9][^ ]*//g'`"
+ 
  ## Check if the C preprocessor will convert `..' to `. .'.  If so, set
  ## CPP_NEED_TRADITIONAL to `yes' so that the code to generate Makefile
  ## from Makefile.c can correctly provide the arg `-traditional' to the
***************
*** 23751,23757 ****
  #
  # INIT-COMMANDS
  #
! GCC="$GCC" NON_GNU_CPP="$NON_GNU_CPP" CPP="$CPP" CPP_NEED_TRADITIONAL="$CPP_NEED_TRADITIONAL" CPPFLAGS="$CPPFLAGS"
  
  _ACEOF
  
--- 23761,23767 ----
  #
  # INIT-COMMANDS
  #
! GCC="$GCC" NON_GNU_CPP="$NON_GNU_CPP" CPP="$CPP" CPP_NEED_TRADITIONAL="$CPP_NEED_TRADITIONAL" CPPFLAGS="$CPPFLAGS" cpp_undefs="$cpp_undefs"
  
  _ACEOF
  
***************
*** 24397,24412 ****
  # and lib-src/Makefile from ${srcdir}/lib-src/Makefile.c
  # This must be done after src/config.h is built, since we rely on that file.
  
- # Now get this: Some word that is part of the ${srcdir} directory name
- # or the ${configuration} value might, just might, happen to be an
- # identifier like `sun4' or `i386' or something, and be predefined by
- # the C preprocessor to some helpful value like 1, or maybe the empty
- # string.  Needless to say consequent macro substitutions are less
- # than conducive to the makefile finding the correct directory.
- undefs="`echo $top_srcdir $configuration $canonical |
- sed -e 's/[^a-zA-Z0-9_]/ /g' -e 's/^/ /' -e 's/  *$//' \
-     -e 's/  */ -U/g' -e 's/-U[0-9][^ ]*//g' \
- `"
  
  echo creating src/epaths.h
  ${MAKE-make} epaths-force
--- 24407,24412 ----
***************
*** 24426,24432 ****
    sed -e '1,/start of cpp stuff/d'\
        -e 's,/\*\*/#\(.*\)$,/* \1 */,' \
        < Makefile.c > junk.c
!   $CPP $undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \
        sed -e 's/^ /	/' -e '/^#/d' -e '/^[ 	]*$/d' > junk2.c
    cat junk1.c junk2.c > Makefile.new
    rm -f junk.c junk1.c junk2.c
--- 24426,24432 ----
    sed -e '1,/start of cpp stuff/d'\
        -e 's,/\*\*/#\(.*\)$,/* \1 */,' \
        < Makefile.c > junk.c
!   $CPP $cpp_undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \
        sed -e 's/^ /	/' -e '/^#/d' -e '/^[ 	]*$/d' > junk2.c
    cat junk1.c junk2.c > Makefile.new
    rm -f junk.c junk1.c junk2.c
***************
*** 24442,24448 ****
    sed -e '1,/start of cpp stuff/d'\
        -e 's,/\*\*/#\(.*\)$,/* \1 */,' \
        < Makefile.c > junk.c
!   $CPP $undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \
        sed -e 's/^ /	/' -e '/^#/d' -e '/^[ 	]*$/d' > junk2.c
    cat junk1.c junk2.c > Makefile.new
    rm -f junk.c junk1.c junk2.c
--- 24442,24448 ----
    sed -e '1,/start of cpp stuff/d'\
        -e 's,/\*\*/#\(.*\)$,/* \1 */,' \
        < Makefile.c > junk.c
!   $CPP $cpp_undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \
        sed -e 's/^ /	/' -e '/^#/d' -e '/^[ 	]*$/d' > junk2.c
    cat junk1.c junk2.c > Makefile.new
    rm -f junk.c junk1.c junk2.c




bug marked as fixed in version 23.0.60. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> emacsbugs.donarmstrong.com. (Tue, 01 Jul 2008 03:20:03 GMT) Full text and rfc822 format available.

Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#507; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to "Langella Raphael" <raphael.langella <at> steria.cnes.fr>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #15 received at 507 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: "Langella Raphael" <raphael.langella <at> steria.cnes.fr>
To: "Glenn Morris" <rgm <at> gnu.org>
Cc: <507 <at> debbugs.gnu.org>
Subject: RE: bug#507: compilation problem under Solaris
Date: Tue, 1 Jul 2008 14:33:27 +0200
[Message part 1 (text/plain, inline)]
It didn't work. I launched configure with this command :

LDFLAGS="-L/Produits/publics/sparc.SunOS.5.8/tiff/3.8.2/lib -L/Produits/publics/sparc.SunOS.5.7/jpeg/6b/lib -L/Produits/publics/sparc.SunOS.5.8/zlib/1.2.3/lib -L/Produits/publics/sparc.SunOS.5.8/libpng/1.2.24/lib" CPPFLAGS="-I/Produits/publics/sparc.SunOS.5.8/tiff/3.8.2/include -I/Produits/publics/sparc.SunOS.5.7/jpeg/6b/include -I/Produits/publics/sparc.SunOS.5.8/zlib/1.2.3/include -I/Produits/publics/sparc.SunOS.5.8/libpng/1.2.24/include" ./configure --with-gtk --prefix=/Produits/publics/sparc.SunOS.5.9/emacs/22.2

I've attached the config.log and the src/Makefile


> -----Message d'origine-----
> De : Glenn Morris [mailto:rgm <at> gnu.org] 
> Envoyé : lundi 30 juin 2008 22:30
> À : Langella Raphael
> Cc : 507 <at> emacsbugs.donarmstrong.com
> Objet : Re: bug#507: compilation problem under Solaris
> 
> "Langella Raphael" wrote:
> 
> > I'm compiling Emacs 22.2 under Sparc/Solaris 9. I've got librairies 
> > under non-standard directories, so I've set LDFLAGS and 
> CPPFLAGS with 
> > -I and -L options to include these directories. The path to those 
> > directories has the string "sparc" within. In src/Makefile, "sparc" 
> > has been replaced by "1 " on the lines defining ALL_CFLAGS 
> and LIBW. 
> > I've corrected it manually and it compiles fine.
> 
> Please try this patch to Emacs 22's configure, followed by 
> re-configuring.
> 
> *** configure.ORIG	2008-06-30 13:26:14.000000000 -0700
> --- configure	2008-06-30 13:27:33.000000000 -0700
> ***************
> *** 23173,23178 ****
> --- 23173,23188 ----
>   test "${exec_prefix}" != NONE &&
>     exec_prefix=`echo "${exec_prefix}" | sed 's,\([^/]\)/*$,\1,'`
>   
> + # Now get this: Some word that is part of the ${srcdir} 
> directory name 
> + # or the ${configuration} value might, just might, happen 
> to be an # 
> + identifier like `sun4' or `i386' or something, and be 
> predefined by # 
> + the C preprocessor to some helpful value like 1, or maybe 
> the empty # 
> + string.  Needless to say consequent macro substitutions are less # 
> + than conducive to the makefile finding the correct directory.
> + cpp_undefs="`echo $srcdir $configuration $canonical |
> +   sed -e 's/[^a-zA-Z0-9_]/ /g' -e 's/^/ /' -e 's/  *$//' \
> +   -e 's/  */ -U/g' -e 's/-U[0-9][^ ]*//g'`"
> + 
>   ## Check if the C preprocessor will convert `..' to `. .'.  
> If so, set
>   ## CPP_NEED_TRADITIONAL to `yes' so that the code to 
> generate Makefile
>   ## from Makefile.c can correctly provide the arg 
> `-traditional' to the
> ***************
> *** 23751,23757 ****
>   #
>   # INIT-COMMANDS
>   #
> ! GCC="$GCC" NON_GNU_CPP="$NON_GNU_CPP" CPP="$CPP" 
> CPP_NEED_TRADITIONAL="$CPP_NEED_TRADITIONAL" CPPFLAGS="$CPPFLAGS"
>   
>   _ACEOF
>   
> --- 23761,23767 ----
>   #
>   # INIT-COMMANDS
>   #
> ! GCC="$GCC" NON_GNU_CPP="$NON_GNU_CPP" CPP="$CPP" 
> CPP_NEED_TRADITIONAL="$CPP_NEED_TRADITIONAL" 
> CPPFLAGS="$CPPFLAGS" cpp_undefs="$cpp_undefs"
>   
>   _ACEOF
>   
> ***************
> *** 24397,24412 ****
>   # and lib-src/Makefile from ${srcdir}/lib-src/Makefile.c
>   # This must be done after src/config.h is built, since we 
> rely on that file.
>   
> - # Now get this: Some word that is part of the ${srcdir} 
> directory name
> - # or the ${configuration} value might, just might, happen to be an
> - # identifier like `sun4' or `i386' or something, and be 
> predefined by
> - # the C preprocessor to some helpful value like 1, or maybe 
> the empty
> - # string.  Needless to say consequent macro substitutions are less
> - # than conducive to the makefile finding the correct directory.
> - undefs="`echo $top_srcdir $configuration $canonical |
> - sed -e 's/[^a-zA-Z0-9_]/ /g' -e 's/^/ /' -e 's/  *$//' \
> -     -e 's/  */ -U/g' -e 's/-U[0-9][^ ]*//g' \
> - `"
>   
>   echo creating src/epaths.h
>   ${MAKE-make} epaths-force
> --- 24407,24412 ----
> ***************
> *** 24426,24432 ****
>     sed -e '1,/start of cpp stuff/d'\
>         -e 's,/\*\*/#\(.*\)$,/* \1 */,' \
>         < Makefile.c > junk.c
> !   $CPP $undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \
>         sed -e 's/^ /	/' -e '/^#/d' -e '/^[ 	> ]*$/d' > junk2.c
>     cat junk1.c junk2.c > Makefile.new
>     rm -f junk.c junk1.c junk2.c
> --- 24426,24432 ----
>     sed -e '1,/start of cpp stuff/d'\
>         -e 's,/\*\*/#\(.*\)$,/* \1 */,' \
>         < Makefile.c > junk.c
> !   $CPP $cpp_undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \
>         sed -e 's/^ /	/' -e '/^#/d' -e '/^[ 	> ]*$/d' > junk2.c
>     cat junk1.c junk2.c > Makefile.new
>     rm -f junk.c junk1.c junk2.c
> ***************
> *** 24442,24448 ****
>     sed -e '1,/start of cpp stuff/d'\
>         -e 's,/\*\*/#\(.*\)$,/* \1 */,' \
>         < Makefile.c > junk.c
> !   $CPP $undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \
>         sed -e 's/^ /	/' -e '/^#/d' -e '/^[ 	> ]*$/d' > junk2.c
>     cat junk1.c junk2.c > Makefile.new
>     rm -f junk.c junk1.c junk2.c
> --- 24442,24448 ----
>     sed -e '1,/start of cpp stuff/d'\
>         -e 's,/\*\*/#\(.*\)$,/* \1 */,' \
>         < Makefile.c > junk.c
> !   $CPP $cpp_undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \
>         sed -e 's/^ /	/' -e '/^#/d' -e '/^[ 	> ]*$/d' > junk2.c
>     cat junk1.c junk2.c > Makefile.new
>     rm -f junk.c junk1.c junk2.c
> 
[config.log (application/octet-stream, attachment)]
[Makefile (application/octet-stream, attachment)]

Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#507; Package emacs. Full text and rfc822 format available.

Message #18 received at 507 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: "Langella Raphael" <raphael.langella <at> steria.cnes.fr>
Cc: <507 <at> debbugs.gnu.org>
Subject: Re: bug#507: compilation problem under Solaris
Date: Tue, 01 Jul 2008 16:08:00 -0400
"Langella Raphael" wrote:

> It didn't work. I launched configure with this command :
>
> LDFLAGS="-L/Produits/publics/sparc.SunOS.5.8/tiff/3.8.2/lib -L/Produits/publics/sparc.SunOS.5.7/jpeg/6b/lib -L/Produits/publics/sparc.SunOS.5.8/zlib/1.2.3/lib -L/Produits/publics/sparc.SunOS.5.8/libpng/1.2.24/lib" CPPFLAGS="-I/Produits/publics/sparc.SunOS.5.8/tiff/3.8.2/include -I/Produits/publics/sparc.SunOS.5.7/jpeg/6b/include -I/Produits/publics/sparc.SunOS.5.8/zlib/1.2.3/include -I/Produits/publics/sparc.SunOS.5.8/libpng/1.2.24/include" ./configure --with-gtk --prefix=/Produits/publics/sparc.SunOS.5.9/emacs/22.2

Hmph.

Can you edit the patched version of configure? Find the line near the
end that says

echo creating src/Makefile

Add immediately under this:

echo "cpp_undefs = $cpp_undefs"

Then reconfigure and post just the output of that echo command.

Thanks.




Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#507; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to "Langella Raphael" <raphael.langella <at> steria.cnes.fr>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #23 received at 507 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: "Langella Raphael" <raphael.langella <at> steria.cnes.fr>
To: "Glenn Morris" <rgm <at> gnu.org>
Subject: RE: bug#507: compilation problem under Solaris
Date: Wed, 2 Jul 2008 09:59:40 +0200
> -----Message d'origine-----
> De : Glenn Morris [mailto:rgm <at> gnu.org] 
> Envoyé : mardi 1 juillet 2008 22:08
> À : Langella Raphael
> Cc : 507 <at> emacsbugs.donarmstrong.com
> Objet : Re: bug#507: compilation problem under Solaris
> 
> "Langella Raphael" wrote:
> 
> > It didn't work. I launched configure with this command :
> >
> > LDFLAGS="-L/Produits/publics/sparc.SunOS.5.8/tiff/3.8.2/lib 
> > -L/Produits/publics/sparc.SunOS.5.7/jpeg/6b/lib 
> > -L/Produits/publics/sparc.SunOS.5.8/zlib/1.2.3/lib 
> > -L/Produits/publics/sparc.SunOS.5.8/libpng/1.2.24/lib" 
> > CPPFLAGS="-I/Produits/publics/sparc.SunOS.5.8/tiff/3.8.2/include 
> > -I/Produits/publics/sparc.SunOS.5.7/jpeg/6b/include 
> > -I/Produits/publics/sparc.SunOS.5.8/zlib/1.2.3/include 
> > -I/Produits/publics/sparc.SunOS.5.8/libpng/1.2.24/include" 
> ./configure 
> > --with-gtk --prefix=/Produits/publics/sparc.SunOS.5.9/emacs/22.2
> 
> Hmph.
> 
> Can you edit the patched version of configure? Find the line 
> near the end that says
> 
> echo creating src/Makefile
> 
> Add immediately under this:
> 
> echo "cpp_undefs = $cpp_undefs"
> 
> Then reconfigure and post just the output of that echo command.
> 
> Thanks.
> 

It's empty :

cpp_undefs =




Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#507; Package emacs. Full text and rfc822 format available.

Message #26 received at 507 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: 507 <at> debbugs.gnu.org
Cc: control <control <at> debbugs.gnu.org>,
        Langella Raphael <raphael.langella <at> steria.cnes.fr>
Subject: RE: bug#507: compilation problem under Solaris
Date: Wed, 2 Jul 2008 15:52:55 -0400
tags 507 moreinfo
stop

Langella Raphael wrote (on Wed, 2 Jul 2008 at 09:59 +0200):

> It's empty :
> 
> cpp_undefs =

Sorry, but I don't see how that's possible if you apply the patch I
originally gave. Eg on Solaris 5.10, I get something of the form:

cpp_undefs = [...] -Usparc -Usun -Usolaris2




Tags added: moreinfo Request was from Glenn Morris <rgm <at> gnu.org> to control <at> emacsbugs.donarmstrong.com. (Wed, 02 Jul 2008 20:00:04 GMT) Full text and rfc822 format available.

Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#507; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to "Langella Raphael" <raphael.langella <at> steria.cnes.fr>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #33 received at 507 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: "Langella Raphael" <raphael.langella <at> steria.cnes.fr>
To: "Glenn Morris" <rgm <at> gnu.org>, <507 <at> debbugs.gnu.org>
Cc: "control" <control <at> debbugs.gnu.org>
Subject: RE: bug#507: compilation problem under Solaris
Date: Thu, 3 Jul 2008 16:40:03 +0200
[Message part 1 (text/plain, inline)]
OK, I got it. The patch got screwed when you emailed it. Starting line 11, the # were at the end of the previous line instead of the beginning of the line. Maybe it would be more secure to send patch as attached text file instead of in the body of the message.
Anyway, once corrected, cpp_undefs is correctly defined:
cpp_undefs =  -UProduits -Utmp -Uemacs   -Usparc -Usun -Usolaris2  -Usparc -Usun -Usolaris2

But compilation still fails. Instead of being replaced by "1 ", the "sparc" string is just deleted. See attached src/Makefile.

 

> -----Message d'origine-----
> De : Glenn Morris [mailto:rgm <at> gnu.org] 
> Envoyé : mercredi 2 juillet 2008 21:53
> À : 507 <at> emacsbugs.donarmstrong.com
> Cc : control; Langella Raphael
> Objet : RE: bug#507: compilation problem under Solaris
> 
> 
> tags 507 moreinfo
> stop
> 
> Langella Raphael wrote (on Wed, 2 Jul 2008 at 09:59 +0200):
> 
> > It's empty :
> > 
> > cpp_undefs =
> 
> Sorry, but I don't see how that's possible if you apply the 
> patch I originally gave. Eg on Solaris 5.10, I get something 
> of the form:
> 
> cpp_undefs = [...] -Usparc -Usun -Usolaris2
> 
[Makefile (application/octet-stream, attachment)]

Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#507; Package emacs. Full text and rfc822 format available.

Message #36 received at 507 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: "Langella Raphael" <raphael.langella <at> steria.cnes.fr>
Cc: <507 <at> debbugs.gnu.org>
Subject: Re: bug#507: compilation problem under Solaris
Date: Thu, 03 Jul 2008 16:00:05 -0400
tags 507 = help
stop

"Langella Raphael" wrote:

> Anyway, once corrected, cpp_undefs is correctly defined: cpp_undefs
> = -UProduits -Utmp -Uemacs -Usparc -Usun -Usolaris2 -Usparc -Usun
> -Usolaris2
>
> But compilation still fails. Instead of being replaced by "1 ", the
>"sparc" string is just deleted. See attached src/Makefile.

OK, I think I see what's going on. src/m/sparc.h does:

#ifndef sparc
#define sparc
#endif

And src/Makefile.c includes config.h which includes this file.

Thus there seems to be no way to fix this through use of -U etc on the
cpp line.

By far the easiest way for you to fix this is just to edit your src
and lib-src Makefile by hand.

In terms of fixing Emacs for the future:

1) #ifdef sparc is only used in two places in the C code, so we could
replace it with __sparc__ or somesuch. Does this seem OK to people?

2) replace this crazy cpp stuff with autoconf.




Tags set to: Request was from Glenn Morris <rgm <at> gnu.org> to control <at> emacsbugs.donarmstrong.com. (Thu, 03 Jul 2008 20:10:06 GMT) Full text and rfc822 format available.

bug no longer marked as fixed in version 23.0.60. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> emacsbugs.donarmstrong.com. (Thu, 03 Jul 2008 21:05:06 GMT) Full text and rfc822 format available.

Tags set to: Request was from Glenn Morris <rgm <at> gnu.org> to control <at> emacsbugs.donarmstrong.com. (Thu, 03 Jul 2008 21:05:06 GMT) Full text and rfc822 format available.

Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#507; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to Stefan Monnier <monnier <at> iro.umontreal.ca>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #47 received at 507 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Glenn Morris <rgm <at> gnu.org>
Cc: 507 <at> debbugs.gnu.org,
        "Langella Raphael" <raphael.langella <at> steria.cnes.fr>
Subject: Re: bug#507: compilation problem under Solaris
Date: Thu, 03 Jul 2008 17:22:41 -0400
> 2) replace this crazy cpp stuff with autoconf.

Of course.  This has been going on and should keep going until we can
finally get rid of it.
I.e. I encourage people to install incremental changes to reduce the use
of CPP and use autoconf in its place.  If someone wants to write a full
replacement (rather than incremental patches), that'd be good as well,
tho we'd probably want to wait for post-Emacs-23 before considering
installing it.


        Stefan




Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#507; Package emacs. Full text and rfc822 format available.

Message #50 received at 507 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: "Langella Raphael" <raphael.langella <at> steria.cnes.fr>
To: "Glenn Morris" <rgm <at> gnu.org>
Subject: RE: bug#507: compilation problem under Solaris
Date: Fri, 4 Jul 2008 10:40:55 +0200
> -----Message d'origine-----
> De : Glenn Morris [mailto:rgm <at> gnu.org] 
> Envoyé : jeudi 3 juillet 2008 22:00
> À : Langella Raphael
> Cc : 507 <at> emacsbugs.donarmstrong.com
> Objet : Re: bug#507: compilation problem under Solaris
> 
> tags 507 = help
> stop
> 
> "Langella Raphael" wrote:
> 
> > Anyway, once corrected, cpp_undefs is correctly defined: 
> cpp_undefs = 
> > -UProduits -Utmp -Uemacs -Usparc -Usun -Usolaris2 -Usparc -Usun
> > -Usolaris2
> >
> > But compilation still fails. Instead of being replaced by "1 ", the 
> >"sparc" string is just deleted. See attached src/Makefile.
> 
> OK, I think I see what's going on. src/m/sparc.h does:
> 
> #ifndef sparc
> #define sparc
> #endif
> 
> And src/Makefile.c includes config.h which includes this file.
> 
> Thus there seems to be no way to fix this through use of -U 
> etc on the cpp line.
> 
> By far the easiest way for you to fix this is just to edit 
> your src and lib-src Makefile by hand.

That's exactly what I did even before reporting the bug. I just thought I should report this. And I didn't have to edit lib-src/Makefile, only src/Makefile.




Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#507; Package emacs. Full text and rfc822 format available.

Message #53 received at 507 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: 507 <at> debbugs.gnu.org
Cc: Langella Raphael <raphael.langella <at> steria.cnes.fr>
Subject: RE: bug#507: compilation problem under Solaris
Date: Fri, 4 Jul 2008 15:48:02 -0400
Langella Raphael wrote (on Fri, 4 Jul 2008 at 10:40 +0200):

> > By far the easiest way for you to fix this is just to edit your
> > src and lib-src Makefile by hand.
> 
> That's exactly what I did even before reporting the bug. I just
> thought I should report this. And I didn't have to edit
> lib-src/Makefile, only src/Makefile.

I know. Thanks for taking the time to report it.

If you like, you could check that the configure patch, plus changing
files in src/ to use __sparc__ rather than sparc, works:

src/m/sparc.h:

/* Say this machine is a sparc */

#ifndef __sparc__
#define __sparc__
#endif


src/alloc.c, src/ecrt0.c, unexsunos4.c:

Change #ifdef sparc to #ifdef __sparc__




Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#507; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to Dan Nicolaescu <dann <at> ics.uci.edu>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #58 received at 507 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Dan Nicolaescu <dann <at> ics.uci.edu>
To: Glenn Morris <rgm <at> gnu.org>
Cc: 507 <at> debbugs.gnu.org,
        Langella Raphael <raphael.langella <at> steria.cnes.fr>
Subject: Re: bug#507: compilation problem under Solaris
Date: Mon, 07 Jul 2008 17:26:12 -0700
Glenn Morris <rgm <at> gnu.org> writes:

  > Langella Raphael wrote (on Fri, 4 Jul 2008 at 10:40 +0200):
  > 
  > > > By far the easiest way for you to fix this is just to edit your
  > > > src and lib-src Makefile by hand.
  > > 
  > > That's exactly what I did even before reporting the bug. I just
  > > thought I should report this. And I didn't have to edit
  > > lib-src/Makefile, only src/Makefile.
  > 
  > I know. Thanks for taking the time to report it.
  > 
  > If you like, you could check that the configure patch, plus changing
  > files in src/ to use __sparc__ rather than sparc, works:
  > 
  > src/m/sparc.h:
  > 
  > /* Say this machine is a sparc */
  > 
  > #ifndef __sparc__
  > #define __sparc__
  > #endif

This should not be needed, the compiler defines __sparc__ by default.





bug marked as fixed in version 23.0.60. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> emacsbugs.donarmstrong.com. (Fri, 11 Jul 2008 17:15:04 GMT) Full text and rfc822 format available.

Reply sent to Glenn Morris <rgm <at> gnu.org>:
You have taken responsibility. Full text and rfc822 format available.

Notification sent to "Langella Raphael" <raphael.langella <at> steria.cnes.fr>:
bug acknowledged by developer. Full text and rfc822 format available.

Message #65 received at 507-done <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: 507-done <at> debbugs.gnu.org
Subject: Re: bug#507: compilation problem under Solaris
Date: Sat, 09 Aug 2008 22:42:24 -0400
Fix synced to 22 branch 2008-08-10, bug closed.




bug archived. Request was from Debbugs Internal Request <don <at> donarmstrong.com> to internal_control <at> emacsbugs.donarmstrong.com. (Sun, 14 Dec 2008 15:24:03 GMT) Full text and rfc822 format available.

This bug report was last modified 16 years and 192 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.