X-Git-Url: http://git.chise.org/gitweb/?p=chise%2Fxemacs-chise.git.1;a=blobdiff_plain;f=lib-src%2FMakefile.in.in;h=12663b8e74bef5207d4cd4916e11c64d3dc26ca0;hp=9a4552ff2dad14b9dafb10c3c121740db35a9a9a;hb=83ae2cea390538b6148af611d9dae32160eb3bd4;hpb=976b002b16336930724ae22476014583ad022e7d diff --git a/lib-src/Makefile.in.in b/lib-src/Makefile.in.in index 9a4552f..12663b8 100644 --- a/lib-src/Makefile.in.in +++ b/lib-src/Makefile.in.in @@ -53,6 +53,8 @@ exec_prefix=@exec_prefix@ bindir=@bindir@ libdir=@libdir@ srcdir=@srcdir@ +datadir=@datadir@ +instvardir=@instvardir@ top_srcdir=@top_srcdir@ archlibdir=@archlibdir@ configuration=@configuration@ @@ -71,52 +73,65 @@ INSTALL_DATA = @INSTALL_DATA@ #define NOT_C_CODE #include "../src/config.h" -## Things that a user might actually run, -## which should be installed in bindir. -#ifdef WINDOWSNT -INSTALLABLES_BASE = etags ctags b2m ootags -#else -INSTALLABLES_BASE = etags ctags b2m gnuclient ootags +#ifndef WIN32_NATIVE +#define INSTALL_GNUSERV #endif -INSTALLABLE_SCRIPTS = rcs-checkin pstogif gnudoit gnuattach -#ifdef HAVE_SHLIB -#ifdef HAVE_MS_WINDOWS -INSTALLABLES = $(INSTALLABLES_BASE) runxemacs rungnuclient ellcc -#else -INSTALLABLES = $(INSTALLABLES_BASE) ellcc + +## ---------------------------------------------------------------- +## Things that a user might actually run directly, +## which should be installed in ${bindir}. + +PUBLIC_INSTALLABLE_EXES=\ +#ifdef INSTALL_GNUSERV + gnuclient\ #endif -#else -#ifdef HAVE_MS_WINDOWS -INSTALLABLES = $(INSTALLABLES_BASE) runxemacs rungnuclient -#else -INSTALLABLES = $(INSTALLABLES_BASE) +#ifdef HAVE_SHLIB + ellcc\ #endif + etags ctags b2m ootags + +PUBLIC_INSTALLABLE_SCRIPTS=\ +#ifdef INSTALL_GNUSERV + gnudoit gnuattach\ #endif + rcs-checkin +PUBLIC_INSTALLABLES = ${PUBLIC_INSTALLABLE_EXES} ${PUBLIC_INSTALLABLE_SCRIPTS} -## Things that Emacs runs internally, or during the build process, -## which should not be installed in bindir. -#ifdef WINDOWSNT -UTILITIES= make-path wakeup profile make-docfile digest-doc \ - sorted-doc movemail cvtmail yow hexl \ - mmencode +## ---------------------------------------------------------------- +## Things that XEmacs runs internally on the user's behalf, +## which should be installed in ${archlibdir}. + +PRIVATE_INSTALLABLE_EXES=\ +#ifdef INSTALL_GNUSERV + gnuserv\ +#endif +#ifdef WIN32_NATIVE + i minitar\ #else -UTILITIES= make-path wakeup profile make-docfile digest-doc \ - sorted-doc movemail cvtmail fakemail yow hexl \ - gnuserv mmencode + fakemail\ #endif -## These need to be conditional on I18N3 make-msgfile make-po + wakeup profile make-docfile digest-doc\ + sorted-doc movemail cvtmail yow hexl mmencode -## Like UTILITIES, but they are not system-dependent, and should not be -## deleted by the distclean target. GEN_SCRIPTS = rcs2log vcdiff gzip-el.sh PKG_SCRIPTS = add-big-package.sh -SCRIPTS = $(GEN_SCRIPTS) $(PKG_SCRIPTS) +PRIVATE_INSTALLABLE_SCRIPTS = $(GEN_SCRIPTS) $(PKG_SCRIPTS) + +PRIVATE_INSTALLABLES = ${PRIVATE_INSTALLABLE_EXES} ${PRIVATE_INSTALLABLE_SCRIPTS} + +## These need to be conditional on I18N3: make-msgfile make-po + +## ---------------------------------------------------------------- +## Things that XEmacs uses during the build process itself. +## Not installed. -EXECUTABLES= ${UTILITIES} ${INSTALLABLES} ${SCRIPTS} ${INSTALLABLE_SCRIPTS} +BUILD_UTILITIES = make-path make-dump-id + +EXES = ${PUBLIC_INSTALLABLE_EXES} ${PRIVATE_INSTALLABLE_EXES} ${BUILD_UTILITIES} +SCRIPTS = ${PUBLIC_INSTALLABLE_SCRIPTS} ${PRIVATE_INSTALLABLE_SCRIPTS} +PROGS = ${EXES} ${SCRIPTS} -SOURCES = COPYING ChangeLog Makefile.in.in README aixcc.lex emacs.csh \ - makedoc.com *.[chy] $(SCRIPTS) ## 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. @@ -160,7 +175,13 @@ ld_libs_general=@ld_libs_general@ ## We need to #define emacs to get the right versions of some files. -cppflags = -Demacs -I$(top_srcdir)/src -I../src $(CPPFLAGS) +## To understand the order of -I flags, consider what happens if you run +## ./configure in the source tree, and then run +## $(srcdir).2.26/configure in some other build tree. +## Where will the generated files like config.h be included from? +## This is also why you _must_ use <...> instead of "..." +## when #include'ing generated files. +cppflags = -I. -I../src -I$(srcdir) -I$(top_srcdir)/src $(CPPFLAGS) cflags = $(CFLAGS) $(cppflags) $(c_switch_general) ldflags = $(LDFLAGS) $(ld_switch_general) $(ld_libs_general) @@ -171,14 +192,15 @@ ldflags = $(LDFLAGS) $(ld_switch_general) $(ld_libs_general) .c.o: ${CC} -c $(cflags) $< -all: ${UTILITIES} ${INSTALLABLES} srcdir-symlink.stamp +.PHONY : all maybe-blessmail install uninstall check + +all: ${PROGS} ## Make symlinks for shell scripts if using --srcdir -srcdir-symlink.stamp: +${SCRIPTS}: for f in ${SCRIPTS}; do \ if test ! -r $$f; then ${LN_S} ${srcdir}/$$f $$f; fi; \ - done; \ - touch $@; + done #undef MOVEMAIL_NEEDS_BLESSING #if !defined (MAIL_USE_FLOCK) && ! defined (MAIL_USE_LOCKF) @@ -216,56 +238,45 @@ ${archlibdir}: all @echo; echo "Installing utilities run internally by XEmacs." ./make-path ${archlibdir} if test "`(cd ${archlibdir} && $(pwd))`" != "`$(pwd)`"; then \ - for f in ${UTILITIES}; do \ + for f in ${PRIVATE_INSTALLABLE_EXES}; do \ (cd .. && $(INSTALL_PROGRAM) lib-src/$$f ${archlibdir}/$$f) ; \ done ; \ fi if test "`(cd ${archlibdir} && $(pwd))`" \ != "`(cd ${srcdir} && $(pwd))`"; then \ - for f in ${SCRIPTS}; do \ + for f in ${PRIVATE_INSTALLABLE_SCRIPTS}; do \ (cd .. && $(INSTALL_PROGRAM) ${srcdir}/$$f ${archlibdir}/$$f); \ done ; \ fi -## We do not need to install "wakeup" explicitly, because it will be -## copied when this whole directory is copied. -.PHONY : all maybe-blessmail install uninstall install: ${archlibdir} @echo; echo "Installing utilities for users to run." - for file in ${INSTALLABLES} ; do \ + for file in ${PUBLIC_INSTALLABLE_EXES} ; do \ (cd .. && $(INSTALL_PROGRAM) lib-src/$${file} ${bindir}/$${file}) ; \ done - for file in ${INSTALLABLE_SCRIPTS} ; do \ + for file in ${PUBLIC_INSTALLABLE_SCRIPTS} ; do \ (cd .. && $(INSTALL_PROGRAM) ${srcdir}/$${file} ${bindir}/$${file}) ; \ done uninstall: - (cd ${bindir} && \ - $(RM) ${INSTALLABLES} ${INSTALLABLE_SCRIPTS}) - (cd ${archlibdir} && \ - $(RM) ${UTILITIES} ${INSTALLABLES} ${SCRIPTS} ${INSTALLABLE_SCRIPTS}) + cd ${bindir} && $(RM) ${PUBLIC_INSTALLABLES} + cd ${archlibdir} && $(RM) ${PRIVATE_INSTALLABLES} .PHONY: mostlyclean clean distclean realclean extraclean mostlyclean: $(RM) *.o *.i core clean: mostlyclean - $(RM) ${INSTALLABLES} ${UTILITIES} *.exe + $(RM) ${EXES} *.exe distclean: clean - $(RM) DOC *.tab.c *.tab.h aixcc.c TAGS ellcc.h + $(RM) DOC *.tab.c *.tab.h TAGS ellcc.h $(RM) GNUmakefile Makefile Makefile.in blessmail config.values realclean: distclean extraclean: distclean $(RM) *~ \#* -.PHONY: unlock relock check -unlock: - chmod u+w $(SOURCES) -relock: - chmod u-w $(SOURCES) - ## Test the contents of the directory. check: - @echo "We don't have any tests for XEmacs yet." + @echo "We don't have any tests for lib-src yet." TAGS: etags etags *.[ch] @@ -276,50 +287,29 @@ getopt.o: ${srcdir}/getopt.c ${srcdir}/getopt.h ${CC} -c $(cflags) ${srcdir}/getopt.c getopt1.o: ${srcdir}/getopt1.c ${srcdir}/getopt.h ${CC} -c $(cflags) ${srcdir}/getopt1.c -alloca.o: ${srcdir}/../src/alloca.c +alloca.o: ${top_srcdir}/src/alloca.c ${CC} -c $(cflags) ${srcdir}/../src/alloca.c -regex.o: ${srcdir}/../src/regex.c ${srcdir}/../src/regex.h - $(CC) -c `echo $(cflags) | sed 's/-Demacs/ /'` \ - -DINHIBIT_STRING_HEADER ${srcdir}/../src/regex.c +regex.o: ${srcdir}/../src/regex.c ${top_srcdir}/src/regex.h + $(CC) -c $(cflags) \ + -DINHIBIT_STRING_HEADER ${top_srcdir}/src/regex.c -etags_args = -I. $(cflags) -I${srcdir} -I${srcdir}/../src \ - -DVERSION='"${version}"' ${srcdir}/etags.c \ +etags_args = $(cflags) -DVERSION='"${version}"' ${srcdir}/etags.c \ $(GETOPTOBJS) regex.o $(ldflags) -etags_deps = ${srcdir}/etags.c $(GETOPTDEPS) regex.o ../src/config.h +etags_deps = ${srcdir}/etags.c $(GETOPTDEPS) regex.o ../src/config.h etags: ${etags_deps} $(CC) ${etags_args} -o $@ -ellcc_args = -I. $(cflags) -I${srcdir} -I${srcdir}/../src \ - ${srcdir}/ellcc.c $(ldflags) +ellcc_args = $(cflags) ${srcdir}/ellcc.c $(ldflags) ellcc_deps = ${srcdir}/ellcc.c ellcc.h ../src/config.h ellcc: ${ellcc_deps} $(CC) ${ellcc_args} -o $@ -run_args = -I. $(cflags) -I${srcdir} -I${srcdir}/../src \ - -DVERSION='"${version}"' ${srcdir}/run.c \ - $(ldflags) -Wl,--subsystem,windows -e _mainCRTStartup -run_deps = ${srcdir}/run.c ${srcdir}/run.h ${srcdir}/run.rc \ - ${srcdir}/../nt/xemacs.ico ${srcdir}/../nt/file.ico \ - ${srcdir}/../nt/lisp.ico - -run: ${run_deps} - windres --include-dir ${srcdir}/../nt -i run.rc -o run_res.o - $(CC) run_res.o ${run_args} -o $@ - strip $@.exe - -runxemacs: run - cp run.exe $@.exe - -rungnuclient: run - cp run.exe $@.exe - -ootags_args = -I. $(cflags) -I${srcdir} -I${srcdir}/../src \ - -DVERSION='"${version}"' ${srcdir}/ootags.c \ +ootags_args = $(cflags) -DVERSION='"${version}"' ${srcdir}/ootags.c \ $(GETOPTOBJS) regex.o $(ldflags) -ootags_deps = ${srcdir}/ootags.c $(GETOPTDEPS) regex.o ../src/config.h +ootags_deps = ${srcdir}/ootags.c $(GETOPTDEPS) regex.o ../src/config.h ootags: ${ootags_deps} $(CC) ${ootags_args} -o $@ @@ -339,7 +329,7 @@ make-docfile: ${srcdir}/make-docfile.c $(CC) $(cflags) ${srcdir}/make-docfile.c $(ldflags) -o $@ digest-doc: ${srcdir}/digest-doc.c - $(CC) $(cflags) ${srcdir}/digest-doc.c $(ldflags) -o $@ + $(CC) -Demacs $(cflags) ${srcdir}/digest-doc.c $(ldflags) -o $@ sorted-doc: ${srcdir}/sorted-doc.c $(CC) $(cflags) ${srcdir}/sorted-doc.c $(ldflags) -o $@ @@ -361,6 +351,12 @@ fakemail: ${srcdir}/fakemail.c ../src/config.h yow: ${srcdir}/yow.c ../src/paths.h $(CC) $(cflags) ${srcdir}/yow.c $(ldflags) -o $@ +i: ${srcdir}/i.c + $(CC) $(cflags) ${srcdir}/i.c $(ldflags) -o $@ + +minitar: ${srcdir}/../nt/minitar.c + $(CC) $(cflags) ${srcdir}/../nt/minitar.c $(ldflags) -lz -o $@ + hexl: ${srcdir}/hexl.c $(CC) $(cflags) ${srcdir}/hexl.c $(ldflags) -o $@ @@ -370,6 +366,9 @@ make-msgfile: ${srcdir}/make-msgfile.c make-po: ${srcdir}/make-po.c $(CC) $(cflags) ${srcdir}/make-po.c $(ldflags) -o $@ +make-dump-id: ${srcdir}/make-dump-id.c + $(CC) $(cflags) ${srcdir}/make-dump-id.c $(ldflags) -o $@ + cflags_gnuserv = $(CFLAGS) $(cppflags) $(c_switch_all) ldflags_gnuserv = $(LDFLAGS) $(ld_switch_all) @libs_xauth@ $(ld_libs_general) gnuslib.o: ${srcdir}/gnuslib.c ${srcdir}/gnuserv.h ../src/config.h @@ -389,13 +388,4 @@ mmencode : ${srcdir}/mmencode.c ## because XEmacs provides built-in timer facilities. make-path: ${srcdir}/make-path.c ../src/config.h - $(CC) $(cflags) ${srcdir}/make-path.c -o $@ - -## These are NOT included in INSTALLABLES or UTILITIES. -## See ../src/Makefile.in.in. -aixcc: ${srcdir}/aixcc.c - $(CC) $(cflags) ${srcdir}/aixcc.c -o $@ - -aixcc.c: ${srcdir}/aixcc.lex - lex ${srcdir}/aixcc.lex - mv lex.yy.c aixcc.c + $(CC) -Demacs $(cflags) ${srcdir}/make-path.c -o $@