SCM

SCM Repository

[xemacs] Annotation of /XEmacs/packages/XEmacs.rules
ViewVC logotype

Annotation of /XEmacs/packages/XEmacs.rules

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.49 - (view) (download)

1 : ben 1.24 # Common Makefile material for package Makefiles
2 : steve 1.1 # Copyright (C) 1997 Free Software Foundation Inc.
3 : ben 1.43 # Copyright (C) 2002, 2003 Ben Wing.
4 : steve 1.1
5 :     # This file is part of XEmacs.
6 :    
7 :     # XEmacs is free software; you can redistribute it and/or modify it
8 :     # under the terms of the GNU General Public License as published by the
9 :     # Free Software Foundation; either version 2, or (at your option) any
10 :     # later version.
11 :    
12 :     # XEmacs is distributed in the hope that it will be useful, but WITHOUT
13 :     # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 :     # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15 :     # for more details.
16 :    
17 :     # You should have received a copy of the GNU General Public License
18 :     # along with XEmacs; see the file COPYING. If not, write to
19 :     # the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20 :     # Boston, MA 02111-1307, USA.
21 :    
22 : andreasj 1.17 # Requires XEmacs 21.0-beta19 or greater and GNU Make 3.78 or greater.
23 : steve 1.1
24 : ben 1.43 # Settings that a Makefile can specify (all settings need to be done
25 :     # BEFORE including XEmacs.rules; if you need something from Local.rules
26 :     # in order to determine the settings properly -- e.g. BUILD_WITHOUT_MULE --
27 :     # include Local.rules.inc at the top of your Makefile):
28 :     #
29 :     # At the top of every Makefile:
30 :     # -----------------------------
31 :     #
32 :     # VERSION = 1.10
33 :     # MAINTAINER = Joe Shmoe <joe@shmoe.org>, or
34 :     # MAINTAINER = XEmacs Development Team <xemacs-beta@xemacs.org>
35 :     # PACKAGE = my-package
36 :     # PKG_TYPE = regular or single-file (each file is a separate package)
37 :     # REQUIRES = list of packages that must be available to compile the .elcs
38 :     # CATEGORY = standard, mule, or unsupported
39 :     #
40 :     # Optionally:
41 :     # -----------
42 :     #
43 :     # AUTHOR_VERSION = 1.4.9
44 :     # PACKAGE_SUPPRESS = calls to `package-suppress' to indicate packages that
45 :     # should be available only in particular versions of XEmacs, e.g.:
46 :     #
47 :     # PACKAGE_SUPPRESS = \
48 :     # (package-suppress 'xemacs-base \"regexp-opt\" '(emacs-version>= 21 5 11)) \
49 :     # (package-suppress 'xemacs-base \"easy-mmode\" '(emacs-version>= 21 5 11))
50 :     #
51 :     #
52 :     # Lisp files:
53 :     # -----------
54 :     #
55 :     # ELCS = .elc files to compile
56 :     # ELCS_1 = more .elc files to compile, to be installed in a subdirectory of
57 :     # lisp/
58 :     # ELCS_1_DEST = name of subdirectory to install them into; include
59 :     # $(PACKAGE) in the name
60 :     # EARLY_GENERATED_LISP = additional .el files that will be generated before
61 :     # any byte-compilation (use this for autoloads-type files); rules must be
62 :     # given to build them
63 :     # GENERATED_LISP = additional .el files that will be generated at
64 :     # byte-compilation time; rules must be given to build them
65 :     # PRELOADS = additional command-line arguments needed when compiling .elcs
66 :     # AUTOLOAD_PATH = subdirectory in source tree where .elcs are located (this
67 :     # is where auto-autoloads.el, etc. will be placed)
68 :     #
69 :     # Doc files (see below):
70 :     # ----------------------
71 :     #
72 :     # (1) The preferred way:
73 :     #
74 :     # EXPLICIT_DOCS, STANDARD_DOCS, EXTRA_TEXI_FILES, EXTRA_HTML_FILES,
75 :     # DOCS_TEXINFO_EXTENSION, DOCS_TXI_EXTENSION
76 :     #
77 :     # (2) The hard way:
78 :     #
79 :     # TEXI_FILES, INFO_FILES, INFO_DEP, HTML_FILES, HTML_DEP
80 :     #
81 :     # Also: EXTRA_DOC_FILES
82 :     #
83 :     # Other files to build:
84 :     # ---------------------
85 :     #
86 :     # EXTRA_DEPENDENCIES = additional files to build; rules must be given to
87 :     # build them
88 :     #
89 :     # Files to install, besides the .elcs, docs, ChangeLog and _pkg.el:
90 :     # -----------------------------------------------------------------
91 :     #
92 :     # EXTRA_SOURCES = files installed under lisp/$(PACKAGE)
93 :     # LIBSRC_FILES = files installed under lib-src/
94 :     # DATA_FILES, DATA_DEST = files installed under a subdirectory of etc/; include
95 :     # $(PACKAGE) in the name
96 :     # DATA_1_FILES, DATA_1_DEST ... DATA_35_FILES, DATA_35_DEST = files to be
97 :     # installed in other subdirectories of etc/
98 :    
99 : andreasj 1.17 XEMACS_PACKAGES_BASE := $(shell while [ ! -f XEmacs.rules ]; do \
100 :     cd ..; \
101 :     done; \
102 :     pwd)
103 : steve 1.1
104 : ben 1.43 include ${XEMACS_PACKAGES_BASE}/Local.rules.inc
105 : steveb 1.7
106 : steveb 1.14 # Ensure vanilla locale when building
107 : andreasj 1.17 override LANG := C
108 : steve 1.4
109 : steveb 1.11 # Only in rare cases will you need to override this
110 : andreasj 1.17 ifeq ($(AUTOLOAD_PATH),)
111 : steveb 1.11 AUTOLOAD_PATH = .
112 :     endif
113 :    
114 : ben 1.43 # Set this in the package Makefile if necessary (BEFORE including this file)
115 : youngs 1.46 EARLY_GENERATED_LISP := $(AUTOLOAD_PATH)/auto-autoloads.el \
116 :     $(AUTOLOAD_PATH)/custom-load.el $(EARLY_GENERATED_LISP)
117 : ben 1.43 ifeq ($(XEMACS_21_5),t)
118 :     EARLY_GENERATED_LISP += $(AUTOLOAD_PATH)/custom-defines.el
119 : youngs 1.44 endif
120 : ben 1.43
121 :     EARLY_GENERATED_ELCS = $(EARLY_GENERATED_LISP:.el=.elc)
122 :     GENERATED_ELCS = $(GENERATED_LISP:.el=.elc)
123 : steveb 1.9
124 :     # SOURCE_FILES_TO_COPY = *.el*
125 : steveb 1.11 SOURCE_FILES_TO_COPY = $(ELCS) $(ELCS:.elc=.el) \
126 :     $(MULE_ELCS) $(MULE_ELCS:.elc=.el) \
127 : ben 1.43 $(EARLY_GENERATED_ELCS) $(EARLY_GENERATED_LISP) \
128 :     $(GENERATED_ELCS) $(GENERATED_LISP) $(AUTOLOAD_PATH)/_pkg.el
129 : steveb 1.8
130 : steve 1.1 # Non configurable portion follows
131 :    
132 : steveb 1.9 MANIFEST = pkginfo/MANIFEST.$(PACKAGE)
133 : andreasj 1.17 # This might be a sublevel PWD; that is intentional. Use
134 :     # ${XEMACS_PACKAGES_BASE} for the toplevel directory.
135 :     PWD := $(shell pwd)
136 : steveb 1.9
137 : steve 1.1 .SUFFIXES:
138 : ben 1.43 .SUFFIXES: .html .info .txi .texi .texinfo .dvi .ps .pdf .elc .el
139 : steve 1.1
140 : scop 1.41 # STAGING is the top of the directory tree where a particular package's
141 :     # files are installed, or where tarballs are installed using `make bindist'.
142 :    
143 :     # 'make bindist' needs STAGING to be set to NONMULE_INSTALLED_PACKAGES_ROOT
144 :     # if we are building a Mule package so we don't end up with 2 package-index
145 : youngs 1.42 # files.
146 : scop 1.41
147 : youngs 1.42 ifeq ('$(MAKECMDGOALS)','bindist')
148 :     STAGING:= $(NONMULE_INSTALLED_PACKAGES_ROOT)
149 : scop 1.41 else
150 : youngs 1.42 ifeq ('$(CATEGORY)','mule')
151 :     STAGING:= $(MULE_INSTALLED_PACKAGES_ROOT)
152 : scop 1.41 else
153 :     STAGING:= $(NONMULE_INSTALLED_PACKAGES_ROOT)
154 :     endif
155 :     endif
156 :    
157 : ben 1.43 #####################################
158 :     # Handle docs #
159 :     #####################################
160 :    
161 : scop 1.41 # If something goes wrong and $(STAGING) is blank, the commands below will
162 :     # attempt to install files into absolute paths /lisp/* and /etc/* -- not
163 :     # a good idea at all.
164 :    
165 :     check-staging:
166 :     ifeq ($(STAGING),)
167 :     $(error STAGING is not set; potential major filesystem trashing! Fix this)
168 :     endif
169 :    
170 : ben 1.43 check-mule:
171 :     ifeq ($(CATEGORY),mule)
172 :     ifneq ($(BUILD_WITHOUT_MULE),)
173 :     $(error This package needs Mule support in order to be compiled)
174 :     endif
175 :     endif
176 :    
177 :     # Possibilities for building the docs:
178 :     #
179 :     # (1) EXPLICIT_DOCS = <texi files>
180 :     # Build the specified .texi files. Info and HTML files automatically
181 :     # computed from the .texi files.
182 :     # (2) STANDARD_DOCS = t
183 :     # Same as EXPLICIT_DOCS = $(PACKAGE).texi
184 :     # (3) Manual: Specify TEXI_FILES, INFO_FILES, INFO_DEP, HTML_FILES, and
185 :     # HTML_DEP by yourself. Do not explicitly add any doc targets to
186 :     # compile::.
187 :     #
188 :     # When EXPLICIT_DOCS or STANDARD_DOCS is given:
189 :     #
190 :     # (1) you can specify other .texi files included in the files specified in
191 :     # EXPLICIT_DOCS using EXTRA_TEXI_FILES (they will be listed as
192 :     # dependencies of the info and html files)
193 :     # (2) you can specify extra .html output files using EXTRA_HTML_FILES
194 :     # (3) you can use `DOCS_TEXINFO_EXTENSION = t' to indicate that the
195 :     # explicitly specified docs have .texinfo as the extension instead of
196 :     # .texi. Similarly for `DOCS_TXI_EXTENSION = t'.
197 :     #
198 :     # You can also specify EXTRA_DOC_FILES in all cases to indicate extra files
199 :     # to be copied into the man/ directory at installation time.
200 :    
201 :     ifeq ($(STANDARD_DOCS),t)
202 :     EXPLICIT_DOCS = $(PACKAGE).texi
203 :     endif
204 :    
205 :     ifneq ($(EXPLICIT_DOCS),)
206 :     ifeq ($(DOCS_TEXINFO_EXTENSION),t)
207 :     EXPLICIT_DOCS_AS_TEXI=$(EXPLICIT_DOCS:%.texinfo=%.texi)
208 :     else
209 :     ifeq ($(DOCS_TXI_EXTENSION),t)
210 :     EXPLICIT_DOCS_AS_TEXI=$(EXPLICIT_DOCS:%.txi=%.texi)
211 :     else
212 :     EXPLICIT_DOCS_AS_TEXI=$(EXPLICIT_DOCS)
213 :     endif
214 :     endif
215 : youngs 1.49
216 :     # Ensure the correct setting of $TEXI_FILES. --SY.
217 :     TEXI_FILES = $(EXPLICIT_DOCS)
218 :     ifeq ($(DOCS_TEXINFO_EXTENSION),t)
219 :     TEXI_FILES = $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.texinfo)
220 :     endif
221 :     ifeq ($(DOCS_TXI_EXTIONSION),t)
222 :     TEXI_FILES = $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.txi)
223 :     endif
224 :    
225 :     TEXI_FILES += $(EXTRA_TEXI_FILES)
226 : ben 1.43 INFO_FILES = $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.info*)
227 :     INFO_DEP = $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.info)
228 :    
229 :     $(INFO_DEP): $(EXTRA_TEXI_FILES)
230 :    
231 :     mostlyclean::
232 :     rm -f $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.toc) \
233 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.aux) \
234 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.oaux) \
235 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.log) \
236 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.cp) \
237 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.cps) \
238 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.fn) \
239 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.fns) \
240 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.tp) \
241 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.tps) \
242 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.vr) \
243 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.vrs) \
244 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.pg) \
245 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.pgs) \
246 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.ky) \
247 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.kys)
248 :    
249 :     clean::
250 :     rm -f $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.dvi) \
251 :     $(EXPLICIT_DOCS_AS_TEXI:%.texi=%.ps)
252 :    
253 :     HTML_FILES = $(EXPLICIT_DOCS_AS_TEXI:%.texi=%*.html) $(EXTRA_HTML_FILES)
254 :     HTML_DEP = $(EXPLICIT_DOCS_AS_TEXI:%.texi=%_toc.html)
255 :    
256 :     $(HTML_DEP): $(EXTRA_TEXI_FILES)
257 :    
258 :     endif
259 : youngs 1.33
260 : ben 1.43 html: $(HTML_DEP)
261 :    
262 :     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
263 :    
264 :     FORMAT_INFO_USING_XEMACS_ARGS = $(FORMAT_INFO_USING_XEMACS_NO_SAVE_ARGS) -f save-buffer
265 :    
266 :     FORMAT_INFO_USING_XEMACS = \
267 :     $(XEMACS) $(BATCH) -insert $< $(FORMAT_INFO_USING_XEMACS_ARGS)
268 :    
269 :     FORMAT_MULE_INFO_USING_XEMACS = \
270 : scop 1.41 $(XEMACS) $(BATCH) -insert $< \
271 : youngs 1.33 -eval '(unless (featurep (quote mule)) (kill-emacs 0))' \
272 : ben 1.43 -eval '(cd "$(<D)")' \
273 :     $(FORMAT_INFO_USING_XEMACS_NO_SAVE_ARGS) \
274 : youngs 1.33 -eval '(setq file-coding-system (quote iso-2022-7))' \
275 :     -eval '(save-buffer 0)'
276 :    
277 : ben 1.43 # makeinfo doesn't seem able to handle Mule-formatted files correctly, so
278 :     # we need to use the texinfo package. #### Switch to UTF-8 and this should
279 :     # go away.
280 :     ifeq ($(COMPILE_INFO_AS_MULE),t)
281 :     FORMAT_INFO = $(FORMAT_MULE_INFO_USING_XEMACS)
282 :     else
283 :     FORMAT_INFO = cd $(@D) && $(MAKEINFO) $(MAKEINFO_FLAGS) -o $(@F) $(<F)
284 :     endif
285 :    
286 :     %-ja.info: %-ja.texi
287 :     $(FORMAT_MULE_INFO_USING_XEMACS)
288 :    
289 :     %.info: %.txi
290 :     $(FORMAT_INFO)
291 : steve 1.1 %.info: %.texi
292 : ben 1.43 $(FORMAT_INFO)
293 :     %.info: %.texinfo
294 :     $(FORMAT_INFO)
295 :    
296 :     ## Make sure to cd into the directory before running texi2html because it
297 :     ## puts its results in the current directory, not the directory of the
298 :     ## source file.
299 :    
300 :     # V 1.56k (with Cygwin) does not allow -p flag. Works fine without it.
301 :     #RUN_TEXI2HTML = cd $(@D) && $(TEXI2HTML) $(TEXI2HTML_FLAGS) -p $(<F)
302 :     RUN_TEXI2HTML = cd $(@D) && $(TEXI2HTML) $(TEXI2HTML_FLAGS) $(<F)
303 : steve 1.1
304 : ben 1.43 %_toc.html: %.txi
305 :     $(RUN_TEXI2HTML)
306 :     %_toc.html: %.texi
307 :     $(RUN_TEXI2HTML)
308 :     %_toc.html: %.texinfo
309 :     $(RUN_TEXI2HTML)
310 :    
311 :     # #### I'm not sure if this is correct. xslt-process seems to think it
312 :     # needs to be run twice.
313 :     ifneq ($(TEXI2DVI),)
314 :     RUN_TEXI2DVI = cd $(@D) && $(TEXI2DVI) $(<F) && $(TEXI2DVI) $(<F)
315 :     else
316 :     RUN_TEXI2DVI = -
317 : youngs 1.30 endif
318 : ben 1.43
319 :     %.dvi: %.txi
320 :     $(RUN_TEXI2DVI)
321 :     %.dvi: %.texi
322 :     $(RUN_TEXI2DVI)
323 :     %.dvi: %.texinfo
324 :     $(RUN_TEXI2DVI)
325 :    
326 :     ifneq ($(TEXI2PDF),)
327 :     RUN_TEXI2PDF = cd $(@D) && $(TEXI2PDF) $(<F)
328 :     else
329 :     RUN_TEXI2PDF = -
330 : youngs 1.30 endif
331 : youngs 1.27
332 : ben 1.43 %.pdf: %.txi
333 :     $(RUN_TEXI2PDF)
334 :     %.pdf: %.texi
335 :     $(RUN_TEXI2PDF)
336 :     %.pdf: %.texinfo
337 :     $(RUN_TEXI2PDF)
338 :    
339 :     ifneq ($(DVIPS),)
340 :     RUN_DVIPS = cd $(@D) && $(DVIPS) -o $(@F) $(<F)
341 :     else
342 :     RUN_DVIPS = -
343 :     endif
344 : youngs 1.27
345 : ben 1.43 %.ps: %.dvi
346 :     $(RUN_DVIPS)
347 : youngs 1.27
348 : adrian 1.19 ifeq ($(XEMACS_NATIVE_NT),t)
349 : ben 1.24 # Convert UNIX-path (containing output of `pwd') to windows-path, so
350 :     # that XEmacs native NT can handle it.
351 : adrian 1.19 PACKAGE_COMPILE = \
352 :     "$(shell cygpath --windows $(XEMACS_PACKAGES_BASE)/package-compile.el)"
353 : ben 1.24 PACKAGE_CLEAN = \
354 :     "$(shell cygpath --windows $(XEMACS_PACKAGES_BASE)/package-clean.el)"
355 : adrian 1.26 PACKAGE_NET_PACKAGES = \
356 :     "$(shell cygpath --windows $(XEMACS_PACKAGES_BASE)/package-net-packages.el)"
357 :     PACKAGE_STAGING = \
358 :     "$(shell cygpath --windows $(STAGING))"
359 : adrian 1.19 else
360 :     PACKAGE_COMPILE = $(XEMACS_PACKAGES_BASE)/package-compile.el
361 : ben 1.24 PACKAGE_CLEAN = $(XEMACS_PACKAGES_BASE)/package-clean.el
362 : adrian 1.26 PACKAGE_NET_PACKAGES = $(XEMACS_PACKAGES_BASE)/package-net-packages.el
363 :     PACKAGE_STAGING = $(STAGING)
364 : adrian 1.19 endif
365 :    
366 : ben 1.43 # Behaves like an XEmacs with the required packages set up
367 : scop 1.41 BOOT_XEMACS= $(XEMACS) -no-autoloads $(BATCH) -l $(PACKAGE_COMPILE) -- $(REQUIRES) -- $(PRELOADS)
368 : youngs 1.31
369 : steve 1.1 %.elc: %.el
370 : youngs 1.31 $(BOOT_XEMACS) -f batch-byte-compile $<
371 : steve 1.1
372 : ben 1.43 # compile must be :: because some packages (e.g. psgml-dtd?) put separate
373 :     # commands that apply only to those particular dependencies.
374 :     compile:: check-mule
375 :    
376 :     # Build the generated stuff if we're in the top-level of a package directory
377 :     # but not otherwise.
378 :     ifneq ($(PACKAGE),)
379 : scop 1.41 compile:: $(AUTOLOAD_PATH)/_pkg.el
380 : ben 1.43 endif
381 :    
382 :     ## first, the byte-compile the files generated earlier (auto-autoloads.el,
383 :     ## etc.), now that we have all of them and hence can handle dependencies.
384 :     ## then, generate and compile the other generated files.
385 :     compile:: $(EARLY_GENERATED_ELCS) $(GENERATED_ELCS)
386 :    
387 :     ## now compile the main Lisp
388 :     compile:: $(ELCS) $(ELCS_1)
389 :    
390 :     ## now the docs, info format.
391 :     compile:: $(INFO_DEP)
392 :    
393 :     ## now the docs, html format (maybe).
394 :     ifeq ($(INSTALL_HTML),t)
395 :     compile:: html
396 :     endif
397 :    
398 :     ## now, any extra dependencies specified by the Makefiles.
399 :     compile:: $(EXTRA_DEPENDENCIES)
400 : steveb 1.13
401 : scop 1.39 dist:: binkit package-info
402 : steve 1.1
403 : ben 1.43 mostlyclean::
404 : steve 1.1
405 : ben 1.43 clean:: mostlyclean
406 :     rm -f $(GENERATED_ELCS) $(EARLY_GENERATED_ELCS) $(ELCS) $(ELCS_1) \
407 :     $(HTML_FILES) $(INFO_FILES) $(DEPENDS_FILE_NAME) $(EXTRA_DEPENDENCIES)
408 : steve 1.1
409 : ben 1.43 # distclean is what you use when making a distribution. everything that
410 :     # can get rebuilt should be killed. everything.
411 : steve 1.1
412 : ben 1.43 distclean:: clean
413 :     rm -f $(GENERATED_LISP) $(EARLY_GENERATED_LISP) package-info $(AUTOLOAD_PATH)/_pkg.el
414 : ben 1.28
415 : ben 1.43 # extraclean means distclean plus removal of backup files, etc.
416 :     extraclean: distclean
417 :     rm -f core *~ .*~ .\#*
418 : ben 1.28
419 : ben 1.43 # [[ elcclean is for when you want to rebuild after having made a small
420 : ben 1.28 # change, e.g. you cvs updated and got new versions of some files.
421 :     # The problem is that if you just `make', you may have the situation
422 :     # where a file that needs to be compiled depends on some other
423 :     # just-updated .el file, and in particular on the features that were
424 :     # added in the update. In such a case, the .elc file is out-of-date
425 :     # w.r.t the .el file, and you'd get the .elc file (missing the
426 :     # necessary features), and error. So we remove the minimum number of
427 :     # .elc required to ensure that the build will always succeed
428 : ben 1.43 # correctly. ]]
429 :    
430 :     # This is less of an issue now that we ignore out-of-date .elc files. --ben
431 : steve 1.1
432 : ben 1.24 elcclean:
433 : scop 1.41 $(XEMACS) $(BATCH) -l $(PACKAGE_CLEAN)
434 : ben 1.24
435 : ben 1.43 GENERATED_ELC_DEPENDENCIES = $(ELCS:.elc=.el) $(ELCS_1:.elc=.el)
436 :    
437 :     ifeq ($(XEMACS_21_5),t)
438 :     $(AUTOLOAD_PATH)/auto-autoloads.el : $(GENERATED_ELC_DEPENDENCIES) $(AUTOLOAD_PATH)/_pkg.el
439 :     $(XEMACS) $(BATCH) -no-autoloads \
440 :     -l autoload -f batch-update-directory-autoloads \
441 :     $(PACKAGE) $(AUTOLOAD_PATH)
442 :     @rm -f $(AUTOLOAD_PATH)/auto-autoloads.el~
443 :    
444 :     $(AUTOLOAD_PATH)/custom-defines.el : $(GENERATED_ELC_DEPENDENCIES)
445 :     $(XEMACS) $(BATCH) -no-autoloads \
446 :     -l autoload -f batch-update-directory-custom-defines \
447 :     $(PACKAGE) $(AUTOLOAD_PATH)
448 :     @rm -f $(AUTOLOAD_PATH)/custom-defines.el~
449 :    
450 : adrian 1.19 else
451 :     AUTOLOAD_PACKAGE_NAME = (setq autoload-package-name \"$(PACKAGE)\")
452 : youngs 1.34 AUTOLOAD_FILE = (setq generated-autoload-file \
453 :     \"$(AUTOLOAD_PATH)/auto-autoloads.el\")
454 : adrian 1.19
455 : ben 1.43 $(AUTOLOAD_PATH)/auto-autoloads.el : $(GENERATED_ELC_DEPENDENCIES) $(AUTOLOAD_PATH)/_pkg.el
456 : scop 1.41 $(XEMACS) $(BATCH) -no-autoloads \
457 : adrian 1.19 -eval "$(AUTOLOAD_PACKAGE_NAME)" \
458 : youngs 1.34 -eval "$(AUTOLOAD_FILE)" \
459 : youngs 1.35 -l autoload -f batch-update-autoloads $^
460 : steveb 1.11 @rm -f $(AUTOLOAD_PATH)/auto-autoloads.el~
461 : ben 1.43 endif
462 : steve 1.1
463 : ben 1.43 $(AUTOLOAD_PATH)/custom-load.el : $(GENERATED_ELC_DEPENDENCIES)
464 :     $(XEMACS) $(BATCH) -no-autoloads -l cus-dep \
465 : steveb 1.11 -f Custom-make-dependencies $(AUTOLOAD_PATH)
466 : youngs 1.46 @touch $(AUTOLOAD_PATH)/custom-load.el
467 : ben 1.43 @rm -f $(AUTOLOAD_PATH)/custom-load.el~
468 : steve 1.1
469 : andreasj 1.17 pkg_tar = $(STAGING)/$(PACKAGE)-$(VERSION)-pkg.tar
470 :    
471 : adrian 1.19 ifeq ($(XEMACS_NATIVE_NT),t)
472 : ben 1.24 # Convert UNIX-path (containing output of `pwd') to windows-path,
473 : adrian 1.19 # so that XEmacs native NT can handle it.
474 :     PKG_TAR_GZ = "$(shell cygpath --windows $(pkg_tar)).gz"
475 : adrian 1.22 PACKAGE_INFO = "$(shell cygpath --windows $(STAGING)/$(PACKAGE_INDEX))"
476 : adrian 1.19 else
477 :     PKG_TAR_GZ = $(pkg_tar).gz
478 : adrian 1.22 PACKAGE_INFO = $(STAGING)/$(PACKAGE_INDEX)
479 : adrian 1.19 endif
480 :    
481 : andreasj 1.17 # Make the $(pkg_tar).gz first, then the $(pkg_tar).bz2
482 : steveb 1.12 package-info : package-info.in Makefile $(AUTOLOAD_PATH)/_pkg.el \
483 : andreasj 1.17 $(pkg_tar).gz $(pkg_tar).bz2
484 : scop 1.41 $(XEMACS) $(BATCH) \
485 : youngs 1.25 -l package-info.elc -f batch-update-package-info \
486 : adrian 1.19 '$(VERSION)' $(PKG_TAR_GZ) \
487 : steve 1.4 '$(REQUIRES)' \
488 :     '$(AUTHOR_VERSION)' '$(MAINTAINER)' '$(CATEGORY)'
489 : scop 1.41 $(XEMACS) $(BATCH) \
490 : steveb 1.11 -l ../../hack-package-index.el -f batch-hack-package-index \
491 : scop 1.41 $(PACKAGE) package-info $(PACKAGE_INFO) $(CATEGORY)
492 : steveb 1.11
493 : andreasj 1.17 ifeq ($(BUILD_TARS),t)
494 :     $(pkg_tar): $(STAGING)/$(MANIFEST)
495 :     @(cd $(STAGING); \
496 :     rm -f $(pkg_tar)*)
497 :    
498 :     (cd $(STAGING); \
499 : youngs 1.34 $(TAR) $(EXCLUDES) --create --owner=0 --group=0 --file $(pkg_tar) \
500 : andreasj 1.17 `cat $(MANIFEST)`)
501 :    
502 :    
503 :     $(pkg_tar).gz: $(pkg_tar)
504 :     ifneq ($(BZIP2),) # need to leave behind the .tar for bzip2 to find.
505 :     (cd $(STAGING); \
506 :     gzip -cv9 $(pkg_tar) > $(pkg_tar).gz;)
507 :     else # BZIP2 is ''
508 :     (cd $(STAGING); \
509 :     gzip -v9 $(pkg_tar);)
510 :     endif
511 :    
512 :     ifneq ($(BZIP2),)
513 :     $(pkg_tar).bz2: $(pkg_tar)
514 :     (cd $(STAGING); \
515 :     $(BZIP2) -v9 $(pkg_tar);)
516 :     else # Don't build a .tar.bz2
517 :     $(pkg_tar).bz2:
518 :    
519 :     .PHONY: $(pkg_tar).bz2
520 :     endif # BZIP2 ?
521 :    
522 :     else # when BUILD_TARS is ''
523 :     # Touch the file so the package-index can be generated
524 :     $(pkg_tar) $(pkg_tar).gz $(pkg_tar).bz2 :
525 :     touch $@
526 :     endif # BUILD_TARS ?
527 :    
528 : steve 1.1
529 : steveb 1.12 $(AUTOLOAD_PATH)/_pkg.el: Makefile
530 :     @echo Creating $(AUTOLOAD_PATH)/_pkg.el
531 :     @echo ";;;###autoload" > $(AUTOLOAD_PATH)/_pkg.el
532 :     @echo "(package-provide '$(PACKAGE)" >> $(AUTOLOAD_PATH)/_pkg.el
533 :     @echo " :version $(VERSION)" >> $(AUTOLOAD_PATH)/_pkg.el
534 :     @echo " :type '$(PKG_TYPE))" >> $(AUTOLOAD_PATH)/_pkg.el
535 : ben 1.43 ifneq ($(PACKAGE_SUPPRESS),)
536 :     @echo "" >> $(AUTOLOAD_PATH)/_pkg.el
537 :     @echo ";;;###autoload" >> $(AUTOLOAD_PATH)/_pkg.el
538 :     @echo "(when (fboundp 'package-suppress)" >> $(AUTOLOAD_PATH)/_pkg.el
539 :     @echo " $(PACKAGE_SUPPRESS)" >> $(AUTOLOAD_PATH)/_pkg.el
540 :     @echo ")" >> $(AUTOLOAD_PATH)/_pkg.el
541 :     endif
542 : steve 1.1
543 : ben 1.43 .PHONY: binkit-with-html bindist install autoloads
544 : steve 1.3
545 : youngs 1.45 bindist: compile binkit package-info setup-info
546 : youngs 1.25
547 :     setup-info:
548 : scop 1.41 $(XEMACS) $(BATCH) -l $(PACKAGE_NET_PACKAGES) \
549 : adrian 1.26 -l $(PACKAGE_INFO) \
550 : scop 1.41 -f package-net-packages-batch-convert-index-to-ini $(PACKAGE_STAGING) $(CATEGORY)
551 : steve 1.1
552 : youngs 1.45 install: compile binkit
553 : youngs 1.46
554 : youngs 1.47 # A target that _only_ installs and doesn't build _anything_
555 :     install-only: binkit
556 : steveb 1.11
557 : ben 1.43 ## Do not byte-compile as that could require stuff from elsewhere, and you
558 :     ## get dependency circles.
559 :     autoloads: $(EARLY_GENERATED_LISP)
560 : andreasj 1.17
561 : ben 1.43 binkit-1: check-staging
562 : andreasj 1.17 (if test -d $(STAGING); then \
563 :     cd $(STAGING); \
564 :     if test -f $(MANIFEST); then \
565 : steveb 1.11 rm -rf `cat $(MANIFEST)`; \
566 : andreasj 1.17 fi; \
567 : steveb 1.11 fi;)
568 : ben 1.43 ifneq ($(PACKAGE),)
569 : steveb 1.11 @-mkdir -p $(STAGING)/lisp/$(PACKAGE)
570 : ben 1.43 endif
571 : andreasj 1.17 ifneq ($(ELCS_1),)
572 : steveb 1.11 @-mkdir -p $(STAGING)/lisp/$(ELCS_1_DEST)
573 :     endif
574 : andreasj 1.17 ifneq ($(INFO_FILES),)
575 : steveb 1.11 @-mkdir -p $(STAGING)/info
576 :     @-mkdir -p $(STAGING)/man/$(PACKAGE)
577 :     endif
578 : andreasj 1.17 ifneq ($(DATA_FILES),)
579 : steveb 1.11 @-mkdir -p $(STAGING)/etc/$(DATA_DEST)
580 :     endif
581 : andreasj 1.17 ifneq ($(DATA_1_FILES),)
582 : steveb 1.11 @-mkdir -p $(STAGING)/etc/$(DATA_1_DEST)
583 :     endif
584 : andreasj 1.17 ifneq ($(DATA_2_FILES),)
585 : steveb 1.11 @-mkdir -p $(STAGING)/etc/$(DATA_2_DEST)
586 :     endif
587 : andreasj 1.17 ifneq ($(DATA_3_FILES),)
588 : steveb 1.11 @-mkdir -p $(STAGING)/etc/$(DATA_3_DEST)
589 :     endif
590 : andreasj 1.17 ifneq ($(DATA_4_FILES),)
591 : steveb 1.11 @-mkdir -p $(STAGING)/etc/$(DATA_4_DEST)
592 :     endif
593 : andreasj 1.17 ifneq ($(DATA_5_FILES),)
594 : steveb 1.11 @-mkdir -p $(STAGING)/etc/$(DATA_5_DEST)
595 :     endif
596 : andreasj 1.17 ifneq ($(DATA_6_FILES),)
597 : steveb 1.16 @-mkdir -p $(STAGING)/etc/$(DATA_6_DEST)
598 :     endif
599 : andreasj 1.17 ifneq ($(DATA_7_FILES),)
600 : steveb 1.16 @-mkdir -p $(STAGING)/etc/$(DATA_7_DEST)
601 :     endif
602 : andreasj 1.17 ifneq ($(DATA_8_FILES),)
603 : steveb 1.16 @-mkdir -p $(STAGING)/etc/$(DATA_8_DEST)
604 :     endif
605 : michaels 1.20 ifneq ($(DATA_9_FILES),)
606 :     @-mkdir -p $(STAGING)/etc/$(DATA_9_DEST)
607 :     endif
608 :     ifneq ($(DATA_10_FILES),)
609 :     @-mkdir -p $(STAGING)/etc/$(DATA_10_DEST)
610 :     endif
611 :     ifneq ($(DATA_11_FILES),)
612 :     @-mkdir -p $(STAGING)/etc/$(DATA_11_DEST)
613 :     endif
614 :     ifneq ($(DATA_12_FILES),)
615 :     @-mkdir -p $(STAGING)/etc/$(DATA_12_DEST)
616 :     endif
617 :     ifneq ($(DATA_13_FILES),)
618 :     @-mkdir -p $(STAGING)/etc/$(DATA_13_DEST)
619 :     endif
620 :     ifneq ($(DATA_14_FILES),)
621 :     @-mkdir -p $(STAGING)/etc/$(DATA_14_DEST)
622 :     endif
623 :     ifneq ($(DATA_15_FILES),)
624 :     @-mkdir -p $(STAGING)/etc/$(DATA_15_DEST)
625 :     endif
626 :     ifneq ($(DATA_16_FILES),)
627 :     @-mkdir -p $(STAGING)/etc/$(DATA_16_DEST)
628 :     endif
629 :     ifneq ($(DATA_17_FILES),)
630 :     @-mkdir -p $(STAGING)/etc/$(DATA_17_DEST)
631 :     endif
632 :     ifneq ($(DATA_18_FILES),)
633 :     @-mkdir -p $(STAGING)/etc/$(DATA_18_DEST)
634 :     endif
635 :     ifneq ($(DATA_19_FILES),)
636 :     @-mkdir -p $(STAGING)/etc/$(DATA_19_DEST)
637 :     endif
638 :     ifneq ($(DATA_20_FILES),)
639 :     @-mkdir -p $(STAGING)/etc/$(DATA_20_DEST)
640 :     endif
641 :     ifneq ($(DATA_21_FILES),)
642 :     @-mkdir -p $(STAGING)/etc/$(DATA_21_DEST)
643 :     endif
644 :     ifneq ($(DATA_22_FILES),)
645 :     @-mkdir -p $(STAGING)/etc/$(DATA_22_DEST)
646 :     endif
647 :     ifneq ($(DATA_23_FILES),)
648 :     @-mkdir -p $(STAGING)/etc/$(DATA_23_DEST)
649 :     endif
650 :     ifneq ($(DATA_24_FILES),)
651 :     @-mkdir -p $(STAGING)/etc/$(DATA_24_DEST)
652 :     endif
653 :     ifneq ($(DATA_25_FILES),)
654 :     @-mkdir -p $(STAGING)/etc/$(DATA_25_DEST)
655 :     endif
656 :     ifneq ($(DATA_26_FILES),)
657 :     @-mkdir -p $(STAGING)/etc/$(DATA_26_DEST)
658 :     endif
659 : youngs 1.29 ifneq ($(DATA_27_FILES),)
660 :     @-mkdir -p $(STAGING)/etc/$(DATA_27_DEST)
661 :     endif
662 :     ifneq ($(DATA_28_FILES),)
663 :     @-mkdir -p $(STAGING)/etc/$(DATA_28_DEST)
664 :     endif
665 :     ifneq ($(DATA_29_FILES),)
666 :     @-mkdir -p $(STAGING)/etc/$(DATA_29_DEST)
667 :     endif
668 :     ifneq ($(DATA_30_FILES),)
669 :     @-mkdir -p $(STAGING)/etc/$(DATA_30_DEST)
670 :     endif
671 :     ifneq ($(DATA_31_FILES),)
672 :     @-mkdir -p $(STAGING)/etc/$(DATA_31_DEST)
673 :     endif
674 :     ifneq ($(DATA_32_FILES),)
675 :     @-mkdir -p $(STAGING)/etc/$(DATA_32_DEST)
676 :     endif
677 :     ifneq ($(DATA_33_FILES),)
678 :     @-mkdir -p $(STAGING)/etc/$(DATA_33_DEST)
679 :     endif
680 :     ifneq ($(DATA_34_FILES),)
681 :     @-mkdir -p $(STAGING)/etc/$(DATA_34_DEST)
682 :     endif
683 :     ifneq ($(DATA_35_FILES),)
684 :     @-mkdir -p $(STAGING)/etc/$(DATA_35_DEST)
685 :     endif
686 : andreasj 1.17 ifneq ($(LIBSRC_FILES),)
687 : steveb 1.11 @-mkdir -p $(STAGING)/lib-src
688 :     endif
689 :     @-mkdir -p $(STAGING)/pkginfo
690 : ben 1.43 ifneq ($(PACKAGE),)
691 : andreasj 1.17 $(RCOPY) $(addprefix $(PWD)/, ChangeLog $(SOURCE_FILES_TO_COPY) $(EXTRA_SOURCES)) \
692 :     $(STAGING)/lisp/$(PACKAGE)
693 :     endif
694 :     ifneq ($(ELCS_1),)
695 :     $(RCOPY) $(addprefix $(PWD)/, $(ELCS_1_FILES)) $(STAGING)/lisp/$(ELCS_1_DEST)
696 : steveb 1.11 endif
697 : andreasj 1.17 ifneq ($(INFO_FILES),)
698 :     $(RCOPY) $(addprefix $(PWD)/, $(INFO_FILES)) $(STAGING)/info
699 :     $(RCOPY) $(addprefix $(PWD)/, $(TEXI_FILES)) $(STAGING)/man/$(PACKAGE)
700 : ben 1.43 ifneq ($(EXTRA_DOC_FILES),)
701 :     $(RCOPY) $(addprefix $(PWD)/, $(EXTRA_DOC_FILES)) $(STAGING)/man/$(PACKAGE)
702 :     endif
703 : steveb 1.11 endif
704 : andreasj 1.17 ifneq ($(DATA_FILES),)
705 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_FILES)) $(STAGING)/etc/$(DATA_DEST)
706 : steveb 1.11 endif
707 : andreasj 1.17 ifneq ($(DATA_1_FILES),)
708 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_1_FILES)) $(STAGING)/etc/$(DATA_1_DEST)
709 : steveb 1.11 endif
710 : andreasj 1.17 ifneq ($(DATA_2_FILES),)
711 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_2_FILES)) $(STAGING)/etc/$(DATA_2_DEST)
712 : steveb 1.11 endif
713 : andreasj 1.17 ifneq ($(DATA_3_FILES),)
714 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_3_FILES)) $(STAGING)/etc/$(DATA_3_DEST)
715 : steveb 1.11 endif
716 : andreasj 1.17 ifneq ($(DATA_4_FILES),)
717 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_4_FILES)) $(STAGING)/etc/$(DATA_4_DEST)
718 : steveb 1.11 endif
719 : andreasj 1.17 ifneq ($(DATA_5_FILES),)
720 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_5_FILES)) $(STAGING)/etc/$(DATA_5_DEST)
721 : steveb 1.11 endif
722 : andreasj 1.17 ifneq ($(DATA_6_FILES),)
723 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_6_FILES)) $(STAGING)/etc/$(DATA_6_DEST)
724 : steveb 1.16 endif
725 : andreasj 1.17 ifneq ($(DATA_7_FILES),)
726 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_7_FILES)) $(STAGING)/etc/$(DATA_7_DEST)
727 : steveb 1.16 endif
728 : andreasj 1.17 ifneq ($(DATA_8_FILES),)
729 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_8_FILES)) $(STAGING)/etc/$(DATA_8_DEST)
730 : steveb 1.16 endif
731 : michaels 1.20 ifneq ($(DATA_9_FILES),)
732 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_9_FILES)) $(STAGING)/etc/$(DATA_9_DEST)
733 :     endif
734 :     ifneq ($(DATA_10_FILES),)
735 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_10_FILES)) $(STAGING)/etc/$(DATA_10_DEST)
736 :     endif
737 :     ifneq ($(DATA_11_FILES),)
738 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_11_FILES)) $(STAGING)/etc/$(DATA_11_DEST)
739 :     endif
740 :     ifneq ($(DATA_12_FILES),)
741 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_12_FILES)) $(STAGING)/etc/$(DATA_12_DEST)
742 :     endif
743 :     ifneq ($(DATA_13_FILES),)
744 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_13_FILES)) $(STAGING)/etc/$(DATA_13_DEST)
745 :     endif
746 :     ifneq ($(DATA_14_FILES),)
747 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_14_FILES)) $(STAGING)/etc/$(DATA_14_DEST)
748 :     endif
749 :     ifneq ($(DATA_15_FILES),)
750 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_15_FILES)) $(STAGING)/etc/$(DATA_15_DEST)
751 :     endif
752 :     ifneq ($(DATA_16_FILES),)
753 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_16_FILES)) $(STAGING)/etc/$(DATA_16_DEST)
754 :     endif
755 :     ifneq ($(DATA_17_FILES),)
756 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_17_FILES)) $(STAGING)/etc/$(DATA_17_DEST)
757 :     endif
758 :     ifneq ($(DATA_18_FILES),)
759 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_18_FILES)) $(STAGING)/etc/$(DATA_18_DEST)
760 :     endif
761 :     ifneq ($(DATA_19_FILES),)
762 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_19_FILES)) $(STAGING)/etc/$(DATA_19_DEST)
763 :     endif
764 :     ifneq ($(DATA_20_FILES),)
765 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_20_FILES)) $(STAGING)/etc/$(DATA_20_DEST)
766 :     endif
767 :     ifneq ($(DATA_21_FILES),)
768 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_21_FILES)) $(STAGING)/etc/$(DATA_21_DEST)
769 :     endif
770 :     ifneq ($(DATA_22_FILES),)
771 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_22_FILES)) $(STAGING)/etc/$(DATA_22_DEST)
772 :     endif
773 :     ifneq ($(DATA_23_FILES),)
774 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_23_FILES)) $(STAGING)/etc/$(DATA_23_DEST)
775 :     endif
776 :     ifneq ($(DATA_24_FILES),)
777 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_24_FILES)) $(STAGING)/etc/$(DATA_24_DEST)
778 :     endif
779 :     ifneq ($(DATA_25_FILES),)
780 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_25_FILES)) $(STAGING)/etc/$(DATA_25_DEST)
781 :     endif
782 :     ifneq ($(DATA_26_FILES),)
783 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_26_FILES)) $(STAGING)/etc/$(DATA_26_DEST)
784 :     endif
785 : youngs 1.29 ifneq ($(DATA_27_FILES),)
786 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_27_FILES)) $(STAGING)/etc/$(DATA_27_DEST)
787 :     endif
788 :     ifneq ($(DATA_28_FILES),)
789 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_28_FILES)) $(STAGING)/etc/$(DATA_28_DEST)
790 :     endif
791 :     ifneq ($(DATA_29_FILES),)
792 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_29_FILES)) $(STAGING)/etc/$(DATA_29_DEST)
793 :     endif
794 :     ifneq ($(DATA_30_FILES),)
795 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_30_FILES)) $(STAGING)/etc/$(DATA_30_DEST)
796 :     endif
797 :     ifneq ($(DATA_31_FILES),)
798 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_31_FILES)) $(STAGING)/etc/$(DATA_31_DEST)
799 :     endif
800 :     ifneq ($(DATA_32_FILES),)
801 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_32_FILES)) $(STAGING)/etc/$(DATA_32_DEST)
802 :     endif
803 :     ifneq ($(DATA_33_FILES),)
804 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_33_FILES)) $(STAGING)/etc/$(DATA_33_DEST)
805 :     endif
806 :     ifneq ($(DATA_34_FILES),)
807 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_34_FILES)) $(STAGING)/etc/$(DATA_34_DEST)
808 :     endif
809 :     ifneq ($(DATA_35_FILES),)
810 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_35_FILES)) $(STAGING)/etc/$(DATA_35_DEST)
811 :     endif
812 : andreasj 1.17 ifneq ($(LIBSRC_FILES),)
813 :     $(RCOPY) $(addprefix $(PWD)/, $(LIBSRC_FILES)) $(STAGING)/lib-src
814 : steveb 1.11 endif
815 : steve 1.1 (cd $(STAGING); \
816 : steveb 1.11 ls -1 $(MANIFEST) > $(MANIFEST))
817 : ben 1.43 ifneq ($(PACKAGE),)
818 : steveb 1.11 @(cd $(STAGING); \
819 :     ls -1 lisp/$(PACKAGE)/ChangeLog \
820 :     $(patsubst %, lisp/$(PACKAGE)/%, $(notdir $(SOURCE_FILES_TO_COPY))) \
821 :     $(patsubst %, lisp/$(PACKAGE)/%, $(notdir $(EXTRA_SOURCES))) \
822 :     >> $(MANIFEST))
823 : andreasj 1.18 endif
824 : andreasj 1.17 ifneq ($(ELCS_1),)
825 : steveb 1.11 @(cd $(STAGING); \
826 :     ls -1 $(patsubst %, lisp/$(ELCS_1_DEST)/%, $(notdir $(ELCS_1_FILES))) \
827 :     >> $(MANIFEST))
828 :     endif
829 : andreasj 1.17 ifneq ($(INFO_FILES),)
830 : steveb 1.11 @(cd $(STAGING); \
831 :     ls -1 man/$(PACKAGE)/* \
832 :     $(patsubst %,info/%, $(notdir $(INFO_FILES))) >> $(MANIFEST))
833 :     endif
834 : andreasj 1.17 ifneq ($(DATA_FILES),)
835 : steveb 1.11 @(cd $(STAGING); \
836 :     ls -1 $(patsubst %, etc/$(DATA_DEST)/%, $(notdir $(DATA_FILES))) \
837 :     >> $(MANIFEST))
838 :     endif
839 : andreasj 1.17 ifneq ($(DATA_1_FILES),)
840 : steveb 1.11 @(cd $(STAGING); \
841 :     ls -1 $(patsubst %, etc/$(DATA_1_DEST)/%, $(notdir $(DATA_1_FILES))) \
842 :     >> $(MANIFEST))
843 :     endif
844 : andreasj 1.17 ifneq ($(DATA_2_FILES),)
845 : steveb 1.11 @(cd $(STAGING); \
846 :     ls -1 $(patsubst %, etc/$(DATA_2_DEST)/%, $(notdir $(DATA_2_FILES))) \
847 :     >> $(MANIFEST))
848 :     endif
849 : andreasj 1.17 ifneq ($(DATA_3_FILES),)
850 : steveb 1.11 @(cd $(STAGING); \
851 :     ls -1 $(patsubst %, etc/$(DATA_3_DEST)/%, $(notdir $(DATA_3_FILES))) \
852 :     >> $(MANIFEST))
853 :     endif
854 : andreasj 1.17 ifneq ($(DATA_4_FILES),)
855 : steveb 1.11 @(cd $(STAGING); \
856 :     ls -1 $(patsubst %, etc/$(DATA_4_DEST)/%, $(notdir $(DATA_4_FILES))) \
857 :     >> $(MANIFEST))
858 :     endif
859 : andreasj 1.17 ifneq ($(DATA_5_FILES),)
860 : steveb 1.11 @(cd $(STAGING); \
861 :     ls -1 $(patsubst %, etc/$(DATA_5_DEST)/%, $(notdir $(DATA_5_FILES))) \
862 : steveb 1.16 >> $(MANIFEST))
863 :     endif
864 : andreasj 1.17 ifneq ($(DATA_6_FILES),)
865 : steveb 1.16 @(cd $(STAGING); \
866 :     ls -1 $(patsubst %, etc/$(DATA_6_DEST)/%, $(notdir $(DATA_6_FILES))) \
867 :     >> $(MANIFEST))
868 :     endif
869 : andreasj 1.17 ifneq ($(DATA_7_FILES),)
870 : steveb 1.16 @(cd $(STAGING); \
871 :     ls -1 $(patsubst %, etc/$(DATA_7_DEST)/%, $(notdir $(DATA_7_FILES))) \
872 :     >> $(MANIFEST))
873 :     endif
874 : andreasj 1.17 ifneq ($(DATA_8_FILES),)
875 : steveb 1.16 @(cd $(STAGING); \
876 :     ls -1 $(patsubst %, etc/$(DATA_8_DEST)/%, $(notdir $(DATA_8_FILES))) \
877 : michaels 1.20 >> $(MANIFEST))
878 :     endif
879 :     ifneq ($(DATA_9_FILES),)
880 :     @(cd $(STAGING); \
881 :     ls -1 $(patsubst %, etc/$(DATA_9_DEST)/%, $(notdir $(DATA_9_FILES))) \
882 :     >> $(MANIFEST))
883 :     endif
884 :     ifneq ($(DATA_10_FILES),)
885 :     @(cd $(STAGING); \
886 :     ls -1 $(patsubst %, etc/$(DATA_10_DEST)/%, $(notdir $(DATA_10_FILES))) \
887 :     >> $(MANIFEST))
888 :     endif
889 :     ifneq ($(DATA_11_FILES),)
890 :     @(cd $(STAGING); \
891 :     ls -1 $(patsubst %, etc/$(DATA_11_DEST)/%, $(notdir $(DATA_11_FILES))) \
892 :     >> $(MANIFEST))
893 :     endif
894 :     ifneq ($(DATA_12_FILES),)
895 :     @(cd $(STAGING); \
896 :     ls -1 $(patsubst %, etc/$(DATA_12_DEST)/%, $(notdir $(DATA_12_FILES))) \
897 :     >> $(MANIFEST))
898 :     endif
899 :     ifneq ($(DATA_13_FILES),)
900 :     @(cd $(STAGING); \
901 :     ls -1 $(patsubst %, etc/$(DATA_13_DEST)/%, $(notdir $(DATA_13_FILES))) \
902 :     >> $(MANIFEST))
903 :     endif
904 :     ifneq ($(DATA_14_FILES),)
905 :     @(cd $(STAGING); \
906 :     ls -1 $(patsubst %, etc/$(DATA_14_DEST)/%, $(notdir $(DATA_14_FILES))) \
907 :     >> $(MANIFEST))
908 :     endif
909 :     ifneq ($(DATA_15_FILES),)
910 :     @(cd $(STAGING); \
911 :     ls -1 $(patsubst %, etc/$(DATA_15_DEST)/%, $(notdir $(DATA_15_FILES))) \
912 :     >> $(MANIFEST))
913 :     endif
914 :     ifneq ($(DATA_16_FILES),)
915 :     @(cd $(STAGING); \
916 :     ls -1 $(patsubst %, etc/$(DATA_16_DEST)/%, $(notdir $(DATA_16_FILES))) \
917 :     >> $(MANIFEST))
918 :     endif
919 :     ifneq ($(DATA_17_FILES),)
920 :     @(cd $(STAGING); \
921 :     ls -1 $(patsubst %, etc/$(DATA_17_DEST)/%, $(notdir $(DATA_17_FILES))) \
922 :     >> $(MANIFEST))
923 :     endif
924 :     ifneq ($(DATA_18_FILES),)
925 :     @(cd $(STAGING); \
926 :     ls -1 $(patsubst %, etc/$(DATA_18_DEST)/%, $(notdir $(DATA_18_FILES))) \
927 :     >> $(MANIFEST))
928 :     endif
929 :     ifneq ($(DATA_19_FILES),)
930 :     @(cd $(STAGING); \
931 :     ls -1 $(patsubst %, etc/$(DATA_19_DEST)/%, $(notdir $(DATA_19_FILES))) \
932 :     >> $(MANIFEST))
933 :     endif
934 :     ifneq ($(DATA_20_FILES),)
935 :     @(cd $(STAGING); \
936 :     ls -1 $(patsubst %, etc/$(DATA_20_DEST)/%, $(notdir $(DATA_20_FILES))) \
937 :     >> $(MANIFEST))
938 :     endif
939 :     ifneq ($(DATA_21_FILES),)
940 :     @(cd $(STAGING); \
941 :     ls -1 $(patsubst %, etc/$(DATA_21_DEST)/%, $(notdir $(DATA_21_FILES))) \
942 :     >> $(MANIFEST))
943 :     endif
944 :     ifneq ($(DATA_22_FILES),)
945 :     @(cd $(STAGING); \
946 :     ls -1 $(patsubst %, etc/$(DATA_22_DEST)/%, $(notdir $(DATA_22_FILES))) \
947 :     >> $(MANIFEST))
948 :     endif
949 :     ifneq ($(DATA_23_FILES),)
950 :     @(cd $(STAGING); \
951 :     ls -1 $(patsubst %, etc/$(DATA_23_DEST)/%, $(notdir $(DATA_23_FILES))) \
952 :     >> $(MANIFEST))
953 :     endif
954 :     ifneq ($(DATA_24_FILES),)
955 :     @(cd $(STAGING); \
956 :     ls -1 $(patsubst %, etc/$(DATA_24_DEST)/%, $(notdir $(DATA_24_FILES))) \
957 :     >> $(MANIFEST))
958 :     endif
959 :     ifneq ($(DATA_25_FILES),)
960 :     @(cd $(STAGING); \
961 :     ls -1 $(patsubst %, etc/$(DATA_25_DEST)/%, $(notdir $(DATA_25_FILES))) \
962 :     >> $(MANIFEST))
963 :     endif
964 :     ifneq ($(DATA_26_FILES),)
965 :     @(cd $(STAGING); \
966 :     ls -1 $(patsubst %, etc/$(DATA_26_DEST)/%, $(notdir $(DATA_26_FILES))) \
967 : steveb 1.11 >> $(MANIFEST))
968 :     endif
969 : youngs 1.29 ifneq ($(DATA_27_FILES),)
970 :     @(cd $(STAGING); \
971 :     ls -1 $(patsubst %, etc/$(DATA_27_DEST)/%, $(notdir $(DATA_27_FILES))) \
972 :     >> $(MANIFEST))
973 :     endif
974 :     ifneq ($(DATA_28_FILES),)
975 :     @(cd $(STAGING); \
976 :     ls -1 $(patsubst %, etc/$(DATA_28_DEST)/%, $(notdir $(DATA_28_FILES))) \
977 :     >> $(MANIFEST))
978 :     endif
979 :     ifneq ($(DATA_29_FILES),)
980 :     @(cd $(STAGING); \
981 :     ls -1 $(patsubst %, etc/$(DATA_29_DEST)/%, $(notdir $(DATA_29_FILES))) \
982 :     >> $(MANIFEST))
983 :     endif
984 :     ifneq ($(DATA_30_FILES),)
985 :     @(cd $(STAGING); \
986 :     ls -1 $(patsubst %, etc/$(DATA_30_DEST)/%, $(notdir $(DATA_30_FILES))) \
987 :     >> $(MANIFEST))
988 :     endif
989 :     ifneq ($(DATA_31_FILES),)
990 :     @(cd $(STAGING); \
991 :     ls -1 $(patsubst %, etc/$(DATA_31_DEST)/%, $(notdir $(DATA_31_FILES))) \
992 :     >> $(MANIFEST))
993 :     endif
994 :     ifneq ($(DATA_32_FILES),)
995 :     @(cd $(STAGING); \
996 :     ls -1 $(patsubst %, etc/$(DATA_32_DEST)/%, $(notdir $(DATA_32_FILES))) \
997 :     >> $(MANIFEST))
998 :     endif
999 :     ifneq ($(DATA_33_FILES),)
1000 :     @(cd $(STAGING); \
1001 :     ls -1 $(patsubst %, etc/$(DATA_33_DEST)/%, $(notdir $(DATA_33_FILES))) \
1002 :     >> $(MANIFEST))
1003 :     endif
1004 :     ifneq ($(DATA_34_FILES),)
1005 :     @(cd $(STAGING); \
1006 :     ls -1 $(patsubst %, etc/$(DATA_34_DEST)/%, $(notdir $(DATA_34_FILES))) \
1007 :     >> $(MANIFEST))
1008 :     endif
1009 :     ifneq ($(DATA_35_FILES),)
1010 :     @(cd $(STAGING); \
1011 :     ls -1 $(patsubst %, etc/$(DATA_35_DEST)/%, $(notdir $(DATA_35_FILES))) \
1012 :     >> $(MANIFEST))
1013 :     endif
1014 : andreasj 1.17 ifneq ($(LIBSRC_FILES),)
1015 : steveb 1.11 @(cd $(STAGING); \
1016 :     ls -1 $(patsubst %,lib-src/%, $(notdir $(LIBSRC_FILES))) >> $(MANIFEST))
1017 :     endif
1018 :    
1019 : adrian 1.48 install-html: html check-staging
1020 : scop 1.40 ifneq ($(HTML_FILES),)
1021 :     @-mkdir -p $(STAGING)/html
1022 : adrian 1.48 @-mkdir -p $(STAGING)/pkginfo
1023 : scop 1.40 $(RCOPY) $(addprefix $(PWD)/, $(HTML_FILES)) $(STAGING)/html
1024 :     @(cd $(STAGING); \
1025 :     ls -1 $(patsubst %,html/%, $(notdir $(HTML_FILES))) >> $(MANIFEST))
1026 :     endif
1027 : ben 1.43
1028 :     binkit: binkit-1
1029 :    
1030 :     ifeq ($(INSTALL_HTML),t)
1031 :     binkit: install-html
1032 :     endif
1033 :    
1034 : adrian 1.48 binkit-with-html: binkit-1 install-html
1035 : youngs 1.31
1036 :     # Export dependencies for outer make file usage
1037 :    
1038 :     # Passed in from outer Make
1039 :     TARGET_BASE=
1040 :    
1041 :     # Build depends is a clean version of Requires
1042 :     BDEPENDS=$(strip $(filter-out $(PACKAGE),$(REQUIRES)))
1043 :    
1044 :     $(DEPENDS_FILE_NAME): Makefile $(XEMACS_PACKAGES_BASE)/XEmacs.rules
1045 :     ifneq ($(TARGET_BASE),)
1046 : youngs 1.32 -rm -f $(DEPENDS_FILE_NAME)
1047 : youngs 1.31 @echo Creating $(DEPENDS_FILE_NAME)
1048 :     @echo > $(DEPENDS_FILE_NAME)
1049 :     ifneq ($(BDEPENDS),)
1050 :     @echo $(TARGET_BASE)$(PACKAGE)/autoloads.target: \
1051 :     $(TARGET_BASE)$(BDEPENDS:=/autoloads.target) \
1052 :     >>$(DEPENDS_FILE_NAME)
1053 :     @echo $(TARGET_BASE)$(PACKAGE)/compile.target: \
1054 :     $(TARGET_BASE)$(BDEPENDS:=/compile.target) \
1055 :     >>$(DEPENDS_FILE_NAME)
1056 :     endif
1057 :     endif
1058 : andreasj 1.17
1059 :     # Local Variables:
1060 :     # mode: makefile
1061 :     # End:

root@alioth.debian.org
ViewVC Help
Powered by ViewVC 1.0.0  
Powered By FusionForge
Show source