Mercurial > emacs
comparison Makefile.in @ 2623:b951532eca82
* configure.in: Use the AC_ALLOCA test.
* Makefile.in (ALLOCA): New variable, to be set by ./configure.
(lib-src/Makefile): Edit the value of ALLOCA into lib-src/Makefile.
* Makefile.in (install): Print out the name of the directory we're
copying, so people can have some idea of whether we're making
progress.
* Makefile.in (install.aix, install.xenix, install.sysv, install):
Don't forget to re-create the COPYDESTS directories after we clear
them out.
* Makefile.in: Add autoconf cookies so that the configure
script can comment out sections of path variable definitions to
choose between the installable configuration and the run-in-place
configuration.
* configure.in: Add new option `--run-in-place', to select the
run-in-place path definitions.
* Makefile.in (install, install.sysv, install.xenix, install.aix):
Make sure that each source directory exists, and is different from
the destination directory; then, delete the destination before
copying over the source.
author | Jim Blandy <jimb@redhat.com> |
---|---|
date | Mon, 03 May 1993 02:06:16 +0000 |
parents | 0126ca788e99 |
children | c64e97b1685b |
comparison
equal
deleted
inserted
replaced
2622:15cb6ba42da3 | 2623:b951532eca82 |
---|---|
41 # ==================== Things `configure' Might Edit ==================== | 41 # ==================== Things `configure' Might Edit ==================== |
42 | 42 |
43 CC=@CC@ | 43 CC=@CC@ |
44 DEFS=@DEFS@ | 44 DEFS=@DEFS@ |
45 C_SWITCH_SYSTEM=@c_switch_system@ | 45 C_SWITCH_SYSTEM=@c_switch_system@ |
46 ALLOCA=@ALLOCA@ | |
46 | 47 |
47 ### These help us choose version- and architecture-specific directories | 48 ### These help us choose version- and architecture-specific directories |
48 ### to install files in. | 49 ### to install files in. |
49 | 50 |
50 ### This should be the number of the Emacs version we're building, | 51 ### This should be the number of the Emacs version we're building, |
101 # Where to find the source code - setting this to anything but | 102 # Where to find the source code - setting this to anything but |
102 # . doesn't work yet. The source code for Emacs's C kernel is | 103 # . doesn't work yet. The source code for Emacs's C kernel is |
103 # expected to be in ${srcdir}/src, and the source code for Emacs's | 104 # expected to be in ${srcdir}/src, and the source code for Emacs's |
104 # utility programs is expected to be in ${srcdir}/lib-src. This is | 105 # utility programs is expected to be in ${srcdir}/lib-src. This is |
105 # set by the configure script's `--srcdir' option. | 106 # set by the configure script's `--srcdir' option. |
106 srcdir=. | 107 srcdir=@srcdir@ |
107 | 108 |
108 # ==================== Emacs-specific directories ==================== | 109 # ==================== Emacs-specific directories ==================== |
109 | 110 |
110 # These variables hold the values Emacs will actually use. They are | 111 # These variables hold the values Emacs will actually use. They are |
111 # based on the values of the standard Make variables above. | 112 # based on the values of the standard Make variables above. |
112 | 113 |
113 # Where to install the lisp files distributed with Emacs. This | 114 @inst_paths@# Where to install the lisp files distributed with |
114 # includes the Emacs version, so that the lisp files for different | 115 @inst_paths@# Emacs. This includes the Emacs version, so that the |
115 # versions of Emacs will install themselves in separate directories. | 116 @inst_paths@# lisp files for different versions of Emacs will install |
116 lispdir=${datadir}/emacs/${version}/lisp | 117 @inst_paths@# themselves in separate directories. |
117 | 118 @inst_paths@lispdir=${datadir}/emacs/${version}/lisp |
118 # Where to install the lisp files which are distributed with Emacs | 119 |
119 # but not maintained by the FSF. This includes the Emacs version, so | 120 @inst_paths@# Where to install the lisp files which are distributed |
120 # that the lisp files for different versions of Emacs will install | 121 @inst_paths@# with Emacs but not maintained by the FSF. This |
121 # themselves in separate directories. | 122 @inst_paths@# includes the Emacs version, so that the lisp files for |
122 externallispdir=${datadir}/emacs/${version}/external-lisp | 123 @inst_paths@# different versions of Emacs will install themselves in |
123 | 124 @inst_paths@# separate directories. |
124 # Directories Emacs should search for lisp files specific to this | 125 @inst_paths@externallispdir=${datadir}/emacs/${version}/external-lisp |
125 # site (i.e. customizations), before consulting ${lispdir}. This | 126 |
127 @inst_paths@# Directories Emacs should search for lisp files specific | |
128 @inst_paths@# to this site (i.e. customizations), before consulting | |
129 @inst_paths@# ${lispdir}. This should be a colon-separated list of | |
130 @inst_paths@# directories. | |
131 @inst_paths@locallisppath=${datadir}/emacs/site-lisp | |
132 | |
133 # Where Emacs will search to find its lisp files. Before | |
134 # changing this, check to see if your purpose wouldn't | |
135 # better be served by changing locallisppath. This | |
126 # should be a colon-separated list of directories. | 136 # should be a colon-separated list of directories. |
127 locallisppath=${datadir}/emacs/site-lisp | |
128 | |
129 # Where Emacs will search to find its lisp files. Before changing | |
130 # this, check to see if your purpose wouldn't better be served by | |
131 # changing locallisppath. This should be a colon-separated list of | |
132 # directories. | |
133 lisppath=${locallisppath}:${lispdir} | 137 lisppath=${locallisppath}:${lispdir} |
134 | 138 |
135 # Where Emacs will search for its lisp files while building. This is | 139 # Where Emacs will search for its lisp files while |
136 # only used during the process of compiling Emacs, to help Emacs find | 140 # building. This is only used during the process of |
137 # its lisp files before they've been installed in their final | 141 # compiling Emacs, to help Emacs find its lisp files |
138 # location. It's usually identical to lisppath, except that the entry | 142 # before they've been installed in their final location. |
139 # for the directory containing the installed lisp files has been | 143 # It's usually identical to lisppath, except that the |
140 # replaced with ../lisp. This should be a colon-separated list of | 144 # entry for the directory containing the installed lisp |
141 # directories. | 145 # files has been replaced with ../lisp. This should be a |
146 # colon-separated list of directories. | |
142 buildlisppath=../lisp | 147 buildlisppath=../lisp |
143 | 148 |
144 # Where to install the other architecture-independent data files | 149 @inst_paths@# Where to install the other architecture-independent |
145 # distributed with Emacs (like the tutorial, the cookie recipes and | 150 @inst_paths@# data files distributed with Emacs (like the tutorial, |
146 # the Zippy database). This path usually contains the Emacs version | 151 @inst_paths@# the cookie recipes and the Zippy database). This path |
147 # number, so the data files for multiple versions of Emacs may be | 152 @inst_paths@# usually contains the Emacs version number, so the data |
148 # installed at once. | 153 @inst_paths@# files for multiple versions of Emacs may be installed |
149 etcdir=${datadir}/emacs/${version}/etc | 154 @inst_paths@# at once. |
150 | 155 @inst_paths@etcdir=${datadir}/emacs/${version}/etc |
151 # Where to create and expect the locking directory, where the Emacs | 156 |
152 # locking code keeps track of which files are currently being edited. | 157 @inst_paths@# Where to create and expect the locking directory, where |
153 lockdir=${statedir}/emacs/lock | 158 @inst_paths@# the Emacs locking code keeps track of which files are |
154 | 159 @inst_paths@# currently being edited. |
155 # Where to put executables to be run by Emacs rather than the user. | 160 @inst_paths@lockdir=${statedir}/emacs/lock |
156 # This path usually includes the Emacs version and configuration name, | 161 |
157 # so that multiple configurations for multiple versions of Emacs may | 162 @inst_paths@# Where to put executables to be run by Emacs rather than |
158 # be installed at once. | 163 @inst_paths@# the user. This path usually includes the Emacs version |
159 archlibdir=${libdir}/emacs/${version}/${configuration} | 164 @inst_paths@# and configuration name, so that multiple configurations |
165 @inst_paths@# for multiple versions of Emacs may be installed at | |
166 @inst_paths@# once. | |
167 @inst_paths@archlibdir=${libdir}/emacs/${version}/${configuration} | |
160 | 168 |
161 # ====================== Developer's configuration ======================= | 169 # ====================== Developer's configuration ======================= |
162 | 170 |
163 # The following assignments make sense if you're running Emacs on a single | 171 # The following assignments make sense if you're running Emacs on a single |
164 # machine, one version at a time, and you want changes to the lisp and etc | 172 # machine, one version at a time, and you want changes to the lisp and etc |
165 # directories in the source tree to show up immediately in your working | 173 # directories in the source tree to show up immediately in your working |
166 # environment. It saves a great deal of disk space by not duplicating the | 174 # environment. It saves a great deal of disk space by not duplicating the |
167 # lisp and etc directories. | 175 # lisp and etc directories. |
168 # | 176 |
169 # lispdir=${srcdir}/lisp | 177 @rip_paths@lispdir=${srcdir}/lisp |
170 # externallispdir=${srcdir}/externallisp | 178 @rip_paths@externallispdir=${srcdir}/externallisp |
171 # locallisppath=${srcdir}/site-lisp | 179 @rip_paths@locallisppath=${datadir}/emacs/site-lisp |
172 # etcdir=${srcdir}/etc | 180 @rip_paths@etcdir=${srcdir}/etc |
173 # lockdir=${srcdir}/lock | 181 @rip_paths@lockdir=${srcdir}/lock |
174 # archlibdir=${srcdir}/bin | 182 @rip_paths@archlibdir=${srcdir}/lib-src |
175 # infodir=${srcdir}/info | 183 @rip_paths@infodir=${srcdir}/info |
176 | 184 |
177 # ==================== Utility Programs for the Build ==================== | 185 # ==================== Utility Programs for the Build ==================== |
178 | 186 |
179 # Allow the user to specify the install program. | 187 # Allow the user to specify the install program. |
180 INSTALL = install | 188 INSTALL = install |
254 -e 's|^\(prefix *=\).*$$|\1'"${prefix}"'|' \ | 262 -e 's|^\(prefix *=\).*$$|\1'"${prefix}"'|' \ |
255 -e 's|^\(exec_prefix *=\).*$$|\1'"${exec_prefix}"'|' \ | 263 -e 's|^\(exec_prefix *=\).*$$|\1'"${exec_prefix}"'|' \ |
256 -e 's|^\(libdir *=\).*$$|\1'"${libdir}"'|' \ | 264 -e 's|^\(libdir *=\).*$$|\1'"${libdir}"'|' \ |
257 -e 's|^\(srcdir *=\).*$$|\1'"${srcdir}"'|' \ | 265 -e 's|^\(srcdir *=\).*$$|\1'"${srcdir}"'|' \ |
258 -e 's|^\(archlibdir *=\).*$$|\1'"${archlibdir}"'|' \ | 266 -e 's|^\(archlibdir *=\).*$$|\1'"${archlibdir}"'|' \ |
267 -e 's|^\(ALLOCA *=\).*$$|\1'"${ALLOCA}"'|' \ | |
259 -e 's|^CC *=.*$$|CC='"${CC}"'|' \ | 268 -e 's|^CC *=.*$$|CC='"${CC}"'|' \ |
260 -e 's|^DEFS *=.*$$|DEFS='"${DEFS}"'|' \ | 269 -e 's|^DEFS *=.*$$|DEFS='"${DEFS}"'|' \ |
261 -e 's|^C_SWITCH_SYSTEM *=.*$$|C_SWITCH_SYSTEM='"${C_SWITCH_SYSTEM}"'|' \ | 270 -e 's|^C_SWITCH_SYSTEM *=.*$$|C_SWITCH_SYSTEM='"${C_SWITCH_SYSTEM}"'|' \ |
262 -e 's|^LOADLIBES *=.*$$|LOADLIBES='"${libsrc_libs}"'|' \ | 271 -e 's|^LOADLIBES *=.*$$|LOADLIBES='"${libsrc_libs}"'|' \ |
263 -e '/^# DIST: /d') > lib-src/Makefile.tmp | 272 -e '/^# DIST: /d') > lib-src/Makefile.tmp |
292 # ==================== Installation ==================== | 301 # ==================== Installation ==================== |
293 | 302 |
294 ## If we let lib-src do its own installation, that means we | 303 ## If we let lib-src do its own installation, that means we |
295 ## don't have to duplicate the list of utilities to install in | 304 ## don't have to duplicate the list of utilities to install in |
296 ## this Makefile as well. | 305 ## this Makefile as well. |
306 | |
307 ## We delete each directory in ${COPYDESTS} before we copy into it; | |
308 ## that way, we can reinstall over directories that have been put in | |
309 ## place with their files read-only (perhaps because they are checked | |
310 ## into RCS). In order to make this safe, we make sure that the | |
311 ## source exists and is distinct from the destination. | |
297 install: all mkdir | 312 install: all mkdir |
298 (cd lib-src; $(MAKE) install ${MFLAGS} bindir=${bindir} libdir=${libdir}) | 313 (cd lib-src; $(MAKE) install ${MFLAGS} bindir=${bindir} libdir=${libdir}) |
299 -set ${COPYDESTS} ; \ | 314 -set ${COPYDESTS} ; \ |
300 for dir in ${COPYDIR} ; do \ | 315 for dir in ${COPYDIR} ; do \ |
301 dest=$$1 ; shift ; \ | 316 dest=$$1 ; shift ; \ |
302 if [ `(cd $${dir}; /bin/pwd)` != `(cd $${dest}; /bin/pwd)` ]; then \ | 317 [ -d $${dir} ] \ |
303 (cd $${dir}; tar cf - . ) | (cd $${dest}; umask 0; tar xf - ) ; \ | 318 && [ `(cd $${dir}; /bin/pwd)` != `(cd $${dest}; /bin/pwd)` ] \ |
304 for subdir in `find $${dest} -type d ! -name RCS -print` ; do \ | 319 && (echo "Copying $${dir}..." ; \ |
305 rm -rf $${subdir}/RCS ; \ | 320 rm -rf $${dest} ; mkdir $${dest} ; \ |
306 rm -rf $${subdir}/CVS ; \ | 321 (cd $${dir}; tar cf - . ) | (cd $${dest}; umask 0; tar xf - ); \ |
307 rm -f $${subdir}/\#* ; \ | 322 for subdir in `find $${dest} -type d ! -name RCS -print` ; do \ |
308 rm -f $${subdir}/*~ ; \ | 323 rm -rf $${subdir}/RCS ; \ |
309 done ; \ | 324 rm -rf $${subdir}/CVS ; \ |
310 fi ; \ | 325 rm -f $${subdir}/\#* ; \ |
326 rm -f $${subdir}/*~ ; \ | |
327 done) ; \ | |
311 done | 328 done |
312 -(cd info ; \ | 329 -(cd info ; \ |
313 if [ ! -f ${infodir}/dir ]; then \ | 330 if [ ! -f ${infodir}/dir ]; then \ |
314 ${INSTALL_DATA} ${INSTALLFLAGS} -m 444 ./dir ${infodir}/dir ; \ | 331 ${INSTALL_DATA} ${INSTALLFLAGS} -m 444 ./dir ${infodir}/dir ; \ |
315 fi ; \ | 332 fi ; \ |
333 install.sysv: all mkdir | 350 install.sysv: all mkdir |
334 (cd lib-src; $(MAKE) install ${MFLAGS} bindir=${bindir} libdir=${libdir}) | 351 (cd lib-src; $(MAKE) install ${MFLAGS} bindir=${bindir} libdir=${libdir}) |
335 -set ${COPYDESTS} ; \ | 352 -set ${COPYDESTS} ; \ |
336 for dir in ${COPYDIR} ; do \ | 353 for dir in ${COPYDIR} ; do \ |
337 dest=$$1 ; shift ; \ | 354 dest=$$1 ; shift ; \ |
338 if [ `/bin/pwd`/$${dir} != `(cd $${dest}; /bin/pwd)` ] ; then \ | 355 [ -d $${dir} ] \ |
339 (cd $${dir}; find . -print | cpio -pdum $${dest} ) ; \ | 356 && [ `(cd $${dir}; /bin/pwd)` != `(cd $${dest}; /bin/pwd)` ] \ |
340 for subdir in `find $${dest} -type d ! -name RCS -print` ; do \ | 357 && (rm -rf $${dest} ; mkdir $${dest} ; \ |
341 rm -rf $${subdir}/RCS ; \ | 358 (cd $${dir}; find . -print | cpio -pdum $${dest} ) ; \ |
342 rm -rf $${subdir}/CVS ; \ | 359 for subdir in `find $${dest} -type d ! -name RCS -print` ; do \ |
343 rm -f $${subdir}/\#* ; \ | 360 rm -rf $${subdir}/RCS ; \ |
344 rm -f $${subdir}/*~ ; \ | 361 rm -rf $${subdir}/CVS ; \ |
345 done ; \ | 362 rm -f $${subdir}/\#* ; \ |
346 fi ; \ | 363 rm -f $${subdir}/*~ ; \ |
364 done) ; \ | |
347 done | 365 done |
348 -(cd info ; \ | 366 -(cd info ; \ |
349 if [ ! -f ${infodir}/dir ]; then \ | 367 if [ ! -f ${infodir}/dir ]; then \ |
350 cpset ./dir ${infodir} 444 bin bin ; \ | 368 cpset ./dir ${infodir} 444 bin bin ; \ |
351 fi ; \ | 369 fi ; \ |
367 install.xenix: all mkdir | 385 install.xenix: all mkdir |
368 (cd lib-src; $(MAKE) install ${MFLAGS} bindir=${bindir} libdir=${libdir}) | 386 (cd lib-src; $(MAKE) install ${MFLAGS} bindir=${bindir} libdir=${libdir}) |
369 -set ${COPYDESTS} ; \ | 387 -set ${COPYDESTS} ; \ |
370 for dir in ${COPYDIR} ; do \ | 388 for dir in ${COPYDIR} ; do \ |
371 dest=$$1 ; shift ; \ | 389 dest=$$1 ; shift ; \ |
372 if [ `/bin/pwd`/$${dir} != `(cd $${dest}; /bin/pwd)` ] ; then \ | 390 [ -d $${dir} ] \ |
373 (cd $${dir}; tar cf - . ) | (cd $${dest}; umask 0; tar xpf - ) ; \ | 391 && [ `(cd $${dir}; /bin/pwd)` != `(cd $${dest}; /bin/pwd)` ] \ |
374 for subdir in `find $${dest} -type d ! -name RCS -print` ; do \ | 392 && (rm -rf $${dest} ; mkdir $${dest} ; \ |
375 rm -rf $${subdir}/RCS ; \ | 393 (cd $${dir}; tar cf - . ) | (cd $${dest}; umask 0; tar xpf - );\ |
376 rm -rf $${subdir}/CVS ; \ | 394 for subdir in `find $${dest} -type d ! -name RCS -print` ; do \ |
377 rm -f $${subdir}/\#* ; \ | 395 rm -rf $${subdir}/RCS ; \ |
378 rm -f $${subdir}/*~ ; \ | 396 rm -rf $${subdir}/CVS ; \ |
379 done ; \ | 397 rm -f $${subdir}/\#* ; \ |
380 fi ; \ | 398 rm -f $${subdir}/*~ ; \ |
399 done) ; \ | |
381 done | 400 done |
382 -(cd info ; \ | 401 -(cd info ; \ |
383 if [ ! -f ${infodir}/dir ]; then \ | 402 if [ ! -f ${infodir}/dir ]; then \ |
384 cp ./dir ${infodir} ; \ | 403 cp ./dir ${infodir} ; \ |
385 chmod 444 ${infodir}/dir ; \ | 404 chmod 444 ${infodir}/dir ; \ |
406 install.aix: all mkdir | 425 install.aix: all mkdir |
407 (cd lib-src; $(MAKE) install ${MFLAGS} bindir=${bindir} libdir=${libdir}) | 426 (cd lib-src; $(MAKE) install ${MFLAGS} bindir=${bindir} libdir=${libdir}) |
408 -set ${COPYDESTS} ; \ | 427 -set ${COPYDESTS} ; \ |
409 for dir in ${COPYDIR} ; do \ | 428 for dir in ${COPYDIR} ; do \ |
410 dest=$$1 ; shift ; \ | 429 dest=$$1 ; shift ; \ |
411 if [ `/bin/pwd`/$${dir} != `(cd $${dest}; /bin/pwd)` ] ; then \ | 430 [ -d $${dir} ] \ |
412 (cd $${dir}; tar cf - . ) | (cd $${dest}; umask 0; tar xBf - ) ; \ | 431 && [ `(cd $${dir}; /bin/pwd)` != `(cd $${dest}; /bin/pwd)` ] \ |
413 for subdir in `find $${dest} -type d ! -name RCS -print` ; do \ | 432 && (rm -rf $${dest} ; mkdir $${dest} ; \ |
414 rm -rf $${subdir}/RCS ; \ | 433 (cd $${dir}; tar cf - . ) | (cd $${dest}; umask 0; tar xBf - );\ |
415 rm -rf $${subdir}/CVS ; \ | 434 for subdir in `find $${dest} -type d ! -name RCS -print` ; do \ |
416 rm -f $${subdir}/\#* ; \ | 435 rm -rf $${subdir}/RCS ; \ |
417 rm -f $${subdir}/*~ ; \ | 436 rm -rf $${subdir}/CVS ; \ |
418 done ; \ | 437 rm -f $${subdir}/\#* ; \ |
419 fi ; \ | 438 rm -f $${subdir}/*~ ; \ |
439 done) ; \ | |
420 done | 440 done |
421 -(cd info ; \ | 441 -(cd info ; \ |
422 if [ ! -f ${infodir}/dir ]; then \ | 442 if [ ! -f ${infodir}/dir ]; then \ |
423 ${INSTALL_DATA} ${INSTALLFLAGS} -M 444 -f ${infodir} ./dir ; \ | 443 ${INSTALL_DATA} ${INSTALLFLAGS} -M 444 -f ${infodir} ./dir ; \ |
424 fi ; \ | 444 fi ; \ |