aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGlenn Morris2010-05-26 22:43:27 -0700
committerGlenn Morris2010-05-26 22:43:27 -0700
commit81ac4f35366bfc525fa6ed89e0b5aaa90a05c902 (patch)
treee77b927e7e5fcf2d0ac05bcacb13baa10ed4b285
parent11e4d8c0d35ec52819d5ce11176fc1f53b9890e0 (diff)
downloademacs-81ac4f35366bfc525fa6ed89e0b5aaa90a05c902.tar.gz
emacs-81ac4f35366bfc525fa6ed89e0b5aaa90a05c902.zip
Do not preprocess src/Makefile.in.
* configure.in: Do not preprocess src/Makefile.in. (cpp_undefs, CPP_NEED_TRADITIONAL): Remove. (AC_EGREP_CPP): Test no longer needed. * configure: Regenerate. * config.bat: Do not preprocess src/Makefile.in. * make-dist: No more Makefile.c files. * INSTALL, src/README: Makefiles are not preprocessed. * src/Makefile.in, src/autodeps.mk, src/deps.mk, src/ns.mk: Convert comments to Makefile format. * lib-src/Makefile.in (distclean): No more Makefile.c. * src/Makefile.in (bootstrap-clean): No more Makefile.c. * admin/notes/cpp: Remove file. * admin/quick-install-emacs (AVOID): No more Makefile.c files. * etc/PROBLEMS, etc/MACHINES: Remove details of cpp problems which can no longer occur.
-rw-r--r--ChangeLog10
-rw-r--r--INSTALL26
-rw-r--r--admin/ChangeLog6
-rw-r--r--admin/notes/cpp14
-rwxr-xr-xadmin/quick-install-emacs6
-rw-r--r--config.bat9
-rwxr-xr-xconfigure75
-rw-r--r--configure.in53
-rw-r--r--etc/MACHINES12
-rw-r--r--etc/PROBLEMS38
-rw-r--r--lib-src/ChangeLog4
-rw-r--r--lib-src/Makefile.in2
-rwxr-xr-xmake-dist3
-rw-r--r--src/ChangeLog7
-rw-r--r--src/Makefile.in262
-rw-r--r--src/README14
-rw-r--r--src/autodeps.mk4
-rw-r--r--src/deps.mk68
-rw-r--r--src/ns.mk42
19 files changed, 248 insertions, 407 deletions
diff --git a/ChangeLog b/ChangeLog
index f17fd567624..0e82d3a521c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
12010-05-27 Glenn Morris <rgm@gnu.org>
2
3 * config.bat: Do not preprocess src/Makefile.in.
4
5 * configure.in: Do not preprocess src/Makefile.in.
6 (cpp_undefs, CPP_NEED_TRADITIONAL): Remove.
7 (AC_EGREP_CPP): Test no longer needed.
8
9 * make-dist: No more Makefile.c files.
10
12010-05-26 Glenn Morris <rgm@gnu.org> 112010-05-26 Glenn Morris <rgm@gnu.org>
2 12
3 * configure.in (YMF_PASS_LDFLAGS): Remove. 13 * configure.in (YMF_PASS_LDFLAGS): Remove.
diff --git a/INSTALL b/INSTALL
index 040b25f6d6d..35238fc21a4 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,6 +1,7 @@
1GNU Emacs Installation Guide 1GNU Emacs Installation Guide
2Copyright (C) 1992, 1994, 1996, 1997, 2000, 2001, 2002, 2003, 2004, 2Copyright (C) 1992, 1994, 1996, 1997, 2000, 2001, 2002, 2003, 2004,
32005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3 2005, 2006, 2007, 2008, 2009, 2010
4 Free Software Foundation, Inc.
4See the end of the file for license conditions. 5See the end of the file for license conditions.
5 6
6 7
@@ -686,8 +687,8 @@ when running make in the subdirectories.
686 687
687CONFIGURATION BY HAND 688CONFIGURATION BY HAND
688 689
689Instead of running the `configure' program, you have to perform the 690This should not be necessary and is not recommended. Instead of
690following steps. 691running the `configure' program, you have to perform the following steps.
691 692
6921) Copy `./src/config.in' to `./src/config.h'. 6931) Copy `./src/config.in' to `./src/config.h'.
693 694
@@ -701,22 +702,15 @@ the appropriate system and architecture description files.
7012) Edit `./src/config.h' to set the right options for your system. If 7022) Edit `./src/config.h' to set the right options for your system. If
702you need to override any of the definitions in the s/*.h and m/*.h 703you need to override any of the definitions in the s/*.h and m/*.h
703files for your system and machine, do so by editing config.h, not by 704files for your system and machine, do so by editing config.h, not by
704changing the s/*.h and m/*.h files. Occasionally you may need to 705changing the s/*.h and m/*.h files.
705redefine parameters used in `./lib-src/movemail.c'.
706 706
7073) Create src/Makefile and lib-src/Makefile from the corresponding 7073) Create `Makefile' files in various directories from the
708`Makefile.in' files. First copy `Makefile.in' to `Makefile.c', 708corresponding `Makefile.in' files. This isn't so hard, just a matter
709then edit in appropriate substitutions for the @...@ constructs, 709of editing in appropriate substitutions for the @...@ constructs.
710and then copy the shell commands near the end of `configure'
711that run cpp to construct `Makefile'.
712
7134) Create `Makefile' files in various other directories
714from the corresponding `Makefile.in' files. This isn't so hard,
715just a matter of substitution.
716 710
717The `configure' script is built from `configure.in' by the `autoconf' 711The `configure' script is built from `configure.in' by the `autoconf'
718program. You need version 2.51 or newer of `autoconf' to rebuild 712program. You need at least the version of autoconf specified in the
719`configure'. 713AC_PREREQ(...) command to rebuild `configure' from `configure.in'.
720 714
721BUILDING GNU EMACS BY HAND 715BUILDING GNU EMACS BY HAND
722 716
diff --git a/admin/ChangeLog b/admin/ChangeLog
index 54be4a7fec3..2f6efffd157 100644
--- a/admin/ChangeLog
+++ b/admin/ChangeLog
@@ -1,3 +1,9 @@
12010-05-27 Glenn Morris <rgm@gnu.org>
2
3 * quick-install-emacs (AVOID): No more Makefile.c files.
4
5 * notes/cpp: Remove file.
6
12010-05-15 Ken Raeburn <raeburn@raeburn.org> 72010-05-15 Ken Raeburn <raeburn@raeburn.org>
2 8
3 * admin.el (set-version, set-copyright): Update emacs.c instead of 9 * admin.el (set-version, set-copyright): Update emacs.c instead of
diff --git a/admin/notes/cpp b/admin/notes/cpp
deleted file mode 100644
index 73b4b3d64ff..00000000000
--- a/admin/notes/cpp
+++ /dev/null
@@ -1,14 +0,0 @@
1ttn 2003-04-09
2
3we use a C preprocesor not only in the normal compilation of .c files
4into object files, but also for creating src/Makefile.
5(delimited by comment "start of cpp stuff"). some cpp implementations
6insert whitespace in between tokens.
7
8during makefile creation, the preprocessor symbol NOT_C_CODE is defined.
9this should not be defined for normal .c file compilation.
10
11there has been discussion on eliminating this use of cpp and relying
12solely on autoconf processing. rms says to leave it be.
13
14;;; arch-tag: d654291e-9fc8-41b7-ab0c-d3cde842a8e0
diff --git a/admin/quick-install-emacs b/admin/quick-install-emacs
index d603d8fd0d6..39b200b5102 100755
--- a/admin/quick-install-emacs
+++ b/admin/quick-install-emacs
@@ -1,8 +1,8 @@
1#!/bin/sh 1#!/bin/sh
2### quick-install-emacs --- do a halfway-decent job of installing emacs quickly 2### quick-install-emacs --- do a halfway-decent job of installing emacs quickly
3 3
4## Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 4## Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
5## Free Software Foundation, Inc. 5## 2010 Free Software Foundation, Inc.
6 6
7## Author: Miles Bader <miles@gnu.org> 7## Author: Miles Bader <miles@gnu.org>
8 8
@@ -31,7 +31,7 @@
31PUBLIC_LIBSRC_BINARIES='b2m emacsclient etags ctags ebrowse' 31PUBLIC_LIBSRC_BINARIES='b2m emacsclient etags ctags ebrowse'
32PUBLIC_LIBSRC_SCRIPTS='grep-changelog rcs-checkin' 32PUBLIC_LIBSRC_SCRIPTS='grep-changelog rcs-checkin'
33 33
34AVOID="CVS -DIC README COPYING ChangeLog ~ [.]orig$ [.]rej$ Makefile$ Makefile.in$ Makefile.c$ makefile$ makefile.w32-in$ stamp-subdir [.]cvsignore [.]arch-ids [{]arch[}] [.][cho]$ make-docfile testfile test-distrib" 34AVOID="CVS -DIC README COPYING ChangeLog ~ [.]orig$ [.]rej$ Makefile$ Makefile.in$ makefile$ makefile.w32-in$ stamp-subdir [.]cvsignore [.]arch-ids [{]arch[}] [.][cho]$ make-docfile testfile test-distrib"
35 35
36# Prune old binaries lying around in the source tree 36# Prune old binaries lying around in the source tree
37PRUNE=no 37PRUNE=no
diff --git a/config.bat b/config.bat
index ba31161962e..a37a7a70085 100644
--- a/config.bat
+++ b/config.bat
@@ -190,11 +190,10 @@ rem On my system dir.h gets in the way. It's a VMS file so who cares.
190if exist dir.h ren dir.h vmsdir.h 190if exist dir.h ren dir.h vmsdir.h
191 191
192rem Create "makefile" from "makefile.in". 192rem Create "makefile" from "makefile.in".
193rm -f Makefile junk.c junk2.c 193rm -f Makefile makefile.tmp
194sed -e "1,/== start of cpp stuff ==/s@^##*[ ].*$@@" <Makefile.in >junk.c 194copy Makefile.in + deps.mk makefile.tmp
195copy junk.c + deps.mk junk2.c 195sed -f ../msdos/sed1v2.inp <makefile.tmp >Makefile
196gcc -E -traditional junk2.c | sed -f ../msdos/sed1v2.inp >Makefile 196rm -f makefile.tmp
197rm -f junk.c junk2.c
198 197
199if "%X11%" == "" goto src5 198if "%X11%" == "" goto src5
200mv Makefile makefile.tmp 199mv Makefile makefile.tmp
diff --git a/configure b/configure
index 7895df600a2..3f8ebffc6ee 100755
--- a/configure
+++ b/configure
@@ -26694,15 +26694,15 @@ fi
26694 26694
26695 26695
26696test "x$LINKER" = "x" && LINKER=ld 26696test "x$LINKER" = "x" && LINKER=ld
26697## FIXME? What setting of YMF_PASS_LDFLAGS should this have? 26697## FIXME? What setting of EDIT_LDFLAGS should this have?
26698test "$NS_IMPL_GNUSTEP" = "yes" && LINKER="\$(CC) -rdynamic" 26698test "$NS_IMPL_GNUSTEP" = "yes" && LINKER="\$(CC) -rdynamic"
26699 26699
26700 26700
26701 26701
26702 26702
26703## FIXME? The logic here is not precisely the same as that above 26703## FIXME? The logic here is not precisely the same as that above.
26704## setting YMF_PASS_LDFLAGS. There is no check here for a pre-defined 26704## There is no check here for a pre-defined LINKER.
26705## LINKER. Should we only be setting LIB_GCC if LD ~ -nostdlib? 26705## Should we only be setting LIB_GCC if LD ~ -nostdlib?
26706LIB_GCC= 26706LIB_GCC=
26707if test "x$GCC" = "xyes" && test "x$ORDINARY_LINK" != "xyes"; then 26707if test "x$GCC" = "xyes" && test "x$ORDINARY_LINK" != "xyes"; then
26708 26708
@@ -26848,42 +26848,7 @@ test "${prefix}" != NONE &&
26848test "${exec_prefix}" != NONE && 26848test "${exec_prefix}" != NONE &&
26849 exec_prefix=`echo "${exec_prefix}" | sed 's,\([^/]\)/*$,\1,'` 26849 exec_prefix=`echo "${exec_prefix}" | sed 's,\([^/]\)/*$,\1,'`
26850 26850
26851# Now get this: Some word that is part of the ${srcdir} directory name 26851ac_config_files="$ac_config_files Makefile lib-src/Makefile oldXMenu/Makefile doc/emacs/Makefile doc/misc/Makefile doc/lispintro/Makefile doc/lispref/Makefile src/Makefile lwlib/Makefile lisp/Makefile leim/Makefile"
26852# or the ${configuration} value might, just might, happen to be an
26853# identifier like `sun4' or `i386' or something, and be predefined by
26854# the C preprocessor to some helpful value like 1, or maybe the empty
26855# string. Needless to say consequent macro substitutions are less
26856# than conducive to the makefile finding the correct directory.
26857# src/Makefile.in used to treat X11 as equivalent to HAVE_X11.
26858# But nothing in Emacs defines X11, and everywhere else uses HAVE_X11,
26859# so that cannot have been doing anything.
26860cpp_undefs="`echo $srcdir $configuration $canonical unix mktime register X11 |
26861 sed -e 's/[^a-zA-Z0-9_]/ /g' -e 's/^/ /' -e 's/ *$//' \
26862 -e 's/ */ -U/g' -e 's/-U[0-9][^ ]*//g'`"
26863
26864## Check if the C preprocessor will convert `..' to `. .'. If so, set
26865## CPP_NEED_TRADITIONAL to `yes' so that the code to generate Makefile
26866## from Makefile.c can correctly provide the arg `-traditional' to the
26867## C preprocessor.
26868
26869cat >conftest.$ac_ext <<_ACEOF
26870/* confdefs.h. */
26871_ACEOF
26872cat confdefs.h >>conftest.$ac_ext
26873cat >>conftest.$ac_ext <<_ACEOF
26874/* end confdefs.h. */
26875yes..yes
26876_ACEOF
26877if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
26878 $EGREP "yes..yes" >/dev/null 2>&1; then
26879 CPP_NEED_TRADITIONAL=no
26880else
26881 CPP_NEED_TRADITIONAL=yes
26882fi
26883rm -f conftest*
26884
26885
26886ac_config_files="$ac_config_files Makefile lib-src/Makefile oldXMenu/Makefile doc/emacs/Makefile doc/misc/Makefile doc/lispintro/Makefile doc/lispref/Makefile src/Makefile.c:src/Makefile.in lwlib/Makefile lisp/Makefile leim/Makefile"
26887 26852
26888ac_config_commands="$ac_config_commands default" 26853ac_config_commands="$ac_config_commands default"
26889 26854
@@ -27470,7 +27435,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
27470# 27435#
27471# INIT-COMMANDS 27436# INIT-COMMANDS
27472# 27437#
27473GCC="$GCC" NON_GNU_CPP="$NON_GNU_CPP" CPP="$CPP" CPP_NEED_TRADITIONAL="$CPP_NEED_TRADITIONAL" CPPFLAGS="$CPPFLAGS" cpp_undefs="$cpp_undefs" 27438GCC="$GCC" NON_GNU_CPP="$NON_GNU_CPP" CPP="$CPP" CPPFLAGS="$CPPFLAGS"
27474 27439
27475_ACEOF 27440_ACEOF
27476 27441
@@ -27488,7 +27453,7 @@ do
27488 "doc/misc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/misc/Makefile" ;; 27453 "doc/misc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/misc/Makefile" ;;
27489 "doc/lispintro/Makefile") CONFIG_FILES="$CONFIG_FILES doc/lispintro/Makefile" ;; 27454 "doc/lispintro/Makefile") CONFIG_FILES="$CONFIG_FILES doc/lispintro/Makefile" ;;
27490 "doc/lispref/Makefile") CONFIG_FILES="$CONFIG_FILES doc/lispref/Makefile" ;; 27455 "doc/lispref/Makefile") CONFIG_FILES="$CONFIG_FILES doc/lispref/Makefile" ;;
27491 "src/Makefile.c") CONFIG_FILES="$CONFIG_FILES src/Makefile.c:src/Makefile.in" ;; 27456 "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
27492 "lwlib/Makefile") CONFIG_FILES="$CONFIG_FILES lwlib/Makefile" ;; 27457 "lwlib/Makefile") CONFIG_FILES="$CONFIG_FILES lwlib/Makefile" ;;
27493 "lisp/Makefile") CONFIG_FILES="$CONFIG_FILES lisp/Makefile" ;; 27458 "lisp/Makefile") CONFIG_FILES="$CONFIG_FILES lisp/Makefile" ;;
27494 "leim/Makefile") CONFIG_FILES="$CONFIG_FILES leim/Makefile" ;; 27459 "leim/Makefile") CONFIG_FILES="$CONFIG_FILES leim/Makefile" ;;
@@ -28154,35 +28119,9 @@ for dir in etc lisp ; do
28154 test -d ${dir} || mkdir ${dir} 28119 test -d ${dir} || mkdir ${dir}
28155done 28120done
28156 28121
28157# Build src/Makefile from ${srcdir}/src/Makefile.c
28158# This must be done after src/config.h is built, since we rely on that file.
28159
28160echo creating src/epaths.h 28122echo creating src/epaths.h
28161${MAKE-make} epaths-force 28123${MAKE-make} epaths-force
28162 28124
28163# As of 2000-11-19, newest development versions of GNU cpp preprocess
28164# `..' to `. .' unless invoked with -traditional
28165
28166if test "x$GCC" = xyes && test "x$CPP_NEED_TRADITIONAL" = xyes; then
28167 CPPFLAGS="$CPPFLAGS -traditional"
28168fi
28169
28170echo creating src/Makefile
28171( cd src
28172 rm -f junk.c junk1.c junk2.c
28173 sed -e '/start of cpp stuff/q' \
28174 < Makefile.c > junk1.c
28175 sed -e '1,/start of cpp stuff/d'\
28176 -e 's,/\*\*/#\(.*\)$,/* \1 */,' \
28177 < Makefile.c > junk.c
28178 $CPP -P $cpp_undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \
28179 sed -e 's/^ / /' -e '/^#/d' -e '/^[ ]*$/d' > junk2.c
28180 cat junk1.c junk2.c > Makefile.new
28181 rm -f junk.c junk1.c junk2.c
28182 chmod 444 Makefile.new
28183 mv -f Makefile.new Makefile
28184)
28185
28186if test ! -f src/.gdbinit && test -f $srcdir/src/.gdbinit; then 28125if test ! -f src/.gdbinit && test -f $srcdir/src/.gdbinit; then
28187 echo creating src/.gdbinit 28126 echo creating src/.gdbinit
28188 echo source $srcdir/src/.gdbinit > src/.gdbinit 28127 echo source $srcdir/src/.gdbinit > src/.gdbinit
diff --git a/configure.in b/configure.in
index 9fb73280d78..9d301367b09 100644
--- a/configure.in
+++ b/configure.in
@@ -3755,32 +3755,9 @@ fi
3755test "${exec_prefix}" != NONE && 3755test "${exec_prefix}" != NONE &&
3756 exec_prefix=`echo "${exec_prefix}" | sed 's,\([^/]\)/*$,\1,'`] 3756 exec_prefix=`echo "${exec_prefix}" | sed 's,\([^/]\)/*$,\1,'`]
3757 3757
3758# Now get this: Some word that is part of the ${srcdir} directory name
3759# or the ${configuration} value might, just might, happen to be an
3760# identifier like `sun4' or `i386' or something, and be predefined by
3761# the C preprocessor to some helpful value like 1, or maybe the empty
3762# string. Needless to say consequent macro substitutions are less
3763# than conducive to the makefile finding the correct directory.
3764# src/Makefile.in used to treat X11 as equivalent to HAVE_X11.
3765# But nothing in Emacs defines X11, and everywhere else uses HAVE_X11,
3766# so that cannot have been doing anything.
3767[cpp_undefs="`echo $srcdir $configuration $canonical unix mktime register X11 |
3768 sed -e 's/[^a-zA-Z0-9_]/ /g' -e 's/^/ /' -e 's/ *$//' \
3769 -e 's/ */ -U/g' -e 's/-U[0-9][^ ]*//g'`"]
3770
3771## Check if the C preprocessor will convert `..' to `. .'. If so, set
3772## CPP_NEED_TRADITIONAL to `yes' so that the code to generate Makefile
3773## from Makefile.c can correctly provide the arg `-traditional' to the
3774## C preprocessor.
3775
3776AC_EGREP_CPP(yes..yes,
3777 [yes..yes],
3778 CPP_NEED_TRADITIONAL=no,
3779 CPP_NEED_TRADITIONAL=yes)
3780
3781AC_OUTPUT(Makefile lib-src/Makefile oldXMenu/Makefile \ 3758AC_OUTPUT(Makefile lib-src/Makefile oldXMenu/Makefile \
3782 doc/emacs/Makefile doc/misc/Makefile doc/lispintro/Makefile \ 3759 doc/emacs/Makefile doc/misc/Makefile doc/lispintro/Makefile \
3783 doc/lispref/Makefile src/Makefile.c:src/Makefile.in \ 3760 doc/lispref/Makefile src/Makefile \
3784 lwlib/Makefile lisp/Makefile leim/Makefile, [ 3761 lwlib/Makefile lisp/Makefile leim/Makefile, [
3785 3762
3786### Make the necessary directories, if they don't exist. 3763### Make the necessary directories, if they don't exist.
@@ -3788,41 +3765,15 @@ for dir in etc lisp ; do
3788 test -d ${dir} || mkdir ${dir} 3765 test -d ${dir} || mkdir ${dir}
3789done 3766done
3790 3767
3791# Build src/Makefile from ${srcdir}/src/Makefile.c
3792# This must be done after src/config.h is built, since we rely on that file.
3793
3794echo creating src/epaths.h 3768echo creating src/epaths.h
3795${MAKE-make} epaths-force 3769${MAKE-make} epaths-force
3796 3770
3797# As of 2000-11-19, newest development versions of GNU cpp preprocess
3798# `..' to `. .' unless invoked with -traditional
3799
3800if test "x$GCC" = xyes && test "x$CPP_NEED_TRADITIONAL" = xyes; then
3801 CPPFLAGS="$CPPFLAGS -traditional"
3802fi
3803
3804echo creating src/Makefile
3805( cd src
3806 rm -f junk.c junk1.c junk2.c
3807 sed -e '/start of cpp stuff/q' \
3808 < Makefile.c > junk1.c
3809 sed -e '1,/start of cpp stuff/d'\
3810 -e 's,/\*\*/#\(.*\)$,/* \1 */,' \
3811 < Makefile.c > junk.c
3812 $CPP -P $cpp_undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \
3813 sed -e 's/^ / /' -e '/^#/d' -e '/^[ ]*$/d' > junk2.c
3814 cat junk1.c junk2.c > Makefile.new
3815 rm -f junk.c junk1.c junk2.c
3816 chmod 444 Makefile.new
3817 mv -f Makefile.new Makefile
3818)
3819
3820if test ! -f src/.gdbinit && test -f $srcdir/src/.gdbinit; then 3771if test ! -f src/.gdbinit && test -f $srcdir/src/.gdbinit; then
3821 echo creating src/.gdbinit 3772 echo creating src/.gdbinit
3822 echo source $srcdir/src/.gdbinit > src/.gdbinit 3773 echo source $srcdir/src/.gdbinit > src/.gdbinit
3823fi 3774fi
3824 3775
3825], [GCC="$GCC" NON_GNU_CPP="$NON_GNU_CPP" CPP="$CPP" CPP_NEED_TRADITIONAL="$CPP_NEED_TRADITIONAL" CPPFLAGS="$CPPFLAGS" cpp_undefs="$cpp_undefs"]) 3776], [GCC="$GCC" NON_GNU_CPP="$NON_GNU_CPP" CPP="$CPP" CPPFLAGS="$CPPFLAGS"])
3826 3777
3827m4_if(dnl Do not change this comment 3778m4_if(dnl Do not change this comment
3828 arch-tag: 156a4dd5-bddc-4d18-96ac-f37742cf6a5e 3779 arch-tag: 156a4dd5-bddc-4d18-96ac-f37742cf6a5e
diff --git a/etc/MACHINES b/etc/MACHINES
index 8fc79ab0d1d..aa5d766e8dd 100644
--- a/etc/MACHINES
+++ b/etc/MACHINES
@@ -198,8 +198,7 @@ IBM RS/6000 (rs6000-ibm-aix*)
198 198
199IBM System/390 running GNU/Linux (s390-*-linux-gnu) 199IBM System/390 running GNU/Linux (s390-*-linux-gnu)
200 200
201 As of Emacs 21.2, a 31-bit only version is supported on this 201 As of Emacs 21.2, a 31-bit only version is supported on this system.
202 system.
203 202
204Intel 386 (i386-*-freebsd, i386-*-linux-gnu, 203Intel 386 (i386-*-freebsd, i386-*-linux-gnu,
205 i386-*-sol2.4, i386-intsys-sysv, 204 i386-*-sol2.4, i386-intsys-sysv,
@@ -247,11 +246,6 @@ Intel 386 (i386-*-freebsd, i386-*-linux-gnu,
247 do `gmake install MAKE=gmake'. However, more recently it is 246 do `gmake install MAKE=gmake'. However, more recently it is
248 reported that using the system Make on NetBSD 1.3.1 works ok. 247 reported that using the system Make on NetBSD 1.3.1 works ok.
249 248
250 If you are using System V release 4.2, you may find that `cc -E'
251 puts spurious spaces in `src/xmakefile'. If that happens,
252 specify CPP=/lib/cpp as an option when you run make.
253 There is no problem if you compile with GCC.
254
255 Note that use of Linux with GCC 2.4 and the DLL 4.4 libraries 249 Note that use of Linux with GCC 2.4 and the DLL 4.4 libraries
256 requires the experimental "net 2" network patches (no relation to 250 requires the experimental "net 2" network patches (no relation to
257 Berkeley Net 2). There is a report that (some version of) Linux 251 Berkeley Net 2). There is a report that (some version of) Linux
@@ -491,10 +485,6 @@ System V rel 4.0.3 and 4.0.4 (usg5.4)
491 If you get compilation errors about wrong number of 485 If you get compilation errors about wrong number of
492 arguments to getpgrp, define GETPGRP_NO_ARG. 486 arguments to getpgrp, define GETPGRP_NO_ARG.
493 487
494 The standard C preprocessor may generate xmakefile incorrectly. However,
495 /lib/cpp will work, so use `make CPP=/lib/cpp'. Standard cpp
496 seems to work OK under Dell 2.2.
497
498 Some versions 3 and earlier of V.4, on the Intel 386 and 860, had 488 Some versions 3 and earlier of V.4, on the Intel 386 and 860, had
499 problems in the X11 libraries. These prevent Emacs from working 489 problems in the X11 libraries. These prevent Emacs from working
500 with X. You can use Emacs with X provided your copy of X is based 490 with X. You can use Emacs with X provided your copy of X is based
diff --git a/etc/PROBLEMS b/etc/PROBLEMS
index b3cda374c51..65e3920eee3 100644
--- a/etc/PROBLEMS
+++ b/etc/PROBLEMS
@@ -2373,18 +2373,6 @@ The solution is to tell configure to use the correct C preprocessor
2373for your C compiler (CPP="/opt/SUNWspro/bin/cc -E" in the above 2373for your C compiler (CPP="/opt/SUNWspro/bin/cc -E" in the above
2374example). 2374example).
2375 2375
2376*** `configure' fails with ``"junk.c", line 660: invalid input token: 8.elc''
2377
2378The final stage of the Emacs configure process uses the C preprocessor
2379to generate the Makefiles. Errors of this form can occur if the C
2380preprocessor inserts extra whitespace into its output. The solution
2381is to find the switches that stop your preprocessor from inserting extra
2382whitespace, add them to CPPFLAGS, and re-run configure. For example,
2383this error can occur on Solaris 10 when using the Sun Studio compiler
2384``Sun C 5.8'' with its preprocessor CPP="/opt/SUNWspro/bin/cc -E".
2385The relevant switch in this case is "-Xs" (``compile assuming
2386(pre-ANSI) K & R C style code'').
2387
2388** Compilation 2376** Compilation
2389 2377
2390*** Building Emacs over NFS fails with ``Text file busy''. 2378*** Building Emacs over NFS fails with ``Text file busy''.
@@ -2427,32 +2415,6 @@ you are working on the host called `marvin'. Then an entry in the
2427 2415
2428The solution is to remove this line from `etc/fstab'. 2416The solution is to remove this line from `etc/fstab'.
2429 2417
2430*** Building Emacs with GCC 2.9x fails in the `src' directory.
2431
2432This may happen if you use a development version of GNU `cpp' from one
2433of the GCC snapshots between Oct 2000 and Feb 2001, or from a released
2434version of GCC newer than 2.95.2 which was prepared around those
2435dates; similar problems were reported with some snapshots of GCC 3.1
2436around Sep 30 2001. The preprocessor in those versions is
2437incompatible with a traditional Unix cpp (e.g., it expands ".." into
2438". .", which breaks relative file names that reference the parent
2439directory; or inserts TAB characters before lines that set Make
2440variables).
2441
2442The solution is to make sure the preprocessor is run with the
2443`-traditional' option. The `configure' script does that automatically
2444when it detects the known problems in your cpp, but you might hit some
2445unknown ones. To force the `configure' script to use `-traditional',
2446run the script like this:
2447
2448 CPP='gcc -E -traditional' ./configure ...
2449
2450(replace the ellipsis "..." with any additional arguments you pass to
2451the script).
2452
2453Note that this problem does not pertain to the MS-Windows port of
2454Emacs, since it doesn't use the preprocessor to generate Makefiles.
2455
2456*** src/Makefile and lib-src/Makefile are truncated--most of the file missing. 2418*** src/Makefile and lib-src/Makefile are truncated--most of the file missing.
2457*** Compiling wakeup, in lib-src, says it can't make wakeup.c. 2419*** Compiling wakeup, in lib-src, says it can't make wakeup.c.
2458 2420
diff --git a/lib-src/ChangeLog b/lib-src/ChangeLog
index d2c7301fb6f..ac1641a552e 100644
--- a/lib-src/ChangeLog
+++ b/lib-src/ChangeLog
@@ -1,3 +1,7 @@
12010-05-27 Glenn Morris <rgm@gnu.org>
2
3 * Makefile.in (distclean): No more Makefile.c.
4
12010-05-22 Jan Djärv <jan.h.d@swipnet.se> 52010-05-22 Jan Djärv <jan.h.d@swipnet.se>
2 6
3 * Makefile.in (STAMP_INST_SCRIPTS, STAMP_SCRIPS): New (Bug #6246). 7 * Makefile.in (STAMP_INST_SCRIPTS, STAMP_SCRIPS): New (Bug #6246).
diff --git a/lib-src/Makefile.in b/lib-src/Makefile.in
index 1c19dec276b..264f14b1d49 100644
--- a/lib-src/Makefile.in
+++ b/lib-src/Makefile.in
@@ -283,7 +283,7 @@ clean: mostlyclean
283 283
284distclean: clean 284distclean: clean
285 -rm -f TAGS 285 -rm -f TAGS
286 -rm -f Makefile Makefile.c blessmail 286 -rm -f Makefile blessmail
287 287
288maintainer-clean: distclean 288maintainer-clean: distclean
289 true 289 true
diff --git a/make-dist b/make-dist
index 11969042db1..d853a078ce3 100755
--- a/make-dist
+++ b/make-dist
@@ -461,7 +461,7 @@ echo "Making links to \`src'"
461 ln makefile.w32-in ../${tempdir}/src 461 ln makefile.w32-in ../${tempdir}/src
462 ln .gdbinit .dbxinit ../${tempdir}/src 462 ln .gdbinit .dbxinit ../${tempdir}/src
463 cd ../${tempdir}/src 463 cd ../${tempdir}/src
464 rm -f config.h epaths.h Makefile Makefile.c 464 rm -f config.h epaths.h Makefile
465 rm -f =* TAGS) 465 rm -f =* TAGS)
466 466
467echo "Making links to \`src/bitmaps'" 467echo "Making links to \`src/bitmaps'"
@@ -499,7 +499,6 @@ echo "Making links to \`lib-src'"
499 fi 499 fi
500 done 500 done
501 cd ../${tempdir}/lib-src 501 cd ../${tempdir}/lib-src
502 rm -f Makefile.c
503 rm -f getopt.h 502 rm -f getopt.h
504 rm -f =* TAGS) 503 rm -f =* TAGS)
505 504
diff --git a/src/ChangeLog b/src/ChangeLog
index 83d2e956af6..d7128960af7 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,10 @@
12010-05-27 Glenn Morris <rgm@gnu.org>
2
3 * Makefile.in, autodeps.mk, deps.mk, ns.mk:
4 Convert comments to Makefile format.
5
6 * Makefile.in (bootstrap-clean): No more Makefile.c.
7
12010-05-26 Glenn Morris <rgm@gnu.org> 82010-05-26 Glenn Morris <rgm@gnu.org>
2 9
3 * Makefile.in (YMF_PASS_LDFLAGS): Remove. 10 * Makefile.in (YMF_PASS_LDFLAGS): Remove.
diff --git a/src/Makefile.in b/src/Makefile.in
index ea84fa08429..0b23606a921 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -23,13 +23,6 @@
23# script may need modifying in sync with changes made here. Try to 23# script may need modifying in sync with changes made here. Try to
24# avoid shell-ism because the DOS build has to use the DOS shell. 24# avoid shell-ism because the DOS build has to use the DOS shell.
25 25
26# Don't try to replace the cpp processing using autoconf facilities,
27# says rms.
28# Replacing a particular part of the conditionals to work via autoconf
29# is OK.
30# Some of the conditionals might be dead now. Finding them and
31# deleting them would be fine.
32
33SHELL = /bin/sh 26SHELL = /bin/sh
34 27
35# Here are the things that we expect ../configure to edit. 28# Here are the things that we expect ../configure to edit.
@@ -47,7 +40,7 @@ version = @version@
47# BSD doesn't have it as a default. 40# BSD doesn't have it as a default.
48@SET_MAKE@ 41@SET_MAKE@
49# Don't use LIBS. configure puts stuff in it that either shouldn't be 42# Don't use LIBS. configure puts stuff in it that either shouldn't be
50# linked with Emacs or is duplicated by the cpp stuff below. 43# linked with Emacs or is duplicated by the other stuff below.
51# LIBS = @LIBS@ 44# LIBS = @LIBS@
52LIBOBJS = @LIBOBJS@ 45LIBOBJS = @LIBOBJS@
53 46
@@ -298,24 +291,26 @@ DEPFLAGS=@DEPFLAGS@
298## test -d ${DEPDIR} || mkdir ${DEPDIR} (if AUTO_DEPEND); else ':'. 291## test -d ${DEPDIR} || mkdir ${DEPDIR} (if AUTO_DEPEND); else ':'.
299MKDEPDIR=@MKDEPDIR@ 292MKDEPDIR=@MKDEPDIR@
300 293
301# ========================== start of cpp stuff ======================= 294## DO NOT use -R. There is a special hack described in lastfile.c
302/* From here on, comments must be done in C syntax. */ 295## which is used instead. Some initialized data areas are modified
303 296## at initial startup, then labeled as part of the text area when
304/* DO NOT use -R. There is a special hack described in lastfile.c 297## Emacs is dumped for the first time, and never changed again.
305 which is used instead. Some initialized data areas are modified 298##
306 at initial startup, then labeled as part of the text area when 299## -Demacs is needed to make some files produce the correct version
307 Emacs is dumped for the first time, and never changed again. */ 300## for use in Emacs.
308 301##
309/* -Demacs is needed to make some files produce the correct version 302## -DHAVE_CONFIG_H is needed for some other files to take advantage of
310 for use in Emacs. 303## the information in `config.h'.
311 304##
312 -DHAVE_CONFIG_H is needed for some other files to take advantage of 305## C_SWITCH_X_SITE must come before C_SWITCH_X_SYSTEM
313 the information in ``config.h''. */ 306## since it may have -I options that should override those.
314 307##
315/* C_SWITCH_X_SITE must come before C_SWITCH_X_SYSTEM 308## FIXME? MYCPPFLAGS only referenced in etc/DEBUG.
316 since it may have -I options that should override those. */ 309ALL_CFLAGS=-Demacs -DHAVE_CONFIG_H $(MYCPPFLAGS) -I. -I${srcdir} \
317/* MYCPPFLAGS only referenced in etc/DEBUG. */ 310 ${C_SWITCH_MACHINE} ${C_SWITCH_SYSTEM} ${C_SWITCH_X_SITE} \
318ALL_CFLAGS=-Demacs -DHAVE_CONFIG_H $(MYCPPFLAGS) -I. -I${srcdir} ${C_SWITCH_MACHINE} ${C_SWITCH_SYSTEM} ${C_SWITCH_X_SITE} ${C_SWITCH_X_SYSTEM} ${CFLAGS_SOUND} ${RSVG_CFLAGS} ${DBUS_CFLAGS} ${GCONF_CFLAGS} ${CFLAGS} ${FREETYPE_CFLAGS} ${FONTCONFIG_CFLAGS} ${LIBOTF_CFLAGS} ${M17N_FLT_CFLAGS} ${DEPFLAGS} 311 ${C_SWITCH_X_SYSTEM} ${CFLAGS_SOUND} ${RSVG_CFLAGS} ${DBUS_CFLAGS} \
312 ${GCONF_CFLAGS} ${CFLAGS} ${FREETYPE_CFLAGS} ${FONTCONFIG_CFLAGS} \
313 ${LIBOTF_CFLAGS} ${M17N_FLT_CFLAGS} ${DEPFLAGS}
319ALL_OBJC_CFLAGS=$(ALL_CFLAGS) $(GNU_OBJC_CFLAGS) 314ALL_OBJC_CFLAGS=$(ALL_CFLAGS) $(GNU_OBJC_CFLAGS)
320 315
321.SUFFIXES: .m 316.SUFFIXES: .m
@@ -327,8 +322,8 @@ ALL_OBJC_CFLAGS=$(ALL_CFLAGS) $(GNU_OBJC_CFLAGS)
327 $(CC) -c $(CPPFLAGS) $(ALL_OBJC_CFLAGS) $< 322 $(CC) -c $(CPPFLAGS) $(ALL_OBJC_CFLAGS) $<
328 323
329 324
330/* lastfile must follow all files whose initialized data areas should 325## lastfile must follow all files whose initialized data areas should
331 be dumped as pure by dump-emacs. */ 326## be dumped as pure by dump-emacs.
332obj= dispnew.o frame.o scroll.o xdisp.o menu.o $(XMENU_OBJ) window.o \ 327obj= dispnew.o frame.o scroll.o xdisp.o menu.o $(XMENU_OBJ) window.o \
333 charset.o coding.o category.o ccl.o character.o chartab.o bidi.o \ 328 charset.o coding.o category.o ccl.o character.o chartab.o bidi.o \
334 cm.o term.o terminal.o xfaces.o $(XOBJ) $(GTK_OBJ) $(DBUS_OBJ) \ 329 cm.o term.o terminal.o xfaces.o $(XOBJ) $(GTK_OBJ) $(DBUS_OBJ) \
@@ -344,8 +339,8 @@ obj= dispnew.o frame.o scroll.o xdisp.o menu.o $(XMENU_OBJ) window.o \
344 doprnt.o strftime.o intervals.o textprop.o composite.o md5.o \ 339 doprnt.o strftime.o intervals.o textprop.o composite.o md5.o \
345 $(MSDOS_OBJ) $(MSDOS_X_OBJ) $(NS_OBJ) $(CYGWIN_OBJ) $(FONT_OBJ) 340 $(MSDOS_OBJ) $(MSDOS_X_OBJ) $(NS_OBJ) $(CYGWIN_OBJ) $(FONT_OBJ)
346 341
347/* Object files used on some machine or other. 342## Object files used on some machine or other.
348 These go in the DOC file on all machines in case they are needed. */ 343## These go in the DOC file on all machines in case they are needed.
349SOME_MACHINE_OBJECTS = dosfns.o msdos.o \ 344SOME_MACHINE_OBJECTS = dosfns.o msdos.o \
350 xterm.o xfns.o xmenu.o xselect.o xrdb.o xsmfns.o fringe.o image.o \ 345 xterm.o xfns.o xmenu.o xselect.o xrdb.o xsmfns.o fringe.o image.o \
351 fontset.o dbusbind.o \ 346 fontset.o dbusbind.o \
@@ -353,39 +348,38 @@ SOME_MACHINE_OBJECTS = dosfns.o msdos.o \
353 w32.o w32console.o w32fns.o w32heap.o w32inevt.o \ 348 w32.o w32console.o w32fns.o w32heap.o w32inevt.o \
354 w32menu.o w32proc.o w32reg.o w32select.o w32term.o w32xfns.o $(FONT_OBJ) 349 w32menu.o w32proc.o w32reg.o w32select.o w32term.o w32xfns.o $(FONT_OBJ)
355 350
356/* gmalloc.o if !SYSTEM_MALLOC && !DOUG_LEA_MALLOC, else empty. */ 351## gmalloc.o if !SYSTEM_MALLOC && !DOUG_LEA_MALLOC, else empty.
357GMALLOC_OBJ=@GMALLOC_OBJ@ 352GMALLOC_OBJ=@GMALLOC_OBJ@
358 353
359/* vm-limit.o if !SYSTEM_MALLOC, else empty. */ 354## vm-limit.o if !SYSTEM_MALLOC, else empty.
360VMLIMIT_OBJ=@VMLIMIT_OBJ@ 355VMLIMIT_OBJ=@VMLIMIT_OBJ@
361 356
362/* ralloc.o if !SYSTEM_MALLOC && REL_ALLOC, else empty. */ 357## ralloc.o if !SYSTEM_MALLOC && REL_ALLOC, else empty.
363RALLOC_OBJ=@RALLOC_OBJ@ 358RALLOC_OBJ=@RALLOC_OBJ@
364 359
365/* Empty on Cygwin, lastfile.o elsewhere. */ 360## Empty on Cygwin, lastfile.o elsewhere.
366PRE_ALLOC_OBJ=@PRE_ALLOC_OBJ@ 361PRE_ALLOC_OBJ=@PRE_ALLOC_OBJ@
367/* lastfile.o on Cygwin, empty elsewhere. */ 362## lastfile.o on Cygwin, empty elsewhere.
368POST_ALLOC_OBJ=@POST_ALLOC_OBJ@ 363POST_ALLOC_OBJ=@POST_ALLOC_OBJ@
369 364
370/* List of object files that make-docfile should not be told about. */ 365## List of object files that make-docfile should not be told about.
371otherobj= $(TERMCAP_OBJ) $(PRE_ALLOC_OBJ) $(GMALLOC_OBJ) $(RALLOC_OBJ) \ 366otherobj= $(TERMCAP_OBJ) $(PRE_ALLOC_OBJ) $(GMALLOC_OBJ) $(RALLOC_OBJ) \
372 $(POST_ALLOC_OBJ) $(VMLIMIT_OBJ) $(WIDGET_OBJ) $(LIBOBJS) 367 $(POST_ALLOC_OBJ) $(VMLIMIT_OBJ) $(WIDGET_OBJ) $(LIBOBJS)
373 368
374/* This is the platform-specific list of Lisp files loaded into the 369## This is the platform-specific list of Lisp files loaded into the
375 dumped Emacs. It is arranged like this because it is easier to generate 370## dumped Emacs. It is arranged like this because it is easier to generate
376 it semi-mechanically from loadup.el this way. 371## it semi-mechanically from loadup.el this way.
377 372##
378 Note that this list should not include lisp files which might not 373## Note that this list should not include lisp files which might not
379 be present, like site-load.el and site-init.el; this makefile 374## be present, like site-load.el and site-init.el; this makefile
380 expects them all to be either present or buildable. 375## expects them all to be either present or buildable.
381 376##
382 Files which are loaded unconditionally (i.e., on all platforms) should 377## Files which are loaded unconditionally (i.e., on all platforms) should
383 also be in shortlisp. Files which are loaded conditionally (i.e., only 378## also be in shortlisp. Files which are loaded conditionally (i.e., only
384 on some platforms) should instead be in SOME_MACHINE_LISP. */ 379## on some platforms) should instead be in SOME_MACHINE_LISP.
385 380##
386/* Place loaddefs.el first, so it gets generated first, since it is on 381## Place loaddefs.el first, so it gets generated first, since it is on
387 the critical path (relevant in parallel compilations). */ 382## the critical path (relevant in parallel compilations).
388
389lisp= \ 383lisp= \
390 ${lispsource}loaddefs.el \ 384 ${lispsource}loaddefs.el \
391 ${lispsource}abbrev.elc \ 385 ${lispsource}abbrev.elc \
@@ -475,11 +469,11 @@ lisp= \
475 ${lispsource}window.elc \ 469 ${lispsource}window.elc \
476 ${lispsource}version.el 470 ${lispsource}version.el
477 471
478/* List of relative names for those files from $lisp that are loaded 472## List of relative names for those files from $lisp that are loaded
479 unconditionally (i.e. on all platforms). Files from $lisp that 473## unconditionally (i.e. on all platforms). Files from $lisp that
480 are only loaded on some platforms should instead be placed in 474## are only loaded on some platforms should instead be placed in
481 SOME_MACHINE_LISP. The only reason this variable exists is to prevent 475## SOME_MACHINE_LISP. The only reason this variable exists is to prevent
482 the make-docfile command-line getting too long for some systems. */ 476## the make-docfile command-line getting too long for some systems.
483shortlisp= \ 477shortlisp= \
484 ../lisp/loaddefs.el \ 478 ../lisp/loaddefs.el \
485 ../lisp/abbrev.elc \ 479 ../lisp/abbrev.elc \
@@ -563,8 +557,8 @@ shortlisp= \
563 ../lisp/window.elc \ 557 ../lisp/window.elc \
564 ../lisp/version.el 558 ../lisp/version.el
565 559
566/* Like $shortlisp, but includes only those files from $lisp that are loaded 560## Like $shortlisp, but includes only those files from $lisp that are loaded
567 conditionally (i.e., only on some platforms). */ 561## conditionally (i.e., only on some platforms).
568SOME_MACHINE_LISP = ../lisp/mouse.elc \ 562SOME_MACHINE_LISP = ../lisp/mouse.elc \
569 ../lisp/select.elc ../lisp/scroll-bar.elc \ 563 ../lisp/select.elc ../lisp/scroll-bar.elc \
570 ../lisp/ls-lisp.elc ../lisp/dos-fns.elc \ 564 ../lisp/ls-lisp.elc ../lisp/dos-fns.elc \
@@ -583,11 +577,10 @@ SOME_MACHINE_LISP = ../lisp/mouse.elc \
583 ../lisp/term/ns-win.elc ../lisp/term/w32-win.elc \ 577 ../lisp/term/ns-win.elc ../lisp/term/w32-win.elc \
584 ../lisp/emacs-lisp/easymenu.elc 578 ../lisp/emacs-lisp/easymenu.elc
585 579
586/* Construct full set of libraries to be linked. 580## Construct full set of libraries to be linked.
587 Note that SunOS needs -lm to come before -lc; otherwise, you get 581## Note that SunOS needs -lm to come before -lc; otherwise, you get
588 duplicated symbols. If the standard libraries were compiled 582## duplicated symbols. If the standard libraries were compiled
589 with GCC, we might need LIB_GCC again after them. */ 583## with GCC, we might need LIB_GCC again after them.
590
591LIBES = $(LOADLIBES) $(LIBS) $(LIBX_BASE) $(LIBX_OTHER) $(LIBSOUND) \ 584LIBES = $(LOADLIBES) $(LIBS) $(LIBX_BASE) $(LIBX_OTHER) $(LIBSOUND) \
592 $(RSVG_LIBS) $(DBUS_LIBS) $(LIBGPM) $(LIBRESOLV) $(LIBS_SYSTEM) \ 585 $(RSVG_LIBS) $(DBUS_LIBS) $(LIBGPM) $(LIBRESOLV) $(LIBS_SYSTEM) \
593 $(LIBS_TERMCAP) $(GETLOADAVG_LIBS) ${GCONF_LIBS} ${LIBSELINUX_LIBS} \ 586 $(LIBS_TERMCAP) $(GETLOADAVG_LIBS) ${GCONF_LIBS} ${LIBSELINUX_LIBS} \
@@ -596,9 +589,9 @@ LIBES = $(LOADLIBES) $(LIBS) $(LIBX_BASE) $(LIBX_OTHER) $(LIBSOUND) \
596 589
597all: emacs${EXEEXT} $(OTHER_FILES) 590all: emacs${EXEEXT} $(OTHER_FILES)
598 591
599/* Does anyone ever pay attention to the load-path-shadows output here? */ 592## Does anyone ever pay attention to the load-path-shadows output here?
600/* The dumped Emacs is as functional and more efficient than 593## The dumped Emacs is as functional and more efficient than
601 bootstrap-emacs, so we replace the latter with the former. */ 594## bootstrap-emacs, so we replace the latter with the former.
602emacs${EXEEXT}: temacs${EXEEXT} ${etc}DOC ${lisp} 595emacs${EXEEXT}: temacs${EXEEXT} ${etc}DOC ${lisp}
603 if test "${CANNOT_DUMP}" = "yes"; then \ 596 if test "${CANNOT_DUMP}" = "yes"; then \
604 ln -f temacs${EXEEXT} emacs${EXEEXT}; \ 597 ln -f temacs${EXEEXT} emacs${EXEEXT}; \
@@ -610,19 +603,19 @@ emacs${EXEEXT}: temacs${EXEEXT} ${etc}DOC ${lisp}
610 ./emacs -q -batch -f list-load-path-shadows || true; \ 603 ./emacs -q -batch -f list-load-path-shadows || true; \
611 fi 604 fi
612 605
613/* We run make-docfile twice because the command line may get too long 606## We run make-docfile twice because the command line may get too long
614 on some systems. */ 607## on some systems.
615/* ${SOME_MACHINE_OBJECTS} comes before ${obj} because some files may 608## ${SOME_MACHINE_OBJECTS} comes before ${obj} because some files may
616 or may not be included in ${obj}, but they are always included in 609## or may not be included in ${obj}, but they are always included in
617 ${SOME_MACHINE_OBJECTS}. Since a file is processed when it is mentioned 610## ${SOME_MACHINE_OBJECTS}. Since a file is processed when it is mentioned
618 for the first time, this prevents any variation between configurations 611## for the first time, this prevents any variation between configurations
619 in the contents of the DOC file. 612## in the contents of the DOC file.
620 Likewise for ${SOME_MACHINE_LISP}. */ 613## Likewise for ${SOME_MACHINE_LISP}.
621/* Most of this Makefile refers to Lisp files via ${lispsource}, so 614## Most of this Makefile refers to Lisp files via ${lispsource}, so
622 we also use ${lisp} rather than ${shortlisp} for the dependency since 615## we also use ${lisp} rather than ${shortlisp} for the dependency since
623 the Makefile uses string equality to decide when we talk about identical 616## the Makefile uses string equality to decide when we talk about identical
624 files. Apparently we pass ${shortlisp} rather than ${lisp} to make-docfile 617## files. Apparently we pass ${shortlisp} rather than ${lisp} to make-docfile
625 only in order to reduce the command line length. --Stef */ 618## only in order to reduce the command line length. --Stef
626${etc}DOC: ${libsrc}make-docfile${EXEEXT} ${obj} ${lisp} ${SOME_MACHINE_LISP} 619${etc}DOC: ${libsrc}make-docfile${EXEEXT} ${obj} ${lisp} ${SOME_MACHINE_LISP}
627 -rm -f ${etc}DOC 620 -rm -f ${etc}DOC
628 ${libsrc}make-docfile -d ${srcdir} ${SOME_MACHINE_OBJECTS} ${obj} > ${etc}DOC 621 ${libsrc}make-docfile -d ${srcdir} ${SOME_MACHINE_OBJECTS} ${obj} > ${etc}DOC
@@ -635,11 +628,11 @@ buildobj.h: Makefile
635 echo "#define BUILDOBJ \"${obj} ${otherobj} " "\"" > buildobj.h 628 echo "#define BUILDOBJ \"${obj} ${otherobj} " "\"" > buildobj.h
636 629
637 630
638/* We cannot define variables for PRE_EDIT and POST_EDIT. 631## We cannot define variables for PRE_EDIT and POST_EDIT.
639 If !ORDINARY_LINK && !LINKER && GCC, they add a 632## If !ORDINARY_LINK && !LINKER && GCC, they add a
640 \`./prefix-args -Xlinker ... \` wrapper, otherwise they are empty. 633## `./prefix-args -Xlinker ... ` wrapper, otherwise they are empty.
641 One alternative to this approach would be to always call prefix-args, 634## One alternative to this approach would be to always call prefix-args,
642 and have it DTRT in all cases, by testing the above defines. */ 635## and have it DTRT in all cases, by testing the above defines.
643temacs${EXEEXT}: $(START_FILES) stamp-oldxmenu ${obj} ${otherobj} prefix-args${EXEEXT} 636temacs${EXEEXT}: $(START_FILES) stamp-oldxmenu ${obj} ${otherobj} prefix-args${EXEEXT}
644 $(LD) @PRE_EDIT_LDFLAGS@ ${TEMACS_LDFLAGS} @POST_EDIT_LDFLAGS@ \ 637 $(LD) @PRE_EDIT_LDFLAGS@ ${TEMACS_LDFLAGS} @POST_EDIT_LDFLAGS@ \
645 ${TEMACS_LDFLAGS2} \ 638 ${TEMACS_LDFLAGS2} \
@@ -649,27 +642,27 @@ prefix-args${EXEEXT}: prefix-args.o $(config_h)
649 $(CC) $(LDFLAGS) prefix-args.o -o prefix-args 642 $(CC) $(LDFLAGS) prefix-args.o -o prefix-args
650 643
651 644
652/* The following oldxmenu-related rules are only (possibly) used if 645## The following oldxmenu-related rules are only (possibly) used if
653 HAVE_X11 && !USE_GTK, but there is no harm in always defining them 646## HAVE_X11 && !USE_GTK, but there is no harm in always defining them
654 (provided we take a little care that OLDXMENU is never empty). */ 647## (provided we take a little care that OLDXMENU is never empty).
655really-lwlib: 648really-lwlib:
656 cd ${lwlibdir}; ${MAKE} ${MFLAGS} \ 649 cd ${lwlibdir}; ${MAKE} ${MFLAGS} \
657 CC='${CC}' CFLAGS='${CFLAGS}' MAKE='${MAKE}' 650 CC='${CC}' CFLAGS='${CFLAGS}' MAKE='${MAKE}'
658 @true /* make -t should not create really-lwlib. */ 651 @true # make -t should not create really-lwlib.
659.PHONY: really-lwlib 652.PHONY: really-lwlib
660 653
661really-oldXMenu: 654really-oldXMenu:
662 cd ${oldXMenudir}; ${MAKE} ${MFLAGS} \ 655 cd ${oldXMenudir}; ${MAKE} ${MFLAGS} \
663 CC='${CC}' CFLAGS='${CFLAGS}' MAKE='${MAKE}' 656 CC='${CC}' CFLAGS='${CFLAGS}' MAKE='${MAKE}'
664 @true /* make -t should not create really-oldXMenu. */ 657 @true # make -t should not create really-oldXMenu.
665.PHONY: really-oldXMenu 658.PHONY: really-oldXMenu
666 659
667/* We don''t really need this when OLDXMENU_DEPS is empty, but as 660## We do not really need this when OLDXMENU_DEPS is empty, but as
668 things stand we need something to satisfy the temacs dependency. */ 661## things stand we need something to satisfy the temacs dependency.
669stamp-oldxmenu: ${OLDXMENU_DEPS} 662stamp-oldxmenu: ${OLDXMENU_DEPS}
670 touch stamp-oldxmenu 663 touch stamp-oldxmenu
671 664
672/* Supply an ordering for parallel make. */ 665## Supply an ordering for parallel make.
673../src/$(OLDXMENU): ${OLDXMENU} 666../src/$(OLDXMENU): ${OLDXMENU}
674 667
675$(OLDXMENU): $(OLDXMENU_TARGET) 668$(OLDXMENU): $(OLDXMENU_TARGET)
@@ -690,7 +683,7 @@ ecrt0.o: ecrt0.c $(config_h)
690doc.o: buildobj.h 683doc.o: buildobj.h
691 684
692 685
693/* If HAVE_NS, some ns-specific rules (for OTHER_FILES) are inserted here. */ 686## If HAVE_NS, some ns-specific rules (for OTHER_FILES) are inserted here.
694@ns_frag@ 687@ns_frag@
695 688
696 689
@@ -704,18 +697,18 @@ clean: mostlyclean
704 -rm -rf ${DEPDIR} 697 -rm -rf ${DEPDIR}
705 test "X${ns_appdir}" = "X" || rm -rf ${ns_appdir} 698 test "X${ns_appdir}" = "X" || rm -rf ${ns_appdir}
706 699
707/* bootstrap-clean is used to clean up just before a bootstrap. 700## bootstrap-clean is used to clean up just before a bootstrap.
708 It should remove all files generated during a compilation/bootstrap, 701## It should remove all files generated during a compilation/bootstrap,
709 but not things like config.status or TAGS. */ 702## but not things like config.status or TAGS.
710bootstrap-clean: clean 703bootstrap-clean: clean
711 rm -f epaths.h config.h Makefile.c config.stamp stamp-oldxmenu ../etc/DOC-* 704 rm -f epaths.h config.h config.stamp stamp-oldxmenu ../etc/DOC-*
712 if test -f ./.gdbinit; then \ 705 if test -f ./.gdbinit; then \
713 mv ./.gdbinit ./.gdbinit.save; \ 706 mv ./.gdbinit ./.gdbinit.save; \
714 if test -f "${srcdir}/.gdbinit"; then rm -f ./.gdbinit.save; \ 707 if test -f "${srcdir}/.gdbinit"; then rm -f ./.gdbinit.save; \
715 else mv ./.gdbinit.save ./.gdbinit; fi; \ 708 else mv ./.gdbinit.save ./.gdbinit; fi; \
716 fi 709 fi
717/**/# This is used in making a distribution. 710## This is used in making a distribution.
718/**/# Do not use it on development directories! 711## Do not use it on development directories!
719distclean: bootstrap-clean 712distclean: bootstrap-clean
720 rm -f Makefile 713 rm -f Makefile
721maintainer-clean: distclean 714maintainer-clean: distclean
@@ -727,8 +720,8 @@ versionclean:
727extraclean: distclean 720extraclean: distclean
728 -rm -f *~ \#* m/?*~ s/?*~ 721 -rm -f *~ \#* m/?*~ s/?*~
729 722
730/* Arrange to make a tags table TAGS-LISP for ../lisp, 723## Arrange to make a tags table TAGS-LISP for ../lisp,
731 plus TAGS for the C files, which includes ../lisp/TAGS by reference. */ 724## plus TAGS for the C files, which includes ../lisp/TAGS by reference.
732 725
733ctagsfiles1 = [xyzXYZ]*.[hcm] 726ctagsfiles1 = [xyzXYZ]*.[hcm]
734ctagsfiles2 = [a-wA-W]*.[hcm] 727ctagsfiles2 = [a-wA-W]*.[hcm]
@@ -748,49 +741,49 @@ tags: TAGS TAGS-LISP $(lwlibdir)TAGS
748.PHONY: tags 741.PHONY: tags
749 742
750 743
751/* Bootstrapping. */ 744### Bootstrapping.
752/* Bootstrapping right is difficult because of the circular dependencies. 745
753 Furthermore, we have to deal with the fact that many compilation targets 746## Bootstrapping right is difficult because of the circular dependencies.
754 such as loaddefs.el or *.elc can typically be produced by any old 747## Furthermore, we have to deal with the fact that many compilation targets
755 Emacs executable, so we would like to avoid rebuilding them whenever 748## such as loaddefs.el or *.elc can typically be produced by any old
756 we build a new Emacs executable. 749## Emacs executable, so we would like to avoid rebuilding them whenever
757 To solve the circularity, we use 2 different Emacs executables, 750## we build a new Emacs executable.
758 "emacs" is the main target and "bootstrap-emacs" is the one used 751## To solve the circularity, we use 2 different Emacs executables,
759 to build the *.elc and loaddefs.el files. 752## "emacs" is the main target and "bootstrap-emacs" is the one used
760 To solve the freshness issue, we used to use a third file "witness-emacs" 753## to build the *.elc and loaddefs.el files.
761 which was used to witness the fact that there is a bootstrap-emacs 754## To solve the freshness issue, we used to use a third file "witness-emacs"
762 executable, and then have dependencies on witness-emacs rather than 755## which was used to witness the fact that there is a bootstrap-emacs
763 bootstrap-emacs, but that lead to problems in parallel builds (because 756## executable, and then have dependencies on witness-emacs rather than
764 witness-emacs needed to be free from dependencies (to avoid rebuilding 757## bootstrap-emacs, but that lead to problems in parallel builds (because
765 it), so it was compiled in parallel, leading typically to having 2 758## witness-emacs needed to be free from dependencies (to avoid rebuilding
766 processes dumping bootstrap-emacs at the same time). 759## it), so it was compiled in parallel, leading typically to having 2
767 So instead, we replace the witness-emacs dependencies by conditional 760## processes dumping bootstrap-emacs at the same time).
768 bootstrap-dependencies (via ${BOOTSTRAPEMACS}). Of course, since we do 761## So instead, we replace the witness-emacs dependencies by conditional
769 not want to rely on GNU Make features, we have to rely on an external 762## bootstrap-dependencies (via ${BOOTSTRAPEMACS}). Of course, since we do
770 script to do the conditional part of the dependency 763## not want to rely on GNU Make features, we have to rely on an external
771 (i.e. see the ${SUBDIR} rule ../Makefile.in). */ 764## script to do the conditional part of the dependency
765## (i.e. see the ${SUBDIR} rule ../Makefile.in).
772 766
773.SUFFIXES: .elc .el 767.SUFFIXES: .elc .el
774 768
775/* These suffix rules do not allow additional dependencies, sadly, so 769## These suffix rules do not allow additional dependencies, sadly, so
776 instead of adding a $(BOOTSTRAPEMACS) dependency here, we add it 770## instead of adding a $(BOOTSTRAPEMACS) dependency here, we add it
777 separately below. 771## separately below.
778 With GNU Make, we would just say "%.el : %.elc $(BOOTSTRAPEMACS)" */ 772## With GNU Make, we would just say "%.el : %.elc $(BOOTSTRAPEMACS)"
779.el.elc: 773.el.elc:
780 @cd ../lisp; $(MAKE) $(MFLAGS) compile-onefile \ 774 @cd ../lisp; $(MAKE) $(MFLAGS) compile-onefile \
781 THEFILE=$< EMACS=${bootstrap_exe} 775 THEFILE=$< EMACS=${bootstrap_exe}
782 776
783/* Since the .el.elc rule cannot specify an extra dependency, we do it here. */ 777## Since the .el.elc rule cannot specify an extra dependency, we do it here.
784${lisp} ${SOME_MACHINE_LISP}: $(BOOTSTRAPEMACS) 778${lisp} ${SOME_MACHINE_LISP}: $(BOOTSTRAPEMACS)
785 779
786/* VCSWITNESS points to the file that holds info about the current checkout. 780## VCSWITNESS points to the file that holds info about the current checkout.
787 We use it as a heuristic to decide when to rebuild loaddefs.el. */ 781## We use it as a heuristic to decide when to rebuild loaddefs.el.
788${lispsource}loaddefs.el: $(BOOTSTRAPEMACS) $(VCSWITNESS) 782${lispsource}loaddefs.el: $(BOOTSTRAPEMACS) $(VCSWITNESS)
789 cd ../lisp; $(MAKE) $(MFLAGS) autoloads EMACS=${bootstrap_exe} 783 cd ../lisp; $(MAKE) $(MFLAGS) autoloads EMACS=${bootstrap_exe}
790 784
791/* Dump an Emacs executable named bootstrap-emacs containing the 785## Dump an Emacs executable named bootstrap-emacs containing the
792 files from loadup.el in source form. */ 786## files from loadup.el in source form.
793
794bootstrap-emacs${EXEEXT}: temacs${EXEEXT} 787bootstrap-emacs${EXEEXT}: temacs${EXEEXT}
795 cd ../lisp; $(MAKE) $(MFLAGS) update-subdirs 788 cd ../lisp; $(MAKE) $(MFLAGS) update-subdirs
796 if test "${CANNOT_DUMP}" = "yes"; then \ 789 if test "${CANNOT_DUMP}" = "yes"; then \
@@ -802,5 +795,8 @@ bootstrap-emacs${EXEEXT}: temacs${EXEEXT}
802 @: Compile some files earlier to speed up further compilation. 795 @: Compile some files earlier to speed up further compilation.
803 cd ../lisp; $(MAKE) $(MFLAGS) compile-first EMACS=${bootstrap_exe} 796 cd ../lisp; $(MAKE) $(MFLAGS) compile-first EMACS=${bootstrap_exe}
804 797
805/* Insert either autodeps.mk (if AUTO_DEPEND), else deps.mk. */ 798## Insert either autodeps.mk (if AUTO_DEPEND), else deps.mk.
806@deps_frag@ 799@deps_frag@
800
801
802### Makefile.in ends here
diff --git a/src/README b/src/README
index 679fc961e53..b4ce91b150a 100644
--- a/src/README
+++ b/src/README
@@ -1,5 +1,5 @@
1Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 1Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
2 Free Software Foundation, Inc. 2 2010 Free Software Foundation, Inc.
3See the end of the file for license conditions. 3See the end of the file for license conditions.
4 4
5 5
@@ -10,12 +10,10 @@ and installed, if the dumped Emacs (on Unix systems) is copied elsewhere.
10See the files ../README and then ../INSTALL for installation instructions. 10See the files ../README and then ../INSTALL for installation instructions.
11 11
12Under GNU and Unix systems, the file `Makefile.in' is used as a 12Under GNU and Unix systems, the file `Makefile.in' is used as a
13template by the script `../configure' to produce `Makefile.c'. The 13template by the script `../configure' to produce `Makefile'. This
14same script then uses `cpp' to produce the machine-dependent 14is the file which actually controls the compilation of Emacs.
15`Makefile' from `Makefile.c'; `Makefile' is the file which actually 15All of this should work transparently to the user; you should only
16controls the compilation of Emacs. Most of this should work 16need to run `../configure', and then type `make'.
17transparently to the user; you should only need to run `../configure',
18and then type `make'.
19 17
20 18
21This file is part of GNU Emacs. 19This file is part of GNU Emacs.
diff --git a/src/autodeps.mk b/src/autodeps.mk
index a5d2a04dcf4..c3cc91e22a7 100644
--- a/src/autodeps.mk
+++ b/src/autodeps.mk
@@ -1,6 +1,6 @@
1/* autodeps.mk --- src/Makefile fragment for GNU Emacs 1### autodeps.mk --- src/Makefile fragment for GNU Emacs
2 2
3This is inserted in src/Makefile if AUTO_DEPEND=yes. */ 3## This is inserted in src/Makefile if AUTO_DEPEND=yes.
4 4
5ALLOBJS=$(START_FILES) ${obj} ${otherobj} prefix-args.o 5ALLOBJS=$(START_FILES) ${obj} ${otherobj} prefix-args.o
6-include $(ALLOBJS:%.o=${DEPDIR}/%.d) 6-include $(ALLOBJS:%.o=${DEPDIR}/%.d)
diff --git a/src/deps.mk b/src/deps.mk
index 08a435da6a9..1514ec5e61a 100644
--- a/src/deps.mk
+++ b/src/deps.mk
@@ -1,41 +1,41 @@
1/* deps.mk --- src/Makefile fragment for GNU Emacs 1### deps.mk --- src/Makefile fragment for GNU Emacs
2 2
3Copyright (C) 1985, 1987, 1988, 1993, 1994, 1995, 1999, 2000, 2001, 2002, 3## Copyright (C) 1985, 1987, 1988, 1993, 1994, 1995, 1999, 2000, 2001, 2002,
4 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 4## 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5 Free Software Foundation, Inc. 5## Free Software Foundation, Inc.
6 6
7This file is part of GNU Emacs. 7## This file is part of GNU Emacs.
8 8
9GNU Emacs is free software: you can redistribute it and/or modify 9## GNU Emacs is free software: you can redistribute it and/or modify
10it under the terms of the GNU General Public License as published by 10## it under the terms of the GNU General Public License as published by
11the Free Software Foundation, either version 3 of the License, or 11## the Free Software Foundation, either version 3 of the License, or
12(at your option) any later version. 12## (at your option) any later version.
13##
14## GNU Emacs is distributed in the hope that it will be useful,
15## but WITHOUT ANY WARRANTY; without even the implied warranty of
16## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17## GNU General Public License for more details.
18##
19## You should have received a copy of the GNU General Public License
20## along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
13 21
14GNU Emacs is distributed in the hope that it will be useful, 22## Commentary:
15but WITHOUT ANY WARRANTY; without even the implied warranty of 23##
16MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 24## This file is inserted in src/Makefile if AUTO_DEPEND=no.
17GNU General Public License for more details. 25## It defines static dependencies between the various source files.
18 26
19You should have received a copy of the GNU General Public License 27## FIXME some of these dependencies are platform-specific.
20along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. 28## Eg callproc.c only depends on w32.h for WINDOWSNT builds.
29## One way to fix this would be to replace w32.h (etc) by $(W32_H),
30## a variable set by configure. Does not seem worth the trouble.
31## Since the w32 build does not even use this file, you might ask
32## why these dependencies are here at all...
21 33
22Commentary: 34## nsgui.h: In fact, every .o file depends directly or indirectly on
35## dispextern.h and hence nsgui.h under NS. But the ones that actually
36## use stuff there are more limited.
23 37
24This file is inserted in src/Makefile if AUTO_DEPEND=no. 38### Code:
25It defines static dependencies between the various source files.
26
27FIXME some of these dependencies are platform-specific.
28Eg callproc.c only depends on w32.h for WINDOWSNT builds.
29One way to fix this would be to replace w32.h (etc) by $(W32_H),
30a variable set by configure. Does not seem worth the trouble.
31Since the w32 build does not even use this file, you might ask
32why these dependencies are here at all...
33
34nsgui.h: In fact, every .o file depends directly or indirectly on
35dispextern.h and hence nsgui.h under NS. But the ones that actually
36use stuff there are more limited.
37
38Code: */
39 39
40atimer.o: atimer.c atimer.h syssignal.h systime.h lisp.h blockinput.h \ 40atimer.o: atimer.c atimer.h syssignal.h systime.h lisp.h blockinput.h \
41 $(config_h) 41 $(config_h)
@@ -245,7 +245,7 @@ xsettings.o: xterm.h xsettings.h lisp.h frame.h termhooks.h $(config_h) \
245 dispextern.h keyboard.h systime.h coding.h composite.h blockinput.h \ 245 dispextern.h keyboard.h systime.h coding.h composite.h blockinput.h \
246 atimer.h termopts.h 246 atimer.h termopts.h
247 247
248/* The files of Lisp proper. */ 248## The files of Lisp proper.
249alloc.o: alloc.c process.h frame.h window.h buffer.h puresize.h syssignal.h \ 249alloc.o: alloc.c process.h frame.h window.h buffer.h puresize.h syssignal.h \
250 keyboard.h blockinput.h atimer.h systime.h character.h lisp.h $(config_h) \ 250 keyboard.h blockinput.h atimer.h systime.h character.h lisp.h $(config_h) \
251 $(INTERVALS_H) termhooks.h 251 $(INTERVALS_H) termhooks.h
@@ -267,7 +267,7 @@ lread.o: lread.c commands.h keyboard.h buffer.h epaths.h character.h \
267 charset.h lisp.h $(config_h) $(INTERVALS_H) termhooks.h coding.h msdos.h \ 267 charset.h lisp.h $(config_h) $(INTERVALS_H) termhooks.h coding.h msdos.h \
268 systime.h frame.h blockinput.h atimer.h 268 systime.h frame.h blockinput.h atimer.h
269 269
270/* Text properties support. */ 270## Text properties support.
271composite.o: composite.c buffer.h character.h coding.h font.h ccl.h \ 271composite.o: composite.c buffer.h character.h coding.h font.h ccl.h \
272 frame.h termhooks.h $(INTERVALS_H) window.h lisp.h $(config_h) 272 frame.h termhooks.h $(INTERVALS_H) window.h lisp.h $(config_h)
273intervals.o: intervals.c buffer.h $(INTERVALS_H) keyboard.h puresize.h \ 273intervals.o: intervals.c buffer.h $(INTERVALS_H) keyboard.h puresize.h \
@@ -276,4 +276,4 @@ textprop.o: textprop.c buffer.h window.h $(INTERVALS_H) \
276 lisp.h $(config_h) 276 lisp.h $(config_h)
277 277
278 278
279/* deps.mk ends here */ 279### deps.mk ends here
diff --git a/src/ns.mk b/src/ns.mk
index 255ffa7046b..d674466a407 100644
--- a/src/ns.mk
+++ b/src/ns.mk
@@ -1,29 +1,29 @@
1/* autodeps.mk --- src/Makefile fragment for GNU Emacs 1### autodeps.mk --- src/Makefile fragment for GNU Emacs
2 2
3Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc. 3## Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5## This file is part of GNU Emacs.
6 6
7GNU Emacs is free software: you can redistribute it and/or modify 7## GNU Emacs is free software: you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published by 8## it under the terms of the GNU General Public License as published by
9the Free Software Foundation, either version 3 of the License, or 9## the Free Software Foundation, either version 3 of the License, or
10(at your option) any later version. 10## (at your option) any later version.
11##
12## GNU Emacs is distributed in the hope that it will be useful,
13## but WITHOUT ANY WARRANTY; without even the implied warranty of
14## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15## GNU General Public License for more details.
16##
17## You should have received a copy of the GNU General Public License
18## along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
11 19
12GNU Emacs is distributed in the hope that it will be useful, 20### Commentary:
13but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15GNU General Public License for more details.
16 21
17You should have received a copy of the GNU General Public License 22## This is inserted in src/Makefile if HAVE_NS.
18along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
19 23
20Commentary: 24## The only reason this is in a separate file is because $ns_appdir,
21 25## which appears as a target, is empty on non-NS builds. Some makes
22This is inserted in src/Makefile if HAVE_NS. 26## do not like empty targets, even if they are never used.
23
24The only reason this is in a separate file is because $ns_appdir,
25which appears as a target, is empty on non-NS builds. Some makes
26do not like empty targets, even if they are never used. */
27 27
28${ns_appdir}: ${ns_appsrc} 28${ns_appdir}: ${ns_appsrc}
29 rm -fr ${ns_appdir} 29 rm -fr ${ns_appdir}
@@ -36,4 +36,4 @@ ${ns_appbindir}Emacs: emacs${EXEEXT}
36 36
37ns-app: ${ns_appdir} ${ns_appbindir}Emacs 37ns-app: ${ns_appdir} ${ns_appbindir}Emacs
38 38
39/* ns.mk ends here */ 39### ns.mk ends here