Article View: gnu.emacs.bug
Article #87308Minor configuration nits with 19.27 gnu emacs
From: Marc W. Mengel
Date: Fri, 30 Sep 1994 22:34
Date: Fri, 30 Sep 1994 22:34
383 lines
15798 bytes
15798 bytes
When building emacs 19.27 on a SunOS machine (cdsun4.fnal.gov)
(uname -a output:SunOS cdsun4 4.1.3 1 sun4c), after doing a
"configure --prefix=`pwd`/../$F.d --with-x"
(with F=SunOS) the following Makefile modifications described
below were neccesary to get it to compile and run with X support.
[configure did perform flawlessly on AIX 3.2.4 and on IRIX 4.0.5,
as I have come to expect -- good work folks!]
1) CFLAGS was modified from:
CFLAGS=-g -O
to
CFLAGS=-g -O -I/usr/openwin/include -DHAVE_GETHOSTNAME -DHAVE_XSCREENNUMBEROFSCREEN
2) src/Makefile was modified as follows:
LIBX= $(LIBXMENU) $(LIBXT) -lX11
became
LIBX= $(LIBXMENU) -L/usr/openwin/lib $(LIBXT) -lX11
I am 99% confident that OPENWINHOME was set in the environment
when configure was run. I would advocate having configure notice
that OPENWINHOME is set, and include the appropriate -I and -L
options, and that HAVE_GETHOSTNAME and HAVE_XSCREENNUMBEROFSCREEN
be turned on; that ought to make life easier for the uninitiaed.
The config.status file built by configure in this instance follows.
- - - - - - - - - - - cut here - - - - - - - - -
#!/bin/sh
# Generated automatically by configure.
# Run this file to recreate the current configuration.
# This directory was configured as follows,
# on host cdsun4:
#
# ./configure --prefix=/tmp_mnt/usr/products/src1/emacs/emacs-19.27/../SunOS.d --with-x
ac_cs_usage="Usage: config.status [--recheck] [--version] [--help]"
for ac_option
do
case "$ac_option" in
-recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
echo running ${CONFIG_SHELL-/bin/sh} ./configure --prefix=/tmp_mnt/usr/products/src1/emacs/emacs-19.27/../SunOS.d --with-x --no-create
exec ${CONFIG_SHELL-/bin/sh} ./configure --prefix=/tmp_mnt/usr/products/src1/emacs/emacs-19.27/../SunOS.d --with-x --no-create ;;
-version | --version | --versio | --versi | --vers | --ver | --ve | --v)
echo "config.status generated by autoconf version 1.11"
exit 0 ;;
-help | --help | --hel | --he | --h)
echo "$ac_cs_usage"; exit 0 ;;
*) echo "$ac_cs_usage"; exit 1 ;;
esac
done
trap 'rm -fr Makefile lib-src/Makefile.in oldXMenu/Makefile lwlib/Makefile src/Makefile.in src/config.h conftest*; exit 1' 1 2 15
CC='gcc -static'
LN_S='ln -s'
CPP='gcc -static -E'
INSTALL='/usr/bin/install -c'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_DATA='${INSTALL} -m 644'
YACC='bison -y'
SET_MAKE=''
ALLOCA='alloca.o'
version='19.27'
configuration='sparc-sun-sunos4.1.3'
srcdir='/tmp_mnt/usr/products/src1/emacs/emacs-19.27'
prefix='/tmp_mnt/usr/products/src1/emacs/emacs-19.27/../SunOS.d'
exec_prefix='${prefix}'
bindir='${exec_prefix}/bin'
datadir='${prefix}/lib'
statedir='${prefix}/lib'
libdir='${exec_prefix}/lib'
mandir='${prefix}/man/man1'
infodir='${prefix}/info'
lispdir='${datadir}/emacs/${version}/lisp'
locallisppath='${datadir}/emacs/site-lisp'
lisppath='${locallisppath}:${lispdir}'
etcdir='${datadir}/emacs/${version}/etc'
lockdir='${statedir}/emacs/lock'
archlibdir='${libdir}/emacs/${version}/${configuration}'
docdir='${datadir}/emacs/${version}/etc'
c_switch_system=' '
c_switch_machine=' '
LD_SWITCH_X_SITE=''
LD_SWITCH_X_SITE_AUX=''
C_SWITCH_X_SITE=''
CFLAGS='-g -O '
X_TOOLKIT_TYPE='none'
machfile='m/sparc.h'
opsysfile='s/sunos4-1-3.h'
LIBS=' -lX11 '
top_srcdir=''
ac_prsub='s%^prefix\([ ]*\)=\([ ]*\).*$%prefix\1=\2/tmp_mnt/usr/products/src1/emacs/emacs-19.27/../SunOS.d%
s%^exec_prefix\([ ]*\)=\([ ]*\).*$%exec_prefix\1=\2${prefix}%'
ac_vpsub=''
extrasub=''
ac_given_srcdir=$srcdir
CONFIG_FILES=${CONFIG_FILES-"Makefile lib-src/Makefile.in oldXMenu/Makefile lwlib/Makefile src/Makefile.in"}
for ac_file in .. ${CONFIG_FILES}; do if test "x$ac_file" != x..; then
# Remove last slash and all that follows it. Not all systems have dirname.
ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
# The file is in a subdirectory.
test ! -d "$ac_dir" && mkdir "$ac_dir"
ac_dir_suffix="/$ac_dir"
else
ac_dir_suffix=
fi
# A "../" for each directory in $ac_dir_suffix.
ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
case "$ac_given_srcdir" in
.) srcdir=.
if test -z "$ac_dir_suffix"; then top_srcdir=.
else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
/*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
*) # Relative path.
srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
top_srcdir="$ac_dots$ac_given_srcdir" ;;
esac
echo creating "$ac_file"
rm -f "$ac_file"
comment_str="Generated automatically from `echo $ac_file|sed 's|.*/||'`.in by configure."
case "$ac_file" in
*.c | *.h | *.C | *.cc | *.m ) echo "/* $comment_str */" > "$ac_file" ;;
* ) echo "# $comment_str" > "$ac_file" ;;
esac
sed -e "
$ac_prsub
$ac_vpsub
$extrasub
s%@CC@%$CC%g
s%@LN_S@%$LN_S%g
s%@CPP@%$CPP%g
s%@INSTALL@%$INSTALL%g
s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
s%@INSTALL_DATA@%$INSTALL_DATA%g
s%@YACC@%$YACC%g
s%@SET_MAKE@%$SET_MAKE%g
s%@ALLOCA@%$ALLOCA%g
s%@version@%$version%g
s%@configuration@%$configuration%g
s%@srcdir@%$srcdir%g
s%@prefix@%$prefix%g
s%@exec_prefix@%$exec_prefix%g
s%@bindir@%$bindir%g
s%@datadir@%$datadir%g
s%@statedir@%$statedir%g
s%@libdir@%$libdir%g
s%@mandir@%$mandir%g
s%@infodir@%$infodir%g
s%@lispdir@%$lispdir%g
s%@locallisppath@%$locallisppath%g
s%@lisppath@%$lisppath%g
s%@etcdir@%$etcdir%g
s%@lockdir@%$lockdir%g
s%@archlibdir@%$archlibdir%g
s%@docdir@%$docdir%g
s%@c_switch_system@%$c_switch_system%g
s%@c_switch_machine@%$c_switch_machine%g
s%@LD_SWITCH_X_SITE@%$LD_SWITCH_X_SITE%g
s%@LD_SWITCH_X_SITE_AUX@%$LD_SWITCH_X_SITE_AUX%g
s%@C_SWITCH_X_SITE@%$C_SWITCH_X_SITE%g
s%@CFLAGS@%$CFLAGS%g
s%@X_TOOLKIT_TYPE@%$X_TOOLKIT_TYPE%g
s%@machfile@%$machfile%g
s%@opsysfile@%$opsysfile%g
s%@LIBS@%$LIBS%g
s%@top_srcdir@%$top_srcdir%g
s%@DEFS@%-DHAVE_CONFIG_H%" $ac_given_srcdir/${ac_file}.in >> $ac_file
fi; done
# These sed commands are put into ac_sed_defs when defining a macro.
# They are broken into pieces to make the sed script easier to manage.
# They are passed to sed as "A NAME B NAME C VALUE D", where NAME
# is the cpp macro being defined and VALUE is the value it is being given.
# Each defining turns into a single global substitution command.
# Hopefully no one uses "!" as a variable value.
# Other candidates for the sed separators, like , and @, do get used.
#
# ac_d sets the value in "#define NAME VALUE" lines.
ac_dA='s!^\([ ]*\)#\([ ]*define[ ][ ]*\)'
ac_dB='\([ ][ ]*\)[^ ]*!\1#\2'
ac_dC='\3'
ac_dD='!g'
# ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE".
ac_uA='s!^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
ac_uB='\([ ]\)!\1#\2define\3'
ac_uC=' '
ac_uD='\4!g'
# ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
ac_eA='s!^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
ac_eB='$!\1#\2define\3'
ac_eC=' '
ac_eD='!g'
rm -f conftest.sed
cat >> conftest.sed <<CONFEOF
${ac_dA}HAVE_SYS_TIMEB_H${ac_dB}HAVE_SYS_TIMEB_H${ac_dC}1${ac_dD}
${ac_uA}HAVE_SYS_TIMEB_H${ac_uB}HAVE_SYS_TIMEB_H${ac_uC}1${ac_uD}
${ac_eA}HAVE_SYS_TIMEB_H${ac_eB}HAVE_SYS_TIMEB_H${ac_eC}1${ac_eD}
${ac_dA}HAVE_SYS_TIME_H${ac_dB}HAVE_SYS_TIME_H${ac_dC}1${ac_dD}
${ac_uA}HAVE_SYS_TIME_H${ac_uB}HAVE_SYS_TIME_H${ac_uC}1${ac_uD}
${ac_eA}HAVE_SYS_TIME_H${ac_eB}HAVE_SYS_TIME_H${ac_eC}1${ac_eD}
${ac_dA}HAVE_UNISTD_H${ac_dB}HAVE_UNISTD_H${ac_dC}1${ac_dD}
${ac_uA}HAVE_UNISTD_H${ac_uB}HAVE_UNISTD_H${ac_uC}1${ac_uD}
${ac_eA}HAVE_UNISTD_H${ac_eB}HAVE_UNISTD_H${ac_eC}1${ac_eD}
CONFEOF
cat >> conftest.sed <<CONFEOF
${ac_dA}TIME_WITH_SYS_TIME${ac_dB}TIME_WITH_SYS_TIME${ac_dC}1${ac_dD}
${ac_uA}TIME_WITH_SYS_TIME${ac_uB}TIME_WITH_SYS_TIME${ac_uC}1${ac_uD}
${ac_eA}TIME_WITH_SYS_TIME${ac_eB}TIME_WITH_SYS_TIME${ac_eC}1${ac_eD}
${ac_dA}RETSIGTYPE${ac_dB}RETSIGTYPE${ac_dC}void${ac_dD}
${ac_uA}RETSIGTYPE${ac_uB}RETSIGTYPE${ac_uC}void${ac_uD}
${ac_eA}RETSIGTYPE${ac_eB}RETSIGTYPE${ac_eC}void${ac_eD}
${ac_dA}HAVE_TM_ZONE${ac_dB}HAVE_TM_ZONE${ac_dC}1${ac_dD}
${ac_uA}HAVE_TM_ZONE${ac_uB}HAVE_TM_ZONE${ac_uC}1${ac_uD}
${ac_eA}HAVE_TM_ZONE${ac_eB}HAVE_TM_ZONE${ac_eC}1${ac_eD}
CONFEOF
cat >> conftest.sed <<CONFEOF
${ac_dA}HAVE_LONG_FILE_NAMES${ac_dB}HAVE_LONG_FILE_NAMES${ac_dC}1${ac_dD}
${ac_uA}HAVE_LONG_FILE_NAMES${ac_uB}HAVE_LONG_FILE_NAMES${ac_uC}1${ac_uD}
${ac_eA}HAVE_LONG_FILE_NAMES${ac_eB}HAVE_LONG_FILE_NAMES${ac_eC}1${ac_eD}
${ac_dA}C_ALLOCA${ac_dB}C_ALLOCA${ac_dC}1${ac_dD}
${ac_uA}C_ALLOCA${ac_uB}C_ALLOCA${ac_uC}1${ac_uD}
${ac_eA}C_ALLOCA${ac_eB}C_ALLOCA${ac_eC}1${ac_eD}
${ac_dA}STACK_DIRECTION${ac_dB}STACK_DIRECTION${ac_dC}0${ac_dD}
${ac_uA}STACK_DIRECTION${ac_uB}STACK_DIRECTION${ac_uC}0${ac_uD}
${ac_eA}STACK_DIRECTION${ac_eB}STACK_DIRECTION${ac_eC}0${ac_eD}
CONFEOF
cat >> conftest.sed <<CONFEOF
${ac_dA}EMACS_CONFIGURATION${ac_dB}EMACS_CONFIGURATION${ac_dC}"sparc-sun-sunos4.1.3"${ac_dD}
${ac_uA}EMACS_CONFIGURATION${ac_uB}EMACS_CONFIGURATION${ac_uC}"sparc-sun-sunos4.1.3"${ac_uD}
${ac_eA}EMACS_CONFIGURATION${ac_eB}EMACS_CONFIGURATION${ac_eC}"sparc-sun-sunos4.1.3"${ac_eD}
${ac_dA}config_machfile${ac_dB}config_machfile${ac_dC}"m/sparc.h"${ac_dD}
${ac_uA}config_machfile${ac_uB}config_machfile${ac_uC}"m/sparc.h"${ac_uD}
${ac_eA}config_machfile${ac_eB}config_machfile${ac_eC}"m/sparc.h"${ac_eD}
${ac_dA}config_opsysfile${ac_dB}config_opsysfile${ac_dC}"s/sunos4-1-3.h"${ac_dD}
${ac_uA}config_opsysfile${ac_uB}config_opsysfile${ac_uC}"s/sunos4-1-3.h"${ac_uD}
${ac_eA}config_opsysfile${ac_eB}config_opsysfile${ac_eC}"s/sunos4-1-3.h"${ac_eD}
CONFEOF
cat >> conftest.sed <<CONFEOF
${ac_dA}LD_SWITCH_X_SITE${ac_dB}LD_SWITCH_X_SITE${ac_dC}${ac_dD}
${ac_uA}LD_SWITCH_X_SITE${ac_uB}LD_SWITCH_X_SITE${ac_uC}${ac_uD}
${ac_eA}LD_SWITCH_X_SITE${ac_eB}LD_SWITCH_X_SITE${ac_eC}${ac_eD}
${ac_dA}LD_SWITCH_X_SITE_AUX${ac_dB}LD_SWITCH_X_SITE_AUX${ac_dC}${ac_dD}
${ac_uA}LD_SWITCH_X_SITE_AUX${ac_uB}LD_SWITCH_X_SITE_AUX${ac_uC}${ac_uD}
${ac_eA}LD_SWITCH_X_SITE_AUX${ac_eB}LD_SWITCH_X_SITE_AUX${ac_eC}${ac_eD}
${ac_dA}C_SWITCH_X_SITE${ac_dB}C_SWITCH_X_SITE${ac_dC}${ac_dD}
${ac_uA}C_SWITCH_X_SITE${ac_uB}C_SWITCH_X_SITE${ac_uC}${ac_uD}
${ac_eA}C_SWITCH_X_SITE${ac_eB}C_SWITCH_X_SITE${ac_eC}${ac_eD}
CONFEOF
cat >> conftest.sed <<CONFEOF
${ac_dA}UNEXEC_SRC${ac_dB}UNEXEC_SRC${ac_dC}unexec.c${ac_dD}
${ac_uA}UNEXEC_SRC${ac_uB}UNEXEC_SRC${ac_uC}unexec.c${ac_uD}
${ac_eA}UNEXEC_SRC${ac_eB}UNEXEC_SRC${ac_eC}unexec.c${ac_eD}
${ac_dA}HAVE_X_WINDOWS${ac_dB}HAVE_X_WINDOWS${ac_dC}1${ac_dD}
${ac_uA}HAVE_X_WINDOWS${ac_uB}HAVE_X_WINDOWS${ac_uC}1${ac_uD}
${ac_eA}HAVE_X_WINDOWS${ac_eB}HAVE_X_WINDOWS${ac_eC}1${ac_eD}
${ac_dA}HAVE_X11${ac_dB}HAVE_X11${ac_dC}1${ac_dD}
${ac_uA}HAVE_X11${ac_uB}HAVE_X11${ac_uC}1${ac_uD}
${ac_eA}HAVE_X11${ac_eB}HAVE_X11${ac_eC}1${ac_eD}
CONFEOF
cat >> conftest.sed <<CONFEOF
${ac_dA}HAVE_X_MENU${ac_dB}HAVE_X_MENU${ac_dC}1${ac_dD}
${ac_uA}HAVE_X_MENU${ac_uB}HAVE_X_MENU${ac_uC}1${ac_uD}
${ac_eA}HAVE_X_MENU${ac_eB}HAVE_X_MENU${ac_eC}1${ac_eD}
${ac_dA}GNU_MALLOC${ac_dB}GNU_MALLOC${ac_dC}1${ac_dD}
${ac_uA}GNU_MALLOC${ac_uB}GNU_MALLOC${ac_uC}1${ac_uD}
${ac_eA}GNU_MALLOC${ac_eB}GNU_MALLOC${ac_eC}1${ac_eD}
${ac_dA}REL_ALLOC${ac_dB}REL_ALLOC${ac_dC}1${ac_dD}
${ac_uA}REL_ALLOC${ac_uB}REL_ALLOC${ac_uC}1${ac_uD}
${ac_eA}REL_ALLOC${ac_eB}REL_ALLOC${ac_eC}1${ac_eD}
CONFEOF
cat >> conftest.sed <<CONFEOF
${ac_dA}LISP_FLOAT_TYPE${ac_dB}LISP_FLOAT_TYPE${ac_dC}1${ac_dD}
${ac_uA}LISP_FLOAT_TYPE${ac_uB}LISP_FLOAT_TYPE${ac_uC}1${ac_uD}
${ac_eA}LISP_FLOAT_TYPE${ac_eB}LISP_FLOAT_TYPE${ac_eC}1${ac_eD}
CONFEOF
# This sed command replaces #undef's with comments. This is necessary, for
# example, in the case of _POSIX_SOURCE, which is predefined and required
# on some systems where configure will not decide to define it in
# src/config.h.
cat >> conftest.sed <<\CONFEOF
s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
CONFEOF
rm -f conftest.h
# Break up the sed commands because old seds have small limits.
ac_max_sed_lines=20
CONFIG_HEADERS=${CONFIG_HEADERS-"src/config.h"}
for ac_file in .. ${CONFIG_HEADERS}; do if test "x$ac_file" != x..; then
echo creating $ac_file
cp $ac_given_srcdir/$ac_file.in conftest.h1
cp conftest.sed conftest.stm
while :
do
ac_lines=`grep -c . conftest.stm`
if test -z "$ac_lines" || test "$ac_lines" -eq 0; then break; fi
rm -f conftest.s1 conftest.s2 conftest.h2
sed ${ac_max_sed_lines}q conftest.stm > conftest.s1 # Like head -20.
sed 1,${ac_max_sed_lines}d conftest.stm > conftest.s2 # Like tail +21.
sed -f conftest.s1 < conftest.h1 > conftest.h2
rm -f conftest.s1 conftest.h1 conftest.stm
mv conftest.h2 conftest.h1
mv conftest.s2 conftest.stm
done
rm -f conftest.stm conftest.h
echo "/* $ac_file. Generated automatically by configure. */" > conftest.h
cat conftest.h1 >> conftest.h
rm -f conftest.h1
if cmp -s $ac_file conftest.h 2>/dev/null; then
# The file exists and we would not be changing it.
echo "$ac_file is unchanged"
rm -f conftest.h
else
rm -f $ac_file
mv conftest.h $ac_file
fi
fi; done
rm -f conftest.sed
# Build src/Makefile from ${srcdir}/src/Makefile.in. 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 lib-src/Makefile
( cd lib-src
rm -f junk.c junk1.c junk2.c
sed -e '/start of cpp stuff/q' \
< Makefile.in > junk1.c
sed -e '1,/start of cpp stuff/d'\
-e 's@/\*\*/#\(.*\)$@/* \1 */@' \
< Makefile.in > junk.c
$CPP $undefs -I. -I$top_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
chmod 444 Makefile.new
mv -f Makefile.new Makefile
)
echo creating src/Makefile
( cd src
rm -f junk.c junk1.c junk2.c
sed -e '/start of cpp stuff/q' \
< Makefile.in > junk1.c
sed -e '1,/start of cpp stuff/d'\
-e 's@/\*\*/#\(.*\)$@/* \1 */@' \
< Makefile.in > junk.c
$CPP $undefs -I. -I$top_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
chmod 444 Makefile.new
mv -f Makefile.new Makefile
)
exit 0
Technical Details
Message-ID:
<9409302118.AA16288@dcdmwm.fnal.gov>Path:
arc1-ca.pugleaf.net!bga.com!news.sprintlink.net!howland.reston.ans.net!math.ohio-state.edu!magnus.acs.ohio-state.edu!cis.ohio-state.edu!dcdmwm.fnal.gov!mengelShow Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fb2f1,8eafae4b2bd72bc6,start X-Google-Attributes: gidfb2f1,public X-Google-ArrivalTime: 1994-09-30 18:10:27 PST Path: arc1-ca.pugleaf.net!bga.com!news.sprintlink.net!howland.reston.ans.net!math.ohio-state.edu!magnus.acs.ohio-state.edu!cis.ohio-state.edu!dcdmwm.fnal.gov!mengel From: mengel@dcdmwm.fnal.gov (Marc W. Mengel) Newsgroups: gnu.emacs.bug Subject: Minor configuration nits with 19.27 gnu emacs Date: 30 Sep 1994 18:34:23 -0400 Organization: Fermilab Unix System Support Group Lines: 383 Sender: daemon@cis.ohio-state.edu Approved: bug-gnu-emacs@prep.ai.mit.edu Distribution: gnu Message-ID: <9409302118.AA16288@dcdmwm.fnal.gov>