SCM Repository
| [xemacs] / XEmacs / packages / XEmacs.rules |
View of /XEmacs/packages/XEmacs.rules
Parent Directory
|
Revision Log
Revision 1.43 -
(download)
(annotate)
Fri Mar 21 06:55:28 2003 UTC (10 years, 2 months ago) by ben
Branch: MAIN
Changes since 1.42: +340 -84 lines
Fri Mar 21 06:55:28 2003 UTC (10 years, 2 months ago) by ben
Branch: MAIN
Changes since 1.42: +340 -84 lines
package Makefile overhaul -- remove explicit targets, explicit specification of generated .el files, etc; all is done using directives [i.e. variables], as documented in XEmacs.rules
# Common Makefile material for package Makefiles # Copyright (C) 1997 Free Software Foundation Inc. # Copyright (C) 2002, 2003 Ben Wing. # 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. # Requires XEmacs 21.0-beta19 or greater and GNU Make 3.78 or greater. # Settings that a Makefile can specify (all settings need to be done # BEFORE including XEmacs.rules; if you need something from Local.rules # in order to determine the settings properly -- e.g. BUILD_WITHOUT_MULE -- # include Local.rules.inc at the top of your Makefile): # # At the top of every Makefile: # ----------------------------- # # VERSION = 1.10 # MAINTAINER = Joe Shmoe <joe@shmoe.org>, or # MAINTAINER = XEmacs Development Team <xemacs-beta@xemacs.org> # PACKAGE = my-package # PKG_TYPE = regular or single-file (each file is a separate package) # REQUIRES = list of packages that must be available to compile the .elcs # CATEGORY = standard, mule, or unsupported # # Optionally: # ----------- # # AUTHOR_VERSION = 1.4.9 # PACKAGE_SUPPRESS = calls to `package-suppress' to indicate packages that # should be available only in particular versions of XEmacs, e.g.: # # PACKAGE_SUPPRESS = \ # (package-suppress 'xemacs-base \"regexp-opt\" '(emacs-version>= 21 5 11)) \ # (package-suppress 'xemacs-base \"easy-mmode\" '(emacs-version>= 21 5 11)) # # # Lisp files: # ----------- # # ELCS = .elc files to compile # ELCS_1 = more .elc files to compile, to be installed in a subdirectory of # lisp/ # ELCS_1_DEST = name of subdirectory to install them into; include # $(PACKAGE) in the name # EARLY_GENERATED_LISP = additional .el files that will be generated before # any byte-compilation (use this for autoloads-type files); rules must be # given to build them # GENERATED_LISP = additional .el files that will be generated at # byte-compilation time; rules must be given to build them # PRELOADS = additional command-line arguments needed when compiling .elcs # AUTOLOAD_PATH = subdirectory in source tree where .elcs are located (this # is where auto-autoloads.el, etc. will be placed) # # Doc files (see below): # ---------------------- # # (1) The preferred way: # # EXPLICIT_DOCS, STANDARD_DOCS, EXTRA_TEXI_FILES, EXTRA_HTML_FILES, # DOCS_TEXINFO_EXTENSION, DOCS_TXI_EXTENSION # # (2) The hard way: # # TEXI_FILES, INFO_FILES, INFO_DEP, HTML_FILES, HTML_DEP # # Also: EXTRA_DOC_FILES # # Other files to build: # --------------------- # # EXTRA_DEPENDENCIES = additional files to build; rules must be given to # build them # # Files to install, besides the .elcs, docs, ChangeLog and _pkg.el: # ----------------------------------------------------------------- # # EXTRA_SOURCES = files installed under lisp/$(PACKAGE) # LIBSRC_FILES = files installed under lib-src/ # DATA_FILES, DATA_DEST = files installed under a subdirectory of etc/; include # $(PACKAGE) in the name # DATA_1_FILES, DATA_1_DEST ... DATA_35_FILES, DATA_35_DEST = files to be # installed in other subdirectories of etc/ XEMACS_PACKAGES_BASE := $(shell while [ ! -f XEmacs.rules ]; do \ cd ..; \ done; \ pwd) include ${XEMACS_PACKAGES_BASE}/Local.rules.inc # Ensure vanilla locale when building override LANG := C # Only in rare cases will you need to override this ifeq ($(AUTOLOAD_PATH),) AUTOLOAD_PATH = . endif # Set this in the package Makefile if necessary (BEFORE including this file) EARLY_GENERATED_LISP += $(AUTOLOAD_PATH)/auto-autoloads.el $(AUTOLOAD_PATH)/custom-load.el ifeq ($(XEMACS_21_5),t) EARLY_GENERATED_LISP += $(AUTOLOAD_PATH)/custom-defines.el endif EARLY_GENERATED_ELCS = $(EARLY_GENERATED_LISP:.el=.elc) GENERATED_ELCS = $(GENERATED_LISP:.el=.elc) # SOURCE_FILES_TO_COPY = *.el* SOURCE_FILES_TO_COPY = $(ELCS) $(ELCS:.elc=.el) \ $(MULE_ELCS) $(MULE_ELCS:.elc=.el) \ $(EARLY_GENERATED_ELCS) $(EARLY_GENERATED_LISP) \ $(GENERATED_ELCS) $(GENERATED_LISP) $(AUTOLOAD_PATH)/_pkg.el # Non configurable portion follows MANIFEST = pkginfo/MANIFEST.$(PACKAGE) # This might be a sublevel PWD; that is intentional. Use # ${XEMACS_PACKAGES_BASE} for the toplevel directory. PWD := $(shell pwd) .SUFFIXES: .SUFFIXES: .html .info .txi .texi .texinfo .dvi .ps .pdf .elc .el # STAGING is the top of the directory tree where a particular package's # files are installed, or where tarballs are installed using `make bindist'. # 'make bindist' needs STAGING to be set to NONMULE_INSTALLED_PACKAGES_ROOT # if we are building a Mule package so we don't end up with 2 package-index # files. ifeq ('$(MAKECMDGOALS)','bindist') STAGING:= $(NONMULE_INSTALLED_PACKAGES_ROOT) else ifeq ('$(CATEGORY)','mule') STAGING:= $(MULE_INSTALLED_PACKAGES_ROOT) else STAGING:= $(NONMULE_INSTALLED_PACKAGES_ROOT) endif endif ##################################### # Handle docs # ##################################### # If something goes wrong and $(STAGING) is blank, the commands below will # attempt to install files into absolute paths /lisp/* and /etc/* -- not # a good idea at all. check-staging: ifeq ($(STAGING),) $(error STAGING is not set; potential major filesystem trashing! Fix this) endif check-mule: ifeq ($(CATEGORY),mule) ifneq ($(BUILD_WITHOUT_MULE),) $(error This package needs Mule support in order to be compiled) endif endif # Possibilities for building the docs: # # (1) EXPLICIT_DOCS = <texi files> # Build the specified .texi files. Info and HTML files automatically # computed from the .texi files. # (2) STANDARD_DOCS = t # Same as EXPLICIT_DOCS = $(PACKAGE).texi # (3) Manual: Specify TEXI_FILES, INFO_FILES, INFO_DEP, HTML_FILES, and # HTML_DEP by yourself. Do not explicitly add any doc targets to # compile::. # # When EXPLICIT_DOCS or STANDARD_DOCS is given: # # (1) you can specify other .texi files included in the files specified in # EXPLICIT_DOCS using EXTRA_TEXI_FILES (they will be listed as # dependencies of the info and html files) # (2) you can specify extra .html output files using EXTRA_HTML_FILES # (3) you can use `DOCS_TEXINFO_EXTENSION = t' to indicate that the # explicitly specified docs have .texinfo as the extension instead of # .texi. Similarly for `DOCS_TXI_EXTENSION = t'. # # You can also specify EXTRA_DOC_FILES in all cases to indicate extra files # to be copied into the man/ directory at installation time. ifeq ($(STANDARD_DOCS),t) EXPLICIT_DOCS = $(PACKAGE).texi endif ifneq ($(EXPLICIT_DOCS),) ifeq ($(DOCS_TEXINFO_EXTENSION),t) EXPLICIT_DOCS_AS_TEXI=$(EXPLICIT_DOCS:%.texinfo=%.texi) else ifeq ($(DOCS_TXI_EXTENSION),t) EXPLICIT_DOCS_AS_TEXI=$(EXPLICIT_DOCS:%.txi=%.texi) else EXPLICIT_DOCS_AS_TEXI=$(EXPLICIT_DOCS) endif endif TEXI_FILES = $(EXPLICIT_DOCS) $(EXTRA_TEXI_FILES) INFO_FILES = $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.info*) INFO_DEP = $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.info) $(INFO_DEP): $(EXTRA_TEXI_FILES) mostlyclean:: rm -f $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.toc) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.aux) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.oaux) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.log) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.cp) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.cps) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.fn) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.fns) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.tp) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.tps) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.vr) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.vrs) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.pg) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.pgs) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.ky) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.kys) clean:: rm -f $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.dvi) \ $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.ps) HTML_FILES = $(EXPLICIT_DOCS_AS_TEXI:%.texi=%*.html) $(EXTRA_HTML_FILES) HTML_DEP = $(EXPLICIT_DOCS_AS_TEXI:%.texi=%_toc.html) $(HTML_DEP): $(EXTRA_TEXI_FILES) endif html: $(HTML_DEP) FORMAT_INFO_USING_XEMACS_NO_SAVE_ARGS = -eval '(setq load-path (append (list "$(XEMACS_PACKAGES_BASE)/xemacs-packages/texinfo" "$(XEMACS_PACKAGES_BASE)/xemacs-packages/xemacs-base") load-path))' -l informat -l texinfmt -f texinfo-format-buffer FORMAT_INFO_USING_XEMACS_ARGS = $(FORMAT_INFO_USING_XEMACS_NO_SAVE_ARGS) -f save-buffer FORMAT_INFO_USING_XEMACS = \ $(XEMACS) $(BATCH) -insert $< $(FORMAT_INFO_USING_XEMACS_ARGS) FORMAT_MULE_INFO_USING_XEMACS = \ $(XEMACS) $(BATCH) -insert $< \ -eval '(unless (featurep (quote mule)) (kill-emacs 0))' \ -eval '(cd "$(<D)")' \ $(FORMAT_INFO_USING_XEMACS_NO_SAVE_ARGS) \ -eval '(setq file-coding-system (quote iso-2022-7))' \ -eval '(save-buffer 0)' # makeinfo doesn't seem able to handle Mule-formatted files correctly, so # we need to use the texinfo package. #### Switch to UTF-8 and this should # go away. ifeq ($(COMPILE_INFO_AS_MULE),t) FORMAT_INFO = $(FORMAT_MULE_INFO_USING_XEMACS) else FORMAT_INFO = cd $(@D) && $(MAKEINFO) $(MAKEINFO_FLAGS) -o $(@F) $(<F) endif %-ja.info: %-ja.texi $(FORMAT_MULE_INFO_USING_XEMACS) %.info: %.txi $(FORMAT_INFO) %.info: %.texi $(FORMAT_INFO) %.info: %.texinfo $(FORMAT_INFO) ## Make sure to cd into the directory before running texi2html because it ## puts its results in the current directory, not the directory of the ## source file. # V 1.56k (with Cygwin) does not allow -p flag. Works fine without it. #RUN_TEXI2HTML = cd $(@D) && $(TEXI2HTML) $(TEXI2HTML_FLAGS) -p $(<F) RUN_TEXI2HTML = cd $(@D) && $(TEXI2HTML) $(TEXI2HTML_FLAGS) $(<F) %_toc.html: %.txi $(RUN_TEXI2HTML) %_toc.html: %.texi $(RUN_TEXI2HTML) %_toc.html: %.texinfo $(RUN_TEXI2HTML) # #### I'm not sure if this is correct. xslt-process seems to think it # needs to be run twice. ifneq ($(TEXI2DVI),) RUN_TEXI2DVI = cd $(@D) && $(TEXI2DVI) $(<F) && $(TEXI2DVI) $(<F) else RUN_TEXI2DVI = - endif %.dvi: %.txi $(RUN_TEXI2DVI) %.dvi: %.texi $(RUN_TEXI2DVI) %.dvi: %.texinfo $(RUN_TEXI2DVI) ifneq ($(TEXI2PDF),) RUN_TEXI2PDF = cd $(@D) && $(TEXI2PDF) $(<F) else RUN_TEXI2PDF = - endif %.pdf: %.txi $(RUN_TEXI2PDF) %.pdf: %.texi $(RUN_TEXI2PDF) %.pdf: %.texinfo $(RUN_TEXI2PDF) ifneq ($(DVIPS),) RUN_DVIPS = cd $(@D) && $(DVIPS) -o $(@F) $(<F) else RUN_DVIPS = - endif %.ps: %.dvi $(RUN_DVIPS) ifeq ($(XEMACS_NATIVE_NT),t) # Convert UNIX-path (containing output of `pwd') to windows-path, so # that XEmacs native NT can handle it. PACKAGE_COMPILE = \ "$(shell cygpath --windows $(XEMACS_PACKAGES_BASE)/package-compile.el)" PACKAGE_CLEAN = \ "$(shell cygpath --windows $(XEMACS_PACKAGES_BASE)/package-clean.el)" PACKAGE_NET_PACKAGES = \ "$(shell cygpath --windows $(XEMACS_PACKAGES_BASE)/package-net-packages.el)" PACKAGE_STAGING = \ "$(shell cygpath --windows $(STAGING))" else PACKAGE_COMPILE = $(XEMACS_PACKAGES_BASE)/package-compile.el PACKAGE_CLEAN = $(XEMACS_PACKAGES_BASE)/package-clean.el PACKAGE_NET_PACKAGES = $(XEMACS_PACKAGES_BASE)/package-net-packages.el PACKAGE_STAGING = $(STAGING) endif # Behaves like an XEmacs with the required packages set up BOOT_XEMACS= $(XEMACS) -no-autoloads $(BATCH) -l $(PACKAGE_COMPILE) -- $(REQUIRES) -- $(PRELOADS) %.elc: %.el $(BOOT_XEMACS) -f batch-byte-compile $< # compile must be :: because some packages (e.g. psgml-dtd?) put separate # commands that apply only to those particular dependencies. compile:: check-mule # Build the generated stuff if we're in the top-level of a package directory # but not otherwise. ifneq ($(PACKAGE),) compile:: $(AUTOLOAD_PATH)/_pkg.el endif ## first, the byte-compile the files generated earlier (auto-autoloads.el, ## etc.), now that we have all of them and hence can handle dependencies. ## then, generate and compile the other generated files. compile:: $(EARLY_GENERATED_ELCS) $(GENERATED_ELCS) ## now compile the main Lisp compile:: $(ELCS) $(ELCS_1) ## now the docs, info format. compile:: $(INFO_DEP) ## now the docs, html format (maybe). ifeq ($(INSTALL_HTML),t) compile:: html endif ## now, any extra dependencies specified by the Makefiles. compile:: $(EXTRA_DEPENDENCIES) dist:: binkit package-info mostlyclean:: clean:: mostlyclean rm -f $(GENERATED_ELCS) $(EARLY_GENERATED_ELCS) $(ELCS) $(ELCS_1) \ $(HTML_FILES) $(INFO_FILES) $(DEPENDS_FILE_NAME) $(EXTRA_DEPENDENCIES) # distclean is what you use when making a distribution. everything that # can get rebuilt should be killed. everything. distclean:: clean rm -f $(GENERATED_LISP) $(EARLY_GENERATED_LISP) package-info $(AUTOLOAD_PATH)/_pkg.el # extraclean means distclean plus removal of backup files, etc. extraclean: distclean rm -f core *~ .*~ .\#* # [[ elcclean is for when you want to rebuild after having made a small # change, e.g. you cvs updated and got new versions of some files. # The problem is that if you just `make', you may have the situation # where a file that needs to be compiled depends on some other # just-updated .el file, and in particular on the features that were # added in the update. In such a case, the .elc file is out-of-date # w.r.t the .el file, and you'd get the .elc file (missing the # necessary features), and error. So we remove the minimum number of # .elc required to ensure that the build will always succeed # correctly. ]] # This is less of an issue now that we ignore out-of-date .elc files. --ben elcclean: $(XEMACS) $(BATCH) -l $(PACKAGE_CLEAN) GENERATED_ELC_DEPENDENCIES = $(ELCS:.elc=.el) $(ELCS_1:.elc=.el) ifeq ($(XEMACS_21_5),t) $(AUTOLOAD_PATH)/auto-autoloads.el : $(GENERATED_ELC_DEPENDENCIES) $(AUTOLOAD_PATH)/_pkg.el $(XEMACS) $(BATCH) -no-autoloads \ -l autoload -f batch-update-directory-autoloads \ $(PACKAGE) $(AUTOLOAD_PATH) @rm -f $(AUTOLOAD_PATH)/auto-autoloads.el~ $(AUTOLOAD_PATH)/custom-defines.el : $(GENERATED_ELC_DEPENDENCIES) $(XEMACS) $(BATCH) -no-autoloads \ -l autoload -f batch-update-directory-custom-defines \ $(PACKAGE) $(AUTOLOAD_PATH) @rm -f $(AUTOLOAD_PATH)/custom-defines.el~ else AUTOLOAD_PACKAGE_NAME = (setq autoload-package-name \"$(PACKAGE)\") AUTOLOAD_FILE = (setq generated-autoload-file \ \"$(AUTOLOAD_PATH)/auto-autoloads.el\") $(AUTOLOAD_PATH)/auto-autoloads.el : $(GENERATED_ELC_DEPENDENCIES) $(AUTOLOAD_PATH)/_pkg.el $(XEMACS) $(BATCH) -no-autoloads \ -eval "$(AUTOLOAD_PACKAGE_NAME)" \ -eval "$(AUTOLOAD_FILE)" \ -l autoload -f batch-update-autoloads $^ @rm -f $(AUTOLOAD_PATH)/auto-autoloads.el~ endif $(AUTOLOAD_PATH)/custom-load.el : $(GENERATED_ELC_DEPENDENCIES) $(XEMACS) $(BATCH) -no-autoloads -l cus-dep \ -f Custom-make-dependencies $(AUTOLOAD_PATH) @rm -f $(AUTOLOAD_PATH)/custom-load.el~ pkg_tar = $(STAGING)/$(PACKAGE)-$(VERSION)-pkg.tar ifeq ($(XEMACS_NATIVE_NT),t) # Convert UNIX-path (containing output of `pwd') to windows-path, # so that XEmacs native NT can handle it. PKG_TAR_GZ = "$(shell cygpath --windows $(pkg_tar)).gz" PACKAGE_INFO = "$(shell cygpath --windows $(STAGING)/$(PACKAGE_INDEX))" else PKG_TAR_GZ = $(pkg_tar).gz PACKAGE_INFO = $(STAGING)/$(PACKAGE_INDEX) endif # Make the $(pkg_tar).gz first, then the $(pkg_tar).bz2 package-info : package-info.in Makefile $(AUTOLOAD_PATH)/_pkg.el \ $(pkg_tar).gz $(pkg_tar).bz2 $(XEMACS) $(BATCH) \ -l package-info.elc -f batch-update-package-info \ '$(VERSION)' $(PKG_TAR_GZ) \ '$(REQUIRES)' \ '$(AUTHOR_VERSION)' '$(MAINTAINER)' '$(CATEGORY)' $(XEMACS) $(BATCH) \ -l ../../hack-package-index.el -f batch-hack-package-index \ $(PACKAGE) package-info $(PACKAGE_INFO) $(CATEGORY) ifeq ($(BUILD_TARS),t) $(pkg_tar): $(STAGING)/$(MANIFEST) @(cd $(STAGING); \ rm -f $(pkg_tar)*) (cd $(STAGING); \ $(TAR) $(EXCLUDES) --create --owner=0 --group=0 --file $(pkg_tar) \ `cat $(MANIFEST)`) $(pkg_tar).gz: $(pkg_tar) ifneq ($(BZIP2),) # need to leave behind the .tar for bzip2 to find. (cd $(STAGING); \ gzip -cv9 $(pkg_tar) > $(pkg_tar).gz;) else # BZIP2 is '' (cd $(STAGING); \ gzip -v9 $(pkg_tar);) endif ifneq ($(BZIP2),) $(pkg_tar).bz2: $(pkg_tar) (cd $(STAGING); \ $(BZIP2) -v9 $(pkg_tar);) else # Don't build a .tar.bz2 $(pkg_tar).bz2: .PHONY: $(pkg_tar).bz2 endif # BZIP2 ? else # when BUILD_TARS is '' # Touch the file so the package-index can be generated $(pkg_tar) $(pkg_tar).gz $(pkg_tar).bz2 : touch $@ endif # BUILD_TARS ? $(AUTOLOAD_PATH)/_pkg.el: Makefile @echo Creating $(AUTOLOAD_PATH)/_pkg.el @echo ";;;###autoload" > $(AUTOLOAD_PATH)/_pkg.el @echo "(package-provide '$(PACKAGE)" >> $(AUTOLOAD_PATH)/_pkg.el @echo " :version $(VERSION)" >> $(AUTOLOAD_PATH)/_pkg.el @echo " :type '$(PKG_TYPE))" >> $(AUTOLOAD_PATH)/_pkg.el ifneq ($(PACKAGE_SUPPRESS),) @echo "" >> $(AUTOLOAD_PATH)/_pkg.el @echo ";;;###autoload" >> $(AUTOLOAD_PATH)/_pkg.el @echo "(when (fboundp 'package-suppress)" >> $(AUTOLOAD_PATH)/_pkg.el @echo " $(PACKAGE_SUPPRESS)" >> $(AUTOLOAD_PATH)/_pkg.el @echo ")" >> $(AUTOLOAD_PATH)/_pkg.el endif .PHONY: binkit-with-html bindist install autoloads bindist: binkit package-info setup-info setup-info: $(XEMACS) $(BATCH) -l $(PACKAGE_NET_PACKAGES) \ -l $(PACKAGE_INFO) \ -f package-net-packages-batch-convert-index-to-ini $(PACKAGE_STAGING) $(CATEGORY) install: binkit ## Do not byte-compile as that could require stuff from elsewhere, and you ## get dependency circles. autoloads: $(EARLY_GENERATED_LISP) binkit-1: check-staging (if test -d $(STAGING); then \ cd $(STAGING); \ if test -f $(MANIFEST); then \ rm -rf `cat $(MANIFEST)`; \ fi; \ fi;) ifneq ($(PACKAGE),) @-mkdir -p $(STAGING)/lisp/$(PACKAGE) endif ifneq ($(ELCS_1),) @-mkdir -p $(STAGING)/lisp/$(ELCS_1_DEST) endif ifneq ($(INFO_FILES),) @-mkdir -p $(STAGING)/info @-mkdir -p $(STAGING)/man/$(PACKAGE) endif ifneq ($(DATA_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_DEST) endif ifneq ($(DATA_1_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_1_DEST) endif ifneq ($(DATA_2_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_2_DEST) endif ifneq ($(DATA_3_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_3_DEST) endif ifneq ($(DATA_4_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_4_DEST) endif ifneq ($(DATA_5_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_5_DEST) endif ifneq ($(DATA_6_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_6_DEST) endif ifneq ($(DATA_7_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_7_DEST) endif ifneq ($(DATA_8_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_8_DEST) endif ifneq ($(DATA_9_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_9_DEST) endif ifneq ($(DATA_10_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_10_DEST) endif ifneq ($(DATA_11_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_11_DEST) endif ifneq ($(DATA_12_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_12_DEST) endif ifneq ($(DATA_13_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_13_DEST) endif ifneq ($(DATA_14_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_14_DEST) endif ifneq ($(DATA_15_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_15_DEST) endif ifneq ($(DATA_16_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_16_DEST) endif ifneq ($(DATA_17_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_17_DEST) endif ifneq ($(DATA_18_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_18_DEST) endif ifneq ($(DATA_19_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_19_DEST) endif ifneq ($(DATA_20_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_20_DEST) endif ifneq ($(DATA_21_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_21_DEST) endif ifneq ($(DATA_22_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_22_DEST) endif ifneq ($(DATA_23_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_23_DEST) endif ifneq ($(DATA_24_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_24_DEST) endif ifneq ($(DATA_25_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_25_DEST) endif ifneq ($(DATA_26_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_26_DEST) endif ifneq ($(DATA_27_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_27_DEST) endif ifneq ($(DATA_28_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_28_DEST) endif ifneq ($(DATA_29_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_29_DEST) endif ifneq ($(DATA_30_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_30_DEST) endif ifneq ($(DATA_31_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_31_DEST) endif ifneq ($(DATA_32_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_32_DEST) endif ifneq ($(DATA_33_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_33_DEST) endif ifneq ($(DATA_34_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_34_DEST) endif ifneq ($(DATA_35_FILES),) @-mkdir -p $(STAGING)/etc/$(DATA_35_DEST) endif ifneq ($(LIBSRC_FILES),) @-mkdir -p $(STAGING)/lib-src endif @-mkdir -p $(STAGING)/pkginfo ifneq ($(PACKAGE),) $(RCOPY) $(addprefix $(PWD)/, ChangeLog $(SOURCE_FILES_TO_COPY) $(EXTRA_SOURCES)) \ $(STAGING)/lisp/$(PACKAGE) endif ifneq ($(ELCS_1),) $(RCOPY) $(addprefix $(PWD)/, $(ELCS_1_FILES)) $(STAGING)/lisp/$(ELCS_1_DEST) endif ifneq ($(INFO_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(INFO_FILES)) $(STAGING)/info $(RCOPY) $(addprefix $(PWD)/, $(TEXI_FILES)) $(STAGING)/man/$(PACKAGE) ifneq ($(EXTRA_DOC_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(EXTRA_DOC_FILES)) $(STAGING)/man/$(PACKAGE) endif endif ifneq ($(DATA_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_FILES)) $(STAGING)/etc/$(DATA_DEST) endif ifneq ($(DATA_1_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_1_FILES)) $(STAGING)/etc/$(DATA_1_DEST) endif ifneq ($(DATA_2_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_2_FILES)) $(STAGING)/etc/$(DATA_2_DEST) endif ifneq ($(DATA_3_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_3_FILES)) $(STAGING)/etc/$(DATA_3_DEST) endif ifneq ($(DATA_4_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_4_FILES)) $(STAGING)/etc/$(DATA_4_DEST) endif ifneq ($(DATA_5_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_5_FILES)) $(STAGING)/etc/$(DATA_5_DEST) endif ifneq ($(DATA_6_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_6_FILES)) $(STAGING)/etc/$(DATA_6_DEST) endif ifneq ($(DATA_7_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_7_FILES)) $(STAGING)/etc/$(DATA_7_DEST) endif ifneq ($(DATA_8_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_8_FILES)) $(STAGING)/etc/$(DATA_8_DEST) endif ifneq ($(DATA_9_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_9_FILES)) $(STAGING)/etc/$(DATA_9_DEST) endif ifneq ($(DATA_10_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_10_FILES)) $(STAGING)/etc/$(DATA_10_DEST) endif ifneq ($(DATA_11_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_11_FILES)) $(STAGING)/etc/$(DATA_11_DEST) endif ifneq ($(DATA_12_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_12_FILES)) $(STAGING)/etc/$(DATA_12_DEST) endif ifneq ($(DATA_13_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_13_FILES)) $(STAGING)/etc/$(DATA_13_DEST) endif ifneq ($(DATA_14_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_14_FILES)) $(STAGING)/etc/$(DATA_14_DEST) endif ifneq ($(DATA_15_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_15_FILES)) $(STAGING)/etc/$(DATA_15_DEST) endif ifneq ($(DATA_16_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_16_FILES)) $(STAGING)/etc/$(DATA_16_DEST) endif ifneq ($(DATA_17_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_17_FILES)) $(STAGING)/etc/$(DATA_17_DEST) endif ifneq ($(DATA_18_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_18_FILES)) $(STAGING)/etc/$(DATA_18_DEST) endif ifneq ($(DATA_19_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_19_FILES)) $(STAGING)/etc/$(DATA_19_DEST) endif ifneq ($(DATA_20_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_20_FILES)) $(STAGING)/etc/$(DATA_20_DEST) endif ifneq ($(DATA_21_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_21_FILES)) $(STAGING)/etc/$(DATA_21_DEST) endif ifneq ($(DATA_22_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_22_FILES)) $(STAGING)/etc/$(DATA_22_DEST) endif ifneq ($(DATA_23_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_23_FILES)) $(STAGING)/etc/$(DATA_23_DEST) endif ifneq ($(DATA_24_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_24_FILES)) $(STAGING)/etc/$(DATA_24_DEST) endif ifneq ($(DATA_25_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_25_FILES)) $(STAGING)/etc/$(DATA_25_DEST) endif ifneq ($(DATA_26_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_26_FILES)) $(STAGING)/etc/$(DATA_26_DEST) endif ifneq ($(DATA_27_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_27_FILES)) $(STAGING)/etc/$(DATA_27_DEST) endif ifneq ($(DATA_28_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_28_FILES)) $(STAGING)/etc/$(DATA_28_DEST) endif ifneq ($(DATA_29_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_29_FILES)) $(STAGING)/etc/$(DATA_29_DEST) endif ifneq ($(DATA_30_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_30_FILES)) $(STAGING)/etc/$(DATA_30_DEST) endif ifneq ($(DATA_31_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_31_FILES)) $(STAGING)/etc/$(DATA_31_DEST) endif ifneq ($(DATA_32_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_32_FILES)) $(STAGING)/etc/$(DATA_32_DEST) endif ifneq ($(DATA_33_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_33_FILES)) $(STAGING)/etc/$(DATA_33_DEST) endif ifneq ($(DATA_34_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_34_FILES)) $(STAGING)/etc/$(DATA_34_DEST) endif ifneq ($(DATA_35_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(DATA_35_FILES)) $(STAGING)/etc/$(DATA_35_DEST) endif ifneq ($(LIBSRC_FILES),) $(RCOPY) $(addprefix $(PWD)/, $(LIBSRC_FILES)) $(STAGING)/lib-src endif (cd $(STAGING); \ ls -1 $(MANIFEST) > $(MANIFEST)) ifneq ($(PACKAGE),) @(cd $(STAGING); \ ls -1 lisp/$(PACKAGE)/ChangeLog \ $(patsubst %, lisp/$(PACKAGE)/%, $(notdir $(SOURCE_FILES_TO_COPY))) \ $(patsubst %, lisp/$(PACKAGE)/%, $(notdir $(EXTRA_SOURCES))) \ >> $(MANIFEST)) endif ifneq ($(ELCS_1),) @(cd $(STAGING); \ ls -1 $(patsubst %, lisp/$(ELCS_1_DEST)/%, $(notdir $(ELCS_1_FILES))) \ >> $(MANIFEST)) endif ifneq ($(INFO_FILES),) @(cd $(STAGING); \ ls -1 man/$(PACKAGE)/* \ $(patsubst %,info/%, $(notdir $(INFO_FILES))) >> $(MANIFEST)) endif ifneq ($(DATA_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_DEST)/%, $(notdir $(DATA_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_1_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_1_DEST)/%, $(notdir $(DATA_1_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_2_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_2_DEST)/%, $(notdir $(DATA_2_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_3_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_3_DEST)/%, $(notdir $(DATA_3_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_4_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_4_DEST)/%, $(notdir $(DATA_4_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_5_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_5_DEST)/%, $(notdir $(DATA_5_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_6_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_6_DEST)/%, $(notdir $(DATA_6_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_7_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_7_DEST)/%, $(notdir $(DATA_7_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_8_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_8_DEST)/%, $(notdir $(DATA_8_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_9_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_9_DEST)/%, $(notdir $(DATA_9_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_10_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_10_DEST)/%, $(notdir $(DATA_10_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_11_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_11_DEST)/%, $(notdir $(DATA_11_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_12_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_12_DEST)/%, $(notdir $(DATA_12_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_13_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_13_DEST)/%, $(notdir $(DATA_13_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_14_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_14_DEST)/%, $(notdir $(DATA_14_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_15_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_15_DEST)/%, $(notdir $(DATA_15_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_16_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_16_DEST)/%, $(notdir $(DATA_16_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_17_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_17_DEST)/%, $(notdir $(DATA_17_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_18_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_18_DEST)/%, $(notdir $(DATA_18_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_19_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_19_DEST)/%, $(notdir $(DATA_19_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_20_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_20_DEST)/%, $(notdir $(DATA_20_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_21_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_21_DEST)/%, $(notdir $(DATA_21_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_22_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_22_DEST)/%, $(notdir $(DATA_22_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_23_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_23_DEST)/%, $(notdir $(DATA_23_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_24_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_24_DEST)/%, $(notdir $(DATA_24_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_25_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_25_DEST)/%, $(notdir $(DATA_25_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_26_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_26_DEST)/%, $(notdir $(DATA_26_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_27_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_27_DEST)/%, $(notdir $(DATA_27_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_28_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_28_DEST)/%, $(notdir $(DATA_28_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_29_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_29_DEST)/%, $(notdir $(DATA_29_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_30_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_30_DEST)/%, $(notdir $(DATA_30_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_31_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_31_DEST)/%, $(notdir $(DATA_31_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_32_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_32_DEST)/%, $(notdir $(DATA_32_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_33_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_33_DEST)/%, $(notdir $(DATA_33_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_34_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_34_DEST)/%, $(notdir $(DATA_34_FILES))) \ >> $(MANIFEST)) endif ifneq ($(DATA_35_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %, etc/$(DATA_35_DEST)/%, $(notdir $(DATA_35_FILES))) \ >> $(MANIFEST)) endif ifneq ($(LIBSRC_FILES),) @(cd $(STAGING); \ ls -1 $(patsubst %,lib-src/%, $(notdir $(LIBSRC_FILES))) >> $(MANIFEST)) endif install-html: check-staging ifneq ($(HTML_FILES),) @-mkdir -p $(STAGING)/html $(RCOPY) $(addprefix $(PWD)/, $(HTML_FILES)) $(STAGING)/html @(cd $(STAGING); \ ls -1 $(patsubst %,html/%, $(notdir $(HTML_FILES))) >> $(MANIFEST)) endif binkit: binkit-1 ifeq ($(INSTALL_HTML),t) binkit: install-html endif binkit-with-html: html binkit-1 install-html # Export dependencies for outer make file usage # Passed in from outer Make TARGET_BASE= # Build depends is a clean version of Requires BDEPENDS=$(strip $(filter-out $(PACKAGE),$(REQUIRES))) $(DEPENDS_FILE_NAME): Makefile $(XEMACS_PACKAGES_BASE)/XEmacs.rules ifneq ($(TARGET_BASE),) -rm -f $(DEPENDS_FILE_NAME) @echo Creating $(DEPENDS_FILE_NAME) @echo > $(DEPENDS_FILE_NAME) ifneq ($(BDEPENDS),) @echo $(TARGET_BASE)$(PACKAGE)/autoloads.target: \ $(TARGET_BASE)$(BDEPENDS:=/autoloads.target) \ >>$(DEPENDS_FILE_NAME) @echo $(TARGET_BASE)$(PACKAGE)/compile.target: \ $(TARGET_BASE)$(BDEPENDS:=/compile.target) \ >>$(DEPENDS_FILE_NAME) endif endif # Local Variables: # mode: makefile # End:
| root@alioth.debian.org | ViewVC Help |
| Powered by ViewVC 1.0.0 |

