X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/e8757f091a502b858912a4c267210e009227d6e6..d4166523bc8c4565cde24fcda56d3d5cdabb70ce:/lib-src/Makefile.in diff --git a/lib-src/Makefile.in b/lib-src/Makefile.in index c5acca2885..fe1900a2a4 100644 --- a/lib-src/Makefile.in +++ b/lib-src/Makefile.in @@ -1,5 +1,6 @@ -# Makefile for lib-src subdirectory in GNU Emacs. -# Copyright (C) 1985, 1987-1988, 1993-1994, 2001-2012 +### @configure_input@ + +# Copyright (C) 1985, 1987-1988, 1993-1994, 2001-2013 # Free Software Foundation, Inc. # This file is part of GNU Emacs. @@ -39,6 +40,7 @@ C_SWITCH_MACHINE=@C_SWITCH_MACHINE@ PROFILING_CFLAGS = @PROFILING_CFLAGS@ WARN_CFLAGS = @WARN_CFLAGS@ WERROR_CFLAGS = @WERROR_CFLAGS@ +UPDATE_MANIFEST = @UPDATE_MANIFEST@ # Program name transformation. TRANSFORM = @program_transform_name@ @@ -113,8 +115,11 @@ MKDIR_P = @MKDIR_P@ # ========================== Lists of Files =========================== +# emacsclientw.exe for MinGW, empty otherwise +CLIENTW = @CLIENTW@ + # Things that a user might actually run, which should be installed in bindir. -INSTALLABLES = etags${EXEEXT} ctags${EXEEXT} emacsclient${EXEEXT} \ +INSTALLABLES = etags${EXEEXT} ctags${EXEEXT} emacsclient${EXEEXT} $(CLIENTW) \ ebrowse${EXEEXT} INSTALLABLE_SCRIPTS = grep-changelog @@ -128,7 +133,7 @@ DONT_INSTALL= test-distrib${EXEEXT} make-docfile${EXEEXT} # Like UTILITIES, but they're not system-dependent, and should not be # deleted by the distclean target. -SCRIPTS= rcs2log +SCRIPTS= rcs2log $(UPDATE_MANIFEST) # All files that are created by the linker, i.e., whose names end in ${EXEEXT}. EXE_FILES = ${INSTALLABLES} ${UTILITIES} ${DONT_INSTALL} @@ -143,17 +148,17 @@ MOVE_FLAGS= ## Empty if either MAIL_USE_FLOCK or MAIL_USE_LOCKF, else need-blessmail. BLESSMAIL_TARGET=@BLESSMAIL_TARGET@ -## -lkrb if HAVE_LIBKRB or -lkrb4 if HAVE_LIBKRB4 +## -lkrb or -lkrb4 if needed KRB4LIB=@KRB4LIB@ -## -ldes if HAVE_LIBDES or -ldes425 if HAVE_LIBDES425 +## -ldes or -ldes425 if needed DESLIB=@DESLIB@ -## -lkrb5 if HAVE_LIBKRB5 +## -lkrb5 if needed KRB5LIB=@KRB5LIB@ -## -lk5crypto if HAVE_LIBK5CRYPTO or -lcrypto if HAVE_LIBCRYPTO +## -lk5crypto or -lcrypto if needed CRYPTOLIB=@CRYPTOLIB@ -## -lcom_err if HAVE_LIBCOM_ERR +## -lcom_err if needed COM_ERRLIB=@COM_ERRLIB@ -## -lhesiod if HAVE_LIBHESIOD +## -lhesiod if needed LIBHESIOD=@LIBHESIOD@ ## -lresolv if HAVE_LIBRESOLV LIBRESOLV=@LIBRESOLV@ @@ -161,10 +166,23 @@ LIBRESOLV=@LIBRESOLV@ LIBS_MAIL=@LIBS_MAIL@ ## empty or -lrt or -lposix4 if HAVE_CLOCK_GETTIME LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@ +## empty or -lrt or -lposix4 if HAVE_FDATASYNC +LIB_FDATASYNC = @LIB_FDATASYNC@ +## empty or -lwsock2 for MinGW +LIB_WSOCK32=@LIB_WSOCK32@ ## Extra libraries to use when linking movemail. LIBS_MOVE = $(LIBS_MAIL) $(KRB4LIB) $(DESLIB) $(KRB5LIB) $(CRYPTOLIB) \ - $(COM_ERRLIB) $(LIBHESIOD) $(LIBRESOLV) + $(COM_ERRLIB) $(LIBHESIOD) $(LIBRESOLV) $(LIB_WSOCK32) + +## Extra libraries when linking emacsclient +## (empty or -lcomctl32 for MinGW) +LIBS_ECLIENT = @LIBS_ECLIENT@ + +## Extra object files for linking for MinGW +NTLIB = @NTLIB@ +CLIENTRES = @CLIENTRES@ +WINDRES = @WINDRES@ ## Some systems define this to request special libraries. LIBS_SYSTEM = @LIBS_SYSTEM@ @@ -225,7 +243,7 @@ $(DESTDIR)${archlibdir}: all umask 022; ${MKDIR_P} $(DESTDIR)${gamedir}; \ touch $(DESTDIR)${gamedir}/snake-scores; \ touch $(DESTDIR)${gamedir}/tetris-scores - -if chown ${gameuser} $(DESTDIR)${archlibdir}/update-game-score && chmod u+s $(DESTDIR)${archlibdir}/update-game-score; then \ + -if chown ${gameuser} $(DESTDIR)${archlibdir}/update-game-score${EXEEXT} && chmod u+s $(DESTDIR)${archlibdir}/update-game-score${EXEEXT}; then \ chown ${gameuser} $(DESTDIR)${gamedir}; \ chmod u=rwx,g=rwx,o=rx $(DESTDIR)${gamedir}; \ fi @@ -244,24 +262,25 @@ install: $(DESTDIR)${archlibdir} @echo "Installing utilities for users to run." umask 022; ${MKDIR_P} $(DESTDIR)${bindir} for file in ${INSTALLABLES} ; do \ - $(INSTALL_PROGRAM) $(INSTALL_STRIP) $${file} $(DESTDIR)${bindir}/`echo $${file} | sed '$(TRANSFORM)'` ; \ + $(INSTALL_PROGRAM) $(INSTALL_STRIP) $${file} $(DESTDIR)${bindir}/`echo $${file} | sed -e 's/${EXEEXT}$$//' -e '$(TRANSFORM)'`${EXEEXT} ; \ done for file in ${INSTALLABLE_SCRIPTS} ; do \ $(INSTALL_SCRIPT) ${srcdir}/$${file} $(DESTDIR)${bindir}/`echo $${file} | sed '$(TRANSFORM)'` ; \ done uninstall: - (cd $(DESTDIR)${bindir}; \ - for file in ${INSTALLABLES} ${INSTALLABLE_SCRIPTS}; do \ + for file in ${INSTALLABLES}; do \ + rm -f $(DESTDIR)${bindir}/`echo $${file} | sed -e 's/${EXEEXT}$$//' -e '$(TRANSFORM)'`${EXEEXT} ; \ + done + for file in ${INSTALLABLE_SCRIPTS}; do \ rm -f $(DESTDIR)${bindir}/`echo $${file} | sed '$(TRANSFORM)'` ; \ - done) + done if [ -d $(DESTDIR)${archlibdir} ]; then \ - (cd $(DESTDIR)${archlibdir} && \ - rm -f ${UTILITIES} ${INSTALLABLES} ${SCRIPTS} ${INSTALLABLE_SCRIPTS}) \ + (cd $(DESTDIR)${archlibdir} && rm -f ${UTILITIES} ${SCRIPTS}) \ fi mostlyclean: - -rm -f core *.o + -rm -f core *.o *.res clean: mostlyclean -rm -f ${EXE_FILES} @@ -289,7 +308,7 @@ TAGS: etags${EXEEXT} ## distribute Emacs. If they were clobbered, all the .elc files were ## clobbered too. test-distrib${EXEEXT}: ${srcdir}/test-distrib.c - $(CC) ${ALL_CFLAGS} -o test-distrib ${srcdir}/test-distrib.c + $(CC) ${ALL_CFLAGS} -o test-distrib${EXEEXT} ${srcdir}/test-distrib.c ./test-distrib ${srcdir}/testfile ../lib/libgnu.a: $(config_h) @@ -299,47 +318,68 @@ regex.o: $(srcdir)/../src/regex.c $(srcdir)/../src/regex.h $(config_h) ${CC} -c ${CPP_CFLAGS} -DCONFIG_BROKETS -DINHIBIT_STRING_HEADER \ ${srcdir}/../src/regex.c -etags${EXEEXT}: ${srcdir}/etags.c regex.o $(config_h) +etags${EXEEXT}: ${srcdir}/etags.c regex.o $(NTLIB) $(config_h) $(CC) ${ALL_CFLAGS} -DEMACS_NAME="\"GNU Emacs\"" \ -DVERSION="\"${version}\"" ${srcdir}/etags.c \ - regex.o $(LOADLIBES) -o etags + regex.o $(LOADLIBES) $(NTLIB) -o etags${EXEEXT} -ebrowse${EXEEXT}: ${srcdir}/ebrowse.c ${srcdir}/../lib/min-max.h $(config_h) +ebrowse${EXEEXT}: ${srcdir}/ebrowse.c ${srcdir}/../lib/min-max.h $(NTLIB) \ + $(config_h) $(CC) ${ALL_CFLAGS} -DVERSION="\"${version}\"" \ - ${srcdir}/ebrowse.c $(LOADLIBES) -o ebrowse + ${srcdir}/ebrowse.c $(LOADLIBES) $(NTLIB) -o ebrowse${EXEEXT} ## We depend on etags to assure that parallel makes do not write two ## etags.o files on top of each other. ctags${EXEEXT}: etags${EXEEXT} $(CC) ${ALL_CFLAGS} -DCTAGS -DEMACS_NAME="\"GNU Emacs\"" \ -DVERSION="\"${version}\"" ${srcdir}/etags.c \ - regex.o $(LOADLIBES) -o ctags + regex.o $(LOADLIBES) $(NTLIB) -o ctags${EXEEXT} -profile${EXEEXT}: ${srcdir}/profile.c $(config_h) +profile${EXEEXT}: ${srcdir}/profile.c $(NTLIB) $(config_h) $(CC) ${ALL_CFLAGS} ${srcdir}/profile.c \ - $(LOADLIBES) $(LIB_CLOCK_GETTIME) -o profile + $(LOADLIBES) $(NTLIB) $(LIB_CLOCK_GETTIME) -o profile${EXEEXT} -make-docfile${EXEEXT}: ${srcdir}/make-docfile.c $(config_h) - $(CC) ${ALL_CFLAGS} ${srcdir}/make-docfile.c $(LOADLIBES) \ - -o make-docfile +make-docfile${EXEEXT}: ${srcdir}/make-docfile.c $(NTLIB) $(config_h) + $(CC) ${ALL_CFLAGS} ${srcdir}/make-docfile.c $(LOADLIBES) $(NTLIB) \ + -o make-docfile${EXEEXT} -movemail${EXEEXT}: ${srcdir}/movemail.c pop.o $(config_h) +movemail${EXEEXT}: ${srcdir}/movemail.c pop.o $(NTLIB) $(config_h) $(CC) ${ALL_CFLAGS} ${MOVE_FLAGS} ${srcdir}/movemail.c pop.o \ - $(LOADLIBES) $(LIBS_MOVE) -o movemail + $(LOADLIBES) $(NTLIB) $(LIBS_MOVE) -o movemail${EXEEXT} -pop.o: ${srcdir}/pop.c ${srcdir}/../lib/min-max.h $(config_h) +pop.o: ${srcdir}/pop.c ${srcdir}/pop.h ${srcdir}/../lib/min-max.h $(config_h) $(CC) -c ${CPP_CFLAGS} ${MOVE_FLAGS} ${srcdir}/pop.c -emacsclient${EXEEXT}: ${srcdir}/emacsclient.c $(config_h) +emacsclient${EXEEXT}: ${srcdir}/emacsclient.c $(NTLIB) $(config_h) $(CC) ${ALL_CFLAGS} ${srcdir}/emacsclient.c \ - -DVERSION="\"${version}\"" \ - $(LOADLIBES) -o emacsclient + -DVERSION="\"${version}\"" $(NTLIB) $(LOADLIBES) $(LIB_FDATASYNC) \ + $(LIB_WSOCK32) $(LIBS_ECLIENT) -o emacsclient${EXEEXT} + +emacsclientw${EXEEXT}: ${srcdir}/emacsclient.c $(NTLIB) $(CLIENTRES) $(config_h) + $(CC) ${ALL_CFLAGS} $(CLIENTRES) -mwindows ${srcdir}/emacsclient.c \ + -DVERSION="\"${version}\"" $(LOADLIBES) $(LIB_FDATASYNC) \ + $(LIB_WSOCK32) $(LIBS_ECLIENT) -o emacsclientw${EXEEXT} + +NTINC = ${srcdir}/../nt/inc +NTDEPS = $(NTINC)/ms-w32.h $(NTINC)/sys/stat.h $(NTINC)/inttypes.h \ + $(NTINC)/stdint.h $(NTINC)/pwd.h $(NTINC)/sys/time.h $(NTINC)/stdbool.h \ + $(NTINC)/sys/wait.h $(NTINC)/unistd.h $(NTINC)/sys/file.h $(NTINC)/netdb.h -hexl${EXEEXT}: ${srcdir}/hexl.c $(config_h) - $(CC) ${ALL_CFLAGS} ${srcdir}/hexl.c $(LOADLIBES) -o hexl +# The dependency on $(NTDEPS) is a trick intended to cause recompile of +# programs on MinGW whenever some private header in nt/inc is modified. +ntlib.o: ${srcdir}/ntlib.c ${srcdir}/ntlib.h $(NTDEPS) + $(CC) -c ${CPP_CFLAGS} ${srcdir}/ntlib.c -update-game-score${EXEEXT}: ${srcdir}/update-game-score.c $(config_h) +hexl${EXEEXT}: ${srcdir}/hexl.c $(NTLIB) $(config_h) + $(CC) ${ALL_CFLAGS} ${srcdir}/hexl.c $(LOADLIBES) -o hexl${EXEEXT} + +update-game-score${EXEEXT}: ${srcdir}/update-game-score.c $(NTLIB) $(config_h) $(CC) ${ALL_CFLAGS} -DHAVE_SHARED_GAME_DIR="\"$(gamedir)\"" \ - ${srcdir}/update-game-score.c $(LOADLIBES) -o update-game-score + ${srcdir}/update-game-score.c $(LOADLIBES) $(NTLIB) \ + -o update-game-score${EXEEXT} + +emacsclient.res: $(NTINC)/../emacsclient.rc + $(WINDRES) -O coff --include-dir=$(NTINC)/.. -o emacsclient.res \ + $(NTINC)/../emacsclient.rc ## Makefile ends here.