# HG changeset patch # User jwe # Date 893391636 0 # Node ID c925de13bb221f07a5646d43a802d4504a0294b7 # Parent 7050b5006ef9a6ffe3a7f27c985a1075ced54c64 [project @ 1998-04-24 04:20:36 by jwe] diff --git a/kpathsea/make/ChangeLog b/kpathsea/make/ChangeLog --- a/kpathsea/make/ChangeLog +++ b/kpathsea/make/ChangeLog @@ -1,3 +1,149 @@ +Thu Mar 12 20:22:00 1998 Olaf Weber + + * rdepend.make (depend): Add sed pattern for readlink. + +Tue Mar 10 22:09:59 1998 Olaf Weber + + * dist.make: Account for presence of withenable.ac in top source + dir. + +Tue Feb 24 13:21:58 1998 Olaf Weber + + * man.make: Additions from Vladimir Volovich . + +Mon Feb 16 09:44:30 1998 Olaf Weber + + * makevars.make: Add vartexfonts to the variables being passed + around. + + * paths.make: Add vartexfonts variable to make configuring + VARTEXFONTS directory easier. + +Tue Feb 10 17:58:44 1998 Olaf Weber + + * man.make: Change sed delimiter from ! to %, in case !! is used + in any of the variables being substituted. Spotted by Thomas + Esser. + +Fri Feb 6 17:57:27 1998 Olaf Weber + + * dist.make: Correct ../contrib material. + + * common.make: Add -pipe to gcc flags for maintainer. + +Tue Feb 3 22:13:56 1998 Olaf Weber + + * dist.make [MAINT]: Improve handling of contrib dir. + +Thu Jan 29 16:20:12 1998 Olaf Weber + + * paths.make: Let texmf be @texmfmain@, which is determined in + ../kpathsea/withenable.ac. + + * clean.make (distclean): Imply extraclean. + +Wed Jan 28 20:48:48 1998 Olaf Weber + + * dist.make: Add unbackslsh.awk to top_files. Account for contrib + dir. + + * paths.make: A friendly warning: we're going full TDS in + texmf.in. + + * rdepend.make: Since c-auto.h is generated, it must receive + special treatment like paths.h. + +Fri Jan 9 21:12:23 1998 Olaf Weber + + * clean.make (distclean): Add stamp-tangle stamp-otangle to files + being removed. + +Sun Jan 4 15:56:57 1998 Olaf Weber + + * man.make: Add end-of-file comment. + + * Add man.make with rules for making manual pages. + +Fri Dec 12 10:30:25 1997 Olaf Weber + + * dist.make (dist): Reflect change of install-sh to install.sh. + Add djgpp directory to distributions. + +Tue Dec 2 16:12:53 1997 Olaf Weber + + * clean.make (extraclean): Remove *.*pk and *.*gf, rather than *pk + and *gf. + +Mon Nov 24 19:07:23 1997 Olaf Weber + + * texi.make: A change to get texi2dvi to work on the maintainer's + system. + +Thu Nov 20 00:03:29 1997 Olaf Weber + + * dist.make (dist): Be less exuberant with write permissions when + creating a distribution. + +Tue Nov 18 13:46:49 1997 Olaf Weber + + * rdepend.make (depend depend.make): Correct lex.yy to + $(LEX_OUTPUT_ROOT). + +Mon Nov 10 13:12:28 1997 Olaf Weber + + * paths.make [mandir]: Corrected definition, which contained one + 'man' too many. From Sebastian Rahtz. + +Tue Oct 28 21:34:42 1997 Olaf Weber + + * dist.make: Use cp -p when creating a distribution. + +Tue Oct 21 23:33:16 1997 Olaf Weber + + * rdepend.make: Handle kpsestat and access when generating + dependencies. + +Mon Oct 20 11:38:09 1997 Olaf Weber + + * clean.make, config.make, paths.make, tkpathsea.make: Renamed + texmf.cnf.in to texmf.in / c-auto.h.in to c-auto.in. + +Thu Oct 16 10:32:59 1997 Olaf Weber + + * clean.make: Remove stamp-auto files for distclean and + configclean targets. Remove *.exe files in clean target. After + Peter Breitenlohner. + +Wed Oct 15 21:37:20 1997 Olaf Weber + + * config.make: Don't try to create stamp-auto in source directory. + + * dist.make: Do not bother to distribute stamp-auto. + +Mon Oct 6 09:27:18 1997 Olaf Weber + + * config.make: Ensure that maintainer mode, once enabled, remains + enabled if the Makefiles are regenerated. + + * rdepend.make (depend, depend.make): Add unbackslsh.awk filter. + +Tue Sep 30 12:14:55 1997 Olaf Weber + + * texi.make (MAKEINFO_FLAGS): removed -I$(HOME)/gnu/gnuorg and + comment, added -I$(srcdir). + +Mon Sep 29 17:26:36 1997 Olaf Weber + + * paths.make: Fixed mandir definition. (Bruno BEAUFILS + ) + +Tue Sep 16 15:22:48 1997 Olaf Weber + + * config.make: ac_dir is now /home/olaf/web2c/src/autoconf. Use + -m $(ac_dir) in calls. + + * rdepend.make: Enabled make depend. + Thu Feb 6 17:35:18 1997 Karl Berry * Kpathsea 3.0, Web2c 7.0, etc. diff --git a/kpathsea/make/clean.make b/kpathsea/make/clean.make --- a/kpathsea/make/clean.make +++ b/kpathsea/make/clean.make @@ -4,22 +4,23 @@ clean:: mostlyclean rm -f $(program) $(programs) squeeze lib$(library).* $(library).a *.bad - rm -f *.dvi *.lj + rm -f *.exe *.dvi *.lj -distclean:: clean +distclean:: extraclean clean rm -f Makefile - rm -f config.status config.log config.cache c-auto.h + rm -f config.status config.log config.cache c-auto.h + rm -f stamp-auto stamp-tangle stamp-otangle -# Although we can remake configure and c-auto.h.in, we don't remove +# Although we can remake configure and c-auto.in, we don't remove # them, since many people may lack Autoconf. Use configclean for that. maintainer-clean:: distclean rm -f *.info* extraclean:: - rm -f *.aux *.bak *.bbl *.blg *.dvi *.log *.pl *.tfm *.vf *.vpl *gf *pk - rm -f *.mpx *.i *.s *~ *.orig *.rej *\#* + rm -f *.aux *.bak *.bbl *.blg *.dvi *.log *.pl *.tfm *.vf *.vpl + rm -f *.*pk *.*gf *.mpx *.i *.s *~ *.orig *.rej *\#* rm -f CONTENTS.tex a.out core mfput.* texput.* mpout.* configclean: - rm -f configure c-auto.h.in c-auto.h + rm -f configure c-auto.in c-auto.h stamp-* # End of clean.make. diff --git a/kpathsea/make/common.make b/kpathsea/make/common.make --- a/kpathsea/make/common.make +++ b/kpathsea/make/common.make @@ -11,7 +11,7 @@ DEFS = @DEFS@ $(XDEFS) # Kpathsea needs this for compiling, programs need it for linking. -LIBTOOL = $(kpathsea_srcdir)/klibtool +LIBTOOL = $(kpathsea_srcdir_parent)/klibtool # You can change [X]CPPFLAGS, [X]CFLAGS, or [X]DEFS, but # please don't change ALL_CPPFLAGS or ALL_CFLAGS. @@ -33,6 +33,9 @@ INSTALL_LIBTOOL_LIBS = INSTALL_DATA='$(INSTALL_DATA)' $(LIBTOOL) install-lib INSTALL_LIBTOOL_PROG = INSTALL_PROGRAM='$(INSTALL_PROGRAM)' $(LIBTOOL) install-prog +# Creating (symbolic) links. +LN = @LN_S@ + # We use these for many things. kpathsea_parent = .. kpathsea_dir = $(kpathsea_parent)/kpathsea @@ -40,8 +43,4 @@ kpathsea_srcdir = $(kpathsea_srcdir_parent)/kpathsea kpathsea = $(kpathsea_dir)/libkpathsea.la -##ifeq ($(CC), gcc) -##XDEFS = -D__USE_FIXED_PROTOTYPES__ -Wall -Wpointer-arith $(warn_more) -##CFLAGS = -g $(XCFLAGS) -##endif # End of common.make. diff --git a/kpathsea/make/config.make b/kpathsea/make/config.make --- a/kpathsea/make/config.make +++ b/kpathsea/make/config.make @@ -1,27 +1,7 @@ # config.make -- autoconf rules to remake the Makefile, c-auto.h, etc. -##ifdef HOSTNAME -##ac_dir = $(gnu)/share/autoconf -##autoconf = $(ac_dir)/acspecific.m4 $(ac_dir)/acgeneral.m4 $(ac_dir)/acsite.m4 -##autoheader = $(ac_dir)/acconfig.h $(ac_dir)/autoheader.m4 -## -### I define $(autoconf) to acgeneral.m4 and the other Autoconf files, so -### configure automatically gets remade in the sources with a new Autoconf -### release. But it would be bad for installers with Autoconf to remake -### configure (not to mention require Autoconf), so I take out the variable -### $(autoconf) definition before release. -### -### BTW, xt.ac isn't really required for dvipsk or dviljk, but it doesn't -### seem worth the trouble. -### -##configure_in = $(srcdir)/configure.in $(kpathsea_srcdir)/common.ac \ -## $(kpathsea_srcdir)/withenable.ac $(kpathsea_srcdir)/xt.ac \ -## $(kpathsea_srcdir)/acklibtool.m4 -##$(srcdir)/configure: $(configure_in) $(autoconf) -## cd $(srcdir) && autoconf -##endif config.status: $(srcdir)/configure - $(SHELL) $(srcdir)/configure --no-create + $(SHELL) $(srcdir)/configure --no-create $(enablemaintflag) Makefile: $(srcdir)/Makefile.in config.status $(top_srcdir)/../make/*.make $(SHELL) config.status @@ -31,17 +11,9 @@ # config.status, even when it doesn't change. Thus it might be newer # than c-auto.h when we don't need to remake the latter. c-auto.h: stamp-auto -stamp-auto: $(srcdir)/c-auto.h.in +stamp-auto: $(srcdir)/c-auto.in $(SHELL) config.status - date >$(srcdir)/stamp-auto + date >stamp-auto -##ifdef HOSTNAME -### autoheader reads acconfig.h (and c-auto.h.top) automatically. -##$(srcdir)/c-auto.h.in: $(srcdir)/stamp-auto.in -##$(srcdir)/stamp-auto.in: $(configure_in) $(autoheader) \ -## $(kpathsea_srcdir)/acconfig.h -## cd $(srcdir) && autoheader --localdir=$(kpathsea_srcdir) -## date >$(srcdir)/stamp-auto.in -##endif # End of config.make. diff --git a/kpathsea/make/dist.make b/kpathsea/make/dist.make --- a/kpathsea/make/dist.make +++ b/kpathsea/make/dist.make @@ -1,36 +1,2 @@ # dist.make -- making distribution tar files. -top_distdir = $(distname)-$(version) -top_files = ChangeLog Makefile.in README configure.in configure install-sh \ - acklibtool.m4 config.guess config.sub klibtool $(HOME)/bin/mkdirchain -distdir = $(top_distdir)/$(distname) -kpathsea_distdir = ../$(distname)/$(top_distdir)/kpathsea -ln_files = AUTHORS ChangeLog INSTALL NEWS README *.in *.h *.c \ - configure *.make .gdbinit stamp-auto - -dist_rm_predicate = -name depend.make -o -name Makefile -dist: all depend pre-dist-$(distname) - rm -rf $(top_distdir)* - mkdir -p $(distdir) - cd .. && make Makefile ./configure - cd .. && ln $(top_files) $(distname)/$(top_distdir) - cp $(txinfo)/dir $(top_distdir) - -ln $(ln_files) $(distdir) - ln $(program_files) $(distdir) - cd $(kpathsea_dir); $(MAKE) distdir=$(kpathsea_distdir) \ - ln_files='$(ln_files)' distdir - cp -pr ../make ../etc $(top_distdir) - ln -s $(gnu)/share/autoconf/acsite.m4 $(top_distdir)/etc/autoconf - rm -rf $(top_distdir)/make/RCS - ungnumake `find $(top_distdir) -name Makefile.in -o -name \*.make` -# Remove the extra files our patterns got us. - cd $(top_distdir); rm -f */c-auto.h - find $(top_distdir) \( $(dist_rm_predicate) \) -exec rm '{}' \; - find $(top_distdir) -name \.*texi -exec egrep -ni ' | ::|xx[^}]' \; - $(MAKE) post-dist-$(distname) - cd $(distdir); add-version $(version) $(version_files) - cd $(distdir); test ! -r *.info || touch *.info* - chmod -R a+rwX $(top_distdir) - GZIP=-9 tar chzf $(top_distdir).tar.gz $(top_distdir) - rm -rf $(top_distdir) - # End of dist.make. diff --git a/kpathsea/make/makevars.make b/kpathsea/make/makevars.make --- a/kpathsea/make/makevars.make +++ b/kpathsea/make/makevars.make @@ -5,7 +5,7 @@ bindir=$(bindir) scriptdir=$(scriptdir) libdir=$(libdir) \ datadir=$(datadir) infodir=$(infodir) includedir=$(includedir) \ manext=$(manext) mandir=$(mandir) \ - texmf=$(texmf) web2cdir=$(web2cdir) \ + texmf=$(texmf) web2cdir=$(web2cdir) vartexfonts=$(vartexfonts)\ texinputdir=$(texinputdir) mfinputdir=$(mfinputdir) mpinputdir=$(mpinputdir)\ fontdir=$(fontdir) fmtdir=$(fmtdir) basedir=$(basedir) memdir=$(memdir) \ texpooldir=$(texpooldir) mfpooldir=$(mfpooldir) mppooldir=$(mppooldir) \ diff --git a/kpathsea/make/man.make b/kpathsea/make/man.make new file mode 100644 --- /dev/null +++ b/kpathsea/make/man.make @@ -0,0 +1,75 @@ +# man.make: Makefile fragment for web2c manual pages. + +#DITROFF = ditroff +DITROFF = groff + +# The edited file always has extension .1; we change it when we install. +.SUFFIXES: .man .1 .txt .ps .dvi +.man.1: + sed -f sedscript $< >$@ +.1.dvi: + $(DITROFF) -Tdvi -man $< >$@ +.1.ps: + $(DITROFF) -Tps -man $< >$@ +.1.txt: + $(DITROFF) -Tascii -man $< | col -b | expand >$@ + +all: $(manfiles) +.PHONY: dw + +$(manfiles): sedscript + +manfiles: $(manfiles) +dvi: $(manfiles:.1=.dvi) +ps: $(manfiles:.1=.ps) +txt: $(manfiles:.1=.txt) + +# We do not depend on the top-level Makefile since the top-level +# Makefile can change for reasons that do not affect the man pages. +# At present, all but VERSION should be unused. +sedscript: + cp /dev/null sedscript + for f in $(kpathsea_dir)/paths.h; do \ + sed -n -e '/^#define/s/#define[ ][ ]*\([A-Z_a-z][A-Z_a-z]*\)[ ][ ]*\(.*\)/s%@\1@%\2%/p' \ + $$f \ + | sed -e 's/"//g' -e 's/[ ]*\/\*[^*]*\*\///g' >>sedscript;\ + done + echo 's%@VERSION@%$(version)%' >>sedscript + echo 's%@BINDIR@%$(bindir)%' >>sedscript + echo 's%@INFODIR@%$(infodir)%' >>sedscript + echo 's%@TEXINPUTDIR@%$(texinputdir)%' >>sedscript + echo 's%@MFINPUTDIR@%$(mfinputdir)%' >>sedscript + echo 's%@MPINPUTDIR@%$(mpinputdir)%' >>sedscript + echo 's%@FONTDIR@%$(fontdir)%' >>sedscript + echo 's%@FMTDIR@%$(fmtdir)%' >>sedscript + echo 's%@BASEDIR@%$(basedir)%' >>sedscript + echo 's%@MEMDIR@%$(memdir)%' >>sedscript + echo 's%@TEXPOOLDIR@%$(texpooldir)%' >>sedscript + echo 's%@MFPOOLDIR@%$(mfpooldir)%' >>sedscript + echo 's%@MPPOOLDIR@%$(mppooldir)%' >>sedscript + echo 's%@FONTMAPDIR@%$(dvipsdir)%' >>sedscript + echo 's%@LOCALMODES@%$(localmodes)%' >>sedscript + +install-man: manfiles + $(top_srcdir)/../mkinstalldirs $(mandir) + for nameone in $(manfiles); do \ + name=`basename $${nameone} .1`; \ + $(INSTALL_DATA) $${name}.1 $(mandir)/$${name}.$(manext); \ + done + +uninstall-man: + for nameone in $(manfiles); do \ + name=`basename $${nameone} .1`; \ + rm -f $(mandir)/$${name}.$(manext); \ + done + +install-data: install-man +uninstall-data: uninstall-man + +mostlyclean:: + rm -f *.1 + +clean:: + rm -f sedscript + +# end of man.make diff --git a/kpathsea/make/paths.make b/kpathsea/make/paths.make --- a/kpathsea/make/paths.make +++ b/kpathsea/make/paths.make @@ -1,7 +1,7 @@ # paths.make -- installation directories. # # The compile-time paths are defined in kpathsea/paths.h, which is built -# from kpathsea/paths.h.in and these definitions. See kpathsea/INSTALL +# from kpathsea/texmf.in and these definitions. See kpathsea/INSTALL # for how the various path-related files are used and created. # Do not change prefix and exec_prefix in Makefile.in! @@ -32,16 +32,21 @@ # Unix man pages. manext = 1 -mandir = $(prefix)/man/man$(manext) +mandir = @mandir@/man$(manext) # TeX system-specific directories. Not all of the following are relevant # for all programs, but it seems cleaner to collect everything in one place. -# The default paths are now in kpathsea/paths.h.in. Passing all the +# The default paths are now in kpathsea/texmf.in. Passing all the # paths to sub-makes can make the arg list too long on system V. +# Note that if you make changes below, you will have to make the +# corresponding changes to texmf.in or texmf.cnf yourself. # The root of the main tree. -texmf = $(datadir)/texmf +texmf = @texmfmain@ + +# The directory used by varfonts. +vartexfonts = /var/tmp/texfonts # Regular input files. texinputdir = $(texmf)/tex @@ -54,7 +59,7 @@ dvips_plain_macrodir = $(texinputdir)/plain/dvips dvilj_latex2e_macrodir = $(texinputdir)/latex/dvilj -# MakeTeXPK.site, texmf.cnf, etc. +# mktex.cnf, texmf.cnf, etc. web2cdir = $(texmf)/web2c # The top-level font directory. diff --git a/kpathsea/make/rdepend.make b/kpathsea/make/rdepend.make --- a/kpathsea/make/rdepend.make +++ b/kpathsea/make/rdepend.make @@ -1,40 +1,10 @@ # rdepend.make -- rules for remaking the dependencies. -# -# Have to use -M, not -MM, since we use instead of -# "kpathsea/..." in the sources. But that means we have to remove the -# directory prefixes and all the system include files. -# And is generated, not part of the distribution. -# -# And, there's no need for any installer/user to ever run this, it can -# only cause trouble. So comment it out in the distribution. -# (It doesn't work when the source and build directories are different.) -##ifndef c_auto_h_dir -##c_auto_h_dir = . -##endif -##ifdef HOSTNAME -##depend depend.make:: $(c_auto_h_dir)/c-auto.h \ -## $(top_srcdir)/../make/rdepend.make -## $(CC) -M $(ALL_CPPFLAGS) -I$(c_auto_h_dir) *.c \ -## | sed -e 's,\(\.\./\)\+kpathsea/,$$(kpathsea_srcdir)/,g' \ -## -e 's,$$(kpathsea_srcdir)/paths.h,$$(kpathsea_dir)/paths.h,g' \ -## -e 's,/usr[^ ]* ,,g' \ -## -e 's,/usr[^ ]*$$,,g' \ -## -e 's,dvi2xx.o,dvilj.o dvilj2p.o dvilj4.o dvilj4l.o,' \ -## | grep -v '^ *\\$$' \ -## >depend.make -### If kpathsea, we're making .lo library objects instead of .o's. -## pwd | grep -v kpathsea >/dev/null \ -## || (sed -e 's/\.o:/.lo:/' -e 's/kpsewhich.lo:/kpsewhich.o:/' \ -## depend-tmp.make; mv depend-tmp.make depend.make) -##.PHONY: depend -##endif # Let's stick a rule for TAGS here, just in case someone wants them. # (We don't put them in the distributions, to keep them smaller.) TAGS: *.c *.h pwd | grep kpathsea >/dev/null && append=../kpathsea/TAGS; \ etags $$append *.[ch] - # Prevent GNU make 3.[59,63) from overflowing arg limit on system V. .NOEXPORT: diff --git a/kpathsea/make/texi.make b/kpathsea/make/texi.make --- a/kpathsea/make/texi.make +++ b/kpathsea/make/texi.make @@ -1,12 +1,11 @@ # texi.make -- making .dvi and .info from .texi. MAKEINFO = makeinfo -MAKEINFO_FLAGS = --paragraph-indent=2 -I$(HOME)/gnu/gnuorg -# That -I is purely for my own benefit in doing `make dist'. It won't -# hurt anything for you (I hope). +MAKEINFO_FLAGS = --paragraph-indent=2 -I$(srcdir) + TEXI2DVI = texi2dvi TEXI2HTML = texi2html -TEXI2HTML_FLAGS = -split_node -menu +TEXI2HTML_FLAGS = -expandinfo -number -menu -split_chapter # If you prefer one big .html file instead of several, remove # -split-node or replace it by -split_chapter. diff --git a/kpathsea/make/tkpathsea.make b/kpathsea/make/tkpathsea.make --- a/kpathsea/make/tkpathsea.make +++ b/kpathsea/make/tkpathsea.make @@ -4,6 +4,6 @@ # This is wrong: the library doesn't depend on kpsewhich.c or # acconfig.h. But what to do? $(kpathsea): $(kpathsea_srcdir)/*.c $(kpathsea_srcdir)/*.h \ - $(kpathsea_srcdir)/texmf.cnf.in $(top_srcdir)/../make/paths.make + $(kpathsea_srcdir)/texmf.in $(top_srcdir)/make/paths.make cd $(kpathsea_dir) && $(MAKE) $(makeargs) # End of tkpathsea.make.