# $Id$ # Makefile for teTeX distribution, also used for TeX Live. # This program 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. # This program 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 this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. srcdir = @srcdir@ VPATH = $(srcdir) SHELL = /bin/sh prefix = @prefix@ exec_prefix = @exec_prefix@ bindir = @bindir@ scriptdir = $(bindir) texmf = @texmfmain@ INSTALL = @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_DATA = @INSTALL_DATA@ NCURSESDIR=libs/ncurses ZLIBDIR=libs/zlib LIBPNGDIR=libs/libpng LIBT1DIR=libs/t1lib LIBTYPE1DIR=$(LIBT1DIR)/../type1 LIBXPDFDIR=libs/xpdf GDDIR=libs/gd FREETYPEDIR=libs/freetype # Subdirectories that have makefiles ESUBDIRS = @ESUBDIRS@ texk LIBSDIRS = @LIBSDIRS@ # Subdirectories for which we want to run make (un)install; these are # different for xdvik standalone distribution where we don't want to # install kpathsea and friends by default. INSTDIRS = @INSTDIRS@ default: all install: all for dir in $(INSTDIRS); do \ echo making $@ in $$dir; \ (cd $$dir && PATH=$(scriptdir):$(bindir):$(PATH) \ $(MAKE) $@) || exit 1; \ done if test -d $(texmf) && test -f $(srcdir)/release-tetex-src.txt; then \ $(INSTALL_DATA) $(srcdir)/release-tetex-src.txt $(texmf); \ fi @FMU@ @FMU@install-extra: # temporary fix for missing links - if test -f texk/web2c/omegafonts/omfonts; then \ cd texk/web2c/omegafonts && $(MAKE) install-links; \ else :; fi $(srcdir)/selfautofix "$(bindir)" "$(texmf)/web2c" - if test -f $(scriptdir)/mktexlsr; then \ TEXMFMAIN=$(texmf) PATH=$(scriptdir):$(bindir):$(PATH) \ $(scriptdir)/mktexlsr; \ else :; fi - if test -f $(scriptdir)/fmtutil-sys; then \ TEXMFMAIN=$(texmf) PATH=$(scriptdir):$(bindir):$(PATH) \ $(scriptdir)/fmtutil-sys --all; \ else :; fi - if test -f $(scriptdir)/texlinks; then \ TEXMFMAIN=$(texmf) PATH=$(scriptdir):$(bindir):$(PATH) \ $(scriptdir)/texlinks; \ else :; fi - if test -f $(scriptdir)/updmap-sys \ && TEXMFMAIN=$(texmf) PATH=$(scriptdir):$(bindir):$(PATH) \ $(scriptdir)/kpsewhich --format='web2c files' updmap.cfg >/dev/null; \ then \ TEXMFMAIN=$(texmf) PATH=$(scriptdir):$(bindir):$(PATH) \ $(scriptdir)/updmap-sys; \ else :; fi install-exec: for dir in $(INSTDIRS); do \ echo making $@ in $$dir; \ (cd $$dir && PATH=$(scriptdir):$(bindir):$(PATH) \ $(MAKE) $@) || exit 1; \ done @FMU@ @FMU@install-exec-extra: # temporary fix for missing links - if test -f texk/web2c/omegafonts/omfonts; then \ cd texk/web2c/omegafonts && $(MAKE) install-links; \ else :; fi - if test -f $(scriptdir)/texlinks; then \ TEXMFMAIN=$(texmf) PATH=$(scriptdir):$(bindir):$(PATH) \ $(scriptdir)/texlinks; \ else :; fi strip: check: cd texk; TEXMF='{$(texmf),$(texmf)-dist}' TEXMFCNF=$(texmf)/web2c $(MAKE) $@ uninstall: for dir in $(INSTDIRS); do \ echo making $@ in $$dir; \ (cd $$dir && $(MAKE) $@) || exit 1; \ done Makefile: Makefile.in config.status $(SHELL) ./config.status all: @LIBSDEP@ all clean mostlyclean: esubdirs="$(LIBSDIRS) $(ESUBDIRS)"; \ for dir in $$esubdirs; do \ echo making $@ in $$dir; \ (if test -f $$dir/Makefile; then cd $$dir && $(MAKE) $@; else true; fi) || exit 1; \ done distclean: clean cleandirs="$(LIBSDIRS) $(ESUBDIRS)"; \ for dir in $$cleandirs; do \ echo making $@ in $$dir; \ (if test -f $$dir/Makefile; then cd $$dir && $(MAKE) $@; else true; fi) || exit 1; \ done rm -f Makefile *.status *.cache *.log dialogconfig.h TAGS rm -f libs/klibtool.config libs/config.log libs/config.status libs/config.cache libs/kpse_empty rm -f utils/texinfo/info/funs.h utils/texinfo/info/doc.c utils/texinfo/info/key.c tags TAGS: rm -f TAGS find . -name '*.[ch]' -print | xargs etags --append -o TAGS realclean: distclean world: all install pdftex pdfetex: cd texk/web2c; $(MAKE) $@ test -f texk/web2c/pdftex && ls -l texk/web2c/pdftex test -f texk/web2c/pdfetex && ls -l texk/web2c/pdfetex $(NCURSESDIR)/lib/libncurses.a: cd $(NCURSESDIR); $(MAKE) $(ZLIBDIR)/libz.a: cd $(ZLIBDIR); $(MAKE) libz.a $(LIBPNGDIR)/libpng.a: cd $(LIBPNGDIR); $(MAKE) libpng.a $(LIBT1DIR)/libt1.a: cd $(LIBT1DIR); $(MAKE) libt1.a $(LIBTYPE1DIR)/libtype1.a: cd $(LIBTYPE1DIR); $(MAKE) libtype1.a $(LIBXPDFDIR)/xpdf/libxpdf.a: cd $(LIBXPDFDIR)/xpdf; $(MAKE) libxpdf.a $(LIBXPDFDIR)/goo/libGoo.a: cd $(LIBXPDFDIR)/goo; $(MAKE) libGoo.a $(LIBXPDFDIR)/fofi/libfofi.a: cd $(LIBXPDFDIR)/fofi; $(MAKE) libfofi.a $(GDDIR)/libgd.a: cd $(GDDIR); $(MAKE) libgd.a $(FREETYPEDIR)/lib/.libs/libttf.a: cd $(FREETYPEDIR); $(MAKE) # Prevent GNU make v3 from overflowing arg limit on SysV. .NOEXPORT: