X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/c93341d5410142fb5fa460535b3261f9fa126814..d2251bbf79c3a3c7739f0813ac85c0f99d295d6d:/lib-src/Makefile.in diff --git a/lib-src/Makefile.in b/lib-src/Makefile.in index 6c4b35bbfb..44e8089c4f 100644 --- a/lib-src/Makefile.in +++ b/lib-src/Makefile.in @@ -1,54 +1,71 @@ -# DIST: This is the distribution Makefile for Emacs. configure can -# DIST: make most of the changes to this file you might want, so try -# DIST: that first. +# Makefile for lib-src subdirectory in GNU Emacs. +# Copyright (C) 1985, 1987, 1988, 1993, 1994 Free Software Foundation, Inc. -# add -DUSG for SysV movemail and timer -# For Xenix, add the following for movemail: -# LOADLIBES= -lx -# For Mips, the following is needed for who knows what. -# LOADLIBES = -lmld /usr/bsd43/usr/lib/libc.a +# This file is part of GNU Emacs. + +# GNU Emacs is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# GNU Emacs is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with GNU Emacs; see the file COPYING. If not, write to +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. # Avoid trouble on systems where the `SHELL' variable might be # inherited from the environment. SHELL = /bin/sh -# ==================== Things `configure' might edit ==================== +# ==================== Things `configure' will edit ==================== -CC=cc -CFLAGS=-g -ALLOCA= -C_SWITCH_SYSTEM= -LOADLIBES= -version=version-not-set -configname=configuration-name-not-set +CC=@CC@ +CFLAGS=@CFLAGS@ +ALLOCA=@ALLOCA@ +YACC=@YACC@ +version=@version@ +configuration=@configuration@ # ==================== Where To Install Things ==================== # The default location for installation. Everything is placed in # subdirectories of this directory. The default values for many of # the variables below are expressed in terms of this one, so you may -# not need to change them. -prefix=/usr/local +# not need to change them. This is set with the --prefix option to +# `../configure'. +prefix=@prefix@ -# Like `prefix', but used for architecture-specific files. -exec_prefix=${prefix} +# Like `prefix', but used for architecture-specific files. This is +# set with the --exec-prefix option to `../configure'. +exec_prefix=@exec_prefix@ # Where to install Emacs and other binaries that people will want to -# run directly (like etags). -bindir=${exec_prefix}/bin +# run directly (like etags). This is set with the --bindir option +# to `../configure'. +bindir=@bindir@ # Where to install and expect executable files to be run by Emacs # rather than directly by users, and other architecture-dependent -# data. ${archlibdir} is usually below this. -libdir=${exec_prefix}/lib +# data. ${archlibdir} is usually below this. This is set with the +# --libexecdir option to `../configure'. +libexecdir=@libexecdir@ + +# Where to find the source code. This is set by the configure +# script's `--srcdir' option. However, the value of ${srcdir} in +# this makefile is not identical to what was specified with --srcdir, +# since the variable here has `/lib-src' added at the end. -# Where to find the source code. This is -# set by the configure script's `--srcdir' option. -# However, the value of ${srcdir} in this makefile -# is not identical to what was specified with --srcdir. -# The variable here has `/lib-src' added at the end. -srcdir=@srcdir@/lib-src -VPATH=@srcdir@/lib-src +# We use $(srcdir) explicitly in dependencies so as not to depend on VPATH. +srcdir=@srcdir@ +VPATH=@srcdir@ + +# The top-level source directory, also set by configure. +top_srcdir=@top_srcdir@ # ==================== Emacs-specific directories ==================== @@ -58,115 +75,246 @@ VPATH=@srcdir@/lib-src # Where to put executables to be run by Emacs rather than the user. # This path usually includes the Emacs version and configuration name, # so that multiple configurations for multiple versions of Emacs may -# be installed at once. -archlibdir=${libdir}/emacs/${version}/${configname} - -# ====================== Developer's configuration ======================= - -# The following assignments make sense if you're running Emacs on a single -# machine, one version at a time, and you want changes to the lisp and etc -# directories in the source tree to show up immediately in your working -# environment. It saves a great deal of disk space by not duplicating the -# lisp and etc directories. -# -# archlibdir=${srcdir}/bin +# be installed at once. This can be set with the --archlibdir option +# to `../configure'. +archlibdir=@archlibdir@ -# ==================== Utility Programs for the Build ==================== +# ==================== Utility Programs for the Build ================= -# Allow the user to specify the install program. -INSTALL = install -INSTALLFLAGS = -c -INSTALL_PROGRAM = ${INSTALL} -INSTALL_DATA = ${INSTALL} +# ../configure figures out the correct values for these. +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ +# By default, we uphold the dignity of our programs. +INSTALL_STRIP = -# ============================= Targets ============================== +# ========================== Lists of Files =========================== -# Things that a user might actually run, which should be installed in bindir. -INSTALLABLES = etags ctags emacsclient b2m -INSTALLABLE_SCRIPTS = rcs-checkin +# Things that a user might actually run, +# which should be installed in bindir. +INSTALLABLES = etags ctags emacsclient b2m ebrowse +INSTALLABLE_SCRIPTS = rcs-checkin grep-changelog # Things that Emacs runs internally, or during the build process, -# which should not be installed in bindir. -UTILITIES= test-distrib make-path wakeup make-docfile digest-doc sorted-doc \ - movemail cvtmail fakemail yow env emacsserver hexl timer +# which should not be installed in bindir. +UTILITIES= profile digest-doc \ + sorted-doc movemail cvtmail fakemail yow emacsserver hexl + +DONT_INSTALL= test-distrib make-docfile # Like UTILITIES, but they're not system-dependent, and should not be -# deleted by the distclean target. +# deleted by the distclean target. SCRIPTS= rcs2log vcdiff EXECUTABLES= ${UTILITIES} ${INSTALLABLES} ${SCRIPTS} ${INSTALLABLE_SCRIPTS} -SOURCES = COPYING ChangeLog Makefile.in README aixcc.lex emacs.csh \ +SOURCES = COPYING ChangeLog Makefile.in README emacs.csh \ makedoc.com *.[chy] rcs2log vcdiff -### We need to #define emacs to get the right versions of some files. -### Some other files - those shared with other GNU utilities - need -### HAVE_CONFIG_H #defined before they know they can take advantage of -### the information in ../src/config.h. -ALL_CFLAGS = ${C_SWITCH_SYSTEM} -Demacs -DHAVE_CONFIG_H \ - -I${srcdir} -I${srcdir}/../src -I../src ${CFLAGS} +# Additional -D flags for movemail (add to MOVE_FLAGS if desired): +# MAIL_USE_POP Support mail retrieval from a POP mailbox. +# MAIL_USE_MMDF Support MMDF mailboxes. +# MAIL_USE_FLOCK Use flock for file locking (see the comments +# about locking in movemail.c) +# MAIL_UNLINK_SPOOL Unlink the user's spool mailbox after reading +# it (instead of just emptying it). +# KERBEROS Support Kerberized POP. +# KRB5 Support Kerberos Version 5 pop instead of +# Version 4 (define this in addition to +# KERBEROS). +# HESIOD Support Hesiod lookups of user mailboxes. +# MAILHOST A string, the host name of the default POP +# mail host for the site. +MOVE_FLAGS= + +# ========================== start of cpp stuff ======================= +/* From here on, comments must be done in C syntax. */ + +#define NO_SHORTNAMES +#define THIS_IS_MAKEFILE +#define NOT_C_CODE +#include "../src/config.h" + +/* We won't really call alloca; + don't let the file name alloca.c get messed up. */ +#ifdef alloca +#undef alloca +#endif + +/* Some machines don't find the standard C libraries in the usual place. */ +#ifndef ORDINARY_LINK +#ifndef LIB_STANDARD_LIBSRC +#define LIB_STANDARD_LIBSRC -lc +#endif +#else +#ifndef LIB_STANDARD_LIBSRC +#define LIB_STANDARD_LIBSRC +#endif +#endif + +/* Some s/SYSTEM.h files define this to request special libraries. */ +#ifndef LIBS_SYSTEM +#define LIBS_SYSTEM +#endif + +/* Some m/MACHINE.h files define this to request special libraries. */ +#ifndef LIBS_MACHINE +#define LIBS_MACHINE +#endif + +#ifndef C_SWITCH_SYSTEM +#define C_SWITCH_SYSTEM +#endif + +#ifndef C_SWITCH_MACHINE +#define C_SWITCH_MACHINE +#endif + +#undef MOVEMAIL_NEEDS_BLESSING +#ifndef MAIL_USE_FLOCK +#ifndef MAIL_USE_LOCKF +#define MOVEMAIL_NEEDS_BLESSING +#endif +#endif + +#ifdef MOVEMAIL_NEEDS_BLESSING +#define BLESSMAIL blessmail +#else +#define BLESSMAIL +#endif + +#ifdef KERBEROS +# ifdef HAVE_LIBKRB + KRB4LIB = -lkrb +# else +# ifdef HAVE_LIBKRB4 + KRB4LIB = -lkrb4 +# endif +# endif +# ifdef HAVE_LIBDES + DESLIB = -ldes +# else +# ifdef HAVE_LIBDES425 + DESLIB = -ldes425 +# endif +# endif +# ifdef HAVE_LIBKRB5 + KRB5LIB = -lkrb5 +# endif +# ifdef HAVE_LIBCRYPTO + CRYPTOLIB = -lcrypto +# endif +# ifdef HAVE_LIBCOM_ERR + COM_ERRLIB = -lcom_err +# endif +#endif /* KERBEROS */ + +/* If HESIOD is defined, set this to "-lhesiod". */ +HESIODLIB= + +MOVE_LIBS=$(KRB4LIB) $(DESLIB) $(KRB5LIB) $(CRYPTOLIB) $(COM_ERRLIB) $(HESIODLIB) + +#ifdef HAVE_LIBMAIL +LIBMAIL=-lmail +#endif + +LOADLIBES=LIBS_SYSTEM LIBS_MACHINE LIB_STANDARD_LIBSRC + +/* We need to #define emacs to get the right versions of some files. + Some other files - those shared with other GNU utilities - need + HAVE_CONFIG_H #defined before they know they can take advantage of + the information in ../src/config.h. */ +ALL_CFLAGS = C_SWITCH_SYSTEM C_SWITCH_MACHINE -DHAVE_CONFIG_H \ + -I. -I../src -I${srcdir} -I${srcdir}/../src ${LDFLAGS} ${CPPFLAGS} ${CFLAGS} +LINK_CFLAGS = C_SWITCH_SYSTEM C_SWITCH_MACHINE -DHAVE_CONFIG_H \ + -I. -I../src -I${srcdir} -I${srcdir}/../src ${LDFLAGS} ${CFLAGS} +CPP_CFLAGS = C_SWITCH_SYSTEM C_SWITCH_MACHINE -DHAVE_CONFIG_H \ + -I. -I../src -I${srcdir} -I${srcdir}/../src ${CPPFLAGS} ${CFLAGS} +/* This was all of CPP_CFLAGS except -Demacs. + Now that -Demacs has been deleted from CPP_CFLAGS, + this is actually the same as CPP_CFLAGS, but let's not delete it yet. */ +BASE_CFLAGS = C_SWITCH_SYSTEM C_SWITCH_MACHINE -DHAVE_CONFIG_H \ + -I. -I../src -I${srcdir} -I${srcdir}/../src ${CPPFLAGS} ${CFLAGS} + +/* This is the default compilation command. + But we should never rely on it, because some make version + failed to find it for getopt.o. + Using an explicit command made it work. */ .c.o: - ${CC} -c ${CPPFLAGS} ${ALL_CFLAGS} $< - -all: ${EXECUTABLES} - -### Install the internal utilities. Until they are installed, we can -### just run them directly from lib-src. + ${CC} -c ${CPP_CFLAGS} $< + +all: ${DONT_INSTALL} ${UTILITIES} ${INSTALLABLES} + +#ifdef MOVEMAIL_NEEDS_BLESSING +blessmail: + ../src/emacs -batch -l $(srcdir)/../lisp/mail/blessmail.el + chmod +x blessmail +#endif + +maybe-blessmail: BLESSMAIL +#ifdef MOVEMAIL_NEEDS_BLESSING +/* Don't charge ahead and do it! Let the installer decide. + ./blessmail ${archlibdir}/movemail */ + @if [ `wc -l