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.51 - (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 : youngs 1.51 ifeq ($(AUTHOR_VERSION),)
529 :     AUTHOR_VERSION = No-Upstream-Ver
530 :     endif
531 : steve 1.1
532 : steveb 1.12 $(AUTOLOAD_PATH)/_pkg.el: Makefile
533 :     @echo Creating $(AUTOLOAD_PATH)/_pkg.el
534 :     @echo ";;;###autoload" > $(AUTOLOAD_PATH)/_pkg.el
535 :     @echo "(package-provide '$(PACKAGE)" >> $(AUTOLOAD_PATH)/_pkg.el
536 :     @echo " :version $(VERSION)" >> $(AUTOLOAD_PATH)/_pkg.el
537 : viteno 1.50 @echo " :author-version \"$(AUTHOR_VERSION)\"" >> $(AUTOLOAD_PATH)/_pkg.el
538 : steveb 1.12 @echo " :type '$(PKG_TYPE))" >> $(AUTOLOAD_PATH)/_pkg.el
539 : ben 1.43 ifneq ($(PACKAGE_SUPPRESS),)
540 :     @echo "" >> $(AUTOLOAD_PATH)/_pkg.el
541 :     @echo ";;;###autoload" >> $(AUTOLOAD_PATH)/_pkg.el
542 :     @echo "(when (fboundp 'package-suppress)" >> $(AUTOLOAD_PATH)/_pkg.el
543 :     @echo " $(PACKAGE_SUPPRESS)" >> $(AUTOLOAD_PATH)/_pkg.el
544 :     @echo ")" >> $(AUTOLOAD_PATH)/_pkg.el
545 :     endif
546 : steve 1.1
547 : ben 1.43 .PHONY: binkit-with-html bindist install autoloads
548 : steve 1.3
549 : youngs 1.45 bindist: compile binkit package-info setup-info
550 : youngs 1.25
551 :     setup-info:
552 : scop 1.41 $(XEMACS) $(BATCH) -l $(PACKAGE_NET_PACKAGES) \
553 : adrian 1.26 -l $(PACKAGE_INFO) \
554 : scop 1.41 -f package-net-packages-batch-convert-index-to-ini $(PACKAGE_STAGING) $(CATEGORY)
555 : steve 1.1
556 : youngs 1.45 install: compile binkit
557 : youngs 1.46
558 : youngs 1.47 # A target that _only_ installs and doesn't build _anything_
559 :     install-only: binkit
560 : steveb 1.11
561 : ben 1.43 ## Do not byte-compile as that could require stuff from elsewhere, and you
562 :     ## get dependency circles.
563 :     autoloads: $(EARLY_GENERATED_LISP)
564 : andreasj 1.17
565 : ben 1.43 binkit-1: check-staging
566 : andreasj 1.17 (if test -d $(STAGING); then \
567 :     cd $(STAGING); \
568 :     if test -f $(MANIFEST); then \
569 : steveb 1.11 rm -rf `cat $(MANIFEST)`; \
570 : andreasj 1.17 fi; \
571 : steveb 1.11 fi;)
572 : ben 1.43 ifneq ($(PACKAGE),)
573 : steveb 1.11 @-mkdir -p $(STAGING)/lisp/$(PACKAGE)
574 : ben 1.43 endif
575 : andreasj 1.17 ifneq ($(ELCS_1),)
576 : steveb 1.11 @-mkdir -p $(STAGING)/lisp/$(ELCS_1_DEST)
577 :     endif
578 : andreasj 1.17 ifneq ($(INFO_FILES),)
579 : steveb 1.11 @-mkdir -p $(STAGING)/info
580 :     @-mkdir -p $(STAGING)/man/$(PACKAGE)
581 :     endif
582 : andreasj 1.17 ifneq ($(DATA_FILES),)
583 : steveb 1.11 @-mkdir -p $(STAGING)/etc/$(DATA_DEST)
584 :     endif
585 : andreasj 1.17 ifneq ($(DATA_1_FILES),)
586 : steveb 1.11 @-mkdir -p $(STAGING)/etc/$(DATA_1_DEST)
587 :     endif
588 : andreasj 1.17 ifneq ($(DATA_2_FILES),)
589 : steveb 1.11 @-mkdir -p $(STAGING)/etc/$(DATA_2_DEST)
590 :     endif
591 : andreasj 1.17 ifneq ($(DATA_3_FILES),)
592 : steveb 1.11 @-mkdir -p $(STAGING)/etc/$(DATA_3_DEST)
593 :     endif
594 : andreasj 1.17 ifneq ($(DATA_4_FILES),)
595 : steveb 1.11 @-mkdir -p $(STAGING)/etc/$(DATA_4_DEST)
596 :     endif
597 : andreasj 1.17 ifneq ($(DATA_5_FILES),)
598 : steveb 1.11 @-mkdir -p $(STAGING)/etc/$(DATA_5_DEST)
599 :     endif
600 : andreasj 1.17 ifneq ($(DATA_6_FILES),)
601 : steveb 1.16 @-mkdir -p $(STAGING)/etc/$(DATA_6_DEST)
602 :     endif
603 : andreasj 1.17 ifneq ($(DATA_7_FILES),)
604 : steveb 1.16 @-mkdir -p $(STAGING)/etc/$(DATA_7_DEST)
605 :     endif
606 : andreasj 1.17 ifneq ($(DATA_8_FILES),)
607 : steveb 1.16 @-mkdir -p $(STAGING)/etc/$(DATA_8_DEST)
608 :     endif
609 : michaels 1.20 ifneq ($(DATA_9_FILES),)
610 :     @-mkdir -p $(STAGING)/etc/$(DATA_9_DEST)
611 :     endif
612 :     ifneq ($(DATA_10_FILES),)
613 :     @-mkdir -p $(STAGING)/etc/$(DATA_10_DEST)
614 :     endif
615 :     ifneq ($(DATA_11_FILES),)
616 :     @-mkdir -p $(STAGING)/etc/$(DATA_11_DEST)
617 :     endif
618 :     ifneq ($(DATA_12_FILES),)
619 :     @-mkdir -p $(STAGING)/etc/$(DATA_12_DEST)
620 :     endif
621 :     ifneq ($(DATA_13_FILES),)
622 :     @-mkdir -p $(STAGING)/etc/$(DATA_13_DEST)
623 :     endif
624 :     ifneq ($(DATA_14_FILES),)
625 :     @-mkdir -p $(STAGING)/etc/$(DATA_14_DEST)
626 :     endif
627 :     ifneq ($(DATA_15_FILES),)
628 :     @-mkdir -p $(STAGING)/etc/$(DATA_15_DEST)
629 :     endif
630 :     ifneq ($(DATA_16_FILES),)
631 :     @-mkdir -p $(STAGING)/etc/$(DATA_16_DEST)
632 :     endif
633 :     ifneq ($(DATA_17_FILES),)
634 :     @-mkdir -p $(STAGING)/etc/$(DATA_17_DEST)
635 :     endif
636 :     ifneq ($(DATA_18_FILES),)
637 :     @-mkdir -p $(STAGING)/etc/$(DATA_18_DEST)
638 :     endif
639 :     ifneq ($(DATA_19_FILES),)
640 :     @-mkdir -p $(STAGING)/etc/$(DATA_19_DEST)
641 :     endif
642 :     ifneq ($(DATA_20_FILES),)
643 :     @-mkdir -p $(STAGING)/etc/$(DATA_20_DEST)
644 :     endif
645 :     ifneq ($(DATA_21_FILES),)
646 :     @-mkdir -p $(STAGING)/etc/$(DATA_21_DEST)
647 :     endif
648 :     ifneq ($(DATA_22_FILES),)
649 :     @-mkdir -p $(STAGING)/etc/$(DATA_22_DEST)
650 :     endif
651 :     ifneq ($(DATA_23_FILES),)
652 :     @-mkdir -p $(STAGING)/etc/$(DATA_23_DEST)
653 :     endif
654 :     ifneq ($(DATA_24_FILES),)
655 :     @-mkdir -p $(STAGING)/etc/$(DATA_24_DEST)
656 :     endif
657 :     ifneq ($(DATA_25_FILES),)
658 :     @-mkdir -p $(STAGING)/etc/$(DATA_25_DEST)
659 :     endif
660 :     ifneq ($(DATA_26_FILES),)
661 :     @-mkdir -p $(STAGING)/etc/$(DATA_26_DEST)
662 :     endif
663 : youngs 1.29 ifneq ($(DATA_27_FILES),)
664 :     @-mkdir -p $(STAGING)/etc/$(DATA_27_DEST)
665 :     endif
666 :     ifneq ($(DATA_28_FILES),)
667 :     @-mkdir -p $(STAGING)/etc/$(DATA_28_DEST)
668 :     endif
669 :     ifneq ($(DATA_29_FILES),)
670 :     @-mkdir -p $(STAGING)/etc/$(DATA_29_DEST)
671 :     endif
672 :     ifneq ($(DATA_30_FILES),)
673 :     @-mkdir -p $(STAGING)/etc/$(DATA_30_DEST)
674 :     endif
675 :     ifneq ($(DATA_31_FILES),)
676 :     @-mkdir -p $(STAGING)/etc/$(DATA_31_DEST)
677 :     endif
678 :     ifneq ($(DATA_32_FILES),)
679 :     @-mkdir -p $(STAGING)/etc/$(DATA_32_DEST)
680 :     endif
681 :     ifneq ($(DATA_33_FILES),)
682 :     @-mkdir -p $(STAGING)/etc/$(DATA_33_DEST)
683 :     endif
684 :     ifneq ($(DATA_34_FILES),)
685 :     @-mkdir -p $(STAGING)/etc/$(DATA_34_DEST)
686 :     endif
687 :     ifneq ($(DATA_35_FILES),)
688 :     @-mkdir -p $(STAGING)/etc/$(DATA_35_DEST)
689 :     endif
690 : andreasj 1.17 ifneq ($(LIBSRC_FILES),)
691 : steveb 1.11 @-mkdir -p $(STAGING)/lib-src
692 :     endif
693 :     @-mkdir -p $(STAGING)/pkginfo
694 : ben 1.43 ifneq ($(PACKAGE),)
695 : andreasj 1.17 $(RCOPY) $(addprefix $(PWD)/, ChangeLog $(SOURCE_FILES_TO_COPY) $(EXTRA_SOURCES)) \
696 :     $(STAGING)/lisp/$(PACKAGE)
697 :     endif
698 :     ifneq ($(ELCS_1),)
699 :     $(RCOPY) $(addprefix $(PWD)/, $(ELCS_1_FILES)) $(STAGING)/lisp/$(ELCS_1_DEST)
700 : steveb 1.11 endif
701 : andreasj 1.17 ifneq ($(INFO_FILES),)
702 :     $(RCOPY) $(addprefix $(PWD)/, $(INFO_FILES)) $(STAGING)/info
703 :     $(RCOPY) $(addprefix $(PWD)/, $(TEXI_FILES)) $(STAGING)/man/$(PACKAGE)
704 : ben 1.43 ifneq ($(EXTRA_DOC_FILES),)
705 :     $(RCOPY) $(addprefix $(PWD)/, $(EXTRA_DOC_FILES)) $(STAGING)/man/$(PACKAGE)
706 :     endif
707 : steveb 1.11 endif
708 : andreasj 1.17 ifneq ($(DATA_FILES),)
709 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_FILES)) $(STAGING)/etc/$(DATA_DEST)
710 : steveb 1.11 endif
711 : andreasj 1.17 ifneq ($(DATA_1_FILES),)
712 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_1_FILES)) $(STAGING)/etc/$(DATA_1_DEST)
713 : steveb 1.11 endif
714 : andreasj 1.17 ifneq ($(DATA_2_FILES),)
715 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_2_FILES)) $(STAGING)/etc/$(DATA_2_DEST)
716 : steveb 1.11 endif
717 : andreasj 1.17 ifneq ($(DATA_3_FILES),)
718 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_3_FILES)) $(STAGING)/etc/$(DATA_3_DEST)
719 : steveb 1.11 endif
720 : andreasj 1.17 ifneq ($(DATA_4_FILES),)
721 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_4_FILES)) $(STAGING)/etc/$(DATA_4_DEST)
722 : steveb 1.11 endif
723 : andreasj 1.17 ifneq ($(DATA_5_FILES),)
724 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_5_FILES)) $(STAGING)/etc/$(DATA_5_DEST)
725 : steveb 1.11 endif
726 : andreasj 1.17 ifneq ($(DATA_6_FILES),)
727 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_6_FILES)) $(STAGING)/etc/$(DATA_6_DEST)
728 : steveb 1.16 endif
729 : andreasj 1.17 ifneq ($(DATA_7_FILES),)
730 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_7_FILES)) $(STAGING)/etc/$(DATA_7_DEST)
731 : steveb 1.16 endif
732 : andreasj 1.17 ifneq ($(DATA_8_FILES),)
733 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_8_FILES)) $(STAGING)/etc/$(DATA_8_DEST)
734 : steveb 1.16 endif
735 : michaels 1.20 ifneq ($(DATA_9_FILES),)
736 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_9_FILES)) $(STAGING)/etc/$(DATA_9_DEST)
737 :     endif
738 :     ifneq ($(DATA_10_FILES),)
739 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_10_FILES)) $(STAGING)/etc/$(DATA_10_DEST)
740 :     endif
741 :     ifneq ($(DATA_11_FILES),)
742 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_11_FILES)) $(STAGING)/etc/$(DATA_11_DEST)
743 :     endif
744 :     ifneq ($(DATA_12_FILES),)
745 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_12_FILES)) $(STAGING)/etc/$(DATA_12_DEST)
746 :     endif
747 :     ifneq ($(DATA_13_FILES),)
748 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_13_FILES)) $(STAGING)/etc/$(DATA_13_DEST)
749 :     endif
750 :     ifneq ($(DATA_14_FILES),)
751 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_14_FILES)) $(STAGING)/etc/$(DATA_14_DEST)
752 :     endif
753 :     ifneq ($(DATA_15_FILES),)
754 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_15_FILES)) $(STAGING)/etc/$(DATA_15_DEST)
755 :     endif
756 :     ifneq ($(DATA_16_FILES),)
757 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_16_FILES)) $(STAGING)/etc/$(DATA_16_DEST)
758 :     endif
759 :     ifneq ($(DATA_17_FILES),)
760 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_17_FILES)) $(STAGING)/etc/$(DATA_17_DEST)
761 :     endif
762 :     ifneq ($(DATA_18_FILES),)
763 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_18_FILES)) $(STAGING)/etc/$(DATA_18_DEST)
764 :     endif
765 :     ifneq ($(DATA_19_FILES),)
766 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_19_FILES)) $(STAGING)/etc/$(DATA_19_DEST)
767 :     endif
768 :     ifneq ($(DATA_20_FILES),)
769 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_20_FILES)) $(STAGING)/etc/$(DATA_20_DEST)
770 :     endif
771 :     ifneq ($(DATA_21_FILES),)
772 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_21_FILES)) $(STAGING)/etc/$(DATA_21_DEST)
773 :     endif
774 :     ifneq ($(DATA_22_FILES),)
775 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_22_FILES)) $(STAGING)/etc/$(DATA_22_DEST)
776 :     endif
777 :     ifneq ($(DATA_23_FILES),)
778 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_23_FILES)) $(STAGING)/etc/$(DATA_23_DEST)
779 :     endif
780 :     ifneq ($(DATA_24_FILES),)
781 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_24_FILES)) $(STAGING)/etc/$(DATA_24_DEST)
782 :     endif
783 :     ifneq ($(DATA_25_FILES),)
784 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_25_FILES)) $(STAGING)/etc/$(DATA_25_DEST)
785 :     endif
786 :     ifneq ($(DATA_26_FILES),)
787 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_26_FILES)) $(STAGING)/etc/$(DATA_26_DEST)
788 :     endif
789 : youngs 1.29 ifneq ($(DATA_27_FILES),)
790 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_27_FILES)) $(STAGING)/etc/$(DATA_27_DEST)
791 :     endif
792 :     ifneq ($(DATA_28_FILES),)
793 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_28_FILES)) $(STAGING)/etc/$(DATA_28_DEST)
794 :     endif
795 :     ifneq ($(DATA_29_FILES),)
796 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_29_FILES)) $(STAGING)/etc/$(DATA_29_DEST)
797 :     endif
798 :     ifneq ($(DATA_30_FILES),)
799 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_30_FILES)) $(STAGING)/etc/$(DATA_30_DEST)
800 :     endif
801 :     ifneq ($(DATA_31_FILES),)
802 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_31_FILES)) $(STAGING)/etc/$(DATA_31_DEST)
803 :     endif
804 :     ifneq ($(DATA_32_FILES),)
805 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_32_FILES)) $(STAGING)/etc/$(DATA_32_DEST)
806 :     endif
807 :     ifneq ($(DATA_33_FILES),)
808 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_33_FILES)) $(STAGING)/etc/$(DATA_33_DEST)
809 :     endif
810 :     ifneq ($(DATA_34_FILES),)
811 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_34_FILES)) $(STAGING)/etc/$(DATA_34_DEST)
812 :     endif
813 :     ifneq ($(DATA_35_FILES),)
814 :     $(RCOPY) $(addprefix $(PWD)/, $(DATA_35_FILES)) $(STAGING)/etc/$(DATA_35_DEST)
815 :     endif
816 : andreasj 1.17 ifneq ($(LIBSRC_FILES),)
817 :     $(RCOPY) $(addprefix $(PWD)/, $(LIBSRC_FILES)) $(STAGING)/lib-src
818 : steveb 1.11 endif
819 : steve 1.1 (cd $(STAGING); \
820 : steveb 1.11 ls -1 $(MANIFEST) > $(MANIFEST))
821 : ben 1.43 ifneq ($(PACKAGE),)
822 : steveb 1.11 @(cd $(STAGING); \
823 :     ls -1 lisp/$(PACKAGE)/ChangeLog \
824 :     $(patsubst %, lisp/$(PACKAGE)/%, $(notdir $(SOURCE_FILES_TO_COPY))) \
825 :     $(patsubst %, lisp/$(PACKAGE)/%, $(notdir $(EXTRA_SOURCES))) \
826 :     >> $(MANIFEST))
827 : andreasj 1.18 endif
828 : andreasj 1.17 ifneq ($(ELCS_1),)
829 : steveb 1.11 @(cd $(STAGING); \
830 :     ls -1 $(patsubst %, lisp/$(ELCS_1_DEST)/%, $(notdir $(ELCS_1_FILES))) \
831 :     >> $(MANIFEST))
832 :     endif
833 : andreasj 1.17 ifneq ($(INFO_FILES),)
834 : steveb 1.11 @(cd $(STAGING); \
835 :     ls -1 man/$(PACKAGE)/* \
836 :     $(patsubst %,info/%, $(notdir $(INFO_FILES))) >> $(MANIFEST))
837 :     endif
838 : andreasj 1.17 ifneq ($(DATA_FILES),)
839 : steveb 1.11 @(cd $(STAGING); \
840 :     ls -1 $(patsubst %, etc/$(DATA_DEST)/%, $(notdir $(DATA_FILES))) \
841 :     >> $(MANIFEST))
842 :     endif
843 : andreasj 1.17 ifneq ($(DATA_1_FILES),)
844 : steveb 1.11 @(cd $(STAGING); \
845 :     ls -1 $(patsubst %, etc/$(DATA_1_DEST)/%, $(notdir $(DATA_1_FILES))) \
846 :     >> $(MANIFEST))
847 :     endif
848 : andreasj 1.17 ifneq ($(DATA_2_FILES),)
849 : steveb 1.11 @(cd $(STAGING); \
850 :     ls -1 $(patsubst %, etc/$(DATA_2_DEST)/%, $(notdir $(DATA_2_FILES))) \
851 :     >> $(MANIFEST))
852 :     endif
853 : andreasj 1.17 ifneq ($(DATA_3_FILES),)
854 : steveb 1.11 @(cd $(STAGING); \
855 :     ls -1 $(patsubst %, etc/$(DATA_3_DEST)/%, $(notdir $(DATA_3_FILES))) \
856 :     >> $(MANIFEST))
857 :     endif
858 : andreasj 1.17 ifneq ($(DATA_4_FILES),)
859 : steveb 1.11 @(cd $(STAGING); \
860 :     ls -1 $(patsubst %, etc/$(DATA_4_DEST)/%, $(notdir $(DATA_4_FILES))) \
861 :     >> $(MANIFEST))
862 :     endif
863 : andreasj 1.17 ifneq ($(DATA_5_FILES),)
864 : steveb 1.11 @(cd $(STAGING); \
865 :     ls -1 $(patsubst %, etc/$(DATA_5_DEST)/%, $(notdir $(DATA_5_FILES))) \
866 : steveb 1.16 >> $(MANIFEST))
867 :     endif
868 : andreasj 1.17 ifneq ($(DATA_6_FILES),)
869 : steveb 1.16 @(cd $(STAGING); \
870 :     ls -1 $(patsubst %, etc/$(DATA_6_DEST)/%, $(notdir $(DATA_6_FILES))) \
871 :     >> $(MANIFEST))
872 :     endif
873 : andreasj 1.17 ifneq ($(DATA_7_FILES),)
874 : steveb 1.16 @(cd $(STAGING); \
875 :     ls -1 $(patsubst %, etc/$(DATA_7_DEST)/%, $(notdir $(DATA_7_FILES))) \
876 :     >> $(MANIFEST))
877 :     endif
878 : andreasj 1.17 ifneq ($(DATA_8_FILES),)
879 : steveb 1.16 @(cd $(STAGING); \
880 :     ls -1 $(patsubst %, etc/$(DATA_8_DEST)/%, $(notdir $(DATA_8_FILES))) \
881 : michaels 1.20 >> $(MANIFEST))
882 :     endif
883 :     ifneq ($(DATA_9_FILES),)
884 :     @(cd $(STAGING); \
885 :     ls -1 $(patsubst %, etc/$(DATA_9_DEST)/%, $(notdir $(DATA_9_FILES))) \
886 :     >> $(MANIFEST))
887 :     endif
888 :     ifneq ($(DATA_10_FILES),)
889 :     @(cd $(STAGING); \
890 :     ls -1 $(patsubst %, etc/$(DATA_10_DEST)/%, $(notdir $(DATA_10_FILES))) \
891 :     >> $(MANIFEST))
892 :     endif
893 :     ifneq ($(DATA_11_FILES),)
894 :     @(cd $(STAGING); \
895 :     ls -1 $(patsubst %, etc/$(DATA_11_DEST)/%, $(notdir $(DATA_11_FILES))) \
896 :     >> $(MANIFEST))
897 :     endif
898 :     ifneq ($(DATA_12_FILES),)
899 :     @(cd $(STAGING); \
900 :     ls -1 $(patsubst %, etc/$(DATA_12_DEST)/%, $(notdir $(DATA_12_FILES))) \
901 :     >> $(MANIFEST))
902 :     endif
903 :     ifneq ($(DATA_13_FILES),)
904 :     @(cd $(STAGING); \
905 :     ls -1 $(patsubst %, etc/$(DATA_13_DEST)/%, $(notdir $(DATA_13_FILES))) \
906 :     >> $(MANIFEST))
907 :     endif
908 :     ifneq ($(DATA_14_FILES),)
909 :     @(cd $(STAGING); \
910 :     ls -1 $(patsubst %, etc/$(DATA_14_DEST)/%, $(notdir $(DATA_14_FILES))) \
911 :     >> $(MANIFEST))
912 :     endif
913 :     ifneq ($(DATA_15_FILES),)
914 :     @(cd $(STAGING); \
915 :     ls -1 $(patsubst %, etc/$(DATA_15_DEST)/%, $(notdir $(DATA_15_FILES))) \
916 :     >> $(MANIFEST))
917 :     endif
918 :     ifneq ($(DATA_16_FILES),)
919 :     @(cd $(STAGING); \
920 :     ls -1 $(patsubst %, etc/$(DATA_16_DEST)/%, $(notdir $(DATA_16_FILES))) \
921 :     >> $(MANIFEST))
922 :     endif
923 :     ifneq ($(DATA_17_FILES),)
924 :     @(cd $(STAGING); \
925 :     ls -1 $(patsubst %, etc/$(DATA_17_DEST)/%, $(notdir $(DATA_17_FILES))) \
926 :     >> $(MANIFEST))
927 :     endif
928 :     ifneq ($(DATA_18_FILES),)
929 :     @(cd $(STAGING); \
930 :     ls -1 $(patsubst %, etc/$(DATA_18_DEST)/%, $(notdir $(DATA_18_FILES))) \
931 :     >> $(MANIFEST))
932 :     endif
933 :     ifneq ($(DATA_19_FILES),)
934 :     @(cd $(STAGING); \
935 :     ls -1 $(patsubst %, etc/$(DATA_19_DEST)/%, $(notdir $(DATA_19_FILES))) \
936 :     >> $(MANIFEST))
937 :     endif
938 :     ifneq ($(DATA_20_FILES),)
939 :     @(cd $(STAGING); \
940 :     ls -1 $(patsubst %, etc/$(DATA_20_DEST)/%, $(notdir $(DATA_20_FILES))) \
941 :     >> $(MANIFEST))
942 :     endif
943 :     ifneq ($(DATA_21_FILES),)
944 :     @(cd $(STAGING); \
945 :     ls -1 $(patsubst %, etc/$(DATA_21_DEST)/%, $(notdir $(DATA_21_FILES))) \
946 :     >> $(MANIFEST))
947 :     endif
948 :     ifneq ($(DATA_22_FILES),)
949 :     @(cd $(STAGING); \
950 :     ls -1 $(patsubst %, etc/$(DATA_22_DEST)/%, $(notdir $(DATA_22_FILES))) \
951 :     >> $(MANIFEST))
952 :     endif
953 :     ifneq ($(DATA_23_FILES),)
954 :     @(cd $(STAGING); \
955 :     ls -1 $(patsubst %, etc/$(DATA_23_DEST)/%, $(notdir $(DATA_23_FILES))) \
956 :     >> $(MANIFEST))
957 :     endif
958 :     ifneq ($(DATA_24_FILES),)
959 :     @(cd $(STAGING); \
960 :     ls -1 $(patsubst %, etc/$(DATA_24_DEST)/%, $(notdir $(DATA_24_FILES))) \
961 :     >> $(MANIFEST))
962 :     endif
963 :     ifneq ($(DATA_25_FILES),)
964 :     @(cd $(STAGING); \
965 :     ls -1 $(patsubst %, etc/$(DATA_25_DEST)/%, $(notdir $(DATA_25_FILES))) \
966 :     >> $(MANIFEST))
967 :     endif
968 :     ifneq ($(DATA_26_FILES),)
969 :     @(cd $(STAGING); \
970 :     ls -1 $(patsubst %, etc/$(DATA_26_DEST)/%, $(notdir $(DATA_26_FILES))) \
971 : steveb 1.11 >> $(MANIFEST))
972 :     endif
973 : youngs 1.29 ifneq ($(DATA_27_FILES),)
974 :     @(cd $(STAGING); \
975 :     ls -1 $(patsubst %, etc/$(DATA_27_DEST)/%, $(notdir $(DATA_27_FILES))) \
976 :     >> $(MANIFEST))
977 :     endif
978 :     ifneq ($(DATA_28_FILES),)
979 :     @(cd $(STAGING); \
980 :     ls -1 $(patsubst %, etc/$(DATA_28_DEST)/%, $(notdir $(DATA_28_FILES))) \
981 :     >> $(MANIFEST))
982 :     endif
983 :     ifneq ($(DATA_29_FILES),)
984 :     @(cd $(STAGING); \
985 :     ls -1 $(patsubst %, etc/$(DATA_29_DEST)/%, $(notdir $(DATA_29_FILES))) \
986 :     >> $(MANIFEST))
987 :     endif
988 :     ifneq ($(DATA_30_FILES),)
989 :     @(cd $(STAGING); \
990 :     ls -1 $(patsubst %, etc/$(DATA_30_DEST)/%, $(notdir $(DATA_30_FILES))) \
991 :     >> $(MANIFEST))
992 :     endif
993 :     ifneq ($(DATA_31_FILES),)
994 :     @(cd $(STAGING); \
995 :     ls -1 $(patsubst %, etc/$(DATA_31_DEST)/%, $(notdir $(DATA_31_FILES))) \
996 :     >> $(MANIFEST))
997 :     endif
998 :     ifneq ($(DATA_32_FILES),)
999 :     @(cd $(STAGING); \
1000 :     ls -1 $(patsubst %, etc/$(DATA_32_DEST)/%, $(notdir $(DATA_32_FILES))) \
1001 :     >> $(MANIFEST))
1002 :     endif
1003 :     ifneq ($(DATA_33_FILES),)
1004 :     @(cd $(STAGING); \
1005 :     ls -1 $(patsubst %, etc/$(DATA_33_DEST)/%, $(notdir $(DATA_33_FILES))) \
1006 :     >> $(MANIFEST))
1007 :     endif
1008 :     ifneq ($(DATA_34_FILES),)
1009 :     @(cd $(STAGING); \
1010 :     ls -1 $(patsubst %, etc/$(DATA_34_DEST)/%, $(notdir $(DATA_34_FILES))) \
1011 :     >> $(MANIFEST))
1012 :     endif
1013 :     ifneq ($(DATA_35_FILES),)
1014 :     @(cd $(STAGING); \
1015 :     ls -1 $(patsubst %, etc/$(DATA_35_DEST)/%, $(notdir $(DATA_35_FILES))) \
1016 :     >> $(MANIFEST))
1017 :     endif
1018 : andreasj 1.17 ifneq ($(LIBSRC_FILES),)
1019 : steveb 1.11 @(cd $(STAGING); \
1020 :     ls -1 $(patsubst %,lib-src/%, $(notdir $(LIBSRC_FILES))) >> $(MANIFEST))
1021 :     endif
1022 :    
1023 : adrian 1.48 install-html: html check-staging
1024 : scop 1.40 ifneq ($(HTML_FILES),)
1025 :     @-mkdir -p $(STAGING)/html
1026 : adrian 1.48 @-mkdir -p $(STAGING)/pkginfo
1027 : scop 1.40 $(RCOPY) $(addprefix $(PWD)/, $(HTML_FILES)) $(STAGING)/html
1028 :     @(cd $(STAGING); \
1029 :     ls -1 $(patsubst %,html/%, $(notdir $(HTML_FILES))) >> $(MANIFEST))
1030 :     endif
1031 : ben 1.43
1032 :     binkit: binkit-1
1033 :    
1034 :     ifeq ($(INSTALL_HTML),t)
1035 :     binkit: install-html
1036 :     endif
1037 :    
1038 : adrian 1.48 binkit-with-html: binkit-1 install-html
1039 : youngs 1.31
1040 :     # Export dependencies for outer make file usage
1041 :    
1042 :     # Passed in from outer Make
1043 :     TARGET_BASE=
1044 :    
1045 :     # Build depends is a clean version of Requires
1046 :     BDEPENDS=$(strip $(filter-out $(PACKAGE),$(REQUIRES)))
1047 :    
1048 :     $(DEPENDS_FILE_NAME): Makefile $(XEMACS_PACKAGES_BASE)/XEmacs.rules
1049 :     ifneq ($(TARGET_BASE),)
1050 : youngs 1.32 -rm -f $(DEPENDS_FILE_NAME)
1051 : youngs 1.31 @echo Creating $(DEPENDS_FILE_NAME)
1052 :     @echo > $(DEPENDS_FILE_NAME)
1053 :     ifneq ($(BDEPENDS),)
1054 :     @echo $(TARGET_BASE)$(PACKAGE)/autoloads.target: \
1055 :     $(TARGET_BASE)$(BDEPENDS:=/autoloads.target) \
1056 :     >>$(DEPENDS_FILE_NAME)
1057 :     @echo $(TARGET_BASE)$(PACKAGE)/compile.target: \
1058 :     $(TARGET_BASE)$(BDEPENDS:=/compile.target) \
1059 :     >>$(DEPENDS_FILE_NAME)
1060 :     endif
1061 :     endif
1062 : andreasj 1.17
1063 :     # Local Variables:
1064 :     # mode: makefile
1065 :     # End:

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