aboutsummaryrefslogtreecommitdiffstats
path: root/lib-src
diff options
context:
space:
mode:
Diffstat (limited to 'lib-src')
-rw-r--r--lib-src/Makefile.in165
1 files changed, 100 insertions, 65 deletions
diff --git a/lib-src/Makefile.in b/lib-src/Makefile.in
index 40afa89b54c..15ba317c928 100644
--- a/lib-src/Makefile.in
+++ b/lib-src/Makefile.in
@@ -12,16 +12,68 @@
12# inherited from the environment. 12# inherited from the environment.
13SHELL = /bin/sh 13SHELL = /bin/sh
14 14
15# ==================== Things `configure' might edit ====================
16
17CC=cc
18CONFIG_CFLAGS=-g
19LOADLIBES=
20version=version-not-set
21configname=configuration-name-not-set
22
23# ==================== Where To Install Things ====================
24
25# The default location for installation. Everything is placed in
26# subdirectories of this directory. The default values for many of
27# the variables below are expressed in terms of this one, so you may
28# not need to change them.
29prefix=/usr/local
30
31# Like `prefix', but used for architecture-specific files.
32exec_prefix=${prefix}
33
34# Where to install Emacs and other binaries that people will want to
35# run directly (like etags).
36bindir=${exec_prefix}/bin
37
38# Where to install and expect executable files to be run by Emacs
39# rather than directly by users, and other architecture-dependent
40# data. ${archlibdir} is usually below this.
41libdir=${exec_prefix}/lib
42
43# Where to find the source code - setting this to anything but
44# . doesn't work yet. The source code for Emacs's C kernel is
45# expected to be in ${srcdir}/src, and the source code for Emacs's
46# utility programs is expected to be in ${srcdir}/lib-src. This is
47# set by the configure script's `--srcdir' option.
48srcdir=.
49
50# ==================== Emacs-specific directories ====================
51
52# These variables hold the values Emacs will actually use. They are
53# based on the values of the standard Make variables above.
54
55# Where to put executables to be run by Emacs rather than the user.
56# This path usually includes the Emacs version and configuration name,
57# so that multiple configurations for multiple versions of Emacs may
58# be installed at once.
59archlibdir=${libdir}/emacs/${version}/${configname}
60
61# ==================== Utility Programs for the Build ====================
62
15# Allow the user to specify the install program. 63# Allow the user to specify the install program.
16INSTALL = install 64INSTALL = install
17INSTALLFLAGS = 65INSTALLFLAGS = -c
66INSTALL_PROGRAM = ${INSTALL}
67INSTALL_DATA = ${INSTALL}
68
69# ============================= Targets ==============================
18 70
19# Things that a user might actually run, which should be installed in bindir. 71# Things that a user might actually run, which should be installed in bindir.
20INSTALLABLES = etags ctags emacsclient b2m 72INSTALLABLES = etags ctags emacsclient b2m
21 73
22# Things that Emacs runs internally, or during the build process, 74# Things that Emacs runs internally, or during the build process,
23# which should not be installed in bindir. 75# which should not be installed in bindir.
24UTILITIES= test-distrib wakeup make-docfile digest-doc sorted-doc \ 76UTILITIES= test-distrib make-path wakeup make-docfile digest-doc sorted-doc \
25 movemail cvtmail fakemail yow env emacsserver hexl timer 77 movemail cvtmail fakemail yow env emacsserver hexl timer
26 78
27# Like UTILITIES, but they're not system-dependent, and should not be 79# Like UTILITIES, but they're not system-dependent, and should not be
@@ -30,80 +82,63 @@ SCRIPTS= rcs2log vcdiff
30 82
31EXECUTABLES= ${UTILITIES} ${INSTALLABLES} ${SCRIPTS} 83EXECUTABLES= ${UTILITIES} ${INSTALLABLES} ${SCRIPTS}
32 84
33# These things are edited by ../configure; don't change anything before 85### We need to #define emacs to get the right versions of some files.
34# or including the '='; everything after that gets blown away. 86### Some other files - those shared with other GNU utilities - need
35CC=gcc 87### HAVE_CONFIG_H #defined before they know they can take advantage of
36CONFIG_CFLAGS= -g -O 88### the information in ../src/config.h.
37LOADLIBES= 89CFLAGS=${CONFIG_CFLAGS} -Demacs -DHAVE_CONFIG_H -I../src
38 90
39CFLAGS=${CONFIG_CFLAGS} -Demacs -I../src 91all: ${EXECUTABLES}
40 92
41all: ../arch-lib 93### Install the internal utilities. Until they are installed, we can
42 94### just run them directly from lib-src.
43# We use rm -f so that rm won't try to ask questions during the build. 95${archlibdir}: all
44../arch-lib: ${EXECUTABLES} 96 @echo
45 for file in ${EXECUTABLES} ; do \ 97 @echo "Installing utilities run internally by Emacs."
46 if [ -f $${file} ]; then \ 98 ./make-path ${archlibdir}
47 if [ -f ../arch-lib/$${file} ]; then \ 99 if [ `(cd ${archlibdir};/bin/pwd)` != `/bin/pwd` ]; then \
48 rm -f ../arch-lib/$${file} ; \ 100 for file in ${EXECUTABLES} ; do \
49 fi ; \ 101 cp $${file} ${archlibdir} ; \
50 ln $${file} ../arch-lib ; \ 102 chmod 755 ${archlibdir}/$${file} ; \
51 fi ; \ 103 done ; \
104 fi
105 @echo
106 @echo "Changing the owner and group of Emacs's utility programs to \`bin'."
107 @echo "(You may ignore errors here if you don't care about this.)"
108 -for file in ${EXECUTABLES} ; do \
109 chgrp bin ${archlibdir}/$${file} ; \
110 chown bin ${archlibdir}/$${file} ; \
52 done 111 done
53 112
54# We don't need to install `wakeup' explicitly, because it will be copied when 113# We don't need to install `wakeup' explicitly, because it will be copied when
55# this whole directory is copied. 114# this whole directory is copied.
56install: all 115install: ${archlibdir}
57 ${INSTALL} ${INSTALLFLAGS} -c emacsclient ${BINDIR}/emacsclient 116 @echo
58 ${INSTALL} ${INSTALLFLAGS} -c etags ${BINDIR}/etags 117 @echo "Installing utilities for users to run."
59 ${INSTALL} ${INSTALLFLAGS} -c ctags ${BINDIR}/ctags 118 for file in emacsclient etags ctags b2m ; do \
60 ${INSTALL} ${INSTALLFLAGS} -c b2m ${BINDIR}/b2m 119 cp $${file} ${bindir}/$${file}.new ; \
61 ${INSTALL} ${INSTALLFLAGS} -c -m 444 emacs.1 ${MANDIR}/emacs.${MANEXT} 120 chmod 755 ${bindir}/$${file}.new ; \
62 121 done
63install.sysv: all 122 @echo
64 -cp emacsclient ${BINDIR}/emacsclient.new 123 @echo "Changing the owner and group of utility programs to \`bin'."
65 -chmod 755 ${BINDIR}/emacsclient.new 124 @echo "(You may ignore errors here if you don't care about this.)"
66 -chgrp bin ${BINDIR}/emacsclient.new 125 -for file in emacsclient etags ctags b2m ; do \
67 -chown bin ${BINDIR}/emacsclient.new 126 chgrp bin ${bindir}/$${file}.new ; \
68 -mv ${BINDIR}/emacsclient.new ${BINDIR}/emacsclient 127 chown bin ${bindir}/$${file}.new ; \
69 -cp etags ${BINDIR}/etags.new 128 mv ${bindir}/$${file}.new ${bindir}/$${file} ; \
70 -chmod 755 ${BINDIR}/etags.new 129 done
71 -chgrp bin ${BINDIR}/etags.new
72 -chown bin ${BINDIR}/etags.new
73 -mv ${BINDIR}/etags.new ${BINDIR}/etags
74 -cp ctags ${BINDIR}/ctags.new
75 -chmod 755 ${BINDIR}/ctags.new
76 -chgrp bin ${BINDIR}/ctags.new
77 -chown bin ${BINDIR}/ctags.new
78 -mv ${BINDIR}/ctags.new ${BINDIR}/ctags
79 -cp b2m ${BINDIR}/b2m.new
80 -chmod 755 ${BINDIR}/b2m.new
81 -chgrp bin ${BINDIR}/b2m.new
82 -chown bin ${BINDIR}/b2m.new
83 -mv ${BINDIR}/b2m.new ${BINDIR}/b2m
84 -cp emacs.1 ${MANDIR}/emacs.${MANEXT}.new
85 -chmod 444 ${MANDIR}/emacs.${MANEXT}.new
86 -mv ${MANDIR}/emacs.${MANEXT}.new ${MANDIR}/emacs.${MANEXT}
87
88install.xenix:
89 cp etags ctags emacsclient ${BINDIR}
90 chmod 755 ${BINDIR}/etags ${BINDIR}/ctags
91 chmod 755 ${BINDIR}/emacsclient
92 cp b2m ${BINDIR}
93 chmod 755 ${BINDIR}/b2m
94 cp emacs.1 ${MANDIR}/emacs.${MANEXT}
95 chmod 444 ${MANDIR}/emacs.${MANEXT}
96
97 130
98clean mostlyclean: 131clean mostlyclean:
99 -rm -f ${INSTALLABLES} ${UTILITIES} core *.o 132 -rm -f ${INSTALLABLES} ${UTILITIES} core *.o
100 133
101distclean: 134distclean:
102 -rm -f ${INSTALLABLES} ${UTILITIES} *~ \#* ../etc/DOC* core *.o 135 -rm -f ${INSTALLABLES} ${UTILITIES} ../etc/DOC* core *.o
103 cd ../arch-lib; rm -f ${EXECUTABLES}
104 136
105realclean: distclean 137realclean: distclean
106 rm TAGS aixcc.c 138 -rm TAGS aixcc.c
139
140extraclean: realclean
141 -rm -f *~ \#*
107 142
108# Test the contents of the directory. 143# Test the contents of the directory.
109check: 144check: