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.

Full log


View this message in rfc822 format

From: Glenn Morris <rgm <at> gnu.org>
To: Langella Raphael <raphael.langella <at> steria.cnes.fr>
Cc: 507 <at> debbugs.gnu.org
Subject: 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




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.