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 ; \