psgml / Makefile

# Makefile for psgml support lisp code

# This file is part of XEmacs.

# XEmacs 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.

# XEmacs 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 XEmacs; see the file COPYING.  If not, write to
# the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.

VERSION = 1.29
AUTHOR_VERSION = 1.2.2
MAINTAINER = XEmacs Development Team <xemacs-beta@xemacs.org>
PACKAGE = psgml
PKG_TYPE = regular
REQUIRES = xemacs-base edit-utils edebug xemacs-devel mail-lib fsf-compat eterm sh-script
CATEGORY = standard

ELCS = iso-sgml.elc psgml-api.elc psgml-charent.elc psgml-debug.elc \
	psgml-dtd.elc psgml-edit.elc psgml-fs.elc psgml-html.elc \
	psgml-info.elc psgml-parse.elc psgml-xemacs.elc psgml.elc

INFO_FILES = $(PACKAGE).info* $(PACKAGE)-api.info
HTML_FILES = $(PACKAGE)*.html $(PACKAGE)-api*.html
HTML_DEP = $(PACKAGE).html $(PACKAGE)-api.html
TEXI_FILES = $(PACKAGE).texi $(PACKAGE)-api.texi
MANUALS = $(PACKAGE) $(PACKAGE)-api

DATA_FILES = $(wildcard etc/[EHRWhisw]*) etc/CATALOG $(wildcard etc/*ent) \
	     $(wildcard etc/*.dtd) $(wildcard etc/*.mod) $(wildcard etc/*.dcl)
DATA_DEST = $(PACKAGE)

DATA_1_FILES = $(shell $(XEMACS) -batch -no-autoloads -eval "$(GET_CDTD_FILES)")
GET_CDTD_FILES = \
(progn \
  (find-file \
   \"etc/ECAT\") \
  (princ \
    (replace-in-string \
     (buffer-string) \
     \"FILE.*[ \\t]+\\\\([^ \\t]+\\\\)[ \\r\\t]*\\n\" \
     \" etc/\\\\1\"))))

DATA_1_DEST = $(PACKAGE)/cdtd

DATA_2_FILES = $(wildcard etc/ISO_8879-1986/entities/[A,D-Z]*) \
               $(wildcard etc/ISO_8879-1986/entities/*.ent)
DATA_2_DEST = $(PACKAGE)/ISO_8879-1986/entities

include ../../XEmacs.rules

GENERATED += custom-load.elc

SGML_DATA_DIRECTORY = (expand-file-name \"etc\")
SGML_ECAT_FILES = (expand-file-name \"ECAT\" sgml-data-directory)
SGML_CATALOG_FILES = (expand-file-name \"CATALOG\" sgml-data-directory)

PRELOADS = -eval "(setq sgml-data-directory $(SGML_DATA_DIRECTORY))"

$(DATA_1_FILES): force

all:: $(ELCS) auto-autoloads.elc custom-load.elc \
	$(PACKAGE).info $(PACKAGE)-api.info \
	etc/ECAT etc/CATALOG $(DATA_1_FILES) $(DATA_2_FILES) etc/*.ent
	mkdir -p etc/cdtd
	$(BOOT_XEMACS) -l psgml-html -l psgml-parse \
               -eval "(setq sgml-auto-activate-dtd t  \
			    sgml-ecat-files (list $(SGML_ECAT_FILES))  \
			    sgml-catalog-files (list $(SGML_CATALOG_FILES)))" \
	       -f sgml-compile-all-dtds

# I left this target here even though 'clean' is usually done from
# XEmacs.rules because it was the easiest way to remove the generated
# files in 'etc/cdtd/' and keep the directory in tact so a
# '.cvsignore' file could be used.  And I didn't want to put a special
# case in XEmacs.rules just for the benefit of 1 package. <youngs@xemacs.org>
clean:: 
	rm -f etc/cdtd/docbook etc/cdtd/html* etc/cdtd/mathml \
		etc/cdtd/xhtml1-* $(ELCS) $(INFO_FILES) auto-autoloads.elc \
		custom-load.elc

srckit: srckit-std

binkit: binkit-common

# Force rebuilding with this pseudo-target.
force:
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.