summaryrefslogtreecommitdiff
path: root/localrepo/package-build-20240306.2234.tar
blob: 01a922e6814b85e6fb665906dea43d648128b4b8 (plain)
ofshex dumpascii
0000 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 32 30 32 34 30 33 30 36 2e 32 32 33 34 2f 00 00 00 00 package-build-20240306.2234/....
0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0060 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000755.0000000.0000000.0000
0080 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 33 34 37 34 00 20 35 00 00 00 0000000.00000000000.013474..5...
00a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
00c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
00e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0100 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
0120 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0200 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 32 30 32 34 30 33 30 36 2e 32 32 33 34 2f 70 61 63 6b package-build-20240306.2234/pack
0220 61 67 65 2d 72 65 63 69 70 65 2d 6d 6f 64 65 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 age-recipe-mode.el..............
0240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
0280 30 30 31 31 33 34 31 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 37 36 30 30 00 20 30 00 00 00 0011341.00000000000.017600..0...
02a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0300 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
0320 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0400 3b 3b 3b 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 6d 6f 64 65 2e 65 6c 20 2d 2d 2d 20 4d ;;;.package-recipe-mode.el.---.M
0420 61 6a 6f 72 2d 6d 6f 64 65 20 66 6f 72 20 65 64 69 74 69 6e 67 20 70 61 63 6b 61 67 65 20 72 65 ajor-mode.for.editing.package.re
0440 63 69 70 65 73 20 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 74 3b 20 63 6f cipes..-*-.lexical-binding:t;.co
0460 64 69 6e 67 3a 75 74 66 2d 38 20 2d 2a 2d 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 ding:utf-8.-*-..;;.Copyright.(C)
0480 20 32 30 31 31 2d 32 30 32 34 20 44 6f 6e 61 6c 64 20 45 70 68 72 61 69 6d 20 43 75 72 74 69 73 .2011-2024.Donald.Ephraim.Curtis
04a0 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 32 2d 32 30 32 34 20 53 74 65 76 .;;.Copyright.(C).2012-2024.Stev
04c0 65 20 50 75 72 63 65 6c 6c 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 36 2d e.Purcell.;;.Copyright.(C).2016-
04e0 32 30 32 34 20 4a 6f 6e 61 73 20 42 65 72 6e 6f 75 6c 6c 69 0a 3b 3b 20 43 6f 70 79 72 69 67 68 2024.Jonas.Bernoulli.;;.Copyrigh
0500 74 20 28 43 29 20 32 30 30 39 20 50 68 69 6c 20 48 61 67 65 6c 62 65 72 67 0a 0a 3b 3b 20 41 75 t.(C).2009.Phil.Hagelberg..;;.Au
0520 74 68 6f 72 3a 20 44 6f 6e 61 6c 64 20 45 70 68 72 61 69 6d 20 43 75 72 74 69 73 20 3c 64 63 75 thor:.Donald.Ephraim.Curtis.<dcu
0540 72 74 69 73 40 6d 69 6c 6b 62 6f 78 2e 6e 65 74 3e 0a 3b 3b 20 48 6f 6d 65 70 61 67 65 3a 20 68 rtis@milkbox.net>.;;.Homepage:.h
0560 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6d 65 6c 70 61 2f 70 61 63 6b 61 67 65 2d ttps://github.com/melpa/package-
0580 62 75 69 6c 64 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 6d 61 69 6e 74 20 74 6f 6f 6c 73 0a 0a build.;;.Keywords:.maint.tools..
05a0 3b 3b 20 53 50 44 58 2d 4c 69 63 65 6e 73 65 2d 49 64 65 6e 74 69 66 69 65 72 3a 20 47 50 4c 2d ;;.SPDX-License-Identifier:.GPL-
05c0 33 2e 30 2d 6f 72 2d 6c 61 74 65 72 0a 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 66 72 3.0-or-later..;;.This.file.is.fr
05e0 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 ee.software:.you.can.redistribut
0600 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 3b 3b 20 69 74 20 75 6e 64 65 72 20 74 e.it.and/or.modify.;;.it.under.t
0620 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c he.terms.of.the.GNU.General.Publ
0640 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 64 0a 3b 3b 20 62 79 20 74 68 ic.License.as.published.;;.by.th
0660 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 65 69 74 68 e.Free.Software.Foundation,.eith
0680 65 72 20 76 65 72 73 69 6f 6e 20 33 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 65 2c 0a 3b 3b 20 er.version.3.of.the.License,.;;.
06a0 6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 20 76 65 or.(at.your.option).any.later.ve
06c0 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 64 69 73 74 72 69 rsion..;;.;;.This.file.is.distri
06e0 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 buted.in.the.hope.that.it.will.b
0700 65 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 74 20 57 49 54 48 4f 55 54 20 41 4e 59 20 57 41 52 e.useful,.;;.but.WITHOUT.ANY.WAR
0720 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 RANTY;.without.even.the.implied.
0740 77 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f warranty.of.;;.MERCHANTABILITY.o
0760 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f r.FITNESS.FOR.A.PARTICULAR.PURPO
0780 53 45 2e 20 20 53 65 65 20 74 68 65 0a 3b 3b 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c SE...See.the.;;.GNU.General.Publ
07a0 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a ic.License.for.more.details..;;.
07c0 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f ;;.You.should.have.received.a.co
07e0 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 py.of.the.GNU.General.Public.Lic
0800 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 69 73 20 66 69 6c 65 2e 20 20 49 ense.;;.along.with.this.file...I
0820 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f f.not,.see.<https://www.gnu.org/
0840 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b licenses/>...;;;.Commentary:..;;
0860 20 54 68 69 73 20 6c 69 62 72 61 72 79 20 64 65 66 69 6e 65 73 20 74 68 65 20 6d 61 6a 6f 72 2d .This.library.defines.the.major-
0880 6d 6f 64 65 20 60 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 6d 6f 64 65 27 2c 20 77 68 69 63 mode.`package-recipe-mode',.whic
08a0 68 20 69 73 0a 3b 3b 20 75 73 65 64 20 66 6f 72 20 4d 65 6c 70 61 20 70 61 63 6b 61 67 65 20 72 h.is.;;.used.for.Melpa.package.r
08c0 65 63 69 70 65 20 66 69 6c 65 73 2e 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 ecipe.files...;;;.Code:..(requir
08e0 65 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 29 0a 0a 28 64 65 66 76 61 72 20 66 6c 79 63 68 e.'package-build)..(defvar.flych
0900 65 63 6b 2d 63 68 65 63 6b 65 72 73 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 eck-checkers)..;;;###autoload.(d
0920 65 66 76 61 72 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 6d 6f 64 65 2d 6d 61 70 0a 20 20 efvar.package-recipe-mode-map...
0940 28 6c 65 74 20 28 28 6d 61 70 20 28 6d 61 6b 65 2d 73 70 61 72 73 65 2d 6b 65 79 6d 61 70 29 29 (let.((map.(make-sparse-keymap))
0960 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 43 2d 63 20 ).....(define-key.map.(kbd."C-c.
0980 43 2d 63 22 29 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 63 75 72 72 65 6e 74 2d 72 65 63 C-c").'package-build-current-rec
09a0 69 70 65 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 43 ipe).....(define-key.map.(kbd."C
09c0 2d 63 20 43 2d 6e 22 29 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 63 72 65 61 74 65 2d 72 -c.C-n").'package-build-create-r
09e0 65 63 69 70 65 29 0a 20 20 20 20 6d 61 70 29 0a 20 20 22 4b 65 79 6d 61 70 20 66 6f 72 20 60 70 ecipe).....map)..."Keymap.for.`p
0a00 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 6d 6f 64 65 27 2e 22 29 0a 0a 3b 3b 3b 23 23 23 61 75 ackage-recipe-mode'.")..;;;###au
0a20 74 6f 6c 6f 61 64 0a 28 69 66 20 28 66 62 6f 75 6e 64 70 20 27 6c 69 73 70 2d 64 61 74 61 2d 6d toload.(if.(fboundp.'lisp-data-m
0a40 6f 64 65 29 20 3b 20 53 69 6e 63 65 20 45 6d 61 63 73 20 32 38 2e 31 2e 0a 20 20 20 20 28 64 65 ode).;.Since.Emacs.28.1......(de
0a60 66 69 6e 65 2d 64 65 72 69 76 65 64 2d 6d 6f 64 65 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 fine-derived-mode.package-recipe
0a80 2d 6d 6f 64 65 20 6c 69 73 70 2d 64 61 74 61 2d 6d 6f 64 65 20 22 4d 65 6c 70 61 2d 52 65 63 69 -mode.lisp-data-mode."Melpa-Reci
0aa0 70 65 22 0a 20 20 20 20 20 20 22 4d 61 6a 6f 72 20 6d 6f 64 65 20 66 6f 72 20 62 75 66 66 65 72 pe"......."Major.mode.for.buffer
0ac0 73 20 68 6f 6c 64 69 6e 67 20 4d 65 6c 70 61 20 70 61 63 6b 61 67 65 20 72 65 63 69 70 65 73 2e s.holding.Melpa.package.recipes.
0ae0 22 0a 20 20 20 20 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 0a 20 20 ".......:group.'package-build...
0b00 20 20 20 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 6d 6f 64 65 2d 2d 65 6e 61 62 6c 65 ....(package-recipe-mode--enable
0b20 29 29 0a 20 20 28 64 65 66 69 6e 65 2d 64 65 72 69 76 65 64 2d 6d 6f 64 65 20 70 61 63 6b 61 67 ))...(define-derived-mode.packag
0b40 65 2d 72 65 63 69 70 65 2d 6d 6f 64 65 20 65 6d 61 63 73 2d 6c 69 73 70 2d 6d 6f 64 65 20 22 4d e-recipe-mode.emacs-lisp-mode."M
0b60 65 6c 70 61 2d 52 65 63 69 70 65 22 0a 20 20 20 20 22 4d 61 6a 6f 72 20 6d 6f 64 65 20 66 6f 72 elpa-Recipe"....."Major.mode.for
0b80 20 62 75 66 66 65 72 73 20 68 6f 6c 64 69 6e 67 20 4d 65 6c 70 61 20 70 61 63 6b 61 67 65 20 72 .buffers.holding.Melpa.package.r
0ba0 65 63 69 70 65 73 2e 22 0a 20 20 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 67 65 2d 62 75 69 ecipes.".....:group.'package-bui
0bc0 6c 64 0a 20 20 20 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 6d 6f 64 65 2d 2d 65 6e 61 ld.....(package-recipe-mode--ena
0be0 62 6c 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 6d 6f ble)))..(defun.package-recipe-mo
0c00 64 65 2d 2d 65 6e 61 62 6c 65 20 28 29 0a 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 70 61 63 6b de--enable.()...(setq-local.pack
0c20 61 67 65 2d 62 75 69 6c 64 2d 72 65 63 69 70 65 73 2d 64 69 72 20 64 65 66 61 75 6c 74 2d 64 69 age-build-recipes-dir.default-di
0c40 72 65 63 74 6f 72 79 29 0a 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 70 61 63 6b 61 67 65 2d 62 rectory)...(setq-local.package-b
0c60 75 69 6c 64 2d 77 6f 72 6b 69 6e 67 2d 64 69 72 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 uild-working-dir.(expand-file-na
0c80 6d 65 20 22 2e 2e 2f 77 6f 72 6b 69 6e 67 2f 22 29 29 0a 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c me."../working/"))...(setq-local
0ca0 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 64 69 72 20 28 65 78 70 61 .package-build-archive-dir.(expa
0cc0 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 22 2e 2e 2f 70 61 63 6b 61 67 65 73 2f 22 29 29 0a 20 20 nd-file-name."../packages/"))...
0ce0 28 73 65 74 71 2d 6c 6f 63 61 6c 20 66 6c 79 63 68 65 63 6b 2d 63 68 65 63 6b 65 72 73 20 6e 69 (setq-local.flycheck-checkers.ni
0d00 6c 29 0a 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 69 6e 64 65 6e 74 2d 74 61 62 73 2d 6d 6f 64 l)...(setq-local.indent-tabs-mod
0d20 65 20 6e 69 6c 29 0a 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 72 65 71 75 69 72 65 2d 66 69 6e e.nil)...(setq-local.require-fin
0d40 61 6c 2d 6e 65 77 6c 69 6e 65 20 74 29 0a 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 62 65 66 6f 72 al-newline.t)...(add-hook.'befor
0d60 65 2d 73 61 76 65 2d 68 6f 6f 6b 20 23 27 77 68 69 74 65 73 70 61 63 65 2d 63 6c 65 61 6e 75 70 e-save-hook.#'whitespace-cleanup
0d80 20 6e 69 6c 20 74 29 0a 20 20 28 6d 65 73 73 61 67 65 20 22 25 73 22 20 28 73 75 62 73 74 69 74 .nil.t)...(message."%s".(substit
0da0 75 74 65 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 20 22 5c 0a 55 73 65 20 5c 5c 5b 70 61 63 6b 61 ute-command-keys."\.Use.\\[packa
0dc0 67 65 2d 62 75 69 6c 64 2d 63 75 72 72 65 6e 74 2d 72 65 63 69 70 65 5d 20 74 6f 20 62 75 69 6c ge-build-current-recipe].to.buil
0de0 64 20 74 68 69 73 20 72 65 63 69 70 65 2c 20 5c 0a 5c 5c 5b 70 61 63 6b 61 67 65 2d 62 75 69 6c d.this.recipe,.\.\\[package-buil
0e00 64 2d 63 72 65 61 74 65 2d 72 65 63 69 70 65 5d 20 74 6f 20 63 72 65 61 74 65 20 61 20 6e 65 77 d-create-recipe].to.create.a.new
0e20 20 72 65 63 69 70 65 22 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 .recipe")))..;;;###autoload.(def
0e40 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 63 72 65 61 74 65 2d 72 65 63 69 70 65 20 28 un.package-build-create-recipe.(
0e60 6e 61 6d 65 20 66 65 74 63 68 65 72 29 0a 20 20 22 43 72 65 61 74 65 20 61 20 6e 65 77 20 72 65 name.fetcher)..."Create.a.new.re
0e80 63 69 70 65 20 66 6f 72 20 74 68 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 64 20 4e 41 4d 45 20 cipe.for.the.package.named.NAME.
0ea0 75 73 69 6e 67 20 46 45 54 43 48 45 52 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 0a 20 using.FETCHER."...(interactive..
0ec0 20 20 28 6c 69 73 74 20 28 72 65 61 64 2d 73 74 72 69 6e 67 20 22 50 61 63 6b 61 67 65 20 6e 61 ..(list.(read-string."Package.na
0ee0 6d 65 3a 20 22 29 0a 20 20 20 20 20 20 20 20 20 28 69 6e 74 65 72 6e 20 28 63 6f 6d 70 6c 65 74 me:.")..........(intern.(complet
0f00 69 6e 67 2d 72 65 61 64 20 22 46 65 74 63 68 65 72 3a 20 22 20 70 61 63 6b 61 67 65 2d 72 65 63 ing-read."Fetcher:.".package-rec
0f20 69 70 65 2d 2d 66 65 74 63 68 65 72 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ipe--fetchers...................
0f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 20 74 20 6e 69 6c 20 6e 69 6c 20 22 67 ................nil.t.nil.nil."g
0f60 69 74 68 75 62 22 29 29 29 29 0a 20 20 28 6c 65 74 20 28 28 72 65 63 69 70 65 2d 66 69 6c 65 20 ithub"))))...(let.((recipe-file.
0f80 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 6e 61 6d 65 20 70 61 63 6b 61 67 65 2d 62 (expand-file-name.name.package-b
0fa0 75 69 6c 64 2d 72 65 63 69 70 65 73 2d 64 69 72 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 66 uild-recipes-dir))).....(when.(f
0fc0 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 72 65 63 69 70 65 2d 66 69 6c 65 29 0a 20 20 20 20 20 20 ile-exists-p.recipe-file).......
0fe0 28 65 72 72 6f 72 20 22 52 65 63 69 70 65 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 73 22 29 29 (error."Recipe.already.exists"))
1000 0a 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 66 69 6e 64 2d .....(with-current-buffer.(find-
1020 66 69 6c 65 20 72 65 63 69 70 65 2d 66 69 6c 65 29 0a 20 20 20 20 20 20 28 73 61 76 65 2d 65 78 file.recipe-file).......(save-ex
1040 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61 74 20 cursion.........(insert.(format.
1060 22 28 25 73 5c 6e 22 20 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 "(%s\n".name).................(f
1080 6f 72 6d 61 74 20 22 20 3a 66 65 74 63 68 65 72 20 25 73 5c 6e 22 20 66 65 74 63 68 65 72 29 0a ormat.".:fetcher.%s\n".fetcher).
10a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 6d 65 6d 71 20 66 65 74 63 68 65 ................(if.(memq.fetche
10c0 72 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 2d 66 6f 72 67 65 2d 66 65 74 63 68 65 72 73 r.package-recipe--forge-fetchers
10e0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 3a 72 65 70 6f 20 5c 22 ).....................".:repo.\"
1100 55 53 45 52 2f 52 45 50 4f 5c 22 29 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 USER/REPO\")\n".................
1120 20 20 22 20 3a 75 72 6c 20 5c 22 68 74 74 70 73 3a 2f 2f 54 4f 44 4f 5c 22 29 5c 6e 22 29 29 29 ..".:url.\"https://TODO\")\n")))
1140 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 )))..;;;###autoload.(defun.packa
1160 67 65 2d 62 75 69 6c 64 2d 63 75 72 72 65 6e 74 2d 72 65 63 69 70 65 20 28 29 0a 20 20 22 42 75 ge-build-current-recipe.()..."Bu
1180 69 6c 64 20 61 72 63 68 69 76 65 20 66 6f 72 20 74 68 65 20 72 65 63 69 70 65 20 64 65 66 69 6e ild.archive.for.the.recipe.defin
11a0 65 64 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 2e 22 0a 20 20 28 69 6e ed.in.the.current.buffer."...(in
11c0 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 75 6e 6c 65 73 73 20 28 61 6e 64 20 28 62 75 66 66 65 teractive)...(unless.(and.(buffe
11e0 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 69 6c r-file-name)................(fil
1200 65 2d 65 71 75 61 6c 2d 70 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 64 69 72 65 63 74 6f 72 79 20 28 e-equal-p.(file-name-directory.(
1220 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 buffer-file-name))..............
1240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 ................package-build-re
1260 63 69 70 65 73 2d 64 69 72 29 29 0a 20 20 20 20 28 65 72 72 6f 72 20 22 42 75 66 66 65 72 20 69 cipes-dir)).....(error."Buffer.i
1280 73 20 6e 6f 74 20 76 69 73 69 74 69 6e 67 20 61 20 72 65 63 69 70 65 22 29 29 0a 20 20 28 77 68 s.not.visiting.a.recipe"))...(wh
12a0 65 6e 20 28 62 75 66 66 65 72 2d 6d 6f 64 69 66 69 65 64 2d 70 29 0a 20 20 20 20 28 69 66 20 28 en.(buffer-modified-p).....(if.(
12c0 79 2d 6f 72 2d 6e 2d 70 20 28 66 6f 72 6d 61 74 20 22 53 61 76 65 20 66 69 6c 65 20 25 73 3f 20 y-or-n-p.(format."Save.file.%s?.
12e0 22 20 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 28 73 61 ".buffer-file-name)).........(sa
1300 76 65 2d 62 75 66 66 65 72 29 0a 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 41 62 6f 72 74 69 6e ve-buffer).......(error."Abortin
1320 67 22 29 29 29 0a 20 20 28 63 68 65 63 6b 2d 70 61 72 65 6e 73 29 0a 20 20 28 6c 65 74 20 28 28 g")))...(check-parens)...(let.((
1340 6e 61 6d 65 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f 6e 64 69 72 65 63 74 6f 72 79 20 28 62 75 name.(file-name-nondirectory.(bu
1360 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 29 29 29 0a 20 20 20 20 28 70 61 63 6b 61 67 65 2d ffer-file-name)))).....(package-
1380 62 75 69 6c 64 2d 61 72 63 68 69 76 65 20 6e 61 6d 65 20 74 29 0a 20 20 20 20 28 6c 65 74 20 28 build-archive.name.t).....(let.(
13a0 28 65 6e 74 72 79 20 28 61 73 73 71 20 28 69 6e 74 65 72 6e 20 6e 61 6d 65 29 20 28 70 61 63 6b (entry.(assq.(intern.name).(pack
13c0 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 61 6c 69 73 74 29 29 29 0a 20 20 20 20 20 age-build-archive-alist)))......
13e0 20 20 20 20 20 28 6f 75 74 70 75 74 2d 62 75 66 66 65 72 2d 6e 61 6d 65 20 22 2a 70 61 63 6b 61 .....(output-buffer-name."*packa
1400 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 65 6e 74 72 79 2a 22 29 29 0a 20 20 20 20 20 ge-build-archive-entry*"))......
1420 20 28 77 69 74 68 2d 6f 75 74 70 75 74 2d 74 6f 2d 74 65 6d 70 2d 62 75 66 66 65 72 20 6f 75 74 .(with-output-to-temp-buffer.out
1440 70 75 74 2d 62 75 66 66 65 72 2d 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 28 70 72 69 6e 63 20 22 put-buffer-name.........(princ."
1460 3b 3b 20 50 6c 65 61 73 65 20 63 68 65 63 6b 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 61 ;;.Please.check.the.following.pa
1480 63 6b 61 67 65 20 64 65 73 63 72 69 70 74 6f 72 2e 5c 6e 22 29 0a 20 20 20 20 20 20 20 20 28 70 ckage.descriptor.\n").........(p
14a0 72 69 6e 63 20 22 3b 3b 20 49 66 20 74 68 65 20 63 6f 72 72 65 63 74 20 70 61 63 6b 61 67 65 20 rinc.";;.If.the.correct.package.
14c0 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 72 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 61 72 65 20 description.or.dependencies.are.
14e0 6d 69 73 73 69 6e 67 2c 5c 6e 22 29 0a 20 20 20 20 20 20 20 20 28 70 72 69 6e 63 20 22 3b 3b 20 missing,\n").........(princ.";;.
1500 74 68 65 6e 20 74 68 65 20 73 6f 75 72 63 65 20 2e 65 6c 20 66 69 6c 65 20 69 73 20 6c 69 6b 65 then.the.source..el.file.is.like
1520 6c 79 20 6d 61 6c 66 6f 72 6d 65 64 2c 20 61 6e 64 20 73 68 6f 75 6c 64 20 62 65 20 66 69 78 65 ly.malformed,.and.should.be.fixe
1540 64 2e 5c 6e 22 29 0a 20 20 20 20 20 20 20 20 28 70 70 20 65 6e 74 72 79 29 29 0a 20 20 20 20 20 d.\n").........(pp.entry))......
1560 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 6f 75 74 70 75 74 2d 62 75 66 .(with-current-buffer.output-buf
1580 66 65 72 2d 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 28 69 66 20 28 66 62 6f 75 6e 64 70 20 27 6c fer-name.........(if.(fboundp.'l
15a0 69 73 70 2d 64 61 74 61 2d 6d 6f 64 65 29 20 28 6c 69 73 70 2d 64 61 74 61 2d 6d 6f 64 65 29 20 isp-data-mode).(lisp-data-mode).
15c0 28 65 6d 61 63 73 2d 6c 69 73 70 2d 6d 6f 64 65 29 29 0a 20 20 20 20 20 20 20 20 28 76 69 65 77 (emacs-lisp-mode)).........(view
15e0 2d 6d 6f 64 65 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 79 2d 6f 72 2d 6e 2d 70 20 22 49 -mode)).......(when.(y-or-n-p."I
1600 6e 73 74 61 6c 6c 20 6e 65 77 20 70 61 63 6b 61 67 65 3f 20 22 29 0a 20 20 20 20 20 20 20 20 28 nstall.new.package?.").........(
1620 70 61 63 6b 61 67 65 2d 69 6e 73 74 61 6c 6c 2d 66 69 6c 65 20 28 70 61 63 6b 61 67 65 2d 62 75 package-install-file.(package-bu
1640 69 6c 64 2d 2d 61 72 74 69 66 61 63 74 2d 66 69 6c 65 20 65 6e 74 72 79 29 29 0a 20 20 20 20 20 ild--artifact-file.entry))......
1660 20 20 20 28 70 6f 70 2d 74 6f 2d 62 75 66 66 65 72 20 28 67 65 74 2d 62 75 66 66 65 72 20 62 79 ...(pop-to-buffer.(get-buffer.by
1680 74 65 2d 63 6f 6d 70 69 6c 65 2d 6c 6f 67 2d 62 75 66 66 65 72 29 29 29 29 29 29 0a 0a 28 70 72 te-compile-log-buffer))))))..(pr
16a0 6f 76 69 64 65 20 27 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 6d 6f 64 65 29 0a 3b 3b 3b 20 ovide.'package-recipe-mode).;;;.
16c0 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 6d 6f 64 65 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 package-recipe-mode.el.ends.here
16e0 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1800 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 32 30 32 34 30 33 30 36 2e 32 32 33 34 2f 70 61 63 6b package-build-20240306.2234/pack
1820 61 67 65 2d 72 65 63 69 70 65 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 age-recipe.el...................
1840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1860 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
1880 30 30 32 30 36 36 34 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 36 36 36 36 00 20 30 00 00 00 0020664.00000000000.016666..0...
18a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1900 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
1920 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
1940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1a00 3b 3b 3b 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2e 65 6c 20 2d 2d 2d 20 50 61 63 6b 61 67 ;;;.package-recipe.el.---.Packag
1a20 65 20 72 65 63 69 70 65 73 20 61 73 20 45 49 45 49 4f 20 6f 62 6a 65 63 74 73 20 20 2d 2a 2d 20 e.recipes.as.EIEIO.objects..-*-.
1a40 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 74 3b 20 63 6f 64 69 6e 67 3a 75 74 66 2d 38 20 lexical-binding:t;.coding:utf-8.
1a60 2d 2a 2d 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 38 2d 32 30 32 34 20 -*-..;;.Copyright.(C).2018-2024.
1a80 4a 6f 6e 61 73 20 42 65 72 6e 6f 75 6c 6c 69 0a 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 4a 6f 6e 61 Jonas.Bernoulli..;;.Author:.Jona
1aa0 73 20 42 65 72 6e 6f 75 6c 6c 69 20 3c 6a 6f 6e 61 73 40 62 65 72 6e 6f 75 6c 2e 6c 69 3e 0a 3b s.Bernoulli.<jonas@bernoul.li>.;
1ac0 3b 20 48 6f 6d 65 70 61 67 65 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6d ;.Homepage:.https://github.com/m
1ae0 65 6c 70 61 2f 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 elpa/package-build.;;.Keywords:.
1b00 6d 61 69 6e 74 20 74 6f 6f 6c 73 0a 0a 3b 3b 20 53 50 44 58 2d 4c 69 63 65 6e 73 65 2d 49 64 65 maint.tools..;;.SPDX-License-Ide
1b20 6e 74 69 66 69 65 72 3a 20 47 50 4c 2d 33 2e 30 2d 6f 72 2d 6c 61 74 65 72 0a 0a 3b 3b 20 54 68 ntifier:.GPL-3.0-or-later..;;.Th
1b40 69 73 20 66 69 6c 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 is.file.is.free.software:.you.ca
1b60 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a n.redistribute.it.and/or.modify.
1b80 3b 3b 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 ;;.it.under.the.terms.of.the.GNU
1ba0 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 .General.Public.License.as.publi
1bc0 73 68 65 64 0a 3b 3b 20 62 79 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 shed.;;.by.the.Free.Software.Fou
1be0 6e 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 33 20 6f 66 20 74 68 65 ndation,.either.version.3.of.the
1c00 20 4c 69 63 65 6e 73 65 2c 0a 3b 3b 20 6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 .License,.;;.or.(at.your.option)
1c20 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b 20 54 68 69 73 20 66 .any.later.version..;;.;;.This.f
1c40 69 6c 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ile.is.distributed.in.the.hope.t
1c60 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 74 20 57 49 hat.it.will.be.useful,.;;.but.WI
1c80 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
1ca0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 43 .the.implied.warranty.of.;;.MERC
1cc0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
1ce0 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 3b 3b 20 47 4e 55 TICULAR.PURPOSE...See.the.;;.GNU
1d00 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 .General.Public.License.for.more
1d20 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 .details..;;.;;.You.should.have.
1d40 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 received.a.copy.of.the.GNU.Gener
1d60 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 20 al.Public.License.;;.along.with.
1d80 74 68 69 73 20 66 69 6c 65 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 73 3a 2f this.file...If.not,.see.<https:/
1da0 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b 3b 20 43 6f /www.gnu.org/licenses/>...;;;.Co
1dc0 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 50 61 63 6b 61 67 65 20 72 65 63 69 70 65 73 20 61 73 mmentary:..;;.Package.recipes.as
1de0 20 45 49 45 49 4f 20 6f 62 6a 65 63 74 73 2e 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 .EIEIO.objects...;;;.Code:..(req
1e00 75 69 72 65 20 27 63 6f 6d 70 61 74 20 6e 69 6c 20 74 29 0a 28 72 65 71 75 69 72 65 20 27 65 69 uire.'compat.nil.t).(require.'ei
1e20 65 69 6f 29 0a 28 72 65 71 75 69 72 65 20 27 73 75 62 72 2d 78 29 0a 28 72 65 71 75 69 72 65 20 eio).(require.'subr-x).(require.
1e40 27 75 72 6c 2d 70 61 72 73 65 29 0a 0a 28 64 65 66 76 61 72 20 70 61 63 6b 61 67 65 2d 62 75 69 'url-parse)..(defvar.package-bui
1e60 6c 64 2d 75 73 65 2d 67 69 74 2d 72 65 6d 6f 74 65 2d 68 67 29 0a 28 64 65 66 76 61 72 20 70 61 ld-use-git-remote-hg).(defvar.pa
1e80 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 63 69 70 65 73 2d 64 69 72 29 0a 28 64 65 66 76 61 72 ckage-build-recipes-dir).(defvar
1ea0 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 77 6f 72 6b 69 6e 67 2d 64 69 72 29 0a 0a 3b 3b 3b .package-build-working-dir)..;;;
1ec0 20 43 6c 61 73 73 65 73 0a 0a 28 64 65 66 63 6c 61 73 73 20 70 61 63 6b 61 67 65 2d 72 65 63 69 .Classes..(defclass.package-reci
1ee0 70 65 20 28 29 0a 20 20 28 28 75 72 6c 2d 66 6f 72 6d 61 74 20 20 20 20 20 20 3a 61 6c 6c 6f 63 pe.()...((url-format......:alloc
1f00 61 74 69 6f 6e 20 3a 63 6c 61 73 73 20 20 20 20 20 20 20 3a 69 6e 69 74 66 6f 72 6d 20 6e 69 6c ation.:class.......:initform.nil
1f20 29 0a 20 20 20 28 72 65 70 6f 70 61 67 65 2d 66 6f 72 6d 61 74 20 3a 61 6c 6c 6f 63 61 74 69 6f )....(repopage-format.:allocatio
1f40 6e 20 3a 63 6c 61 73 73 20 20 20 20 20 20 20 3a 69 6e 69 74 66 6f 72 6d 20 6e 69 6c 29 0a 20 20 n.:class.......:initform.nil)...
1f60 20 28 73 74 61 62 6c 65 2d 70 20 20 20 20 20 20 20 20 3a 61 6c 6c 6f 63 61 74 69 6f 6e 20 3a 63 .(stable-p........:allocation.:c
1f80 6c 61 73 73 20 20 20 20 20 20 20 3a 69 6e 69 74 66 6f 72 6d 20 6e 69 6c 29 0a 20 20 20 28 6e 61 lass.......:initform.nil)....(na
1fa0 6d 65 20 20 20 20 20 20 20 20 20 20 20 20 3a 69 6e 69 74 61 72 67 20 3a 6e 61 6d 65 20 20 20 20 me............:initarg.:name....
1fc0 20 20 20 20 20 20 20 3a 69 6e 69 74 66 6f 72 6d 20 6e 69 6c 29 0a 20 20 20 28 75 72 6c 20 20 20 .......:initform.nil)....(url...
1fe0 20 20 20 20 20 20 20 20 20 20 3a 69 6e 69 74 61 72 67 20 3a 75 72 6c 20 20 20 20 20 20 20 20 20 ..........:initarg.:url.........
2000 20 20 20 3a 69 6e 69 74 66 6f 72 6d 20 6e 69 6c 29 0a 20 20 20 28 72 65 70 6f 20 20 20 20 20 20 ...:initform.nil)....(repo......
2020 20 20 20 20 20 20 3a 69 6e 69 74 61 72 67 20 3a 72 65 70 6f 20 20 20 20 20 20 20 20 20 20 20 3a ......:initarg.:repo...........:
2040 69 6e 69 74 66 6f 72 6d 20 6e 69 6c 29 0a 20 20 20 28 72 65 70 6f 70 61 67 65 20 20 20 20 20 20 initform.nil)....(repopage......
2060 20 20 3a 69 6e 69 74 61 72 67 20 3a 72 65 70 6f 70 61 67 65 20 20 20 20 20 20 20 3a 69 6e 69 74 ..:initarg.:repopage.......:init
2080 66 6f 72 6d 20 6e 69 6c 29 0a 20 20 20 28 66 69 6c 65 73 20 20 20 20 20 20 20 20 20 20 20 3a 69 form.nil)....(files...........:i
20a0 6e 69 74 61 72 67 20 3a 66 69 6c 65 73 20 20 20 20 20 20 20 20 20 20 3a 69 6e 69 74 66 6f 72 6d nitarg.:files..........:initform
20c0 20 6e 69 6c 29 0a 20 20 20 28 62 72 61 6e 63 68 20 20 20 20 20 20 20 20 20 20 3a 69 6e 69 74 61 .nil)....(branch..........:inita
20e0 72 67 20 3a 62 72 61 6e 63 68 20 20 20 20 20 20 20 20 20 3a 69 6e 69 74 66 6f 72 6d 20 6e 69 6c rg.:branch.........:initform.nil
2100 29 0a 20 20 20 28 63 6f 6d 6d 69 74 20 20 20 20 20 20 20 20 20 20 3a 69 6e 69 74 61 72 67 20 3a )....(commit..........:initarg.:
2120 63 6f 6d 6d 69 74 20 20 20 20 20 20 20 20 20 3a 69 6e 69 74 66 6f 72 6d 20 6e 69 6c 29 0a 20 20 commit.........:initform.nil)...
2140 20 28 74 69 6d 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(time..........................
2160 20 20 20 20 20 20 20 20 20 20 20 3a 69 6e 69 74 66 6f 72 6d 20 6e 69 6c 29 0a 20 20 20 28 76 65 ...........:initform.nil)....(ve
2180 72 73 69 6f 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rsion...........................
21a0 20 20 20 20 20 20 20 3a 69 6e 69 74 66 6f 72 6d 20 6e 69 6c 29 0a 20 20 20 28 76 65 72 73 69 6f .......:initform.nil)....(versio
21c0 6e 2d 72 65 67 65 78 70 20 20 3a 69 6e 69 74 61 72 67 20 3a 76 65 72 73 69 6f 6e 2d 72 65 67 65 n-regexp..:initarg.:version-rege
21e0 78 70 20 3a 69 6e 69 74 66 6f 72 6d 20 6e 69 6c 29 0a 20 20 20 28 6f 6c 64 2d 6e 61 6d 65 73 20 xp.:initform.nil)....(old-names.
2200 20 20 20 20 20 20 3a 69 6e 69 74 61 72 67 20 3a 6f 6c 64 2d 6e 61 6d 65 73 20 20 20 20 20 20 3a ......:initarg.:old-names......:
2220 69 6e 69 74 66 6f 72 6d 20 6e 69 6c 29 29 0a 20 20 3a 61 62 73 74 72 61 63 74 20 74 29 0a 0a 3b initform.nil))...:abstract.t)..;
2240 3b 3b 3b 20 47 69 74 0a 0a 28 64 65 66 63 6c 61 73 73 20 70 61 63 6b 61 67 65 2d 67 69 74 2d 72 ;;;.Git..(defclass.package-git-r
2260 65 63 69 70 65 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 29 20 28 29 29 0a 0a 28 64 65 66 ecipe.(package-recipe).())..(def
2280 63 6c 61 73 73 20 70 61 63 6b 61 67 65 2d 67 69 74 68 75 62 2d 72 65 63 69 70 65 20 28 70 61 63 class.package-github-recipe.(pac
22a0 6b 61 67 65 2d 67 69 74 2d 72 65 63 69 70 65 29 0a 20 20 28 28 75 72 6c 2d 66 6f 72 6d 61 74 20 kage-git-recipe)...((url-format.
22c0 20 20 20 20 20 3a 69 6e 69 74 66 6f 72 6d 20 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 .....:initform."https://github.c
22e0 6f 6d 2f 25 73 2e 67 69 74 22 29 0a 20 20 20 28 72 65 70 6f 70 61 67 65 2d 66 6f 72 6d 61 74 20 om/%s.git")....(repopage-format.
2300 3a 69 6e 69 74 66 6f 72 6d 20 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 25 73 :initform."https://github.com/%s
2320 22 29 29 29 0a 0a 28 64 65 66 63 6c 61 73 73 20 70 61 63 6b 61 67 65 2d 67 69 74 6c 61 62 2d 72 ")))..(defclass.package-gitlab-r
2340 65 63 69 70 65 20 28 70 61 63 6b 61 67 65 2d 67 69 74 2d 72 65 63 69 70 65 29 0a 20 20 28 28 75 ecipe.(package-git-recipe)...((u
2360 72 6c 2d 66 6f 72 6d 61 74 20 20 20 20 20 20 3a 69 6e 69 74 66 6f 72 6d 20 22 68 74 74 70 73 3a rl-format......:initform."https:
2380 2f 2f 67 69 74 6c 61 62 2e 63 6f 6d 2f 25 73 2e 67 69 74 22 29 0a 20 20 20 28 72 65 70 6f 70 61 //gitlab.com/%s.git")....(repopa
23a0 67 65 2d 66 6f 72 6d 61 74 20 3a 69 6e 69 74 66 6f 72 6d 20 22 68 74 74 70 73 3a 2f 2f 67 69 74 ge-format.:initform."https://git
23c0 6c 61 62 2e 63 6f 6d 2f 25 73 22 29 29 29 0a 0a 28 64 65 66 63 6c 61 73 73 20 70 61 63 6b 61 67 lab.com/%s")))..(defclass.packag
23e0 65 2d 63 6f 64 65 62 65 72 67 2d 72 65 63 69 70 65 20 28 70 61 63 6b 61 67 65 2d 67 69 74 2d 72 e-codeberg-recipe.(package-git-r
2400 65 63 69 70 65 29 0a 20 20 28 28 75 72 6c 2d 66 6f 72 6d 61 74 20 20 20 20 20 20 3a 69 6e 69 74 ecipe)...((url-format......:init
2420 66 6f 72 6d 20 22 68 74 74 70 73 3a 2f 2f 63 6f 64 65 62 65 72 67 2e 6f 72 67 2f 25 73 2e 67 69 form."https://codeberg.org/%s.gi
2440 74 22 29 0a 20 20 20 28 72 65 70 6f 70 61 67 65 2d 66 6f 72 6d 61 74 20 3a 69 6e 69 74 66 6f 72 t")....(repopage-format.:initfor
2460 6d 20 22 68 74 74 70 73 3a 2f 2f 63 6f 64 65 62 65 72 67 2e 6f 72 67 2f 25 73 22 29 29 29 0a 0a m."https://codeberg.org/%s")))..
2480 28 64 65 66 63 6c 61 73 73 20 70 61 63 6b 61 67 65 2d 73 6f 75 72 63 65 68 75 74 2d 72 65 63 69 (defclass.package-sourcehut-reci
24a0 70 65 20 28 70 61 63 6b 61 67 65 2d 67 69 74 2d 72 65 63 69 70 65 29 0a 20 20 28 28 75 72 6c 2d pe.(package-git-recipe)...((url-
24c0 66 6f 72 6d 61 74 20 20 20 20 20 20 3a 69 6e 69 74 66 6f 72 6d 20 22 68 74 74 70 73 3a 2f 2f 67 format......:initform."https://g
24e0 69 74 2e 73 72 2e 68 74 2f 7e 25 73 22 29 0a 20 20 20 28 72 65 70 6f 70 61 67 65 2d 66 6f 72 6d it.sr.ht/~%s")....(repopage-form
2500 61 74 20 3a 69 6e 69 74 66 6f 72 6d 20 22 68 74 74 70 73 3a 2f 2f 67 69 74 2e 73 72 2e 68 74 2f at.:initform."https://git.sr.ht/
2520 7e 25 73 22 29 29 29 0a 0a 3b 3b 3b 3b 20 4d 65 72 63 75 72 69 61 6c 0a 0a 28 64 65 66 63 6c 61 ~%s")))..;;;;.Mercurial..(defcla
2540 73 73 20 70 61 63 6b 61 67 65 2d 68 67 2d 72 65 63 69 70 65 20 28 70 61 63 6b 61 67 65 2d 72 65 ss.package-hg-recipe.(package-re
2560 63 69 70 65 29 20 28 29 29 0a 0a 28 64 65 66 63 6c 61 73 73 20 70 61 63 6b 61 67 65 2d 67 69 74 cipe).())..(defclass.package-git
2580 2d 72 65 6d 6f 74 65 2d 68 67 2d 72 65 63 69 70 65 20 28 70 61 63 6b 61 67 65 2d 67 69 74 2d 72 -remote-hg-recipe.(package-git-r
25a0 65 63 69 70 65 29 20 28 29 29 0a 0a 3b 3b 3b 20 4d 65 74 68 6f 64 73 0a 0a 28 63 6c 2d 64 65 66 ecipe).())..;;;.Methods..(cl-def
25c0 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 2d 77 6f 72 6b 69 6e 67 2d 74 method.package-recipe--working-t
25e0 72 65 65 20 28 28 72 63 70 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 29 29 0a 20 20 28 66 69 ree.((rcp.package-recipe))...(fi
2600 6c 65 2d 6e 61 6d 65 2d 61 73 2d 64 69 72 65 63 74 6f 72 79 0a 20 20 20 28 65 78 70 61 6e 64 2d le-name-as-directory....(expand-
2620 66 69 6c 65 2d 6e 61 6d 65 20 28 6f 72 65 66 20 72 63 70 20 6e 61 6d 65 29 20 70 61 63 6b 61 67 file-name.(oref.rcp.name).packag
2640 65 2d 62 75 69 6c 64 2d 77 6f 72 6b 69 6e 67 2d 64 69 72 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d e-build-working-dir)))..(cl-defm
2660 65 74 68 6f 64 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 2d 75 70 73 74 72 65 61 6d 2d 75 ethod.package-recipe--upstream-u
2680 72 6c 20 28 28 72 63 70 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 29 29 0a 20 20 28 6f 72 20 rl.((rcp.package-recipe))...(or.
26a0 28 6f 72 65 66 20 72 63 70 20 75 72 6c 29 0a 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 28 6f 72 (oref.rcp.url).......(format.(or
26c0 65 66 20 72 63 70 20 75 72 6c 2d 66 6f 72 6d 61 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ef.rcp.url-format)..............
26e0 20 28 6f 72 65 66 20 72 63 70 20 72 65 70 6f 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 .(oref.rcp.repo))))..(cl-defmeth
2700 6f 64 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 2d 75 70 73 74 72 65 61 6d 2d 75 72 6c 20 od.package-recipe--upstream-url.
2720 28 28 72 63 70 20 70 61 63 6b 61 67 65 2d 67 69 74 2d 72 65 6d 6f 74 65 2d 68 67 2d 72 65 63 69 ((rcp.package-git-remote-hg-reci
2740 70 65 29 29 0a 20 20 28 63 6f 6e 63 61 74 20 22 68 67 3a 3a 22 20 28 6f 72 65 66 20 72 63 70 20 pe))...(concat."hg::".(oref.rcp.
2760 75 72 6c 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 65 2d 72 65 url)))..(cl-defmethod.package-re
2780 63 69 70 65 2d 2d 75 70 73 74 72 65 61 6d 2d 70 72 6f 74 6f 63 6f 6c 20 28 28 72 63 70 20 70 61 cipe--upstream-protocol.((rcp.pa
27a0 63 6b 61 67 65 2d 72 65 63 69 70 65 29 29 0a 20 20 28 6c 65 74 20 28 28 75 72 6c 20 28 70 61 63 ckage-recipe))...(let.((url.(pac
27c0 6b 61 67 65 2d 72 65 63 69 70 65 2d 2d 75 70 73 74 72 65 61 6d 2d 75 72 6c 20 72 63 70 29 29 29 kage-recipe--upstream-url.rcp)))
27e0 0a 20 20 20 20 28 63 6f 6e 64 20 28 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5c 5c 60 5c 5c .....(cond.((string-match."\\`\\
2800 28 5b 61 2d 7a 5d 2b 5c 5c 29 3a 2f 2f 22 20 75 72 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 ([a-z]+\\)://".url)............(
2820 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 20 75 72 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 match-string.1.url))...........(
2840 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5c 5c 60 5b 5e 3a 2f 20 5d 2b 3a 22 20 75 72 6c 29 (string-match."\\`[^:/.]+:".url)
2860 20 22 73 73 68 22 29 0a 20 20 20 20 20 20 20 20 20 20 28 74 20 22 66 69 6c 65 22 29 29 29 29 0a ."ssh")...........(t."file")))).
2880 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 2d 66 .(cl-defmethod.package-recipe--f
28a0 65 74 63 68 65 72 20 28 28 72 63 70 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 29 29 0a 20 20 etcher.((rcp.package-recipe))...
28c0 28 73 75 62 73 74 72 69 6e 67 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 28 65 69 65 69 6f 2d 6f (substring.(symbol-name.(eieio-o
28e0 62 6a 65 63 74 2d 63 6c 61 73 73 20 72 63 70 29 29 20 38 20 2d 37 29 29 0a 0a 3b 3b 3b 20 43 6f bject-class.rcp)).8.-7))..;;;.Co
2900 6e 73 74 61 6e 74 73 0a 0a 28 64 65 66 63 6f 6e 73 74 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 nstants..(defconst.package-recip
2920 65 2d 2d 66 6f 72 67 65 2d 66 65 74 63 68 65 72 73 0a 20 20 27 28 67 69 74 68 75 62 20 67 69 74 e--forge-fetchers...'(github.git
2940 6c 61 62 20 63 6f 64 65 62 65 72 67 20 73 6f 75 72 63 65 68 75 74 29 29 0a 0a 28 64 65 66 63 6f lab.codeberg.sourcehut))..(defco
2960 6e 73 74 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 2d 66 65 74 63 68 65 72 73 0a 20 20 28 nst.package-recipe--fetchers...(
2980 61 70 70 65 6e 64 20 27 28 67 69 74 20 68 67 29 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d append.'(git.hg).package-recipe-
29a0 2d 66 6f 72 67 65 2d 66 65 74 63 68 65 72 73 29 29 0a 0a 3b 3b 3b 20 49 6e 74 65 72 66 61 63 65 -forge-fetchers))..;;;.Interface
29c0 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 72 65 63 69 70 65 73 20 ..(defun.package-recipe-recipes.
29e0 28 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 74 68 65 20 6e 61 6d 65 73 ()..."Return.a.list.of.the.names
2a00 20 6f 66 20 70 61 63 6b 61 67 65 73 20 77 69 74 68 20 61 76 61 69 6c 61 62 6c 65 20 72 65 63 69 .of.packages.with.available.reci
2a20 70 65 73 2e 22 0a 20 20 28 64 69 72 65 63 74 6f 72 79 2d 66 69 6c 65 73 20 70 61 63 6b 61 67 65 pes."...(directory-files.package
2a40 2d 62 75 69 6c 64 2d 72 65 63 69 70 65 73 2d 64 69 72 20 6e 69 6c 20 22 5e 5b 5e 2e 5d 22 29 29 -build-recipes-dir.nil."^[^.]"))
2a60 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 72 65 61 64 2d 6e 61 6d ..(defun.package-recipe-read-nam
2a80 65 20 28 29 0a 20 20 22 52 65 61 64 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 61 20 70 61 63 6b 61 e.()..."Read.the.name.of.a.packa
2aa0 67 65 20 66 6f 72 20 77 68 69 63 68 20 61 20 72 65 63 69 70 65 20 69 73 20 61 76 61 69 6c 61 62 ge.for.which.a.recipe.is.availab
2ac0 6c 65 2e 22 0a 20 20 28 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 20 22 50 61 63 6b 61 67 65 le."...(completing-read."Package
2ae0 3a 20 22 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 72 65 63 69 70 65 73 29 29 29 0a 0a :.".(package-recipe-recipes)))..
2b00 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 6c 6f 6f 6b 75 70 20 28 6e 61 (defun.package-recipe-lookup.(na
2b20 6d 65 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 72 65 63 69 70 65 20 6f 62 6a 65 63 74 20 66 6f me)..."Return.a.recipe.object.fo
2b40 72 20 74 68 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 64 20 4e 41 4d 45 2e 0a 49 66 20 6e 6f 20 r.the.package.named.NAME..If.no.
2b60 73 75 63 68 20 72 65 63 69 70 65 20 66 69 6c 65 20 65 78 69 73 74 73 20 6f 72 20 69 66 20 74 68 such.recipe.file.exists.or.if.th
2b80 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68 65 20 72 65 63 69 70 65 0a 66 69 6c 65 20 69 73 e.contents.of.the.recipe.file.is
2ba0 20 69 6e 76 61 6c 69 64 2c 20 74 68 65 6e 20 72 61 69 73 65 20 61 6e 20 65 72 72 6f 72 2e 22 0a .invalid,.then.raise.an.error.".
2bc0 20 20 28 6c 65 74 20 28 28 66 69 6c 65 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 ..(let.((file.(expand-file-name.
2be0 6e 61 6d 65 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 63 69 70 65 73 2d 64 69 72 29 29 name.package-build-recipes-dir))
2c00 29 0a 20 20 20 20 28 69 66 20 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 66 69 6c 65 29 0a 20 ).....(if.(file-exists-p.file)..
2c20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 72 65 63 69 70 65 20 28 77 69 74 68 2d 74 65 6d 70 .......(let*.((recipe.(with-temp
2c40 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -buffer.........................
2c60 20 28 69 6e 73 65 72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e 74 73 20 66 69 6c 65 29 0a 20 20 20 .(insert-file-contents.file)....
2c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 61 64 20 28 63 75 72 ......................(read.(cur
2ca0 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 rent-buffer))))................(
2cc0 70 6c 69 73 74 20 28 63 64 72 20 72 65 63 69 70 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 plist.(cdr.recipe)).............
2ce0 20 20 20 28 66 65 74 63 68 65 72 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c 69 73 74 20 3a 66 65 ...(fetcher.(plist-get.plist.:fe
2d00 74 63 68 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6b 65 79 20 76 61 6c 20 61 tcher))................key.val.a
2d20 72 67 73 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 2d rgs)...........(package-recipe--
2d40 76 61 6c 69 64 61 74 65 20 72 65 63 69 70 65 20 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 validate.recipe.name)...........
2d60 28 77 68 69 6c 65 20 28 61 6e 64 20 28 73 65 74 71 20 6b 65 79 20 28 70 6f 70 20 70 6c 69 73 74 (while.(and.(setq.key.(pop.plist
2d80 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 76 )).......................(setq.v
2da0 61 6c 20 28 70 6f 70 20 70 6c 69 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e al.(pop.plist))).............(un
2dc0 6c 65 73 73 20 28 65 71 20 6b 65 79 20 3a 66 65 74 63 68 65 72 29 0a 20 20 20 20 20 20 20 20 20 less.(eq.key.:fetcher)..........
2de0 20 20 20 20 20 28 70 75 73 68 20 76 61 6c 20 61 72 67 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 .....(push.val.args)............
2e00 20 20 20 28 70 75 73 68 20 6b 65 79 20 61 72 67 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 ...(push.key.args)))...........(
2e20 77 68 65 6e 20 28 61 6e 64 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 75 73 65 2d 67 69 74 2d when.(and.package-build-use-git-
2e40 72 65 6d 6f 74 65 2d 68 67 20 28 65 71 20 66 65 74 63 68 65 72 20 27 68 67 29 29 0a 20 20 20 20 remote-hg.(eq.fetcher.'hg)).....
2e60 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 65 74 63 68 65 72 20 27 67 69 74 2d 72 65 6d 6f 74 ........(setq.fetcher.'git-remot
2e80 65 2d 68 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 61 70 70 6c 79 20 28 69 6e 74 65 72 6e 20 e-hg))...........(apply.(intern.
2ea0 28 66 6f 72 6d 61 74 20 22 70 61 63 6b 61 67 65 2d 25 73 2d 72 65 63 69 70 65 22 20 66 65 74 63 (format."package-%s-recipe".fetc
2ec0 68 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 61 6d 65 20 3a 6e 61 6d her))..................name.:nam
2ee0 65 20 6e 61 6d 65 20 61 72 67 73 29 29 0a 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 4e 6f 20 73 e.name.args)).......(error."No.s
2f00 75 63 68 20 72 65 63 69 70 65 3a 20 25 73 22 20 6e 61 6d 65 29 29 29 29 0a 0a 3b 3b 3b 20 56 61 uch.recipe:.%s".name))))..;;;.Va
2f20 6c 69 64 61 74 69 6f 6e 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 lidation..;;;###autoload.(defun.
2f40 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 76 61 6c 69 64 61 74 65 2d 61 6c 6c 20 28 29 0a 20 package-recipe-validate-all.()..
2f60 20 22 56 61 6c 69 64 61 74 65 20 61 6c 6c 20 72 65 63 69 70 65 73 2e 22 0a 20 20 28 69 6e 74 65 ."Validate.all.recipes."...(inte
2f80 72 61 63 74 69 76 65 29 0a 20 20 28 64 6f 6c 69 73 74 2d 77 69 74 68 2d 70 72 6f 67 72 65 73 73 ractive)...(dolist-with-progress
2fa0 2d 72 65 70 6f 72 74 65 72 20 28 6e 61 6d 65 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d -reporter.(name.(package-recipe-
2fc0 72 65 63 69 70 65 73 29 29 0a 20 20 20 20 20 20 22 56 61 6c 69 64 61 74 69 6e 67 20 72 65 63 69 recipes))......."Validating.reci
2fe0 70 65 73 2e 2e 2e 22 0a 20 20 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 65 72 72 0a pes...".....(condition-case.err.
3000 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 6c 6f 6f 6b 75 70 20 6e ........(package-recipe-lookup.n
3020 61 6d 65 29 0a 20 20 20 20 20 20 28 65 72 72 6f 72 20 28 6d 65 73 73 61 67 65 20 22 49 6e 76 61 ame).......(error.(message."Inva
3040 6c 69 64 20 72 65 63 69 70 65 20 66 6f 72 20 25 73 3a 20 25 53 22 20 6e 61 6d 65 20 28 63 64 72 lid.recipe.for.%s:.%S".name.(cdr
3060 20 65 72 72 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 72 65 63 69 70 .err))))))..(defun.package-recip
3080 65 2d 2d 76 61 6c 69 64 61 74 65 20 28 72 65 63 69 70 65 20 6e 61 6d 65 29 0a 20 20 22 50 65 72 e--validate.(recipe.name)..."Per
30a0 66 6f 72 6d 20 73 6f 6d 65 20 62 61 73 69 63 20 63 68 65 63 6b 73 20 6f 6e 20 74 68 65 20 72 61 form.some.basic.checks.on.the.ra
30c0 77 20 52 45 43 49 50 45 20 66 6f 72 20 74 68 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 64 20 4e w.RECIPE.for.the.package.named.N
30e0 41 4d 45 2e 22 0a 20 20 28 70 63 61 73 65 2d 6c 65 74 20 28 28 60 28 2c 69 64 65 6e 74 20 2e 20 AME."...(pcase-let.((`(,ident...
3100 2c 70 6c 69 73 74 29 20 72 65 63 69 70 65 29 29 0a 20 20 20 20 28 63 6c 2d 61 73 73 65 72 74 20 ,plist).recipe)).....(cl-assert.
3120 69 64 65 6e 74 29 0a 20 20 20 20 28 63 6c 2d 61 73 73 65 72 74 20 28 73 79 6d 62 6f 6c 70 20 69 ident).....(cl-assert.(symbolp.i
3140 64 65 6e 74 29 29 0a 20 20 20 20 28 63 6c 2d 61 73 73 65 72 74 20 28 73 74 72 69 6e 67 3d 20 28 dent)).....(cl-assert.(string=.(
3160 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 69 64 65 6e 74 29 20 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 symbol-name.ident).name)........
3180 20 20 20 20 20 20 20 20 6e 69 6c 20 22 52 65 63 69 70 65 20 27 25 73 27 20 63 6f 6e 74 61 69 6e ........nil."Recipe.'%s'.contain
31a0 73 20 6d 69 73 6d 61 74 63 68 65 64 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 27 25 73 27 22 0a s.mismatched.package.name.'%s'".
31c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 61 6d 65 20 69 64 65 6e 74 29 0a 20 20 20 20 28 ...............name.ident).....(
31e0 63 6c 2d 61 73 73 65 72 74 20 70 6c 69 73 74 29 0a 20 20 20 20 28 6c 65 74 2a 20 28 28 73 79 6d cl-assert.plist).....(let*.((sym
3200 62 6f 6c 2d 6b 65 79 73 20 27 28 3a 66 65 74 63 68 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 bol-keys.'(:fetcher))...........
3220 20 28 73 74 72 69 6e 67 2d 6b 65 79 73 20 27 28 3a 75 72 6c 20 3a 72 65 70 6f 20 3a 63 6f 6d 6d .(string-keys.'(:url.:repo.:comm
3240 69 74 20 3a 62 72 61 6e 63 68 20 3a 76 65 72 73 69 6f 6e 2d 72 65 67 65 78 70 29 29 0a 20 20 20 it.:branch.:version-regexp))....
3260 20 20 20 20 20 20 20 20 28 6c 69 73 74 2d 6b 65 79 73 20 27 28 3a 66 69 6c 65 73 20 3a 6f 6c 64 ........(list-keys.'(:files.:old
3280 2d 6e 61 6d 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 61 6c 6c 2d 6b 65 79 73 20 28 61 -names))............(all-keys.(a
32a0 70 70 65 6e 64 20 73 79 6d 62 6f 6c 2d 6b 65 79 73 20 73 74 72 69 6e 67 2d 6b 65 79 73 20 6c 69 ppend.symbol-keys.string-keys.li
32c0 73 74 2d 6b 65 79 73 29 29 29 0a 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20 28 74 68 69 6e 67 20 st-keys))).......(dolist.(thing.
32e0 70 6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 6b 65 79 77 6f 72 64 70 20 74 plist).........(when.(keywordp.t
3300 68 69 6e 67 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 61 73 73 65 72 74 20 28 6d 65 6d 71 hing)...........(cl-assert.(memq
3320 20 74 68 69 6e 67 20 61 6c 6c 2d 6b 65 79 73 29 20 6e 69 6c 20 22 55 6e 6b 6e 6f 77 6e 20 6b 65 .thing.all-keys).nil."Unknown.ke
3340 79 77 6f 72 64 20 25 53 22 20 74 68 69 6e 67 29 29 29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 yword.%S".thing))).......(let.((
3360 66 65 74 63 68 65 72 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c 69 73 74 20 3a 66 65 74 63 68 65 fetcher.(plist-get.plist.:fetche
3380 72 29 29 29 0a 20 20 20 20 20 20 20 20 28 63 6c 2d 61 73 73 65 72 74 20 66 65 74 63 68 65 72 20 r))).........(cl-assert.fetcher.
33a0 6e 69 6c 20 22 3a 66 65 74 63 68 65 72 20 69 73 20 6d 69 73 73 69 6e 67 22 29 0a 20 20 20 20 20 nil.":fetcher.is.missing")......
33c0 20 20 20 28 69 66 20 28 6d 65 6d 71 20 66 65 74 63 68 65 72 20 70 61 63 6b 61 67 65 2d 72 65 63 ...(if.(memq.fetcher.package-rec
33e0 69 70 65 2d 2d 66 6f 72 67 65 2d 66 65 74 63 68 65 72 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 ipe--forge-fetchers)............
3400 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 61 73 73 65 72 74 .(progn...............(cl-assert
3420 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c 69 73 74 20 3a 72 65 70 6f 29 20 22 3a 72 65 70 6f 20 .(plist-get.plist.:repo).":repo.
3440 69 73 20 6d 69 73 73 69 6e 67 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 61 is.missing")...............(cl-a
3460 73 73 65 72 74 20 28 6e 6f 74 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c 69 73 74 20 3a 75 72 6c ssert.(not.(plist-get.plist.:url
3480 29 29 20 22 3a 75 72 6c 20 69 73 20 72 65 64 75 6e 64 61 6e 74 22 29 29 0a 20 20 20 20 20 20 20 )).":url.is.redundant"))........
34a0 20 20 20 28 63 6c 2d 61 73 73 65 72 74 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c 69 73 74 20 3a ...(cl-assert.(plist-get.plist.:
34c0 75 72 6c 29 20 22 3a 75 72 6c 20 69 73 20 6d 69 73 73 69 6e 67 22 29 29 29 0a 20 20 20 20 20 20 url).":url.is.missing"))).......
34e0 28 64 6f 6c 69 73 74 20 28 6b 65 79 20 73 79 6d 62 6f 6c 2d 6b 65 79 73 29 0a 20 20 20 20 20 20 (dolist.(key.symbol-keys).......
3500 20 20 28 77 68 65 6e 2d 6c 65 74 20 28 28 76 61 6c 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c 69 ..(when-let.((val.(plist-get.pli
3520 73 74 20 6b 65 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 61 73 73 65 72 74 20 28 st.key)))...........(cl-assert.(
3540 73 79 6d 62 6f 6c 70 20 76 61 6c 29 20 6e 69 6c 20 22 25 73 20 6d 75 73 74 20 62 65 20 61 20 73 symbolp.val).nil."%s.must.be.a.s
3560 79 6d 62 6f 6c 20 62 75 74 20 69 73 20 25 53 22 20 6b 65 79 20 76 61 6c 29 29 29 0a 20 20 20 20 ymbol.but.is.%S".key.val))).....
3580 20 20 28 64 6f 6c 69 73 74 20 28 6b 65 79 20 6c 69 73 74 2d 6b 65 79 73 29 0a 20 20 20 20 20 20 ..(dolist.(key.list-keys).......
35a0 20 20 28 77 68 65 6e 2d 6c 65 74 20 28 28 76 61 6c 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c 69 ..(when-let.((val.(plist-get.pli
35c0 73 74 20 6b 65 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 61 73 73 65 72 74 20 28 st.key)))...........(cl-assert.(
35e0 6c 69 73 74 70 20 76 61 6c 29 20 6e 69 6c 20 22 25 73 20 6d 75 73 74 20 62 65 20 61 20 6c 69 73 listp.val).nil."%s.must.be.a.lis
3600 74 20 62 75 74 20 69 73 20 25 53 22 20 6b 65 79 20 76 61 6c 29 29 29 0a 20 20 20 20 20 20 28 64 t.but.is.%S".key.val))).......(d
3620 6f 6c 69 73 74 20 28 6b 65 79 20 73 74 72 69 6e 67 2d 6b 65 79 73 29 0a 20 20 20 20 20 20 20 20 olist.(key.string-keys).........
3640 28 77 68 65 6e 2d 6c 65 74 20 28 28 76 61 6c 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c 69 73 74 (when-let.((val.(plist-get.plist
3660 20 6b 65 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 61 73 73 65 72 74 20 28 73 74 .key)))...........(cl-assert.(st
3680 72 69 6e 67 70 20 76 61 6c 29 20 6e 69 6c 20 22 25 73 20 6d 75 73 74 20 62 65 20 61 20 73 74 72 ringp.val).nil."%s.must.be.a.str
36a0 69 6e 67 20 62 75 74 20 69 73 20 25 53 22 20 6b 65 79 20 76 61 6c 29 29 29 0a 20 20 20 20 20 20 ing.but.is.%S".key.val))).......
36c0 28 77 68 65 6e 2d 6c 65 74 20 28 28 73 70 65 63 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c 69 73 (when-let.((spec.(plist-get.plis
36e0 74 20 3a 66 69 6c 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 60 3a 64 65 66 61 75 6c 74 t.:files))).........;;.`:default
3700 73 27 20 69 73 20 6f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 61 73 20 74 68 65 20 66 69 72 73 74 20 s'.is.only.allowed.as.the.first.
3720 65 6c 65 6d 65 6e 74 2e 0a 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 77 65 20 66 69 6e 64 20 69 element..........;;.If.we.find.i
3740 74 20 69 6e 20 74 68 61 74 20 70 6f 73 69 74 69 6f 6e 2c 20 73 6b 69 70 20 6f 76 65 72 20 69 74 t.in.that.position,.skip.over.it
3760 2e 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 28 63 61 72 20 73 70 65 63 29 20 3a ..........(when.(eq.(car.spec).:
3780 64 65 66 61 75 6c 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 73 70 65 63 20 28 defaults)...........(setq.spec.(
37a0 63 64 72 20 73 70 65 63 29 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 41 6c 6c 20 6f 74 68 65 72 cdr.spec))).........;;.All.other
37c0 20 65 6c 65 6d 65 6e 74 73 20 68 61 76 65 20 74 6f 20 62 65 20 73 74 72 69 6e 67 73 20 6f 72 20 .elements.have.to.be.strings.or.
37e0 6c 69 73 74 73 20 6f 66 20 73 74 72 69 6e 67 73 2e 0a 20 20 20 20 20 20 20 20 3b 3b 20 41 20 6c lists.of.strings..........;;.A.l
3800 69 73 74 20 77 68 6f 73 65 20 66 69 72 73 74 20 65 6c 65 6d 65 6e 74 20 69 73 20 60 3a 65 78 63 ist.whose.first.element.is.`:exc
3820 6c 75 64 65 27 20 69 73 20 61 6c 73 6f 20 76 61 6c 69 64 2e 0a 20 20 20 20 20 20 20 20 28 64 6f lude'.is.also.valid..........(do
3840 6c 69 73 74 20 28 65 6e 74 72 79 20 73 70 65 63 29 0a 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c list.(entry.spec)...........(unl
3860 65 73 73 20 28 63 6f 6e 64 20 28 28 73 74 72 69 6e 67 70 20 65 6e 74 72 79 29 0a 20 20 20 20 20 ess.(cond.((stringp.entry)......
3880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 65 71 75 61 6c 20 ....................(not.(equal.
38a0 65 6e 74 72 79 20 22 2a 22 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 entry."*")))....................
38c0 20 20 20 20 20 28 28 6c 69 73 74 70 20 65 6e 74 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .....((listp.entry).............
38e0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 2d 6c 65 74 2a 20 28 28 67 6c 6f 62 73 20 28 .............(and-let*.((globs.(
3900 63 64 72 20 65 6e 74 72 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 cdr.entry)))....................
3920 20 20 20 20 20 20 20 20 28 61 6e 64 20 28 6f 72 20 28 65 71 20 28 63 61 72 20 65 6e 74 72 79 29 ........(and.(or.(eq.(car.entry)
3940 20 3a 65 78 63 6c 75 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .:exclude)......................
3960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 70 20 28 63 61 72 20 65 6e 74 ...............(stringp.(car.ent
3980 72 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ry)))...........................
39a0 20 20 20 20 20 20 28 73 65 71 2d 65 76 65 72 79 2d 70 20 28 6c 61 6d 62 64 61 20 28 67 6c 6f 62 ......(seq-every-p.(lambda.(glob
39c0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )...............................
39e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 28 73 74 72 69 6e 67 70 20 67 .................(and.(stringp.g
3a00 6c 6f 62 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lob)............................
3a20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 65 .........................(not.(e
3a40 71 75 61 6c 20 67 6c 6f 62 20 22 2a 22 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 qual.glob."*"))))...............
3a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 67 ...............................g
3a80 6c 6f 62 73 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 49 6e lobs))))).............(error."In
3aa0 76 61 6c 69 64 20 66 69 6c 65 73 20 73 70 65 63 20 65 6e 74 72 79 20 25 53 22 20 65 6e 74 72 79 valid.files.spec.entry.%S".entry
3ac0 29 29 29 29 0a 20 20 20 20 20 20 3b 3b 20 53 69 6c 65 6e 63 65 20 62 79 74 65 20 63 6f 6d 70 69 )))).......;;.Silence.byte.compi
3ae0 6c 65 72 20 6f 66 20 45 6d 61 63 73 20 32 38 2e 20 20 49 74 20 61 70 70 65 61 72 73 20 74 68 61 ler.of.Emacs.28...It.appears.tha
3b00 74 20 75 73 65 73 0a 20 20 20 20 20 20 3b 3b 20 69 6e 73 69 64 65 20 63 6c 2d 61 73 73 65 72 74 t.uses.......;;.inside.cl-assert
3b20 20 73 6f 6d 65 74 69 6d 65 73 2c 20 62 75 74 20 6e 6f 74 20 61 6c 77 61 79 73 2c 20 64 6f 20 6e .sometimes,.but.not.always,.do.n
3b40 6f 74 20 63 6f 75 6e 74 2e 0a 20 20 20 20 20 20 28 6c 69 73 74 20 6e 61 6d 65 20 69 64 65 6e 74 ot.count........(list.name.ident
3b60 20 61 6c 6c 2d 6b 65 79 73 29 29 0a 20 20 20 20 72 65 63 69 70 65 29 29 0a 0a 28 70 72 6f 76 69 .all-keys)).....recipe))..(provi
3b80 64 65 20 27 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 29 0a 3b 3b 3b 20 70 61 63 6b 61 67 65 2d de.'package-recipe).;;;.package-
3ba0 72 65 63 69 70 65 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 recipe.el.ends.here.............
3bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c00 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 32 30 32 34 30 33 30 36 2e 32 32 33 34 2f 70 61 63 6b package-build-20240306.2234/pack
3c20 61 67 65 2d 62 75 69 6c 64 2d 70 6b 67 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 age-build-pkg.el................
3c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
3c80 30 30 30 31 32 31 37 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 37 32 36 36 00 20 30 00 00 00 0001217.00000000000.017266..0...
3ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d00 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
3d20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
3d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e00 28 64 65 66 69 6e 65 2d 70 61 63 6b 61 67 65 20 22 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 22 20 (define-package."package-build".
3e20 22 32 30 32 34 30 33 30 36 2e 32 32 33 34 22 20 22 54 6f 6f 6c 73 20 66 6f 72 20 61 73 73 65 6d "20240306.2234"."Tools.for.assem
3e40 62 6c 69 6e 67 20 61 20 70 61 63 6b 61 67 65 20 61 72 63 68 69 76 65 22 0a 20 20 27 28 28 65 6d bling.a.package.archive"...'((em
3e60 61 63 73 20 22 32 36 2e 31 22 29 0a 20 20 20 20 28 63 6f 6d 70 61 74 20 22 32 37 2e 31 22 29 29 acs."26.1").....(compat."27.1"))
3e80 0a 20 20 3a 63 6f 6d 6d 69 74 20 22 32 33 36 65 66 34 65 34 64 36 31 35 36 39 39 64 34 62 61 38 ...:commit."236ef4e4d615699d4ba8
3ea0 62 37 61 64 32 38 62 64 34 30 62 38 37 64 32 36 39 34 31 31 22 20 3a 61 75 74 68 6f 72 73 0a 20 b7ad28bd40b87d269411".:authors..
3ec0 20 27 28 28 22 44 6f 6e 61 6c 64 20 45 70 68 72 61 69 6d 20 43 75 72 74 69 73 22 20 2e 20 22 64 .'(("Donald.Ephraim.Curtis"..."d
3ee0 63 75 72 74 69 73 40 6d 69 6c 6b 62 6f 78 2e 6e 65 74 22 29 0a 20 20 20 20 28 22 53 74 65 76 65 curtis@milkbox.net").....("Steve
3f00 20 50 75 72 63 65 6c 6c 22 20 2e 20 22 73 74 65 76 65 40 73 61 6e 69 74 79 69 6e 63 2e 63 6f 6d .Purcell"..."steve@sanityinc.com
3f20 22 29 0a 20 20 20 20 28 22 4a 6f 6e 61 73 20 42 65 72 6e 6f 75 6c 6c 69 22 20 2e 20 22 6a 6f 6e ").....("Jonas.Bernoulli"..."jon
3f40 61 73 40 62 65 72 6e 6f 75 6c 2e 6c 69 22 29 0a 20 20 20 20 28 22 50 68 69 6c 20 48 61 67 65 6c as@bernoul.li").....("Phil.Hagel
3f60 62 65 72 67 22 20 2e 20 22 74 65 63 68 6e 6f 6d 61 6e 63 79 40 67 6d 61 69 6c 2e 63 6f 6d 22 29 berg"..."technomancy@gmail.com")
3f80 29 0a 20 20 3a 6d 61 69 6e 74 61 69 6e 65 72 73 0a 20 20 27 28 28 22 44 6f 6e 61 6c 64 20 45 70 )...:maintainers...'(("Donald.Ep
3fa0 68 72 61 69 6d 20 43 75 72 74 69 73 22 20 2e 20 22 64 63 75 72 74 69 73 40 6d 69 6c 6b 62 6f 78 hraim.Curtis"..."dcurtis@milkbox
3fc0 2e 6e 65 74 22 29 29 0a 20 20 3a 6d 61 69 6e 74 61 69 6e 65 72 0a 20 20 27 28 22 44 6f 6e 61 6c .net"))...:maintainer...'("Donal
3fe0 64 20 45 70 68 72 61 69 6d 20 43 75 72 74 69 73 22 20 2e 20 22 64 63 75 72 74 69 73 40 6d 69 6c d.Ephraim.Curtis"..."dcurtis@mil
4000 6b 62 6f 78 2e 6e 65 74 22 29 0a 20 20 3a 6b 65 79 77 6f 72 64 73 0a 20 20 27 28 22 6d 61 69 6e kbox.net")...:keywords...'("main
4020 74 22 20 22 74 6f 6f 6c 73 22 29 0a 20 20 3a 75 72 6c 20 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 t"."tools")...:url."https://gith
4040 75 62 2e 63 6f 6d 2f 6d 65 6c 70 61 2f 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 22 29 0a 3b 3b 20 ub.com/melpa/package-build").;;.
4060 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3a 0a 3b 3b 20 6e 6f 2d 62 79 74 65 2d 63 6f 6d 70 Local.Variables:.;;.no-byte-comp
4080 69 6c 65 3a 20 74 0a 3b 3b 20 45 6e 64 3a 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ile:.t.;;.End:..................
40a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
40c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
40e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
41a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
41c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
41e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4200 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 32 30 32 34 30 33 30 36 2e 32 32 33 34 2f 70 61 63 6b package-build-20240306.2234/pack
4220 61 67 65 2d 62 75 69 6c 64 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 age-build.el....................
4240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
4280 30 32 32 32 35 35 32 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 36 35 31 36 00 20 30 00 00 00 0222552.00000000000.016516..0...
42a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4300 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
4320 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
4340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
43a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
43c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
43e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4400 3b 3b 3b 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2e 65 6c 20 2d 2d 2d 20 54 6f 6f 6c 73 20 66 ;;;.package-build.el.---.Tools.f
4420 6f 72 20 61 73 73 65 6d 62 6c 69 6e 67 20 61 20 70 61 63 6b 61 67 65 20 61 72 63 68 69 76 65 20 or.assembling.a.package.archive.
4440 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 74 3b 20 63 6f 64 69 6e 67 3a 75 .-*-.lexical-binding:t;.coding:u
4460 74 66 2d 38 20 2d 2a 2d 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 31 2d tf-8.-*-..;;.Copyright.(C).2011-
4480 32 30 32 34 20 44 6f 6e 61 6c 64 20 45 70 68 72 61 69 6d 20 43 75 72 74 69 73 0a 3b 3b 20 43 6f 2024.Donald.Ephraim.Curtis.;;.Co
44a0 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 32 2d 32 30 32 34 20 53 74 65 76 65 20 50 75 72 63 pyright.(C).2012-2024.Steve.Purc
44c0 65 6c 6c 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 36 2d 32 30 32 34 20 4a ell.;;.Copyright.(C).2016-2024.J
44e0 6f 6e 61 73 20 42 65 72 6e 6f 75 6c 6c 69 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 onas.Bernoulli.;;.Copyright.(C).
4500 32 30 30 39 20 50 68 69 6c 20 48 61 67 65 6c 62 65 72 67 0a 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 2009.Phil.Hagelberg..;;.Author:.
4520 44 6f 6e 61 6c 64 20 45 70 68 72 61 69 6d 20 43 75 72 74 69 73 20 3c 64 63 75 72 74 69 73 40 6d Donald.Ephraim.Curtis.<dcurtis@m
4540 69 6c 6b 62 6f 78 2e 6e 65 74 3e 0a 3b 3b 20 20 20 20 20 53 74 65 76 65 20 50 75 72 63 65 6c 6c ilkbox.net>.;;.....Steve.Purcell
4560 20 3c 73 74 65 76 65 40 73 61 6e 69 74 79 69 6e 63 2e 63 6f 6d 3e 0a 3b 3b 20 20 20 20 20 4a 6f .<steve@sanityinc.com>.;;.....Jo
4580 6e 61 73 20 42 65 72 6e 6f 75 6c 6c 69 20 3c 6a 6f 6e 61 73 40 62 65 72 6e 6f 75 6c 2e 6c 69 3e nas.Bernoulli.<jonas@bernoul.li>
45a0 0a 3b 3b 20 20 20 20 20 50 68 69 6c 20 48 61 67 65 6c 62 65 72 67 20 3c 74 65 63 68 6e 6f 6d 61 .;;.....Phil.Hagelberg.<technoma
45c0 6e 63 79 40 67 6d 61 69 6c 2e 63 6f 6d 3e 0a 3b 3b 20 48 6f 6d 65 70 61 67 65 3a 20 68 74 74 70 ncy@gmail.com>.;;.Homepage:.http
45e0 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6d 65 6c 70 61 2f 70 61 63 6b 61 67 65 2d 62 75 69 s://github.com/melpa/package-bui
4600 6c 64 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 6d 61 69 6e 74 20 74 6f 6f 6c 73 0a 0a 3b 3b 20 ld.;;.Keywords:.maint.tools..;;.
4620 50 61 63 6b 61 67 65 2d 56 65 72 73 69 6f 6e 3a 20 34 2e 30 2e 30 2e 35 30 2d 67 69 74 0a 3b 3b Package-Version:.4.0.0.50-git.;;
4640 20 50 61 63 6b 61 67 65 2d 52 65 71 75 69 72 65 73 3a 20 28 28 65 6d 61 63 73 20 22 32 36 2e 31 .Package-Requires:.((emacs."26.1
4660 22 29 20 28 63 6f 6d 70 61 74 20 22 32 37 2e 31 22 29 29 0a 0a 3b 3b 20 53 50 44 58 2d 4c 69 63 ").(compat."27.1"))..;;.SPDX-Lic
4680 65 6e 73 65 2d 49 64 65 6e 74 69 66 69 65 72 3a 20 47 50 4c 2d 33 2e 30 2d 6f 72 2d 6c 61 74 65 ense-Identifier:.GPL-3.0-or-late
46a0 72 0a 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 r..;;.This.file.is.free.software
46c0 3a 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 :.you.can.redistribute.it.and/or
46e0 20 6d 6f 64 69 66 79 0a 3b 3b 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 .modify.;;.it.under.the.terms.of
4700 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 .the.GNU.General.Public.License.
4720 61 73 20 70 75 62 6c 69 73 68 65 64 0a 3b 3b 20 62 79 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 as.published.;;.by.the.Free.Soft
4740 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 ware.Foundation,.either.version.
4760 33 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 65 2c 0a 3b 3b 20 6f 72 20 28 61 74 20 79 6f 75 72 3.of.the.License,.;;.or.(at.your
4780 20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b .option).any.later.version..;;.;
47a0 3b 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 ;.This.file.is.distributed.in.th
47c0 65 20 68 6f 70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 3b e.hope.that.it.will.be.useful,.;
47e0 3b 20 62 75 74 20 57 49 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 ;.but.WITHOUT.ANY.WARRANTY;.with
4800 6f 75 74 20 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 out.even.the.implied.warranty.of
4820 0a 3b 3b 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 .;;.MERCHANTABILITY.or.FITNESS.F
4840 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 OR.A.PARTICULAR.PURPOSE...See.th
4860 65 0a 3b 3b 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 e.;;.GNU.General.Public.License.
4880 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 for.more.details..;;.;;.You.shou
48a0 6c 64 20 68 61 76 65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 ld.have.received.a.copy.of.the.G
48c0 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f NU.General.Public.License.;;.alo
48e0 6e 67 20 77 69 74 68 20 74 68 69 73 20 66 69 6c 65 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 ng.with.this.file...If.not,.see.
4900 3c 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e <https://www.gnu.org/licenses/>.
4920 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 20 ..;;;.Commentary:..;;.This.file.
4940 61 6c 6c 6f 77 73 20 61 20 63 75 72 61 74 6f 72 20 74 6f 20 70 75 62 6c 69 73 68 20 61 6e 20 61 allows.a.curator.to.publish.an.a
4960 72 63 68 69 76 65 20 6f 66 20 45 6d 61 63 73 20 70 61 63 6b 61 67 65 73 2e 0a 0a 3b 3b 20 54 68 rchive.of.Emacs.packages...;;.Th
4980 65 20 61 72 63 68 69 76 65 20 69 73 20 67 65 6e 65 72 61 74 65 64 20 66 72 6f 6d 20 61 20 73 65 e.archive.is.generated.from.a.se
49a0 74 20 6f 66 20 72 65 63 69 70 65 73 2c 20 77 68 69 63 68 20 64 65 73 63 72 69 62 65 20 65 6c 69 t.of.recipes,.which.describe.eli
49c0 73 70 0a 3b 3b 20 70 72 6f 6a 65 63 74 73 20 61 6e 64 20 72 65 70 6f 73 69 74 6f 72 69 65 73 20 sp.;;.projects.and.repositories.
49e0 66 72 6f 6d 20 77 68 69 63 68 20 74 6f 20 67 65 74 20 74 68 65 6d 2e 20 20 54 68 65 20 74 65 72 from.which.to.get.them...The.ter
4a00 6d 20 22 70 61 63 6b 61 67 65 22 0a 3b 3b 20 68 65 72 65 20 69 73 20 75 73 65 64 20 74 6f 20 6d m."package".;;.here.is.used.to.m
4a20 65 61 6e 20 61 20 73 70 65 63 69 66 69 63 20 76 65 72 73 69 6f 6e 20 6f 66 20 61 20 70 72 6f 6a ean.a.specific.version.of.a.proj
4a40 65 63 74 20 74 68 61 74 20 69 73 20 70 72 65 70 61 72 65 64 0a 3b 3b 20 66 6f 72 20 64 6f 77 6e ect.that.is.prepared.;;.for.down
4a60 6c 6f 61 64 20 61 6e 64 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 2e 0a 0a 3b 3b 3b 20 43 6f 64 65 load.and.installation...;;;.Code
4a80 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 63 6c 2d 6c 69 62 29 0a 28 72 65 71 75 69 72 65 20 27 63 :..(require.'cl-lib).(require.'c
4aa0 6f 6d 70 61 74 20 6e 69 6c 20 74 29 0a 28 72 65 71 75 69 72 65 20 27 70 63 61 73 65 29 0a 28 72 ompat.nil.t).(require.'pcase).(r
4ac0 65 71 75 69 72 65 20 27 73 75 62 72 2d 78 29 0a 0a 28 72 65 71 75 69 72 65 20 27 70 61 63 6b 61 equire.'subr-x)..(require.'packa
4ae0 67 65 29 0a 28 72 65 71 75 69 72 65 20 27 6c 69 73 70 2d 6d 6e 74 29 0a 28 72 65 71 75 69 72 65 ge).(require.'lisp-mnt).(require
4b00 20 27 6a 73 6f 6e 29 0a 0a 28 72 65 71 75 69 72 65 20 27 70 61 63 6b 61 67 65 2d 72 65 63 69 70 .'json)..(require.'package-recip
4b20 65 29 0a 28 72 65 71 75 69 72 65 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 62 61 64 67 65 e).(require.'package-build-badge
4b40 73 29 0a 0a 3b 3b 3b 20 4f 70 74 69 6f 6e 73 0a 0a 28 64 65 66 76 61 72 20 70 61 63 6b 61 67 65 s)..;;;.Options..(defvar.package
4b60 2d 62 75 69 6c 64 2d 2d 6d 65 6c 70 61 2d 62 61 73 65 0a 20 20 28 66 69 6c 65 2d 6e 61 6d 65 2d -build--melpa-base...(file-name-
4b80 64 69 72 65 63 74 6f 72 79 0a 20 20 20 28 64 69 72 65 63 74 6f 72 79 2d 66 69 6c 65 2d 6e 61 6d directory....(directory-file-nam
4ba0 65 0a 20 20 20 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 64 69 72 65 63 74 6f 72 79 20 28 6f 72 20 6c e.....(file-name-directory.(or.l
4bc0 6f 61 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 oad-file-name.(buffer-file-name)
4be0 29 29 29 29 29 0a 0a 28 64 65 66 67 72 6f 75 70 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 20 6e )))))..(defgroup.package-build.n
4c00 69 6c 0a 20 20 22 54 6f 6f 6c 73 20 66 6f 72 20 62 75 69 6c 64 69 6e 67 20 70 61 63 6b 61 67 65 il..."Tools.for.building.package
4c20 2e 65 6c 2d 63 6f 6d 70 6c 69 61 6e 74 20 70 61 63 6b 61 67 65 73 20 66 72 6f 6d 20 75 70 73 74 .el-compliant.packages.from.upst
4c40 72 65 61 6d 20 73 6f 75 72 63 65 20 63 6f 64 65 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 64 65 76 ream.source.code."...:group.'dev
4c60 65 6c 6f 70 6d 65 6e 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 70 61 63 6b 61 67 65 2d 62 75 elopment)..(defcustom.package-bu
4c80 69 6c 64 2d 77 6f 72 6b 69 6e 67 2d 64 69 72 0a 20 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e ild-working-dir...(expand-file-n
4ca0 61 6d 65 20 22 77 6f 72 6b 69 6e 67 2f 22 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d 65 ame."working/".package-build--me
4cc0 6c 70 61 2d 62 61 73 65 29 0a 20 20 22 44 69 72 65 63 74 6f 72 79 20 69 6e 20 77 68 69 63 68 20 lpa-base)..."Directory.in.which.
4ce0 74 6f 20 6b 65 65 70 20 63 68 65 63 6b 6f 75 74 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 70 61 to.keep.checkouts."...:group.'pa
4d00 63 6b 61 67 65 2d 62 75 69 6c 64 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 ckage-build...:type.'string)..(d
4d20 65 66 63 75 73 74 6f 6d 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 64 efcustom.package-build-archive-d
4d40 69 72 0a 20 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 22 70 61 63 6b 61 67 65 73 ir...(expand-file-name."packages
4d60 2f 22 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d 65 6c 70 61 2d 62 61 73 65 29 0a 20 20 /".package-build--melpa-base)...
4d80 22 44 69 72 65 63 74 6f 72 79 20 69 6e 20 77 68 69 63 68 20 74 6f 20 6b 65 65 70 20 63 6f 6d 70 "Directory.in.which.to.keep.comp
4da0 69 6c 65 64 20 61 72 63 68 69 76 65 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 67 iled.archives."...:group.'packag
4dc0 65 2d 62 75 69 6c 64 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 e-build...:type.'string)..(defcu
4de0 73 74 6f 6d 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 63 69 70 65 73 2d 64 69 72 0a 20 stom.package-build-recipes-dir..
4e00 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 22 72 65 63 69 70 65 73 2f 22 20 70 61 .(expand-file-name."recipes/".pa
4e20 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d 65 6c 70 61 2d 62 61 73 65 29 0a 20 20 22 44 69 72 65 ckage-build--melpa-base)..."Dire
4e40 63 74 6f 72 79 20 63 6f 6e 74 61 69 6e 69 6e 67 20 72 65 63 69 70 65 20 66 69 6c 65 73 2e 22 0a ctory.containing.recipe.files.".
4e60 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 0a 20 20 3a 74 79 70 65 20 ..:group.'package-build...:type.
4e80 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 70 61 63 6b 61 67 65 2d 62 75 69 'string)..(defcustom.package-bui
4ea0 6c 64 2d 76 65 72 62 6f 73 65 20 74 0a 20 20 22 57 68 65 6e 20 6e 6f 6e 2d 6e 69 6c 2c 20 74 68 ld-verbose.t..."When.non-nil,.th
4ec0 65 6e 20 70 72 69 6e 74 20 61 64 64 69 74 69 6f 6e 61 6c 20 70 72 6f 67 72 65 73 73 20 69 6e 66 en.print.additional.progress.inf
4ee0 6f 72 6d 61 74 69 6f 6e 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 67 65 2d 62 75 69 ormation."...:group.'package-bui
4f00 6c 64 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d ld...:type.'boolean)..(defcustom
4f20 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 73 74 61 62 6c 65 20 6e 69 6c 0a 20 20 22 57 68 65 .package-build-stable.nil..."Whe
4f40 74 68 65 72 20 74 6f 20 62 75 69 6c 64 20 72 65 6c 65 61 73 65 20 6f 72 20 73 6e 61 70 73 68 6f ther.to.build.release.or.snapsho
4f60 74 20 70 61 63 6b 61 67 65 73 2e 0a 0a 49 66 20 6e 69 6c 2c 20 73 6e 61 70 73 68 6f 74 20 70 61 t.packages...If.nil,.snapshot.pa
4f80 63 6b 61 67 65 73 20 61 72 65 20 62 75 69 6c 64 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 6c 65 ckages.are.build,.otherwise.rele
4fa0 61 73 65 20 70 61 63 6b 61 67 65 73 0a 61 72 65 20 62 75 69 6c 64 2e 20 20 60 70 61 63 6b 61 67 ase.packages.are.build...`packag
4fc0 65 2d 62 75 69 6c 64 2d 73 6e 61 70 73 68 6f 74 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 6f e-build-snapshot-version-functio
4fe0 6e 73 27 20 61 6e 64 2f 6f 72 0a 60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 6c 65 61 73 ns'.and/or.`package-build-releas
5000 65 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 73 27 20 61 72 65 20 75 73 65 64 20 74 6f e-version-functions'.are.used.to
5020 20 64 65 74 65 72 6d 69 6e 65 0a 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 76 65 72 73 69 .determine.the.appropriate.versi
5040 6f 6e 20 66 6f 72 20 65 61 63 68 20 70 61 63 6b 61 67 65 20 61 6e 64 20 68 6f 77 20 74 68 65 20 on.for.each.package.and.how.the.
5060 76 65 72 73 69 6f 6e 0a 73 74 72 69 6e 67 20 69 73 20 66 6f 72 6d 61 74 74 65 64 2e 22 0a 20 20 version.string.is.formatted."...
5080 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 0a 20 20 3a 74 79 70 65 20 27 62 :group.'package-build...:type.'b
50a0 6f 6f 6c 65 61 6e 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 70 61 63 6b 61 67 65 2d 62 75 69 6c oolean)..(defcustom.package-buil
50c0 64 2d 61 6c 6c 2d 70 75 62 6c 69 73 68 61 62 6c 65 20 28 6e 6f 74 20 70 61 63 6b 61 67 65 2d 62 d-all-publishable.(not.package-b
50e0 75 69 6c 64 2d 73 74 61 62 6c 65 29 0a 20 20 22 57 68 65 74 68 65 72 20 65 76 65 6e 20 70 61 63 uild-stable)..."Whether.even.pac
5100 6b 61 67 65 73 20 74 68 61 74 20 6c 61 63 6b 20 61 20 72 65 6c 65 61 73 65 20 63 61 6e 20 62 65 kages.that.lack.a.release.can.be
5120 20 70 75 62 6c 69 73 68 65 64 2e 0a 0a 54 68 69 73 20 6f 70 74 69 6f 6e 20 69 73 20 75 73 65 64 .published...This.option.is.used
5140 20 74 6f 20 64 65 74 65 72 6d 69 6e 65 20 77 68 65 74 68 65 72 20 66 61 69 6c 75 72 65 20 74 6f .to.determine.whether.failure.to
5160 20 63 6f 6d 65 20 75 70 20 77 69 74 68 0a 61 20 76 65 72 73 69 6f 6e 20 73 74 72 69 6e 67 20 73 .come.up.with.a.version.string.s
5180 68 6f 75 6c 64 20 62 65 20 63 6f 6e 73 69 64 65 72 65 64 20 61 6e 20 65 72 72 6f 72 20 6f 72 20 hould.be.considered.an.error.or.
51a0 6e 6f 74 2e 0a 0a 43 75 72 72 65 6e 74 6c 79 20 74 68 69 73 20 64 65 66 61 75 6c 74 73 20 74 6f not...Currently.this.defaults.to
51c0 20 28 6e 6f 74 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 73 74 61 62 6c 65 29 2c 20 62 75 74 .(not.package-build-stable),.but
51e0 20 74 68 65 0a 64 65 66 61 75 6c 74 20 69 73 20 6c 69 6b 65 6c 79 20 74 6f 20 62 65 20 63 68 61 .the.default.is.likely.to.be.cha
5200 6e 67 65 64 20 74 6f 20 6a 75 73 74 20 60 74 27 20 69 6e 20 74 68 65 20 66 75 74 75 72 65 2e 20 nged.to.just.`t'.in.the.future..
5220 20 53 65 65 0a 61 6c 73 6f 20 74 68 65 20 63 6f 6d 6d 69 74 20 74 68 61 74 20 61 64 64 65 64 20 .See.also.the.commit.that.added.
5240 74 68 69 73 20 6f 70 74 69 6f 6e 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 67 65 2d this.option."...:group.'package-
5260 62 75 69 6c 64 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 73 65 74 2d 61 66 build...:type.'boolean...:set-af
5280 74 65 72 20 27 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 73 74 61 62 6c 65 29 29 0a 0a 28 6d ter.'(package-build-stable))..(m
52a0 61 6b 65 2d 6f 62 73 6f 6c 65 74 65 2d 76 61 72 69 61 62 6c 65 20 27 70 61 63 6b 61 67 65 2d 62 ake-obsolete-variable.'package-b
52c0 75 69 6c 64 2d 67 65 74 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 uild-get-version-function.......
52e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 ..................'package-build
5300 2d 73 74 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -stable.........................
5320 22 50 61 63 6b 61 67 65 2d 42 75 69 6c 64 20 35 2e 30 2e 30 22 29 0a 28 64 65 66 76 61 72 20 70 "Package-Build.5.0.0").(defvar.p
5340 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 67 65 74 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 6f ackage-build-get-version-functio
5360 6e 20 6e 69 6c 0a 20 20 22 54 68 69 73 20 76 61 72 69 61 62 6c 65 20 69 73 20 6f 62 73 6f 6c 65 n.nil..."This.variable.is.obsole
5380 74 65 20 61 6e 64 20 69 74 73 20 76 61 6c 75 65 20 73 68 6f 75 6c 64 20 62 65 20 6e 69 6c 2e 0a te.and.its.value.should.be.nil..
53a0 49 66 20 74 68 69 73 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 74 68 65 6e 20 69 74 20 6f 76 65 72 If.this.is.non-nil,.then.it.over
53c0 72 69 64 65 73 0a 60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2d 76 65 72 rides.`package-build-release-ver
53e0 73 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 73 27 20 61 6e 64 0a 60 70 61 63 6b 61 67 65 2d 62 75 69 sion-functions'.and.`package-bui
5400 6c 64 2d 73 6e 61 70 73 68 6f 74 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 73 27 2e 22 ld-snapshot-version-functions'."
5420 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 6c 65 )..(defcustom.package-build-rele
5440 61 73 65 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 73 0a 20 20 28 6c 69 73 74 20 23 27 ase-version-functions...(list.#'
5460 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 61 67 2d 76 65 72 73 69 6f 6e 29 0a 20 20 22 46 75 package-build-tag-version)..."Fu
5480 6e 63 74 69 6f 6e 73 20 75 73 65 64 20 74 6f 20 64 65 74 65 72 6d 69 6e 65 20 74 68 65 20 63 75 nctions.used.to.determine.the.cu
54a0 72 72 65 6e 74 20 72 65 6c 65 61 73 65 20 6f 66 20 61 20 70 61 63 6b 61 67 65 2e 0a 0a 45 61 63 rrent.release.of.a.package...Eac
54c0 68 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 63 61 6c 6c 65 64 20 69 6e 20 6f 72 64 65 72 2c 20 77 h.function.is.called.in.order,.w
54e0 69 74 68 20 74 68 65 20 72 65 63 69 70 65 20 6f 62 6a 65 63 74 20 61 73 0a 61 72 67 75 6d 65 6e ith.the.recipe.object.as.argumen
5500 74 2c 20 75 6e 74 69 6c 20 6f 6e 65 20 72 65 74 75 72 6e 73 20 6e 6f 6e 2d 6e 69 6c 2e 20 20 54 t,.until.one.returns.non-nil...T
5520 68 65 20 72 65 74 75 72 6e 65 64 20 76 61 6c 75 65 20 6d 75 73 74 0a 68 61 76 65 20 74 68 65 20 he.returned.value.must.have.the.
5540 66 6f 72 6d 20 28 43 4f 4d 4d 49 54 20 54 49 4d 45 20 56 45 52 53 49 4f 4e 29 2c 20 77 68 65 72 form.(COMMIT.TIME.VERSION),.wher
5560 65 20 43 4f 4d 4d 49 54 20 69 73 20 74 68 65 20 63 6f 6d 6d 69 74 0a 63 68 6f 73 65 6e 20 62 79 e.COMMIT.is.the.commit.chosen.by
5580 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2c 20 54 49 4d 45 20 69 73 20 69 74 73 20 63 6f 6d 6d 69 .the.function,.TIME.is.its.commi
55a0 74 74 65 72 20 64 61 74 65 2c 20 61 6e 64 20 56 45 52 53 49 4f 4e 0a 69 73 20 74 68 65 20 76 65 tter.date,.and.VERSION.is.the.ve
55c0 72 73 69 6f 6e 20 73 74 72 69 6e 67 20 63 68 6f 73 65 6e 20 66 6f 72 20 43 4f 4d 4d 49 54 2e 0a rsion.string.chosen.for.COMMIT..
55e0 0a 49 66 20 6f 62 73 6f 6c 65 74 65 20 60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 67 65 74 2d .If.obsolete.`package-build-get-
5600 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 27 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 0a 74 68 version-function'.is.non-nil,.th
5620 65 6e 20 74 68 61 74 20 6f 76 65 72 72 69 64 65 73 20 74 68 65 20 76 61 6c 75 65 20 73 65 74 20 en.that.overrides.the.value.set.
5640 68 65 72 65 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 0a 20 here."...:group.'package-build..
5660 20 3a 74 79 70 65 20 27 68 6f 6f 6b 0a 20 20 3a 6f 70 74 69 6f 6e 73 20 28 6c 69 73 74 20 23 27 .:type.'hook...:options.(list.#'
5680 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 61 67 2d 76 65 72 73 69 6f 6e 0a 20 20 20 20 20 20 package-build-tag-version.......
56a0 20 20 20 20 20 20 20 20 20 20 20 23 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 68 65 61 64 65 ...........#'package-build-heade
56c0 72 2d 76 65 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 70 61 63 r-version..................#'pac
56e0 6b 61 67 65 2d 62 75 69 6c 64 2d 70 6b 67 2d 76 65 72 73 69 6f 6e 29 29 0a 0a 28 64 65 66 63 75 kage-build-pkg-version))..(defcu
5700 73 74 6f 6d 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 73 6e 61 70 73 68 6f 74 2d 76 65 72 73 stom.package-build-snapshot-vers
5720 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 73 0a 20 20 28 6c 69 73 74 20 23 27 70 61 63 6b 61 67 65 2d ion-functions...(list.#'package-
5740 62 75 69 6c 64 2d 74 69 6d 65 73 74 61 6d 70 2d 76 65 72 73 69 6f 6e 29 0a 20 20 22 46 75 6e 63 build-timestamp-version)..."Func
5760 74 69 6f 6e 20 75 73 65 64 20 74 6f 20 64 65 74 65 72 6d 69 6e 65 20 74 68 65 20 63 75 72 72 65 tion.used.to.determine.the.curre
5780 6e 74 20 73 6e 61 70 73 68 6f 74 20 6f 66 20 61 20 70 61 63 6b 61 67 65 2e 0a 0a 45 61 63 68 20 nt.snapshot.of.a.package...Each.
57a0 66 75 6e 63 74 69 6f 6e 20 69 73 20 63 61 6c 6c 65 64 20 69 6e 20 6f 72 64 65 72 2c 20 77 69 74 function.is.called.in.order,.wit
57c0 68 20 74 68 65 20 72 65 63 69 70 65 20 6f 62 6a 65 63 74 20 61 73 0a 61 72 67 75 6d 65 6e 74 2c h.the.recipe.object.as.argument,
57e0 20 75 6e 74 69 6c 20 6f 6e 65 20 72 65 74 75 72 6e 73 20 6e 6f 6e 2d 6e 69 6c 2e 20 20 54 68 65 .until.one.returns.non-nil...The
5800 20 72 65 74 75 72 6e 65 64 20 76 61 6c 75 65 20 6d 75 73 74 0a 68 61 76 65 20 74 68 65 20 66 6f .returned.value.must.have.the.fo
5820 72 6d 20 28 43 4f 4d 4d 49 54 20 54 49 4d 45 20 56 45 52 53 49 4f 4e 29 2c 20 77 68 65 72 65 20 rm.(COMMIT.TIME.VERSION),.where.
5840 43 4f 4d 4d 49 54 20 69 73 20 74 68 65 20 63 6f 6d 6d 69 74 0a 63 68 6f 73 65 6e 20 62 79 20 74 COMMIT.is.the.commit.chosen.by.t
5860 68 65 20 66 75 6e 63 74 69 6f 6e 2c 20 54 49 4d 45 20 69 73 20 69 74 73 20 63 6f 6d 6d 69 74 74 he.function,.TIME.is.its.committ
5880 65 72 20 64 61 74 65 2c 20 61 6e 64 20 56 45 52 53 49 4f 4e 0a 69 73 20 74 68 65 20 76 65 72 73 er.date,.and.VERSION.is.the.vers
58a0 69 6f 6e 20 73 74 72 69 6e 67 20 63 68 6f 73 65 6e 20 66 6f 72 20 43 4f 4d 4d 49 54 2e 0a 0a 53 ion.string.chosen.for.COMMIT...S
58c0 6f 6d 65 20 6f 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 73 20 74 68 61 74 20 72 65 74 75 72 6e ome.of.the.functions.that.return
58e0 20 73 6e 61 70 73 68 6f 74 20 76 65 72 73 69 6f 6e 73 2c 20 69 6e 74 65 72 6e 61 6c 6c 79 0a 75 .snapshot.versions,.internally.u
5900 73 65 20 60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2d 76 65 72 73 69 6f se.`package-build-release-versio
5920 6e 2d 66 75 6e 63 74 69 6f 6e 73 27 20 74 6f 20 64 65 74 65 72 6d 69 6e 65 20 74 68 65 0a 63 75 n-functions'.to.determine.the.cu
5940 72 72 65 6e 74 20 72 65 6c 65 61 73 65 2c 20 77 68 69 63 68 20 74 68 65 79 20 75 73 65 20 61 73 rrent.release,.which.they.use.as
5960 20 70 61 72 74 20 6f 66 20 74 68 65 20 72 65 74 75 72 6e 65 64 20 56 45 52 53 49 4f 4e 2e 0a 0a .part.of.the.returned.VERSION...
5980 49 66 20 6f 62 73 6f 6c 65 74 65 20 60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 67 65 74 2d 76 If.obsolete.`package-build-get-v
59a0 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 27 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 0a 74 68 65 ersion-function'.is.non-nil,.the
59c0 6e 20 74 68 61 74 20 6f 76 65 72 72 69 64 65 73 20 74 68 65 20 76 61 6c 75 65 20 73 65 74 20 68 n.that.overrides.the.value.set.h
59e0 65 72 65 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 0a 20 20 ere."...:group.'package-build...
5a00 3a 74 79 70 65 20 27 68 6f 6f 6b 0a 20 20 3a 6f 70 74 69 6f 6e 73 20 28 6c 69 73 74 20 23 27 70 :type.'hook...:options.(list.#'p
5a20 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2b 63 6f 75 6e 74 2d 76 65 72 73 69 ackage-build-release+count-versi
5a40 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 70 61 63 6b 61 67 65 2d 62 75 on..................#'package-bu
5a60 69 6c 64 2d 72 65 6c 65 61 73 65 2b 74 69 6d 65 73 74 61 6d 70 2d 76 65 72 73 69 6f 6e 0a 20 20 ild-release+timestamp-version...
5a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 ...............#'package-build-t
5aa0 69 6d 65 73 74 61 6d 70 2d 76 65 72 73 69 6f 6e 29 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 70 imestamp-version))..(defcustom.p
5ac0 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 70 72 65 64 69 63 61 74 65 2d 66 75 6e 63 74 69 6f 6e 20 ackage-build-predicate-function.
5ae0 6e 69 6c 0a 20 20 22 50 72 65 64 69 63 61 74 65 20 75 73 65 64 20 62 79 20 60 70 61 63 6b 61 67 nil..."Predicate.used.by.`packag
5b00 65 2d 62 75 69 6c 64 2d 61 6c 6c 27 20 74 6f 20 64 65 74 65 72 6d 69 6e 65 20 77 68 69 63 68 20 e-build-all'.to.determine.which.
5b20 70 61 63 6b 61 67 65 73 20 74 6f 20 62 75 69 6c 64 2e 0a 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 74 packages.to.build..If.non-nil,.t
5b40 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 63 61 6c 6c 65 64 20 77 69 74 68 20 74 68 65 20 his.function.is.called.with.the.
5b60 72 65 63 69 70 65 20 6f 62 6a 65 63 74 20 61 73 0a 61 72 67 75 6d 65 6e 74 2c 20 61 6e 64 20 6d recipe.object.as.argument,.and.m
5b80 75 73 74 20 72 65 74 75 72 6e 20 6e 6f 6e 2d 6e 69 6c 20 69 66 20 74 68 65 20 70 61 63 6b 61 67 ust.return.non-nil.if.the.packag
5ba0 65 20 69 73 20 74 6f 20 62 65 20 62 75 69 6c 64 2e 0a 49 66 20 6e 69 6c 20 28 74 68 65 20 64 65 e.is.to.be.build..If.nil.(the.de
5bc0 66 61 75 6c 74 29 2c 20 74 68 65 6e 20 61 6c 6c 20 70 61 63 6b 61 67 65 73 20 61 72 65 20 62 75 fault),.then.all.packages.are.bu
5be0 69 6c 64 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 0a 20 20 ild."...:group.'package-build...
5c00 3a 74 79 70 65 20 27 28 63 68 6f 69 63 65 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 62 75 69 6c :type.'(choice.(const.:tag."buil
5c20 64 20 61 6c 6c 22 29 20 66 75 6e 63 74 69 6f 6e 29 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 70 d.all").function))..(defcustom.p
5c40 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 62 75 69 6c 64 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 23 27 ackage-build-build-function...#'
5c60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 62 75 69 6c 64 2d 6d 75 6c 74 69 2d 66 69 6c 65 2d package-build--build-multi-file-
5c80 70 61 63 6b 61 67 65 0a 20 20 22 4c 6f 77 2d 6c 65 76 65 6c 20 66 75 6e 63 74 69 6f 6e 20 75 73 package..."Low-level.function.us
5ca0 65 64 20 74 6f 20 62 75 69 6c 64 20 61 20 70 61 63 6b 61 67 65 2e 0a 42 79 20 64 65 66 61 75 6c ed.to.build.a.package..By.defaul
5cc0 74 20 61 20 74 61 72 62 61 6c 6c 20 69 73 20 75 73 65 64 20 66 6f 72 20 61 6c 6c 20 70 61 63 6b t.a.tarball.is.used.for.all.pack
5ce0 61 67 65 73 2c 20 69 6e 63 6c 75 64 69 6e 67 20 74 68 6f 73 65 0a 63 6f 6e 73 69 73 74 69 6e 67 ages,.including.those.consisting
5d00 20 6f 66 20 61 20 73 69 6e 67 6c 65 20 66 69 6c 65 2e 20 20 49 74 20 74 68 69 73 20 69 73 20 6e .of.a.single.file...It.this.is.n
5d20 69 6c 2c 20 74 68 65 6e 20 73 69 6e 67 6c 65 2d 66 69 6c 65 0a 70 61 63 6b 61 67 65 73 20 61 72 il,.then.single-file.packages.ar
5d40 65 20 64 69 73 74 72 69 62 75 74 65 64 20 77 69 74 68 6f 75 74 20 75 73 69 6e 67 20 74 61 72 62 e.distributed.without.using.tarb
5d60 61 6c 6c 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 0a 20 alls."...:group.'package-build..
5d80 20 3a 74 79 70 65 20 27 28 63 68 6f 69 63 65 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 75 73 65 .:type.'(choice.(const.:tag."use
5da0 20 74 61 72 62 61 6c 6c 20 66 6f 72 20 61 6c 6c 20 70 61 63 6b 61 67 65 73 22 0a 20 20 20 20 20 .tarball.for.all.packages"......
5dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 ...................package-build
5de0 2d 2d 62 75 69 6c 64 2d 6d 75 6c 74 69 2d 66 69 6c 65 2d 70 61 63 6b 61 67 65 29 0a 20 20 20 20 --build-multi-file-package).....
5e00 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 6f 6e 6c 79 20 75 .............(const.:tag."only.u
5e20 73 65 20 74 61 72 62 61 6c 6c 20 66 6f 72 20 6d 75 6c 74 69 2d 66 69 6c 65 20 70 61 63 6b 61 67 se.tarball.for.multi-file.packag
5e40 65 73 22 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 75 6e 63 74 69 es".nil)..................functi
5e60 6f 6e 29 29 0a 0a 3b 3b 20 4e 4f 54 45 20 74 68 61 74 20 74 68 65 73 65 20 68 6f 6f 6b 73 20 61 on))..;;.NOTE.that.these.hooks.a
5e80 72 65 20 73 74 69 6c 6c 20 65 78 70 65 72 69 6d 65 6e 74 61 6c 2e 20 20 4c 65 74 20 6d 65 20 6b re.still.experimental...Let.me.k
5ea0 6e 6f 77 20 69 66 20 74 68 65 73 65 0a 3b 3b 20 61 72 65 20 70 6f 74 65 6e 74 69 61 6c 6c 79 20 now.if.these.;;.are.potentially.
5ec0 75 73 65 66 75 6c 20 66 6f 72 20 79 6f 75 20 61 6e 64 20 77 68 65 74 68 65 72 20 61 6e 79 20 63 useful.for.you.and.whether.any.c
5ee0 68 61 6e 67 65 73 20 61 72 65 20 72 65 71 75 69 72 65 64 0a 3b 3b 20 74 6f 20 6d 61 6b 65 20 74 hanges.are.required.;;.to.make.t
5f00 68 65 6d 20 6d 6f 72 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 66 6f 72 20 79 6f 75 72 20 75 73 hem.more.appropriate.for.your.us
5f20 65 63 61 73 65 2e 0a 28 64 65 66 76 61 72 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 77 6f 72 ecase..(defvar.package-build-wor
5f40 6b 74 72 65 65 2d 66 75 6e 63 74 69 6f 6e 20 23 27 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d ktree-function.#'package-recipe-
5f60 2d 77 6f 72 6b 69 6e 67 2d 74 72 65 65 29 0a 28 64 65 66 76 61 72 20 70 61 63 6b 61 67 65 2d 62 -working-tree).(defvar.package-b
5f80 75 69 6c 64 2d 65 61 72 6c 79 2d 77 6f 72 6b 74 72 65 65 2d 66 75 6e 63 74 69 6f 6e 20 23 27 70 uild-early-worktree-function.#'p
5fa0 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 2d 77 6f 72 6b 69 6e 67 2d 74 72 65 65 29 0a 28 64 65 ackage-recipe--working-tree).(de
5fc0 66 76 61 72 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 66 65 74 63 68 2d 66 75 6e 63 74 69 6f fvar.package-build-fetch-functio
5fe0 6e 20 23 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 66 65 74 63 68 29 0a 28 64 65 66 76 61 n.#'package-build--fetch).(defva
6000 72 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 63 68 65 63 6b 6f 75 74 2d 66 75 6e 63 74 69 6f r.package-build-checkout-functio
6020 6e 20 23 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 68 65 63 6b 6f 75 74 29 0a 28 64 65 n.#'package-build--checkout).(de
6040 66 76 61 72 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 63 6c 65 61 6e 75 70 2d 66 75 6e 63 74 fvar.package-build-cleanup-funct
6060 69 6f 6e 20 23 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 6c 65 61 6e 75 70 29 0a 0a 28 ion.#'package-build--cleanup)..(
6080 64 65 66 63 75 73 74 6f 6d 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 69 6d 65 6f 75 74 2d defcustom.package-build-timeout-
60a0 65 78 65 63 75 74 61 62 6c 65 20 22 74 69 6d 65 6f 75 74 22 0a 20 20 22 50 61 74 68 20 74 6f 20 executable."timeout"..."Path.to.
60c0 61 20 47 4e 55 20 63 6f 72 65 75 74 69 6c 73 20 5c 22 74 69 6d 65 6f 75 74 5c 22 20 63 6f 6d 6d a.GNU.coreutils.\"timeout\".comm
60e0 61 6e 64 20 69 66 20 61 76 61 69 6c 61 62 6c 65 2e 0a 54 68 69 73 20 6d 75 73 74 20 62 65 20 61 and.if.available..This.must.be.a
6100 20 76 65 72 73 69 6f 6e 20 77 68 69 63 68 20 73 75 70 70 6f 72 74 73 20 74 68 65 20 5c 22 2d 6b .version.which.supports.the.\"-k
6120 5c 22 20 6f 70 74 69 6f 6e 2e 0a 0a 4f 6e 20 4d 61 63 4f 53 20 69 74 20 69 73 20 70 6f 73 73 69 \".option...On.MacOS.it.is.possi
6140 62 6c 65 20 74 6f 20 69 6e 73 74 61 6c 6c 20 63 6f 72 65 75 74 69 6c 73 20 75 73 69 6e 67 20 48 ble.to.install.coreutils.using.H
6160 6f 6d 65 62 72 65 77 20 6f 72 0a 73 69 6d 69 6c 61 72 2c 20 77 68 69 63 68 20 77 69 6c 6c 20 70 omebrew.or.similar,.which.will.p
6180 72 6f 76 69 64 65 20 74 68 65 20 47 4e 55 20 74 69 6d 65 6f 75 74 20 70 72 6f 67 72 61 6d 20 61 rovide.the.GNU.timeout.program.a
61a0 73 0a 5c 22 67 74 69 6d 65 6f 75 74 5c 22 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 s.\"gtimeout\"."...:group.'packa
61c0 67 65 2d 62 75 69 6c 64 0a 20 20 3a 74 79 70 65 20 27 28 66 69 6c 65 20 3a 6d 75 73 74 2d 6d 61 ge-build...:type.'(file.:must-ma
61e0 74 63 68 20 74 29 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 70 61 63 6b 61 67 65 2d 62 75 69 6c tch.t))..(defcustom.package-buil
6200 64 2d 74 69 6d 65 6f 75 74 2d 73 65 63 73 20 6e 69 6c 0a 20 20 22 57 61 69 74 20 74 68 69 73 20 d-timeout-secs.nil..."Wait.this.
6220 6d 61 6e 79 20 73 65 63 6f 6e 64 73 20 66 6f 72 20 65 78 74 65 72 6e 61 6c 20 70 72 6f 63 65 73 many.seconds.for.external.proces
6240 73 65 73 20 74 6f 20 63 6f 6d 70 6c 65 74 65 2e 0a 0a 49 66 20 61 6e 20 65 78 74 65 72 6e 61 6c ses.to.complete...If.an.external
6260 20 70 72 6f 63 65 73 73 20 74 61 6b 65 73 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 73 70 65 63 69 .process.takes.longer.than.speci
6280 66 69 65 64 20 68 65 72 65 20 74 6f 0a 63 6f 6d 70 6c 65 74 65 2c 20 74 68 65 6e 20 69 74 20 69 fied.here.to.complete,.then.it.i
62a0 73 20 74 65 72 6d 69 6e 61 74 65 64 2e 20 20 49 66 20 6e 69 6c 2c 20 74 68 65 6e 20 6e 6f 20 74 s.terminated...If.nil,.then.no.t
62c0 69 6d 65 20 6c 69 6d 69 74 20 69 73 0a 61 70 70 6c 69 65 64 2e 20 20 54 68 69 73 20 73 65 74 74 ime.limit.is.applied...This.sett
62e0 69 6e 67 20 72 65 71 75 69 72 65 73 0a 60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 69 6d 65 ing.requires.`package-build-time
6300 6f 75 74 2d 65 78 65 63 75 74 61 62 6c 65 27 20 74 6f 20 62 65 20 73 65 74 2e 22 0a 20 20 3a 67 out-executable'.to.be.set."...:g
6320 72 6f 75 70 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 0a 20 20 3a 74 79 70 65 20 27 6e 75 6d roup.'package-build...:type.'num
6340 62 65 72 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 ber)..(defcustom.package-build-t
6360 61 72 2d 65 78 65 63 75 74 61 62 6c 65 20 22 74 61 72 22 0a 20 20 22 50 61 74 68 20 74 6f 20 61 ar-executable."tar"..."Path.to.a
6380 20 28 70 72 65 66 65 72 61 62 6c 79 20 47 4e 55 29 20 74 61 72 20 63 6f 6d 6d 61 6e 64 2e 0a 43 .(preferably.GNU).tar.command..C
63a0 65 72 74 61 69 6e 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 73 20 28 65 2e 67 2e 2c 20 5c 22 40 5c ertain.package.names.(e.g.,.\"@\
63c0 22 29 20 6d 61 79 20 6e 6f 74 20 77 6f 72 6b 20 70 72 6f 70 65 72 6c 79 20 77 69 74 68 20 61 20 ").may.not.work.properly.with.a.
63e0 42 53 44 20 74 61 72 2e 0a 0a 4f 6e 20 4d 61 63 4f 53 20 69 74 20 69 73 20 70 6f 73 73 69 62 6c BSD.tar...On.MacOS.it.is.possibl
6400 65 20 74 6f 20 69 6e 73 74 61 6c 6c 20 63 6f 72 65 75 74 69 6c 73 20 75 73 69 6e 67 20 48 6f 6d e.to.install.coreutils.using.Hom
6420 65 62 72 65 77 20 6f 72 0a 73 69 6d 69 6c 61 72 2c 20 77 68 69 63 68 20 77 69 6c 6c 20 70 72 6f ebrew.or.similar,.which.will.pro
6440 76 69 64 65 20 74 68 65 20 47 4e 55 20 74 69 6d 65 6f 75 74 20 70 72 6f 67 72 61 6d 20 61 73 0a vide.the.GNU.timeout.program.as.
6460 5c 22 67 74 61 72 5c 22 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 67 65 2d 62 75 69 \"gtar\"."...:group.'package-bui
6480 6c 64 0a 20 20 3a 74 79 70 65 20 27 28 66 69 6c 65 20 3a 6d 75 73 74 2d 6d 61 74 63 68 20 74 29 ld...:type.'(file.:must-match.t)
64a0 29 0a 0a 28 64 65 66 76 61 72 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 74 61 72 2d 74 79 )..(defvar.package-build--tar-ty
64c0 70 65 20 6e 69 6c 0a 20 20 22 54 79 70 65 20 6f 66 20 60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 pe.nil..."Type.of.`package-build
64e0 2d 74 61 72 2d 65 78 65 63 75 74 61 62 6c 65 27 2e 0a 43 61 6e 20 62 65 20 60 67 6e 75 27 20 6f -tar-executable'..Can.be.`gnu'.o
6500 72 20 60 62 73 64 27 3b 20 6e 69 6c 20 6d 65 61 6e 73 20 74 68 65 20 74 79 70 65 20 69 73 20 6e r.`bsd';.nil.means.the.type.is.n
6520 6f 74 20 64 65 63 69 64 65 64 20 79 65 74 2e 22 29 0a 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c ot.decided.yet.")..(define-obsol
6540 65 74 65 2d 76 61 72 69 61 62 6c 65 2d 61 6c 69 61 73 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c ete-variable-alias.'package-buil
6560 64 2d 77 72 69 74 65 2d 6d 65 6c 70 61 2d 62 61 64 67 65 2d 69 6d 61 67 65 73 0a 20 20 27 70 61 d-write-melpa-badge-images...'pa
6580 63 6b 61 67 65 2d 62 75 69 6c 64 2d 62 61 64 67 65 2d 64 61 74 61 20 22 50 61 63 6b 61 67 65 2d ckage-build-badge-data."Package-
65a0 42 75 69 6c 64 20 35 2e 30 2e 30 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 70 61 63 6b 61 67 Build.5.0.0")..(defcustom.packag
65c0 65 2d 62 75 69 6c 64 2d 62 61 64 67 65 2d 64 61 74 61 20 6e 69 6c 0a 20 20 22 54 65 78 74 20 61 e-build-badge-data.nil..."Text.a
65e0 6e 64 20 63 6f 6c 6f 72 20 75 73 65 64 20 69 6e 20 62 61 64 67 65 20 69 6d 61 67 65 73 2c 20 69 nd.color.used.in.badge.images,.i
6600 66 20 61 6e 79 2e 0a 0a 49 66 20 6e 69 6c 20 28 74 68 65 20 64 65 66 61 75 6c 74 29 2c 20 74 68 f.any...If.nil.(the.default),.th
6620 65 6e 20 6e 6f 20 62 61 64 67 65 20 69 6d 61 67 65 73 20 61 72 65 20 67 65 6e 65 72 61 74 65 64 en.no.badge.images.are.generated
6640 2c 0a 6f 74 68 65 72 77 69 73 65 20 74 68 69 73 20 68 61 73 20 74 68 65 20 66 6f 72 6d 20 28 4e ,.otherwise.this.has.the.form.(N
6660 41 4d 45 20 43 4f 4c 4f 52 29 2e 20 20 4d 45 4c 50 41 20 73 65 74 73 20 74 68 65 20 76 61 6c 75 AME.COLOR)...MELPA.sets.the.valu
6680 65 0a 69 6e 20 69 74 73 20 74 6f 70 2d 6c 65 76 65 6c 20 4d 61 6b 65 66 69 6c 65 2c 20 74 6f 20 e.in.its.top-level.Makefile,.to.
66a0 64 69 66 66 65 72 65 6e 74 20 76 61 6c 75 65 73 2c 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 different.values,.depending.on.t
66c0 68 65 0a 63 68 61 6e 6e 65 6c 20 74 68 61 74 20 69 73 20 62 65 69 6e 67 20 62 75 69 6c 64 2e 22 he.channel.that.is.being.build."
66e0 0a 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 0a 20 20 3a 74 79 70 65 ...:group.'package-build...:type
6700 20 27 28 6c 69 73 74 20 28 73 74 72 69 6e 67 20 3a 74 61 67 20 22 41 72 63 68 69 76 65 20 6e 61 .'(list.(string.:tag."Archive.na
6720 6d 65 22 29 20 63 6f 6c 6f 72 29 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 70 61 63 6b 61 67 65 me").color))..(defcustom.package
6740 2d 62 75 69 6c 64 2d 76 65 72 73 69 6f 6e 2d 72 65 67 65 78 70 0a 20 20 22 5c 5c 60 5b 72 52 76 -build-version-regexp..."\\`[rRv
6760 56 5d 3f 5c 5c 28 3f 31 3a 5b 30 2d 39 5d 2b 5c 5c 28 5c 5c 2e 5b 30 2d 39 5d 2b 5c 5c 29 2a 5c V]?\\(?1:[0-9]+\\(\\.[0-9]+\\)*\
6780 5c 29 5c 5c 27 22 0a 20 20 22 52 65 67 65 78 70 20 75 73 65 64 20 74 6f 20 6d 61 74 63 68 20 76 \)\\'"..."Regexp.used.to.match.v
67a0 61 6c 69 64 20 76 65 72 73 69 6f 6e 2d 73 74 72 69 6e 67 73 2e 0a 0a 54 68 65 20 66 69 72 73 74 alid.version-strings...The.first
67c0 20 63 61 70 74 75 72 65 20 69 73 20 75 73 65 64 20 74 6f 20 65 78 74 72 61 63 74 20 74 68 65 20 .capture.is.used.to.extract.the.
67e0 61 63 74 75 61 6c 20 76 65 72 73 69 6f 6e 20 73 74 72 69 6e 67 2e 0a 53 74 72 69 6e 67 73 20 6d actual.version.string..Strings.m
6800 61 74 63 68 65 64 20 62 79 20 74 68 61 74 20 67 72 6f 75 70 20 6d 75 73 74 20 62 65 20 76 61 6c atched.by.that.group.must.be.val
6820 69 64 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 0a 60 76 65 72 73 69 6f 6e 2d 74 6f 2d 6c 69 73 74 id.according.to.`version-to-list
6840 27 2c 20 62 75 74 20 74 68 65 20 75 73 65 64 20 72 65 67 65 78 70 20 63 61 6e 20 62 65 20 6d 6f ',.but.the.used.regexp.can.be.mo
6860 72 65 20 73 74 72 69 63 74 2e 20 20 54 68 65 0a 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 73 75 re.strict...The.default.value.su
6880 70 70 6f 72 74 73 20 6f 6e 6c 79 20 72 65 6c 65 61 73 65 73 20 62 75 74 20 6e 6f 20 70 72 65 2d pports.only.releases.but.no.pre-
68a0 72 65 6c 65 61 73 65 73 2e 20 20 49 74 0a 61 6c 73 6f 20 69 6e 74 65 6e 74 69 6f 6e 61 6c 6c 79 releases...It.also.intentionally
68c0 20 69 67 6e 6f 72 65 73 20 63 65 64 72 74 61 69 6e 20 75 6e 66 6f 72 74 75 6e 61 74 65 20 76 65 .ignores.cedrtain.unfortunate.ve
68e0 72 73 69 6f 6e 20 73 74 72 69 6e 67 73 0a 73 75 63 68 20 61 73 20 5c 22 31 41 5c 22 20 6f 72 20 rsion.strings.such.as.\"1A\".or.
6900 5c 22 2e 35 5c 22 2c 20 61 6e 64 20 6f 6e 6c 79 20 73 75 70 70 6f 72 74 73 20 5c 22 2e 5c 22 20 \".5\",.and.only.supports.\".\".
6920 61 73 20 73 65 70 61 72 61 74 6f 72 2e 0a 0a 54 68 65 20 70 61 72 74 20 62 65 66 6f 72 65 20 74 as.separator...The.part.before.t
6940 68 65 20 66 69 72 73 74 20 63 61 70 74 75 72 65 20 67 72 6f 75 70 20 73 68 6f 75 6c 64 20 6d 61 he.first.capture.group.should.ma
6960 74 63 68 20 70 72 65 66 69 78 65 73 0a 63 6f 6d 6d 6f 6e 6c 79 20 75 73 65 64 20 69 6e 20 76 65 tch.prefixes.commonly.used.in.ve
6980 72 73 69 6f 6e 20 74 61 67 73 2e 0a 0a 4e 6f 74 65 20 74 68 61 74 20 74 68 69 73 20 76 61 72 69 rsion.tags...Note.that.this.vari
69a0 61 62 6c 65 20 63 61 6e 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20 69 6e 20 61 20 70 61 63 6b able.can.be.overridden.in.a.pack
69c0 61 67 65 27 73 20 72 65 63 69 70 65 2c 0a 75 73 69 6e 67 20 74 68 65 20 60 3a 76 65 72 73 69 6f age's.recipe,.using.the.`:versio
69e0 6e 2d 72 65 67 65 78 70 27 20 73 6c 6f 74 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 n-regexp'.slot."...:group.'packa
6a00 67 65 2d 62 75 69 6c 64 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 ge-build...:type.'string)..(defc
6a20 75 73 74 6f 6d 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 6c 6c 6f 77 65 64 2d 67 69 74 2d ustom.package-build-allowed-git-
6a40 70 72 6f 74 6f 63 6f 6c 73 20 27 28 22 68 74 74 70 73 22 20 22 66 69 6c 65 22 20 22 73 73 68 22 protocols.'("https"."file"."ssh"
6a60 29 0a 20 20 22 50 72 6f 74 6f 63 6f 6c 73 20 74 68 61 74 20 63 61 6e 20 62 65 20 75 73 65 64 20 )..."Protocols.that.can.be.used.
6a80 74 6f 20 66 65 74 63 68 20 66 72 6f 6d 20 75 70 73 74 72 65 61 6d 20 77 69 74 68 20 67 69 74 2e to.fetch.from.upstream.with.git.
6aa0 0a 42 79 20 64 65 66 61 75 6c 74 20 69 6e 73 65 63 75 72 65 20 70 72 6f 74 6f 63 6f 6c 73 2c 20 .By.default.insecure.protocols,.
6ac0 73 75 63 68 20 61 73 20 5c 22 68 74 74 70 5c 22 20 6f 72 20 5c 22 67 69 74 5c 22 2c 20 61 72 65 such.as.\"http\".or.\"git\",.are
6ae0 0a 64 69 73 61 6c 6c 6f 77 65 64 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 70 61 63 6b 61 67 65 2d .disallowed."...:group.'package-
6b00 62 75 69 6c 64 0a 20 20 3a 74 79 70 65 20 27 28 72 65 70 65 61 74 20 73 74 72 69 6e 67 29 29 0a build...:type.'(repeat.string)).
6b20 0a 28 64 65 66 76 61 72 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 75 73 65 2d 67 69 74 2d 72 .(defvar.package-build-use-git-r
6b40 65 6d 6f 74 65 2d 68 67 20 6e 69 6c 0a 20 20 22 57 68 65 74 68 65 72 20 74 6f 20 75 73 65 20 60 emote-hg.nil..."Whether.to.use.`
6b60 67 69 74 2d 72 65 6d 6f 74 65 2d 68 67 27 20 72 65 6d 6f 74 65 20 68 65 6c 70 65 72 20 66 6f 72 git-remote-hg'.remote.helper.for
6b80 20 6d 65 72 63 75 72 69 61 6c 20 72 65 70 6f 73 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 70 61 63 .mercurial.repos.")..(defvar.pac
6ba0 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 69 6e 68 69 62 69 74 2d 66 65 74 63 68 20 6e 69 6c 0a 20 20 kage-build--inhibit-fetch.nil...
6bc0 22 57 68 65 74 68 65 72 20 74 6f 20 69 6e 68 69 62 69 74 20 66 65 74 63 68 69 6e 67 2e 20 20 55 "Whether.to.inhibit.fetching...U
6be0 73 65 66 75 6c 20 66 6f 72 20 74 65 73 74 69 6e 67 20 70 75 72 70 6f 73 65 73 2e 22 29 0a 0a 28 seful.for.testing.purposes.")..(
6c00 64 65 66 76 61 72 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 69 6e 68 69 62 69 74 2d 63 68 defvar.package-build--inhibit-ch
6c20 65 63 6b 6f 75 74 20 6e 69 6c 0a 20 20 22 57 68 65 74 68 65 72 20 74 6f 20 69 6e 68 69 62 69 74 eckout.nil..."Whether.to.inhibit
6c40 20 63 68 65 63 6b 6f 75 74 2e 20 20 55 73 65 66 75 6c 20 66 6f 72 20 74 65 73 74 69 6e 67 20 70 .checkout...Useful.for.testing.p
6c60 75 72 70 6f 73 65 73 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 70 61 63 6b 61 67 65 2d 62 75 69 6c urposes.")..(defvar.package-buil
6c80 64 2d 2d 69 6e 68 69 62 69 74 2d 62 75 69 6c 64 20 6e 69 6c 0a 20 20 22 57 68 65 74 68 65 72 20 d--inhibit-build.nil..."Whether.
6ca0 74 6f 20 69 6e 68 69 62 69 74 20 62 75 69 6c 64 69 6e 67 2e 20 20 55 73 65 66 75 6c 20 66 6f 72 to.inhibit.building...Useful.for
6cc0 20 74 65 73 74 69 6e 67 20 70 75 72 70 6f 73 65 73 2e 22 29 0a 0a 3b 3b 3b 20 47 65 6e 65 72 69 .testing.purposes.")..;;;.Generi
6ce0 63 20 55 74 69 6c 69 74 69 65 73 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c c.Utilities..(defun.package-buil
6d00 64 2d 2d 6d 65 73 73 61 67 65 20 28 66 6f 72 6d 61 74 2d 73 74 72 69 6e 67 20 26 72 65 73 74 20 d--message.(format-string.&rest.
6d20 61 72 67 73 29 0a 20 20 22 42 65 68 61 76 65 20 6c 69 6b 65 20 60 6d 65 73 73 61 67 65 27 20 69 args)..."Behave.like.`message'.i
6d40 66 20 60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 76 65 72 62 6f 73 65 27 20 69 73 20 6e 6f 6e f.`package-build-verbose'.is.non
6d60 2d 6e 69 6c 2e 0a 4f 74 68 65 72 77 69 73 65 20 64 6f 20 6e 6f 74 68 69 6e 67 2e 20 20 46 4f 52 -nil..Otherwise.do.nothing...FOR
6d80 4d 41 54 2d 53 54 52 49 4e 47 20 61 6e 64 20 41 52 47 53 20 61 72 65 20 61 73 20 70 65 72 20 74 MAT-STRING.and.ARGS.are.as.per.t
6da0 68 61 74 20 66 75 6e 63 74 69 6f 6e 2e 22 0a 20 20 28 77 68 65 6e 20 70 61 63 6b 61 67 65 2d 62 hat.function."...(when.package-b
6dc0 75 69 6c 64 2d 76 65 72 62 6f 73 65 0a 20 20 20 20 28 61 70 70 6c 79 20 23 27 6d 65 73 73 61 67 uild-verbose.....(apply.#'messag
6de0 65 20 66 6f 72 6d 61 74 2d 73 74 72 69 6e 67 20 61 72 67 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 e.format-string.args)))..(defun.
6e00 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 65 72 72 6f 72 20 28 70 61 63 6b 61 67 65 20 66 6f package-build--error.(package.fo
6e20 72 6d 61 74 2d 73 74 72 69 6e 67 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 42 65 68 61 76 rmat-string.&rest.args)..."Behav
6e40 65 20 73 69 6d 69 6c 61 72 20 74 6f 20 60 65 72 72 6f 72 27 20 62 75 74 20 77 69 74 68 20 61 64 e.similar.to.`error'.but.with.ad
6e60 64 69 74 69 6f 6e 61 6c 20 6c 6f 67 67 69 6e 67 2e 0a 4c 6f 67 20 74 68 65 20 65 72 72 6f 72 20 ditional.logging..Log.the.error.
6e80 74 6f 20 5c 22 65 72 72 6f 72 73 2e 6c 6f 67 5c 22 20 69 6e 20 60 70 61 63 6b 61 67 65 2d 62 75 to.\"errors.log\".in.`package-bu
6ea0 69 6c 64 2d 61 72 63 68 69 76 65 2d 64 69 72 27 2e 0a 50 72 65 66 69 78 20 74 68 65 20 65 6e 74 ild-archive-dir'..Prefix.the.ent
6ec0 72 79 20 77 69 74 68 20 74 68 65 20 64 61 74 65 20 61 6e 64 20 69 66 20 70 6f 73 73 69 62 6c 65 ry.with.the.date.and.if.possible
6ee0 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 61 0a 70 61 63 6b 61 67 65 2e 20 20 50 41 43 4b 41 47 45 .the.name.of.a.package...PACKAGE
6f00 20 69 64 65 6e 74 69 66 69 65 73 20 61 20 70 61 63 6b 61 67 65 2c 20 69 74 20 6d 75 73 74 20 62 .identifies.a.package,.it.must.b
6f20 65 20 61 20 70 61 63 6b 61 67 65 0a 6e 61 6d 65 2c 20 61 20 60 70 61 63 6b 61 67 65 2d 72 65 63 e.a.package.name,.a.`package-rec
6f40 69 70 65 27 20 6f 62 6a 65 63 74 20 6f 72 20 6e 69 6c 2c 20 69 66 20 74 68 65 20 63 6f 6d 6d 61 ipe'.object.or.nil,.if.the.comma
6f60 6e 64 20 69 73 20 6e 6f 74 0a 62 65 69 6e 67 20 72 75 6e 20 66 6f 72 20 61 20 70 61 72 74 69 63 nd.is.not.being.run.for.a.partic
6f80 75 6c 61 72 20 70 61 63 6b 61 67 65 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 69 6e 64 65 6e ular.package."...(declare.(inden
6fa0 74 20 64 65 66 75 6e 29 29 0a 20 20 28 6c 65 74 20 28 28 65 72 72 20 28 61 70 70 6c 79 20 23 27 t.defun))...(let.((err.(apply.#'
6fc0 66 6f 72 6d 61 74 2d 6d 65 73 73 61 67 65 20 66 6f 72 6d 61 74 2d 73 74 72 69 6e 67 20 61 72 67 format-message.format-string.arg
6fe0 73 29 29 29 0a 20 20 20 20 3b 3b 20 54 68 61 74 27 73 20 61 20 62 69 74 20 6f 66 20 61 6e 20 69 s))).....;;.That's.a.bit.of.an.i
7000 6e 63 6f 6e 76 65 6e 69 65 6e 74 20 69 6e 74 65 72 66 61 63 65 2e 2e 2e 0a 20 20 20 20 28 77 69 nconvenient.interface........(wi
7020 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 28 66 6f th-temp-buffer.......(insert.(fo
7040 72 6d 61 74 20 22 25 73 20 20 25 2d 32 35 73 20 20 25 73 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 rmat."%s..%-25s..%s\n"..........
7060 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 2d 74 69 6d 65 2d 73 74 72 69 6e 67 .............(format-time-string
7080 20 22 25 46 54 25 54 25 7a 22 20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ."%FT%T%z".nil.t)...............
70a0 20 20 20 20 20 20 20 20 28 69 66 20 28 63 6c 2d 74 79 70 65 70 20 70 61 63 6b 61 67 65 20 27 70 ........(if.(cl-typep.package.'p
70c0 61 63 6b 61 67 65 2d 72 65 63 69 70 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ackage-recipe)..................
70e0 20 20 20 20 20 20 20 20 20 28 6f 72 65 66 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 29 0a 20 20 20 .........(oref.package.name)....
7100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 70 61 63 6b 61 67 65 .....................(or.package
7120 20 22 6e 2f 61 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 ."n/a")).......................e
7140 72 72 29 29 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 65 71 20 28 63 68 61 72 2d 62 65 66 rr)).......(unless.(eq.(char-bef
7160 6f 72 65 29 20 3f 5c 6e 29 0a 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 22 5c 6e 22 29 29 ore).?\n).........(insert."\n"))
7180 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 .......(goto-char.(point-min))..
71a0 20 20 20 20 20 28 61 70 70 65 6e 64 2d 74 6f 2d 66 69 6c 65 0a 20 20 20 20 20 20 20 28 70 6f 69 .....(append-to-file........(poi
71c0 6e 74 29 0a 20 20 20 20 20 20 20 28 31 2b 20 28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 69 74 69 6f nt)........(1+.(line-end-positio
71e0 6e 29 29 0a 20 20 20 20 20 20 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 22 65 72 n))........(expand-file-name."er
7200 72 6f 72 73 2e 6c 6f 67 22 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d rors.log".package-build-archive-
7220 64 69 72 29 29 29 0a 20 20 20 20 28 65 72 72 6f 72 20 22 25 73 22 20 65 72 72 29 29 29 0a 0a 3b dir))).....(error."%s".err)))..;
7240 3b 3b 20 56 65 72 73 69 6f 6e 20 48 61 6e 64 6c 69 6e 67 0a 3b 3b 3b 3b 20 43 6f 6d 6d 6f 6e 0a ;;.Version.Handling.;;;;.Common.
7260 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 73 65 6c 65 63 74 2d 76 65 .(defun.package-build--select-ve
7280 72 73 69 6f 6e 20 28 72 63 70 29 0a 20 20 28 70 63 61 73 65 2d 6c 65 74 2a 0a 20 20 20 20 20 20 rsion.(rcp)...(pcase-let*.......
72a0 28 28 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 28 70 61 63 6b 61 67 65 2d 62 75 69 ((default-directory.(package-bui
72c0 6c 64 2d 2d 77 6f 72 6b 69 6e 67 2d 74 72 65 65 20 72 63 70 20 74 29 29 0a 20 20 20 20 20 20 20 ld--working-tree.rcp.t))........
72e0 28 60 28 2c 63 6f 6d 6d 69 74 20 2c 74 69 6d 65 20 2c 76 65 72 73 69 6f 6e 29 0a 20 20 20 20 20 (`(,commit.,time.,version)......
7300 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 28 28 77 69 74 68 2d 6e 6f 2d 77 61 72 6e ...(cond..........((with-no-warn
7320 69 6e 67 73 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 67 65 74 2d 76 65 72 73 69 6f 6e 2d 66 ings.package-build-get-version-f
7340 75 6e 63 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 28 64 69 73 70 6c 61 79 2d 77 61 72 6e unction)...........(display-warn
7360 69 6e 67 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 20 22 5c 0a 56 61 72 69 61 62 6c 65 20 60 ing.'package-build."\.Variable.`
7380 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 67 65 74 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 package-build-get-version-functi
73a0 6f 6e 27 20 69 73 20 6f 62 73 6f 6c 65 74 65 2e 0a 49 6e 73 74 65 61 64 20 73 65 74 20 60 70 61 on'.is.obsolete..Instead.set.`pa
73c0 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 ckage-build-release-version-func
73e0 74 69 6f 6e 73 27 0a 61 6e 64 2f 6f 72 20 60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 73 6e 61 tions'.and/or.`package-build-sna
7400 70 73 68 6f 74 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 73 27 2c 20 61 6e 64 0a 73 65 pshot-version-functions',.and.se
7420 74 20 60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 73 74 61 62 6c 65 27 20 74 6f 20 63 6f 6e 74 t.`package-build-stable'.to.cont
7440 72 6f 6c 20 77 68 65 74 68 65 72 20 72 65 6c 65 61 73 65 73 0a 6f 72 20 73 6e 61 70 73 68 6f 74 rol.whether.releases.or.snapshot
7460 73 20 61 72 65 20 62 75 69 6c 64 2e 22 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 6e s.are.build.")...........(with-n
7480 6f 2d 77 61 72 6e 69 6e 67 73 20 28 66 75 6e 63 61 6c 6c 20 70 61 63 6b 61 67 65 2d 62 75 69 6c o-warnings.(funcall.package-buil
74a0 64 2d 67 65 74 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 20 72 63 70 29 29 29 0a 20 20 d-get-version-function.rcp)))...
74c0 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 73 74 61 62 6c 65 0a 20 20 20 .......(package-build-stable....
74e0 20 20 20 20 20 20 20 28 72 75 6e 2d 68 6f 6f 6b 2d 77 69 74 68 2d 61 72 67 73 2d 75 6e 74 69 6c .......(run-hook-with-args-until
7500 2d 73 75 63 63 65 73 73 0a 20 20 20 20 20 20 20 20 20 20 20 27 70 61 63 6b 61 67 65 2d 62 75 69 -success............'package-bui
7520 6c 64 2d 72 65 6c 65 61 73 65 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 73 20 72 63 70 ld-release-version-functions.rcp
7540 29 29 0a 20 20 20 20 20 20 20 20 20 28 28 72 75 6e 2d 68 6f 6f 6b 2d 77 69 74 68 2d 61 72 67 73 ))..........((run-hook-with-args
7560 2d 75 6e 74 69 6c 2d 73 75 63 63 65 73 73 0a 20 20 20 20 20 20 20 20 20 20 20 27 70 61 63 6b 61 -until-success............'packa
7580 67 65 2d 62 75 69 6c 64 2d 73 6e 61 70 73 68 6f 74 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 ge-build-snapshot-version-functi
75a0 6f 6e 73 20 72 63 70 29 29 29 29 29 0a 20 20 20 20 28 69 66 20 28 6e 6f 74 20 76 65 72 73 69 6f ons.rcp))))).....(if.(not.versio
75c0 6e 29 0a 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 28 69 66 20 70 61 63 6b 61 67 65 2d n).........(funcall.(if.package-
75e0 62 75 69 6c 64 2d 61 6c 6c 2d 70 75 62 6c 69 73 68 61 62 6c 65 20 23 27 65 72 72 6f 72 20 23 27 build-all-publishable.#'error.#'
7600 6d 65 73 73 61 67 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 43 61 6e 6e 6f message).................."Canno
7620 74 20 64 65 74 65 72 6d 69 6e 65 20 76 65 72 73 69 6f 6e 20 66 6f 72 20 25 73 22 20 28 6f 72 65 t.determine.version.for.%s".(ore
7640 66 20 72 63 70 20 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 28 6f 73 65 74 20 72 63 70 20 63 6f 6d f.rcp.name)).......(oset.rcp.com
7660 6d 69 74 20 63 6f 6d 6d 69 74 29 0a 20 20 20 20 20 20 28 6f 73 65 74 20 72 63 70 20 74 69 6d 65 mit.commit).......(oset.rcp.time
7680 20 74 69 6d 65 29 0a 20 20 20 20 20 20 28 6f 73 65 74 20 72 63 70 20 76 65 72 73 69 6f 6e 20 76 .time).......(oset.rcp.version.v
76a0 65 72 73 69 6f 6e 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 ersion))))..(cl-defmethod.packag
76c0 65 2d 62 75 69 6c 64 2d 2d 73 65 6c 65 63 74 2d 63 6f 6d 6d 69 74 20 28 28 72 63 70 20 70 61 63 e-build--select-commit.((rcp.pac
76e0 6b 61 67 65 2d 67 69 74 2d 72 65 63 69 70 65 29 20 72 65 76 20 65 78 61 63 74 29 0a 20 20 28 70 kage-git-recipe).rev.exact)...(p
7700 63 61 73 65 2d 6c 65 74 2a 0a 20 20 20 20 20 20 28 28 60 28 2c 68 61 73 68 20 2c 74 69 6d 65 29 case-let*.......((`(,hash.,time)
7720 0a 20 20 20 20 20 20 20 20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 .........(split-string..........
7740 28 63 61 72 20 28 61 70 70 6c 79 20 23 27 70 72 6f 63 65 73 73 2d 6c 69 6e 65 73 0a 20 20 20 20 (car.(apply.#'process-lines.....
7760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 67 69 74 22 20 22 6c 6f 67 22 20 22 2d 6e ................."git"."log"."-n
7780 31 22 20 22 2d 2d 66 69 72 73 74 2d 70 61 72 65 6e 74 22 20 22 2d 2d 6e 6f 2d 73 68 6f 77 2d 73 1"."--first-parent"."--no-show-s
77a0 69 67 6e 61 74 75 72 65 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 ignature"......................"
77c0 2d 2d 70 72 65 74 74 79 3d 66 6f 72 6d 61 74 3a 25 48 20 25 63 64 22 20 22 2d 2d 64 61 74 65 3d --pretty=format:%H.%cd"."--date=
77e0 75 6e 69 78 22 20 72 65 76 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 unix".rev......................(
7800 61 6e 64 20 28 6e 6f 74 20 65 78 61 63 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 and.(not.exact).................
7820 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 22 2d 2d 22 20 28 70 61 63 6b 61 67 65 2d 62 75 ..........(cons."--".(package-bu
7840 69 6c 64 2d 2d 73 70 65 63 2d 67 6c 6f 62 73 20 72 63 70 29 29 29 29 29 0a 20 20 20 20 20 20 20 ild--spec-globs.rcp)))))........
7860 20 20 22 20 22 29 29 29 0a 20 20 20 20 28 6c 69 73 74 20 68 61 73 68 20 28 73 74 72 69 6e 67 2d .."."))).....(list.hash.(string-
7880 74 6f 2d 6e 75 6d 62 65 72 20 74 69 6d 65 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f to-number.time))))..(cl-defmetho
78a0 64 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 73 65 6c 65 63 74 2d 63 6f 6d 6d 69 74 20 28 d.package-build--select-commit.(
78c0 28 72 63 70 20 70 61 63 6b 61 67 65 2d 68 67 2d 72 65 63 69 70 65 29 20 72 65 76 20 65 78 61 63 (rcp.package-hg-recipe).rev.exac
78e0 74 29 0a 20 20 28 70 63 61 73 65 2d 6c 65 74 2a 0a 20 20 20 20 20 20 28 28 60 28 2c 68 61 73 68 t)...(pcase-let*.......((`(,hash
7900 20 2c 74 69 6d 65 20 2c 5f 74 69 6d 65 7a 6f 6e 65 29 0a 20 20 20 20 20 20 20 20 28 73 70 6c 69 .,time.,_timezone).........(spli
7920 74 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 28 63 61 72 20 28 61 70 70 6c 79 20 23 27 t-string..........(car.(apply.#'
7940 70 72 6f 63 65 73 73 2d 6c 69 6e 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 process-lines...................
7960 20 20 20 3b 3b 20 54 68 65 20 22 64 61 74 65 22 20 6b 65 79 77 6f 72 64 20 75 73 65 73 20 55 54 ...;;.The."date".keyword.uses.UT
7980 43 2e 20 54 68 65 20 22 68 67 64 61 74 65 22 20 66 69 6c 74 65 72 0a 20 20 20 20 20 20 20 20 20 C..The."hgdate".filter..........
79a0 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 72 65 74 75 72 6e 73 20 74 77 6f 20 69 6e 74 65 67 ............;;.returns.two.integ
79c0 65 72 73 20 73 65 70 61 72 61 74 65 64 20 62 79 20 61 20 73 70 61 63 65 3b 20 74 68 65 0a 20 20 ers.separated.by.a.space;.the...
79e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 75 6e 69 78 20 74 69 6d 65 73 ...................;;.unix.times
7a00 74 61 6d 70 20 61 6e 64 20 74 68 65 20 74 69 6d 65 7a 6f 6e 65 20 6f 66 66 73 65 74 2e 20 20 57 tamp.and.the.timezone.offset...W
7a20 65 20 75 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 22 68 e.use......................;;."h
7a40 67 64 61 74 65 22 20 62 65 63 61 75 73 65 20 74 68 61 74 20 6d 61 6b 65 73 20 69 74 20 65 61 73 gdate".because.that.makes.it.eas
7a60 69 65 72 20 74 6f 20 64 69 73 63 61 72 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ier.to.discard..................
7a80 20 20 20 20 3b 3b 20 74 68 65 20 74 69 6d 65 20 7a 6f 6e 65 20 6f 66 66 73 65 74 2c 20 77 68 69 ....;;.the.time.zone.offset,.whi
7aa0 63 68 20 64 6f 65 73 6e 27 74 20 69 6e 74 65 72 65 73 74 20 75 73 2e 0a 20 20 20 20 20 20 20 20 ch.doesn't.interest.us..........
7ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 22 68 67 22 20 22 6c 6f 67 22 20 22 2d 2d 6c 69 6d 69 74 ............."hg"."log"."--limit
7ae0 22 20 22 31 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2d 2d 74 65 "."1"......................"--te
7b00 6d 70 6c 61 74 65 22 20 22 7b 6e 6f 64 65 7d 20 7b 64 61 74 65 7c 68 67 64 61 74 65 7d 5c 6e 22 mplate"."{node}.{date|hgdate}\n"
7b20 20 22 2d 2d 72 65 76 22 20 72 65 76 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ."--rev".rev....................
7b40 20 20 28 61 6e 64 20 28 6e 6f 74 20 65 78 61 63 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ..(and.(not.exact)..............
7b60 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 22 2d 2d 22 20 28 70 61 63 6b 61 67 65 .............(cons."--".(package
7b80 2d 62 75 69 6c 64 2d 2d 73 70 65 63 2d 67 6c 6f 62 73 20 72 63 70 29 29 29 29 29 0a 20 20 20 20 -build--spec-globs.rcp))))).....
7ba0 20 20 20 20 20 22 20 22 29 29 29 0a 20 20 20 20 28 6c 69 73 74 20 68 61 73 68 20 28 73 74 72 69 ....."."))).....(list.hash.(stri
7bc0 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20 74 69 6d 65 29 29 29 29 0a 0a 3b 3b 3b 3b 20 54 61 67 0a ng-to-number.time))))..;;;;.Tag.
7be0 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 61 67 2d 76 65 72 73 69 6f .(defun.package-build-tag-versio
7c00 6e 20 28 72 63 70 29 0a 20 20 22 44 65 74 65 72 6d 69 6e 65 20 76 65 72 73 69 6f 6e 20 63 6f 72 n.(rcp)..."Determine.version.cor
7c20 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 6c 61 72 67 65 73 74 20 76 65 72 73 69 6f 6e 20 74 61 responding.to.largest.version.ta
7c40 67 20 66 6f 72 20 52 43 50 2e 0a 52 65 74 75 72 6e 20 28 43 4f 4d 4d 49 54 2d 48 41 53 48 20 43 g.for.RCP..Return.(COMMIT-HASH.C
7c60 4f 4d 4d 49 54 54 45 52 2d 44 41 54 45 20 56 45 52 53 49 4f 4e 2d 53 54 52 49 4e 47 29 2e 22 0a OMMITTER-DATE.VERSION-STRING).".
7c80 20 20 28 6c 65 74 20 28 28 72 65 67 65 78 70 20 28 6f 72 20 28 6f 72 65 66 20 72 63 70 20 76 65 ..(let.((regexp.(or.(oref.rcp.ve
7ca0 72 73 69 6f 6e 2d 72 65 67 65 78 70 29 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 76 65 72 73 rsion-regexp).package-build-vers
7cc0 69 6f 6e 2d 72 65 67 65 78 70 29 29 0a 20 20 20 20 20 20 20 20 28 74 61 67 20 6e 69 6c 29 0a 20 ion-regexp)).........(tag.nil)..
7ce0 20 20 20 20 20 20 20 28 76 65 72 73 69 6f 6e 20 27 28 30 29 29 29 0a 20 20 20 20 28 64 6f 6c 69 .......(version.'(0))).....(doli
7d00 73 74 20 28 6e 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6c 69 73 74 2d 74 61 67 73 20 st.(n.(package-build--list-tags.
7d20 72 63 70 29 29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 76 20 28 69 67 6e 6f 72 65 2d 65 72 72 rcp)).......(let.((v.(ignore-err
7d40 6f 72 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65 72 73 69 6f 6e 2d 74 6f ors..................(version-to
7d60 2d 6c 69 73 74 20 28 61 6e 64 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 72 65 67 65 78 70 20 -list.(and.(string-match.regexp.
7d80 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n)..............................
7da0 20 20 20 20 20 20 20 20 20 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 20 6e 29 29 29 29 29 ..........(match-string.1.n)))))
7dc0 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 76 20 28 76 65 72 73 69 6f 6e 2d ).........(when.(and.v.(version-
7de0 6c 69 73 74 2d 3c 3d 20 76 65 72 73 69 6f 6e 20 76 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 69 list-<=.version.v))...........(i
7e00 66 20 28 63 6c 2d 74 79 70 65 70 20 72 63 70 20 27 70 61 63 6b 61 67 65 2d 67 69 74 2d 72 65 63 f.(cl-typep.rcp.'package-git-rec
7e20 69 70 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 74 61 67 20 28 63 6f ipe)...............(setq.tag.(co
7e40 6e 63 61 74 20 22 72 65 66 73 2f 74 61 67 73 2f 22 20 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 ncat."refs/tags/".n))...........
7e60 20 20 28 73 65 74 71 20 74 61 67 20 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 ..(setq.tag.n))...........(setq.
7e80 76 65 72 73 69 6f 6e 20 76 29 29 29 29 0a 20 20 20 20 28 61 6e 64 20 74 61 67 0a 20 20 20 20 20 version.v)))).....(and.tag......
7ea0 20 20 20 20 28 70 63 61 73 65 2d 6c 65 74 20 28 28 60 28 2c 68 61 73 68 20 2c 74 69 6d 65 29 20 ....(pcase-let.((`(,hash.,time).
7ec0 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 73 65 6c 65 63 74 2d 63 6f 6d 6d 69 74 20 72 63 (package-build--select-commit.rc
7ee0 70 20 74 61 67 20 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 68 61 73 68 p.tag.t)))............(list.hash
7f00 20 74 69 6d 65 20 28 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 2d 6a 6f 69 6e 20 76 65 72 73 .time.(package-version-join.vers
7f20 69 6f 6e 29 29 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 65 ion))))))..(cl-defmethod.package
7f40 2d 62 75 69 6c 64 2d 2d 6c 69 73 74 2d 74 61 67 73 20 28 28 5f 72 63 70 20 70 61 63 6b 61 67 65 -build--list-tags.((_rcp.package
7f60 2d 67 69 74 2d 72 65 63 69 70 65 29 29 0a 20 20 28 70 72 6f 63 65 73 73 2d 6c 69 6e 65 73 20 22 -git-recipe))...(process-lines."
7f80 67 69 74 22 20 22 74 61 67 22 20 22 2d 2d 6c 69 73 74 22 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 git"."tag"."--list"))..(cl-defme
7fa0 74 68 6f 64 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6c 69 73 74 2d 74 61 67 73 20 28 28 thod.package-build--list-tags.((
7fc0 5f 72 63 70 20 70 61 63 6b 61 67 65 2d 68 67 2d 72 65 63 69 70 65 29 29 0a 20 20 28 70 72 6f 63 _rcp.package-hg-recipe))...(proc
7fe0 65 73 73 2d 6c 69 6e 65 73 20 22 68 67 22 20 22 74 61 67 73 22 20 22 2d 2d 71 75 69 65 74 22 29 ess-lines."hg"."tags"."--quiet")
8000 29 0a 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 )..(define-obsolete-function-ali
8020 61 73 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 67 65 74 2d 74 61 67 2d 76 65 72 73 69 6f as.'package-build-get-tag-versio
8040 6e 0a 20 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 61 67 2d 76 65 72 73 69 6f 6e 20 22 n...'package-build-tag-version."
8060 50 61 63 6b 61 67 65 2d 42 75 69 6c 64 20 35 2e 30 2e 30 22 29 0a 0a 3b 3b 3b 3b 20 48 65 61 64 Package-Build.5.0.0")..;;;;.Head
8080 65 72 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 68 65 61 64 65 72 2d er..(defun.package-build-header-
80a0 76 65 72 73 69 6f 6e 20 28 72 63 70 29 0a 20 20 22 52 65 74 75 72 6e 20 76 65 72 73 69 6f 6e 20 version.(rcp)..."Return.version.
80c0 73 70 65 63 69 66 69 65 64 20 69 6e 20 74 68 65 20 68 65 61 64 65 72 20 6f 66 20 74 68 65 20 6d specified.in.the.header.of.the.m
80e0 61 69 6e 20 6c 69 62 72 61 72 79 2e 0a 0a 57 61 6c 6b 20 74 68 65 20 68 69 73 74 6f 72 79 20 6f ain.library...Walk.the.history.o
8100 66 20 74 68 65 20 6d 61 69 6e 20 6c 69 62 72 61 72 79 20 75 6e 74 69 6c 20 61 20 63 6f 6d 6d 69 f.the.main.library.until.a.commi
8120 74 20 69 73 20 66 6f 75 6e 64 0a 77 68 69 63 68 20 63 68 61 6e 67 65 73 20 74 68 65 20 60 50 61 t.is.found.which.changes.the.`Pa
8140 63 6b 61 67 65 2d 56 65 72 73 69 6f 6e 27 20 6f 72 20 60 56 65 72 73 69 6f 6e 27 20 68 65 61 64 ckage-Version'.or.`Version'.head
8160 65 72 20 69 6e 20 74 68 65 0a 6d 61 69 6e 20 6c 69 62 72 61 72 79 20 74 6f 20 61 20 76 65 72 73 er.in.the.main.library.to.a.vers
8180 69 6f 6e 20 74 68 61 74 20 71 75 61 6c 69 66 69 65 73 20 61 73 20 61 20 72 65 6c 65 61 73 65 2c ion.that.qualifies.as.a.release,
81a0 20 69 67 6e 6f 72 69 6e 67 0a 61 6e 79 20 70 72 65 2d 72 65 6c 65 61 73 65 73 2e 0a 0a 52 65 74 .ignoring.any.pre-releases...Ret
81c0 75 72 6e 20 28 43 4f 4d 4d 49 54 2d 48 41 53 48 20 43 4f 4d 4d 49 54 54 45 52 2d 44 41 54 45 20 urn.(COMMIT-HASH.COMMITTER-DATE.
81e0 56 45 52 53 49 4f 4e 2d 53 54 52 49 4e 47 29 2e 22 0a 20 20 28 61 6e 64 2d 6c 65 74 2a 20 28 28 VERSION-STRING)."...(and-let*.((
8200 6c 69 62 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d 61 69 6e 2d 6c 69 62 72 61 72 79 lib.(package-build--main-library
8220 20 72 63 70 29 29 29 0a 20 20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 .rcp))).....(with-temp-buffer...
8240 20 20 20 20 28 6c 65 74 20 28 63 6f 6d 6d 69 74 20 64 61 74 65 20 76 65 72 73 69 6f 6e 29 0a 20 ....(let.(commit.date.version)..
8260 20 20 20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 .......(save-excursion..........
8280 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 69 6e 73 65 72 74 2d 76 65 72 73 69 6f 6e 2d .(package-build--insert-version-
82a0 68 65 61 64 65 72 2d 6c 6f 67 0a 20 20 20 20 20 20 20 20 20 20 20 72 63 70 20 28 66 69 6c 65 2d header-log............rcp.(file-
82c0 72 65 6c 61 74 69 76 65 2d 6e 61 6d 65 20 6c 69 62 29 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 relative-name.lib))).........(wh
82e0 69 6c 65 20 28 61 6e 64 20 28 6e 6f 74 20 76 65 72 73 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 ile.(and.(not.version)..........
8300 20 20 20 20 20 20 20 20 20 20 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 5e ...........(re-search-forward."^
8320 63 6f 6d 6d 69 74 20 5c 5c 28 5b 5e 20 5d 2b 5c 5c 29 20 5c 5c 28 2e 2b 5c 5c 29 22 20 6e 69 6c commit.\\([^.]+\\).\\(.+\\)".nil
8340 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6d 6d 69 74 20 28 6d 61 74 .t))...........(setq.commit.(mat
8360 63 68 2d 73 74 72 69 6e 67 20 31 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 64 61 ch-string.1))...........(setq.da
8380 74 65 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 32 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 te.(match-string.2))...........(
83a0 6c 65 74 20 28 28 65 6e 64 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 20 28 72 65 2d 73 65 let.((end.(save-excursion.(re-se
83c0 61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 5e 24 22 20 6e 69 6c 20 74 29 29 29 29 0a 20 20 20 20 arch-forward."^$".nil.t)))).....
83e0 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 ........(when.(re-search-forward
8400 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5e 5c 5c 2b 3b 3b 2a 20 2a 5c 5c ...................."^\\+;;*.*\\
8420 28 50 61 63 6b 61 67 65 2d 5c 5c 29 3f 56 65 72 73 69 6f 6e 3a 20 2a 5c 5c 28 2e 2b 5c 5c 29 22 (Package-\\)?Version:.*\\(.+\\)"
8440 20 65 6e 64 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 76 65 72 .end.t)...............(let.((ver
8460 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 32 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .(match-string.2))).............
8480 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 28 6e 6f 74 20 28 65 71 75 61 6c 20 76 65 72 20 22 ....(when.(and.(not.(equal.ver."
84a0 30 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0"))............................
84c0 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (string-match...................
84e0 20 20 20 20 20 20 20 20 20 20 22 5c 5c 60 5c 5c 28 5b 30 2d 39 5d 2b 5c 5c 29 5c 5c 28 5c 5c 2e .........."\\`\\([0-9]+\\)\\(\\.
8500 5b 30 2d 39 5d 2b 5c 5c 29 2a 5c 5c 27 22 20 76 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 [0-9]+\\)*\\'".ver))............
8520 20 20 20 20 20 20 20 28 73 65 74 71 20 76 65 72 73 69 6f 6e 20 76 65 72 29 29 29 29 0a 20 20 20 .......(setq.version.ver))))....
8540 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .........(when.end..............
8560 20 28 67 6f 74 6f 2d 63 68 61 72 20 65 6e 64 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 61 6e 64 .(goto-char.end)))).........(and
8580 20 76 65 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 63 6f 6d 6d .version..............(list.comm
85a0 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 74 6f it....................(string-to
85c0 2d 6e 75 6d 62 65 72 20 64 61 74 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -number.date)...................
85e0 20 28 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 2d 6a 6f 69 6e 20 28 76 65 72 73 69 6f 6e 2d .(package-version-join.(version-
8600 74 6f 2d 6c 69 73 74 20 76 65 72 73 69 6f 6e 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 to-list.version))))))))..(defun.
8620 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d 61 69 6e 2d 6c 69 62 72 61 72 79 20 28 72 63 70 package-build--main-library.(rcp
8640 29 0a 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d 61 74 63 68 2d 6c 69 62 72 61 72 )...(package-build--match-librar
8660 79 20 72 63 70 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d y.rcp))..(defun.package-build--m
8680 61 74 63 68 2d 6c 69 62 72 61 72 79 20 28 72 63 70 20 26 6f 70 74 69 6f 6e 61 6c 20 66 69 6c 65 atch-library.(rcp.&optional.file
86a0 6e 61 6d 65 29 0a 20 20 28 6c 65 74 20 28 28 6c 69 62 73 20 28 70 61 63 6b 61 67 65 2d 62 75 69 name)...(let.((libs.(package-bui
86c0 6c 64 2d 2d 6c 69 73 74 2d 6c 69 62 72 61 72 69 65 73 20 72 63 70 29 29 0a 20 20 20 20 20 20 20 ld--list-libraries.rcp))........
86e0 20 28 66 69 6c 65 6e 61 6d 65 20 28 6f 72 20 66 69 6c 65 6e 61 6d 65 20 28 63 6f 6e 63 61 74 20 .(filename.(or.filename.(concat.
8700 28 6f 72 65 66 20 72 63 70 20 6e 61 6d 65 29 20 22 2e 65 6c 22 29 29 29 29 0a 20 20 20 20 28 63 (oref.rcp.name).".el")))).....(c
8720 6f 6e 64 0a 20 20 20 20 20 28 28 63 61 72 20 28 6d 65 6d 62 65 72 20 28 63 6f 6e 63 61 74 20 22 ond......((car.(member.(concat."
8740 6c 69 73 70 2f 22 20 66 69 6c 65 6e 61 6d 65 29 20 6c 69 62 73 29 29 29 0a 20 20 20 20 20 28 28 lisp/".filename).libs)))......((
8760 63 61 72 20 28 6d 65 6d 62 65 72 20 66 69 6c 65 6e 61 6d 65 20 6c 69 62 73 29 29 29 0a 20 20 20 car.(member.filename.libs)))....
8780 20 20 28 28 63 6c 2d 66 69 6e 64 20 66 69 6c 65 6e 61 6d 65 20 6c 69 62 73 20 3a 74 65 73 74 20 ..((cl-find.filename.libs.:test.
87a0 23 27 65 71 75 61 6c 20 3a 6b 65 79 20 23 27 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f 6e 64 69 72 65 #'equal.:key.#'file-name-nondire
87c0 63 74 6f 72 79 29 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 ctory)))))..(cl-defmethod.packag
87e0 65 2d 62 75 69 6c 64 2d 2d 6c 69 73 74 2d 6c 69 62 72 61 72 69 65 73 20 28 28 5f 72 63 70 20 70 e-build--list-libraries.((_rcp.p
8800 61 63 6b 61 67 65 2d 67 69 74 2d 72 65 63 69 70 65 29 29 0a 20 20 28 70 72 6f 63 65 73 73 2d 6c ackage-git-recipe))...(process-l
8820 69 6e 65 73 20 22 67 69 74 22 20 22 6c 73 2d 66 69 6c 65 73 22 20 22 2a 2e 65 6c 22 29 29 0a 0a ines."git"."ls-files"."*.el"))..
8840 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6c 69 73 (cl-defmethod.package-build--lis
8860 74 2d 6c 69 62 72 61 72 69 65 73 20 28 28 5f 72 63 70 20 70 61 63 6b 61 67 65 2d 68 67 2d 72 65 t-libraries.((_rcp.package-hg-re
8880 63 69 70 65 29 29 0a 20 20 28 70 72 6f 63 65 73 73 2d 6c 69 6e 65 73 20 22 68 67 22 20 22 66 69 cipe))...(process-lines."hg"."fi
88a0 6c 65 73 22 20 22 2d 2d 69 6e 63 6c 75 64 65 22 20 22 2a 2a 2f 2a 2e 65 6c 22 29 29 0a 0a 28 63 les"."--include"."**/*.el"))..(c
88c0 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 69 6e 73 65 72 l-defmethod.package-build--inser
88e0 74 2d 76 65 72 73 69 6f 6e 2d 68 65 61 64 65 72 2d 6c 6f 67 0a 20 20 28 28 5f 72 63 70 20 70 61 t-version-header-log...((_rcp.pa
8900 63 6b 61 67 65 2d 67 69 74 2d 72 65 63 69 70 65 29 20 6c 69 62 29 0a 20 20 28 63 61 6c 6c 2d 70 ckage-git-recipe).lib)...(call-p
8920 72 6f 63 65 73 73 20 22 67 69 74 22 20 6e 69 6c 20 74 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 rocess."git".nil.t.nil..........
8940 20 20 20 20 20 20 20 22 6c 6f 67 22 20 22 2d 2d 66 69 72 73 74 2d 70 61 72 65 6e 74 22 20 22 2d ......."log"."--first-parent"."-
8960 2d 6e 6f 2d 72 65 6e 61 6d 65 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2d 2d -no-renames"................."--
8980 70 72 65 74 74 79 3d 66 6f 72 6d 61 74 3a 63 6f 6d 6d 69 74 20 25 48 20 25 63 64 22 20 22 2d 2d pretty=format:commit.%H.%cd"."--
89a0 64 61 74 65 3d 75 6e 69 78 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2d 4c 22 20 date=unix"................."-L".
89c0 28 66 6f 72 6d 61 74 20 22 2f 5e 3b 3b 2a 20 2a 5c 5c 28 50 61 63 6b 61 67 65 2d 5c 5c 29 5c 5c (format."/^;;*.*\\(Package-\\)\\
89e0 3f 56 65 72 73 69 6f 6e 3a 2f 2c 2b 31 3a 25 73 22 20 6c 69 62 29 29 29 0a 0a 28 63 6c 2d 64 65 ?Version:/,+1:%s".lib)))..(cl-de
8a00 66 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 69 6e 73 65 72 74 2d 76 65 fmethod.package-build--insert-ve
8a20 72 73 69 6f 6e 2d 68 65 61 64 65 72 2d 6c 6f 67 0a 20 20 28 28 5f 72 63 70 20 70 61 63 6b 61 67 rsion-header-log...((_rcp.packag
8a40 65 2d 68 67 2d 72 65 63 69 70 65 29 20 5f 6c 69 62 29 0a 20 20 28 63 61 6c 6c 2d 70 72 6f 63 65 e-hg-recipe)._lib)...(call-proce
8a60 73 73 20 22 68 67 22 20 6e 69 6c 20 74 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ss."hg".nil.t.nil...............
8a80 20 20 22 6c 6f 67 22 20 22 2d 2d 66 69 72 73 74 2d 70 61 72 65 6e 74 22 0a 20 20 20 20 20 20 20 .."log"."--first-parent"........
8aa0 20 20 20 20 20 20 20 20 20 22 2d 2d 74 65 6d 70 6c 61 74 65 22 20 22 63 6f 6d 6d 69 74 3a 20 7b ........."--template"."commit:.{
8ac0 6e 6f 64 65 7d 20 7b 64 61 74 65 7c 68 67 64 61 74 65 7d 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 node}.{date|hgdate}\n"..........
8ae0 20 20 20 20 20 20 20 29 29 20 3b 20 54 4f 44 4f 20 57 68 61 74 20 69 73 20 74 68 65 20 65 71 75 .......)).;.TODO.What.is.the.equ
8b00 69 76 61 6c 65 6e 74 20 6f 66 20 47 69 74 27 73 20 22 2d 4c 22 3f 0a 0a 3b 3b 3b 3b 20 4e 41 4d ivalent.of.Git's."-L"?..;;;;.NAM
8b20 45 2d 70 6b 67 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 70 6b 67 2d E-pkg..(defun.package-build-pkg-
8b40 76 65 72 73 69 6f 6e 20 28 72 63 70 29 0a 20 20 22 52 65 74 75 72 6e 20 76 65 72 73 69 6f 6e 20 version.(rcp)..."Return.version.
8b60 73 70 65 63 69 66 69 65 64 20 69 6e 20 74 68 65 20 5c 22 4e 41 4d 45 2d 70 6b 67 2e 65 6c 5c 22 specified.in.the.\"NAME-pkg.el\"
8b80 20 66 69 6c 65 2e 0a 52 65 74 75 72 6e 20 28 43 4f 4d 4d 49 54 2d 48 41 53 48 20 43 4f 4d 4d 49 .file..Return.(COMMIT-HASH.COMMI
8ba0 54 54 45 52 2d 44 41 54 45 20 56 45 52 53 49 4f 4e 2d 53 54 52 49 4e 47 29 2e 22 0a 20 20 28 61 TTER-DATE.VERSION-STRING)."...(a
8bc0 6e 64 2d 6c 65 74 2a 20 28 28 66 69 6c 65 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 70 nd-let*.((file.(package-build--p
8be0 6b 67 66 69 6c 65 20 72 63 70 29 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 72 65 67 65 78 70 20 kgfile.rcp))).....(let.((regexp.
8c00 28 6f 72 20 28 6f 72 65 66 20 72 63 70 20 76 65 72 73 69 6f 6e 2d 72 65 67 65 78 70 29 20 70 61 (or.(oref.rcp.version-regexp).pa
8c20 63 6b 61 67 65 2d 62 75 69 6c 64 2d 76 65 72 73 69 6f 6e 2d 72 65 67 65 78 70 29 29 0a 20 20 20 ckage-build-version-regexp))....
8c40 20 20 20 20 20 20 20 63 6f 6d 6d 69 74 20 64 61 74 65 20 76 65 72 73 69 6f 6e 29 0a 20 20 20 20 .......commit.date.version).....
8c60 20 20 28 63 61 74 63 68 20 27 62 65 66 6f 72 65 2d 6c 61 74 65 73 74 0a 20 20 20 20 20 20 20 20 ..(catch.'before-latest.........
8c80 28 70 63 61 73 65 2d 64 6f 6c 69 73 74 20 28 60 28 2c 63 20 2c 64 29 20 28 70 61 63 6b 61 67 65 (pcase-dolist.(`(,c.,d).(package
8ca0 2d 62 75 69 6c 64 2d 2d 70 6b 67 66 69 6c 65 2d 63 6f 6d 6d 69 74 73 20 72 63 70 20 66 69 6c 65 -build--pkgfile-commits.rcp.file
8cc0 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 ))...........(with-temp-buffer..
8ce0 20 20 20 20 20 20 20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 ...........(save-excursion......
8d00 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 69 6e 73 65 72 74 2d .........(package-build--insert-
8d20 70 6b 67 66 69 6c 65 20 72 63 70 20 63 20 66 69 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 pkgfile.rcp.c.file))............
8d40 20 28 77 68 65 6e 2d 6c 65 74 2a 20 28 28 6e 20 28 69 67 6e 6f 72 65 2d 65 72 72 6f 72 73 20 28 .(when-let*.((n.(ignore-errors.(
8d60 6e 74 68 20 32 20 28 72 65 61 64 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 29 29 nth.2.(read.(current-buffer)))))
8d80 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 20 28 69 67 6e .........................(v.(ign
8da0 6f 72 65 2d 65 72 72 6f 72 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ore-errors......................
8dc0 20 20 20 20 20 20 20 20 28 76 65 72 73 69 6f 6e 2d 74 6f 2d 6c 69 73 74 0a 20 20 20 20 20 20 20 ........(version-to-list........
8de0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 28 73 74 72 .......................(and.(str
8e00 69 6e 67 2d 6d 61 74 63 68 20 72 65 67 65 78 70 20 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ing-match.regexp.n).............
8e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 55 73 65 20 6d 61 .......................;;.Use.ma
8e40 74 63 68 2d 67 72 6f 75 70 20 30 2c 20 6e 6f 74 20 31 2c 20 62 65 63 61 75 73 65 20 69 6e 0a 20 tch-group.0,.not.1,.because.in..
8e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
8e80 20 20 3b 3b 20 74 68 69 73 20 66 69 6c 65 20 61 20 76 65 72 73 69 6f 6e 20 73 74 72 69 6e 67 20 ..;;.this.file.a.version.string.
8ea0 77 69 74 68 6f 75 74 20 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 without.a.......................
8ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 70 72 65 66 69 78 20 69 73 20 65 78 70 65 63 74 .............;;.prefix.is.expect
8ee0 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ed..............................
8f00 20 20 20 20 20 20 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 30 20 6e 29 29 29 29 29 29 0a 20 .......(match-string.0.n))))))..
8f20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 76 65 72 73 69 6f 6e 20 .............(when.(and.version.
8f40 28 6e 6f 74 20 28 65 71 75 61 6c 20 76 20 76 65 72 73 69 6f 6e 29 29 29 0a 20 20 20 20 20 20 20 (not.(equal.v.version)))........
8f60 20 20 20 20 20 20 20 20 20 28 74 68 72 6f 77 20 27 62 65 66 6f 72 65 2d 6c 61 74 65 73 74 20 6e .........(throw.'before-latest.n
8f80 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6d 6d 69 74 20 il))...............(setq.commit.
8fa0 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 64 61 74 65 20 64 29 0a 20 c)...............(setq.date.d)..
8fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 76 65 72 73 69 6f 6e 20 76 29 29 29 29 .............(setq.version.v))))
8fe0 29 0a 20 20 20 20 20 20 28 61 6e 64 20 76 65 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 ).......(and.version............
9000 28 6c 69 73 74 20 63 6f 6d 6d 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 (list.commit..................(s
9020 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20 64 61 74 65 29 0a 20 20 20 20 20 20 20 20 20 20 tring-to-number.date)...........
9040 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 2d 6a 6f 69 6e 20 76 65 72 .......(package-version-join.ver
9060 73 69 6f 6e 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 sion))))))..(defun.package-build
9080 2d 2d 70 6b 67 66 69 6c 65 20 28 72 63 70 29 0a 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 --pkgfile.(rcp)...(package-build
90a0 2d 2d 6d 61 74 63 68 2d 6c 69 62 72 61 72 79 20 72 63 70 20 28 63 6f 6e 63 61 74 20 28 6f 72 65 --match-library.rcp.(concat.(ore
90c0 66 20 72 63 70 20 6e 61 6d 65 29 20 22 2d 70 6b 67 2e 65 6c 22 29 29 29 0a 0a 28 63 6c 2d 64 65 f.rcp.name)."-pkg.el")))..(cl-de
90e0 66 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 70 6b 67 66 69 6c 65 2d 63 fmethod.package-build--pkgfile-c
9100 6f 6d 6d 69 74 73 0a 20 20 28 28 5f 72 63 70 20 70 61 63 6b 61 67 65 2d 67 69 74 2d 72 65 63 69 ommits...((_rcp.package-git-reci
9120 70 65 29 20 66 69 6c 65 29 0a 20 20 28 6d 61 70 63 61 72 20 28 6c 61 6d 62 64 61 20 28 6c 69 6e pe).file)...(mapcar.(lambda.(lin
9140 65 29 20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67 20 6c 69 6e 65 20 22 20 22 29 29 0a 20 20 20 20 e).(split-string.line.".")).....
9160 20 20 20 20 20 20 28 70 72 6f 63 65 73 73 2d 6c 69 6e 65 73 20 22 67 69 74 22 20 22 6c 6f 67 22 ......(process-lines."git"."log"
9180 20 22 2d 2d 66 69 72 73 74 2d 70 61 72 65 6e 74 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ."--first-parent"...............
91a0 20 20 20 20 20 20 20 20 20 20 20 22 2d 2d 70 72 65 74 74 79 3d 66 6f 72 6d 61 74 3a 25 48 20 25 ..........."--pretty=format:%H.%
91c0 63 64 22 20 22 2d 2d 64 61 74 65 3d 75 6e 69 78 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 cd"."--date=unix"...............
91e0 20 20 20 20 20 20 20 20 20 20 20 22 2d 2d 22 20 66 69 6c 65 29 29 29 0a 0a 28 63 6c 2d 64 65 66 ..........."--".file)))..(cl-def
9200 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 70 6b 67 66 69 6c 65 2d 63 6f method.package-build--pkgfile-co
9220 6d 6d 69 74 73 0a 20 20 28 28 5f 72 63 70 20 70 61 63 6b 61 67 65 2d 68 67 2d 72 65 63 69 70 65 mmits...((_rcp.package-hg-recipe
9240 29 20 66 69 6c 65 29 0a 20 20 28 6d 61 70 63 61 72 20 28 6c 61 6d 62 64 61 20 28 6c 69 6e 65 29 ).file)...(mapcar.(lambda.(line)
9260 20 28 73 65 71 2d 74 61 6b 65 20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67 20 6c 69 6e 65 20 22 20 .(seq-take.(split-string.line.".
9280 22 29 20 32 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 63 65 73 73 2d 6c 69 6e 65 73 20 ").2))...........(process-lines.
92a0 22 68 67 22 20 22 6c 6f 67 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 "hg"."log"......................
92c0 20 20 20 20 22 2d 2d 74 65 6d 70 6c 61 74 65 22 20 22 7b 6e 6f 64 65 7d 20 7b 64 61 74 65 7c 68 ...."--template"."{node}.{date|h
92e0 67 64 61 74 65 7d 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 gdate}\n".......................
9300 20 20 20 22 2d 2d 22 20 66 69 6c 65 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 ..."--".file)))..(cl-defmethod.p
9320 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 69 6e 73 65 72 74 2d 70 6b 67 66 69 6c 65 0a 20 20 28 ackage-build--insert-pkgfile...(
9340 28 5f 72 63 70 20 70 61 63 6b 61 67 65 2d 67 69 74 2d 72 65 63 69 70 65 29 20 63 6f 6d 6d 69 74 (_rcp.package-git-recipe).commit
9360 20 66 69 6c 65 29 0a 20 20 28 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 22 67 69 74 22 20 6e 69 6c .file)...(call-process."git".nil
9380 20 74 20 6e 69 6c 20 22 73 68 6f 77 22 20 28 63 6f 6e 63 61 74 20 63 6f 6d 6d 69 74 20 22 3a 22 .t.nil."show".(concat.commit.":"
93a0 20 66 69 6c 65 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 65 2d .file)))..(cl-defmethod.package-
93c0 62 75 69 6c 64 2d 2d 69 6e 73 65 72 74 2d 70 6b 67 66 69 6c 65 0a 20 20 28 28 5f 72 63 70 20 70 build--insert-pkgfile...((_rcp.p
93e0 61 63 6b 61 67 65 2d 68 67 2d 72 65 63 69 70 65 29 20 63 6f 6d 6d 69 74 20 66 69 6c 65 29 0a 20 ackage-hg-recipe).commit.file)..
9400 20 28 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 22 68 67 22 20 6e 69 6c 20 74 20 6e 69 6c 20 22 63 .(call-process."hg".nil.t.nil."c
9420 61 74 22 20 22 2d 72 22 20 63 6f 6d 6d 69 74 20 66 69 6c 65 29 29 0a 0a 3b 3b 3b 3b 20 54 69 6d at"."-r".commit.file))..;;;;.Tim
9440 65 73 74 61 6d 70 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 69 6d estamp..(defun.package-build-tim
9460 65 73 74 61 6d 70 2d 76 65 72 73 69 6f 6e 20 28 72 63 70 29 0a 20 20 22 44 65 74 65 72 6d 69 6e estamp-version.(rcp)..."Determin
9480 65 20 74 69 6d 65 73 74 61 6d 70 20 76 65 72 73 69 6f 6e 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e e.timestamp.version.correspondin
94a0 67 20 74 6f 20 6c 61 74 65 73 74 20 72 65 6c 65 76 61 6e 74 20 63 6f 6d 6d 69 74 20 66 6f 72 20 g.to.latest.relevant.commit.for.
94c0 52 43 50 2e 0a 52 65 74 75 72 6e 20 28 43 4f 4d 4d 49 54 2d 48 41 53 48 20 43 4f 4d 4d 49 54 54 RCP..Return.(COMMIT-HASH.COMMITT
94e0 45 52 2d 44 41 54 45 20 56 45 52 53 49 4f 4e 2d 53 54 52 49 4e 47 29 2c 20 77 68 65 72 65 0a 56 ER-DATE.VERSION-STRING),.where.V
9500 45 52 53 49 4f 4e 2d 53 54 52 49 4e 47 20 68 61 73 20 74 68 65 20 66 6f 72 6d 61 74 20 5c 22 25 ERSION-STRING.has.the.format.\"%
9520 59 25 6d 25 64 2e 25 48 25 4d 5c 22 2e 22 0a 20 20 28 70 63 61 73 65 2d 6c 65 74 20 28 28 60 28 Y%m%d.%H%M\"."...(pcase-let.((`(
9540 2c 68 61 73 68 20 2c 74 69 6d 65 29 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 74 69 6d ,hash.,time).(package-build--tim
9560 65 73 74 61 6d 70 2d 76 65 72 73 69 6f 6e 20 72 63 70 29 29 29 0a 20 20 20 20 28 6c 69 73 74 20 estamp-version.rcp))).....(list.
9580 68 61 73 68 20 74 69 6d 65 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 65 20 72 65 6d 6f 76 65 hash.time...........;;.We.remove
95a0 20 7a 65 72 6f 2d 70 61 64 64 69 6e 67 20 6f 66 20 74 68 65 20 48 48 20 70 6f 72 74 69 6f 6e 2c .zero-padding.of.the.HH.portion,
95c0 20 61 73 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 61 74 20 69 73 20 6c 6f 73 74 20 77 68 .as...........;;.that.is.lost.wh
95e0 65 6e 20 73 74 6f 72 65 64 20 69 6e 20 61 72 63 68 69 76 65 2d 63 6f 6e 74 65 6e 74 73 2e 0a 20 en.stored.in.archive-contents...
9600 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 28 66 6f 72 6d 61 74 2d 74 69 6d 65 2d 73 74 .........(concat.(format-time-st
9620 72 69 6e 67 20 22 25 59 25 6d 25 64 2e 22 20 74 69 6d 65 20 74 29 0a 20 20 20 20 20 20 20 20 20 ring."%Y%m%d.".time.t)..........
9640 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 25 64 22 20 28 73 74 72 69 6e 67 2d 74 6f .........(format."%d".(string-to
9660 2d 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -number.........................
9680 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 2d 74 69 6d 65 2d 73 74 72 69 6e 67 20 22 25 48 25 ........(format-time-string."%H%
96a0 4d 22 20 74 69 6d 65 20 74 29 29 29 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 M".time.t)))))))..(cl-defmethod.
96c0 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 74 69 6d 65 73 74 61 6d 70 2d 76 65 72 73 69 6f 6e package-build--timestamp-version
96e0 20 28 28 72 63 70 20 70 61 63 6b 61 67 65 2d 67 69 74 2d 72 65 63 69 70 65 29 29 0a 20 20 28 70 .((rcp.package-git-recipe))...(p
9700 63 61 73 65 2d 6c 65 74 2a 0a 20 20 20 20 20 20 28 28 63 6f 6d 6d 69 74 20 28 6f 72 65 66 20 72 case-let*.......((commit.(oref.r
9720 63 70 20 63 6f 6d 6d 69 74 29 29 0a 20 20 20 20 20 20 20 28 62 72 61 6e 63 68 20 28 6f 72 65 66 cp.commit))........(branch.(oref
9740 20 72 63 70 20 62 72 61 6e 63 68 29 29 0a 20 20 20 20 20 20 20 28 62 72 61 6e 63 68 20 28 61 6e .rcp.branch))........(branch.(an
9760 64 20 62 72 61 6e 63 68 20 28 63 6f 6e 63 61 74 20 22 6f 72 69 67 69 6e 2f 22 20 62 72 61 6e 63 d.branch.(concat."origin/".branc
9780 68 29 29 29 0a 20 20 20 20 20 20 20 28 72 65 76 20 28 6f 72 20 63 6f 6d 6d 69 74 20 62 72 61 6e h)))........(rev.(or.commit.bran
97a0 63 68 20 22 6f 72 69 67 69 6e 2f 48 45 41 44 22 29 29 0a 20 20 20 20 20 20 20 28 60 28 2c 72 65 ch."origin/HEAD"))........(`(,re
97c0 76 2d 68 61 73 68 20 2c 72 65 76 2d 74 69 6d 65 29 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 v-hash.,rev-time).(package-build
97e0 2d 2d 73 65 6c 65 63 74 2d 63 6f 6d 6d 69 74 20 72 63 70 20 72 65 76 20 63 6f 6d 6d 69 74 29 29 --select-commit.rcp.rev.commit))
9800 0a 20 20 20 20 20 20 20 28 60 28 2c 74 61 67 2d 68 61 73 68 20 2c 74 61 67 2d 74 69 6d 65 29 20 ........(`(,tag-hash.,tag-time).
9820 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 61 67 2d 76 65 72 73 69 6f 6e 20 72 63 70 29 29 (package-build-tag-version.rcp))
9840 29 0a 20 20 20 20 3b 3b 20 49 66 20 74 68 65 20 6c 61 74 65 73 74 20 63 6f 6d 6d 69 74 20 74 68 ).....;;.If.the.latest.commit.th
9860 61 74 20 74 6f 75 63 68 65 73 20 61 20 72 65 6c 65 76 61 6e 74 20 66 69 6c 65 20 69 73 20 61 6e at.touches.a.relevant.file.is.an
9880 20 61 6e 63 65 73 74 6f 72 20 6f 66 0a 20 20 20 20 3b 3b 20 74 68 65 20 6c 61 74 65 73 74 20 74 .ancestor.of.....;;.the.latest.t
98a0 61 67 67 65 64 20 72 65 6c 65 61 73 65 20 61 6e 64 20 74 68 65 20 74 61 67 20 69 73 20 72 65 61 agged.release.and.the.tag.is.rea
98c0 63 68 61 62 6c 65 20 66 72 6f 6d 20 6f 72 69 67 69 6e 2f 48 45 41 44 0a 20 20 20 20 3b 3b 20 28 chable.from.origin/HEAD.....;;.(
98e0 69 2e 65 2e 2c 20 69 74 20 69 73 6e 27 74 20 6f 6e 20 61 20 73 65 70 61 72 61 74 65 20 72 65 6c i.e.,.it.isn't.on.a.separate.rel
9900 65 61 73 65 20 62 72 61 6e 63 68 29 20 74 68 65 6e 20 75 73 65 20 74 68 65 20 74 61 67 67 65 64 ease.branch).then.use.the.tagged
9920 0a 20 20 20 20 3b 3b 20 72 65 6c 65 61 73 65 2e 20 20 53 6e 61 70 73 68 6f 74 73 20 73 68 6f 75 .....;;.release...Snapshots.shou
9940 6c 64 20 6e 6f 74 20 62 65 20 6f 6c 64 65 72 20 74 68 61 6e 20 74 68 65 20 6c 61 74 65 73 74 20 ld.not.be.older.than.the.latest.
9960 72 65 6c 65 61 73 65 2e 0a 20 20 20 20 28 69 66 20 28 61 6e 64 20 74 61 67 2d 68 61 73 68 0a 20 release......(if.(and.tag-hash..
9980 20 20 20 20 20 20 20 20 20 20 20 20 28 7a 65 72 6f 70 20 28 63 61 6c 6c 2d 70 72 6f 63 65 73 73 ............(zerop.(call-process
99a0 20 22 67 69 74 22 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ."git".nil.nil.nil..............
99c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 6d 65 72 67 65 2d 62 61 73 65 ....................."merge-base
99e0 22 20 22 2d 2d 69 73 2d 61 6e 63 65 73 74 6f 72 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 "."--is-ancestor"...............
9a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 76 2d 68 61 73 68 20 74 61 67 ....................rev-hash.tag
9a20 2d 68 61 73 68 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 7a 65 72 6f 70 20 28 63 61 6c -hash))..............(zerop.(cal
9a40 6c 2d 70 72 6f 63 65 73 73 20 22 67 69 74 22 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 0a 20 20 20 20 l-process."git".nil.nil.nil.....
9a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 6d .............................."m
9a80 65 72 67 65 2d 62 61 73 65 22 20 22 2d 2d 69 73 2d 61 6e 63 65 73 74 6f 72 22 0a 20 20 20 20 20 erge-base"."--is-ancestor"......
9aa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 61 67 .............................tag
9ac0 2d 68 61 73 68 20 72 65 76 29 29 29 0a 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 74 61 67 2d 68 -hash.rev))).........(list.tag-h
9ae0 61 73 68 20 74 61 67 2d 74 69 6d 65 29 0a 20 20 20 20 20 20 28 6c 69 73 74 20 72 65 76 2d 68 61 ash.tag-time).......(list.rev-ha
9b00 73 68 20 72 65 76 2d 74 69 6d 65 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 sh.rev-time))))..(cl-defmethod.p
9b20 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 74 69 6d 65 73 74 61 6d 70 2d 76 65 72 73 69 6f 6e 20 ackage-build--timestamp-version.
9b40 28 28 72 63 70 20 70 61 63 6b 61 67 65 2d 68 67 2d 72 65 63 69 70 65 29 29 0a 20 20 28 6c 65 74 ((rcp.package-hg-recipe))...(let
9b60 2a 20 28 28 63 6f 6d 6d 69 74 20 28 6f 72 65 66 20 72 63 70 20 63 6f 6d 6d 69 74 29 29 0a 20 20 *.((commit.(oref.rcp.commit))...
9b80 20 20 20 20 20 20 20 28 62 72 61 6e 63 68 20 28 6f 72 20 28 6f 72 65 66 20 72 63 70 20 62 72 61 .......(branch.(or.(oref.rcp.bra
9ba0 6e 63 68 29 20 22 64 65 66 61 75 6c 74 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 72 65 76 20 28 nch)."default"))..........(rev.(
9bc0 66 6f 72 6d 61 74 20 22 73 6f 72 74 28 61 6e 63 65 73 74 6f 72 73 28 25 73 29 2c 20 2d 72 65 76 format."sort(ancestors(%s),.-rev
9be0 29 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 63 6f 6d )".......................(or.com
9c00 6d 69 74 20 28 66 6f 72 6d 61 74 20 22 6d 61 78 28 62 72 61 6e 63 68 28 25 73 29 29 22 20 62 72 mit.(format."max(branch(%s))".br
9c20 61 6e 63 68 29 29 29 29 29 0a 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 73 65 anch))))).....(package-build--se
9c40 6c 65 63 74 2d 63 6f 6d 6d 69 74 20 72 63 70 20 72 65 76 20 6e 69 6c 29 29 29 0a 0a 28 64 65 66 lect-commit.rcp.rev.nil)))..(def
9c60 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 70 61 63 ine-obsolete-function-alias.'pac
9c80 6b 61 67 65 2d 62 75 69 6c 64 2d 67 65 74 2d 73 6e 61 70 73 68 6f 74 2d 76 65 72 73 69 6f 6e 0a kage-build-get-snapshot-version.
9ca0 20 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 73 6e 61 70 73 68 6f 74 2d 76 65 72 73 69 6f ..'package-build-snapshot-versio
9cc0 6e 20 22 50 61 63 6b 61 67 65 2d 42 75 69 6c 64 20 35 2e 30 2e 30 22 29 0a 0a 3b 3b 3b 3b 20 52 n."Package-Build.5.0.0")..;;;;.R
9ce0 65 6c 65 61 73 65 2b 54 69 6d 65 73 74 61 6d 70 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 elease+Timestamp..(defun.package
9d00 2d 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2b 74 69 6d 65 73 74 61 6d 70 2d 76 65 72 73 69 6f 6e -build-release+timestamp-version
9d20 20 28 72 63 70 29 0a 20 20 22 44 65 74 65 72 6d 69 6e 65 20 76 65 72 73 69 6f 6e 20 73 74 72 69 .(rcp)..."Determine.version.stri
9d40 6e 67 20 69 6e 20 74 68 65 20 5c 22 52 45 4c 45 41 53 45 2e 30 2e 54 49 4d 45 53 54 41 4d 50 5c ng.in.the.\"RELEASE.0.TIMESTAMP\
9d60 22 20 66 6f 72 6d 61 74 20 66 6f 72 20 52 43 50 2e 0a 0a 2a 45 78 70 65 72 69 6d 65 6e 74 61 6c ".format.for.RCP...*Experimental
9d80 2a 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 73 74 69 6c 6c 20 73 75 62 6a 65 63 74 *.This.function.is.still.subject
9da0 20 74 6f 20 63 68 61 6e 67 65 2e 0a 0a 55 73 65 20 60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d .to.change...Use.`package-build-
9dc0 72 65 6c 65 61 73 65 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 73 27 20 74 6f 20 64 65 release-version-functions'.to.de
9de0 74 65 72 6d 69 6e 65 0a 52 45 4c 45 41 53 45 2e 20 20 54 49 4d 45 53 54 41 4d 50 20 69 73 20 74 termine.RELEASE...TIMESTAMP.is.t
9e00 68 65 20 43 4f 4d 4d 49 54 54 45 52 2d 44 41 54 45 20 66 6f 72 20 74 68 65 20 69 64 65 6e 74 69 he.COMMITTER-DATE.for.the.identi
9e20 66 69 65 64 0a 6c 61 73 74 20 72 65 6c 65 76 61 6e 74 20 63 6f 6d 6d 69 74 2c 20 75 73 69 6e 67 fied.last.relevant.commit,.using
9e40 20 74 68 65 20 66 6f 72 6d 61 74 20 5c 22 25 59 25 6d 25 64 2e 25 48 25 4d 5c 22 2e 0a 0a 52 65 .the.format.\"%Y%m%d.%H%M\"...Re
9e60 74 75 72 6e 20 28 43 4f 4d 4d 49 54 2d 48 41 53 48 20 43 4f 4d 4d 49 54 54 45 52 2d 44 41 54 45 turn.(COMMIT-HASH.COMMITTER-DATE
9e80 20 56 45 52 53 49 4f 4e 2d 53 54 52 49 4e 47 29 2e 22 0a 20 20 28 70 63 61 73 65 2d 6c 65 74 2a .VERSION-STRING)."...(pcase-let*
9ea0 0a 20 20 20 20 20 20 28 28 60 28 2c 73 63 6f 6d 6d 69 74 20 2c 73 74 69 6d 65 20 2c 73 76 65 72 .......((`(,scommit.,stime.,sver
9ec0 73 69 6f 6e 29 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 69 6d 65 73 74 61 6d 70 2d 76 sion).(package-build-timestamp-v
9ee0 65 72 73 69 6f 6e 20 72 63 70 29 29 0a 20 20 20 20 20 20 20 28 60 28 2c 72 63 6f 6d 6d 69 74 20 ersion.rcp))........(`(,rcommit.
9f00 2c 72 74 69 6d 65 20 2c 72 76 65 72 73 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 28 72 75 6e 2d 68 ,rtime.,rversion).........(run-h
9f20 6f 6f 6b 2d 77 69 74 68 2d 61 72 67 73 2d 75 6e 74 69 6c 2d 73 75 63 63 65 73 73 0a 20 20 20 20 ook-with-args-until-success.....
9f40 20 20 20 20 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2d 76 65 72 73 .....'package-build-release-vers
9f60 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 73 20 72 63 70 29 29 0a 20 20 20 20 20 20 20 28 61 68 65 61 ion-functions.rcp))........(ahea
9f80 64 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 6f 6d 6d 69 74 2d 63 6f 75 6e 74 20 72 d.(package-build--commit-count.r
9fa0 63 70 20 73 63 6f 6d 6d 69 74 20 72 63 6f 6d 6d 69 74 29 29 29 0a 20 20 20 20 28 63 6f 6e 64 0a cp.scommit.rcommit))).....(cond.
9fc0 20 20 20 20 20 28 28 3e 20 61 68 65 61 64 20 30 29 0a 20 20 20 20 20 20 28 6c 69 73 74 20 73 63 .....((>.ahead.0).......(list.sc
9fe0 6f 6d 6d 69 74 20 73 74 69 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 ommit.stime.............(package
a000 2d 76 65 72 73 69 6f 6e 2d 6a 6f 69 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 63 6f 6e -version-join..............(ncon
a020 63 20 28 69 66 20 72 76 65 72 73 69 6f 6e 20 28 76 65 72 73 69 6f 6e 2d 74 6f 2d 6c 69 73 74 20 c.(if.rversion.(version-to-list.
a040 72 76 65 72 73 69 6f 6e 29 20 28 6c 69 73 74 20 30 20 30 29 29 0a 20 20 20 20 20 20 20 20 20 20 rversion).(list.0.0))...........
a060 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........(list.0)..............
a080 20 20 20 20 20 20 20 28 76 65 72 73 69 6f 6e 2d 74 6f 2d 6c 69 73 74 20 73 76 65 72 73 69 6f 6e .......(version-to-list.sversion
a0a0 29 29 29 29 29 0a 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 3b 3b 20 54 68 65 20 6c 61 74 65 73 )))))......(t.......;;.The.lates
a0c0 74 20 63 6f 6d 6d 69 74 2c 20 77 68 69 63 68 20 74 6f 75 63 68 65 64 20 61 20 72 65 6c 65 76 61 t.commit,.which.touched.a.releva
a0e0 6e 74 20 66 69 6c 65 2c 20 69 73 20 65 69 74 68 65 72 20 74 68 65 0a 20 20 20 20 20 20 3b 3b 20 nt.file,.is.either.the.......;;.
a100 6c 61 74 65 73 74 20 72 65 6c 65 61 73 65 20 69 74 73 65 6c 66 2c 20 6f 72 20 61 20 63 6f 6d 6d latest.release.itself,.or.a.comm
a120 69 74 20 62 65 66 6f 72 65 20 74 68 61 74 2e 20 20 44 69 73 74 72 69 62 75 74 65 20 74 68 65 0a it.before.that...Distribute.the.
a140 20 20 20 20 20 20 3b 3b 20 73 61 6d 65 20 63 6f 6d 6d 69 74 2f 72 65 6c 65 61 73 65 20 61 73 20 ......;;.same.commit/release.as.
a160 6f 6e 20 74 68 65 20 73 74 61 62 6c 65 20 63 68 61 6e 6e 65 6c 3b 20 61 73 20 69 74 20 77 6f 75 on.the.stable.channel;.as.it.wou
a180 6c 64 20 6e 6f 74 0a 20 20 20 20 20 20 3b 3b 20 6d 61 6b 65 20 73 65 6e 73 65 20 66 6f 72 20 74 ld.not.......;;.make.sense.for.t
a1a0 68 65 20 64 65 76 65 6c 6f 70 6d 65 6e 74 20 63 68 61 6e 6e 65 6c 20 74 6f 20 6c 61 67 20 62 65 he.development.channel.to.lag.be
a1c0 68 69 6e 64 20 74 68 65 20 6c 61 74 65 73 74 0a 20 20 20 20 20 20 3b 3b 20 72 65 6c 65 61 73 65 hind.the.latest.......;;.release
a1e0 2e 0a 20 20 20 20 20 20 28 6c 69 73 74 20 72 63 6f 6d 6d 69 74 20 72 74 69 6d 65 20 28 70 61 63 ........(list.rcommit.rtime.(pac
a200 6b 61 67 65 2d 76 65 72 73 69 6f 6e 2d 6a 6f 69 6e 20 72 76 65 72 73 69 6f 6e 29 29 29 29 29 29 kage-version-join.rversion))))))
a220 0a 0a 3b 3b 3b 3b 20 52 65 6c 65 61 73 65 2b 43 6f 75 6e 74 0a 0a 28 64 65 66 75 6e 20 70 61 63 ..;;;;.Release+Count..(defun.pac
a240 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2b 63 6f 75 6e 74 2d 76 65 72 73 69 6f 6e kage-build-release+count-version
a260 20 28 72 63 70 20 26 6f 70 74 69 6f 6e 61 6c 20 73 69 6e 67 6c 65 2d 63 6f 75 6e 74 29 0a 20 20 .(rcp.&optional.single-count)...
a280 22 44 65 74 65 72 6d 69 6e 65 20 76 65 72 73 69 6f 6e 20 73 74 72 69 6e 67 20 69 6e 20 74 68 65 "Determine.version.string.in.the
a2a0 20 5c 22 52 45 4c 45 41 53 45 2e 30 2e 43 4f 55 4e 54 5c 22 20 66 6f 72 6d 61 74 20 66 6f 72 20 .\"RELEASE.0.COUNT\".format.for.
a2c0 52 43 50 2e 0a 0a 2a 45 78 70 65 72 69 6d 65 6e 74 61 6c 2a 20 54 68 69 73 20 66 75 6e 63 74 69 RCP...*Experimental*.This.functi
a2e0 6f 6e 20 69 73 20 73 74 69 6c 6c 20 73 75 62 6a 65 63 74 20 74 6f 20 63 68 61 6e 67 65 2e 0a 0a on.is.still.subject.to.change...
a300 55 73 65 20 60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2d 76 65 72 73 69 Use.`package-build-release-versi
a320 6f 6e 2d 66 75 6e 63 74 69 6f 6e 73 27 20 74 6f 20 64 65 74 65 72 6d 69 6e 65 0a 52 45 4c 45 41 on-functions'.to.determine.RELEA
a340 53 45 2e 20 20 43 4f 55 4e 54 20 69 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 63 6f 6d 6d SE...COUNT.is.the.number.of.comm
a360 69 74 73 20 73 69 6e 63 65 20 52 45 4c 45 41 53 45 20 75 6e 74 69 6c 20 74 68 65 0a 6c 61 73 74 its.since.RELEASE.until.the.last
a380 20 72 65 6c 65 76 61 6e 74 20 63 6f 6d 6d 69 74 2e 20 20 49 66 20 52 45 4c 45 41 53 45 20 69 73 .relevant.commit...If.RELEASE.is
a3a0 20 74 68 65 20 73 61 6d 65 20 61 73 20 66 6f 72 20 74 68 65 20 6c 61 73 74 0a 73 6e 61 70 73 68 .the.same.as.for.the.last.snapsh
a3c0 6f 74 20 62 75 74 20 43 4f 55 4e 54 20 69 73 20 6e 6f 74 20 6c 61 72 67 65 72 20 74 68 61 6e 20 ot.but.COUNT.is.not.larger.than.
a3e0 66 6f 72 20 74 68 61 74 20 73 6e 61 70 73 68 6f 74 20 62 65 63 61 75 73 65 0a 68 69 73 74 6f 72 for.that.snapshot.because.histor
a400 79 20 77 61 73 20 72 65 77 72 69 74 74 65 6e 2c 20 74 68 65 6e 20 75 73 65 20 5c 22 52 45 4c 45 y.was.rewritten,.then.use.\"RELE
a420 41 53 45 2e 30 2e 4f 4c 44 43 4f 55 4e 54 2e 4e 45 57 43 4f 55 4e 54 5c 22 2e 0a 0a 52 65 74 75 ASE.0.OLDCOUNT.NEWCOUNT\"...Retu
a440 72 6e 20 28 43 4f 4d 4d 49 54 2d 48 41 53 48 20 43 4f 4d 4d 49 54 54 45 52 2d 44 41 54 45 20 56 rn.(COMMIT-HASH.COMMITTER-DATE.V
a460 45 52 53 49 4f 4e 2d 53 54 52 49 4e 47 29 2e 0a 5c 6e 28 66 6e 20 52 43 50 29 22 0a 20 20 28 70 ERSION-STRING)..\n(fn.RCP)"...(p
a480 63 61 73 65 2d 6c 65 74 2a 0a 20 20 20 20 20 20 3b 3b 20 47 65 74 20 74 68 65 20 63 6f 6d 6d 69 case-let*.......;;.Get.the.commi
a4a0 74 20 62 75 74 20 69 67 6e 6f 72 65 20 74 68 65 20 61 73 73 6f 63 69 61 74 65 64 20 74 69 6d 65 t.but.ignore.the.associated.time
a4c0 73 74 61 6d 70 2e 0a 20 20 20 20 20 20 28 28 60 28 2c 73 63 6f 6d 6d 69 74 20 2c 73 74 69 6d 65 stamp........((`(,scommit.,stime
a4e0 20 2c 5f 29 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 69 6d 65 73 74 61 6d 70 2d 76 65 .,_).(package-build-timestamp-ve
a500 72 73 69 6f 6e 20 72 63 70 29 29 0a 20 20 20 20 20 20 20 28 60 28 2c 72 63 6f 6d 6d 69 74 20 2c rsion.rcp))........(`(,rcommit.,
a520 72 74 69 6d 65 20 2c 76 65 72 73 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 28 72 75 6e 2d 68 6f 6f rtime.,version).........(run-hoo
a540 6b 2d 77 69 74 68 2d 61 72 67 73 2d 75 6e 74 69 6c 2d 73 75 63 63 65 73 73 0a 20 20 20 20 20 20 k-with-args-until-success.......
a560 20 20 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2d 76 65 72 73 69 6f ...'package-build-release-versio
a580 6e 2d 66 75 6e 63 74 69 6f 6e 73 20 72 63 70 29 29 0a 20 20 20 20 20 20 20 28 76 65 72 73 69 6f n-functions.rcp))........(versio
a5a0 6e 20 28 61 6e 64 20 72 63 6f 6d 6d 69 74 20 28 76 65 72 73 69 6f 6e 2d 74 6f 2d 6c 69 73 74 20 n.(and.rcommit.(version-to-list.
a5c0 76 65 72 73 69 6f 6e 29 29 29 0a 20 20 20 20 20 20 20 28 6d 65 72 67 65 2d 62 61 73 65 20 28 61 version)))........(merge-base.(a
a5e0 6e 64 20 72 63 6f 6d 6d 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nd.rcommit......................
a600 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d 65 72 67 65 2d 62 61 73 65 20 72 63 ...(package-build--merge-base.rc
a620 70 20 73 63 6f 6d 6d 69 74 20 72 63 6f 6d 6d 69 74 29 29 29 0a 20 20 20 20 20 20 20 28 61 68 65 p.scommit.rcommit)))........(ahe
a640 61 64 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 6f 6d 6d 69 74 2d 63 6f 75 6e 74 20 ad.(package-build--commit-count.
a660 72 63 70 20 73 63 6f 6d 6d 69 74 20 72 63 6f 6d 6d 69 74 29 29 29 0a 20 20 20 20 28 63 6f 6e 64 rcp.scommit.rcommit))).....(cond
a680 0a 20 20 20 20 20 28 28 6f 72 20 28 77 68 65 6e 20 28 6e 6f 74 20 72 63 6f 6d 6d 69 74 29 0a 20 ......((or.(when.(not.rcommit)..
a6a0 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4e 6f 20 61 70 70 72 6f 70 72 69 61 74 65 20 72 65 6c ...........;;.No.appropriate.rel
a6c0 65 61 73 65 20 64 65 74 65 63 74 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 ease.detected..............(setq
a6e0 20 76 65 72 73 69 6f 6e 20 28 6c 69 73 74 20 30 20 30 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 .version.(list.0.0))............
a700 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 6e 6f 74 20 6d 65 72 67 65 2d 62 .t)...........(when.(not.merge-b
a720 61 73 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 41 73 20 61 20 72 65 73 75 6c 74 20 ase).............;;.As.a.result.
a740 6f 66 20 62 75 74 63 68 65 72 65 64 20 68 69 73 74 6f 72 79 20 72 65 77 72 69 74 69 6e 67 2c 20 of.butchered.history.rewriting,.
a760 76 65 72 73 69 6f 6e 20 74 61 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73 68 61 72 version.tags.............;;.shar
a780 65 20 6e 6f 20 68 69 73 74 6f 72 79 20 61 74 20 61 6c 6c 20 77 69 74 68 20 77 68 61 74 20 69 73 e.no.history.at.all.with.what.is
a7a0 20 63 75 72 72 65 6e 74 6c 79 20 72 65 61 63 68 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 .currently.reachable............
a7c0 20 3b 3b 20 66 72 6f 6d 20 74 68 65 20 74 69 70 2e 20 20 43 6f 6d 70 6c 65 74 65 6c 79 20 69 67 .;;.from.the.tip...Completely.ig
a7e0 6e 6f 72 65 20 74 68 65 73 65 20 75 6e 72 65 61 63 68 61 62 6c 65 20 74 61 67 73 20 61 6e 64 0a nore.these.unreachable.tags.and.
a800 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 62 65 68 61 76 65 20 61 73 20 69 66 20 6e 6f 20 76 ............;;.behave.as.if.no.v
a820 65 72 73 69 6f 6e 20 74 61 67 73 20 65 78 69 73 74 65 64 20 61 74 20 61 6c 6c 2e 20 20 55 6e 66 ersion.tags.existed.at.all...Unf
a840 6f 72 74 75 6e 61 74 65 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 61 74 20 6d ortunately.............;;.that.m
a860 65 61 6e 73 20 74 68 61 74 20 75 73 65 72 73 2c 20 77 68 6f 20 68 61 76 65 20 69 6e 73 74 61 6c eans.that.users,.who.have.instal
a880 6c 65 64 20 61 20 73 6e 61 70 73 68 6f 74 20 62 61 73 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 led.a.snapshot.based............
a8a0 20 3b 3b 20 6f 6e 20 61 20 6e 6f 77 20 61 62 61 6e 64 6f 6e 65 64 20 74 61 67 2c 20 61 72 65 20 .;;.on.a.now.abandoned.tag,.are.
a8c0 73 74 75 63 6b 20 6f 6e 20 74 68 61 74 20 73 6e 61 70 73 68 6f 74 20 75 6e 74 69 6c 0a 20 20 20 stuck.on.that.snapshot.until....
a8e0 20 20 20 20 20 20 20 20 20 3b 3b 20 75 70 73 74 72 65 61 6d 20 63 72 65 61 74 65 73 20 61 20 6e .........;;.upstream.creates.a.n
a900 65 77 20 76 65 72 73 69 6f 6e 20 74 61 67 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 ew.version.tag..............(set
a920 71 20 76 65 72 73 69 6f 6e 20 28 6c 69 73 74 20 30 20 30 29 29 0a 20 20 20 20 20 20 20 20 20 20 q.version.(list.0.0))...........
a940 20 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 53 6e 61 70 73 68 6f 74 20 63 6f 6d 6d 69 ..t)...........;;.Snapshot.commi
a960 74 20 69 73 20 6e 65 77 65 72 20 74 68 61 6e 20 6c 61 74 65 73 74 20 72 65 6c 65 61 73 65 20 28 t.is.newer.than.latest.release.(
a980 6f 72 20 74 68 65 72 65 20 69 73 20 6e 6f 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 72 65 6c 65 or.there.is.no...........;;.rele
a9a0 61 73 65 29 2e 0a 20 20 20 20 20 20 20 20 20 20 28 3e 20 61 68 65 61 64 20 30 29 29 0a 20 20 20 ase)............(>.ahead.0))....
a9c0 20 20 20 28 6c 69 73 74 20 73 63 6f 6d 6d 69 74 20 73 74 69 6d 65 0a 20 20 20 20 20 20 20 20 20 ...(list.scommit.stime..........
a9e0 20 20 20 28 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 2d 6a 6f 69 6e 0a 20 20 20 20 20 20 20 ...(package-version-join........
aa00 20 20 20 20 20 20 28 61 70 70 65 6e 64 20 76 65 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 ......(append.version...........
aa20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ...........(list.0).............
aa40 20 20 20 20 20 20 20 20 20 3b 3b 20 28 54 68 69 73 20 61 72 67 75 6d 65 6e 74 20 2a 63 6f 75 6c .........;;.(This.argument.*coul
aa60 64 2a 20 62 65 20 75 73 65 64 20 62 79 20 61 20 77 72 61 70 70 65 72 2e 29 0a 20 20 20 20 20 20 d*.be.used.by.a.wrapper.).......
aa80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 73 69 6e 67 6c 65 2d 63 6f 75 6e 74 0a ...............(if.single-count.
aaa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 68 65 61 64 20 3b .........................ahead.;
aac0 20 50 72 65 74 65 6e 64 20 74 69 6d 65 2d 74 72 61 76 65 6c 20 64 6f 65 73 6e 27 74 20 68 61 70 .Pretend.time-travel.doesn't.hap
aae0 70 65 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 pen.........................(pac
ab00 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 65 6e 73 75 72 65 2d 63 6f 75 6e 74 2d 69 6e 63 72 65 61 73 kage-build--ensure-count-increas
ab20 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 63 70 20 28 63 e.........................rcp.(c
ab40 6f 70 79 2d 73 65 71 75 65 6e 63 65 20 76 65 72 73 69 6f 6e 29 20 61 68 65 61 64 29 29 29 29 29 opy-sequence.version).ahead)))))
ab60 29 0a 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 3b 3b 20 54 68 65 20 6c 61 74 65 73 74 20 63 6f )......(t.......;;.The.latest.co
ab80 6d 6d 69 74 2c 20 77 68 69 63 68 20 74 6f 75 63 68 65 64 20 61 20 72 65 6c 65 76 61 6e 74 20 66 mmit,.which.touched.a.relevant.f
aba0 69 6c 65 2c 20 69 73 20 65 69 74 68 65 72 20 74 68 65 0a 20 20 20 20 20 20 3b 3b 20 6c 61 74 65 ile,.is.either.the.......;;.late
abc0 73 74 20 72 65 6c 65 61 73 65 20 69 74 73 65 6c 66 2c 20 6f 72 20 61 20 63 6f 6d 6d 69 74 20 62 st.release.itself,.or.a.commit.b
abe0 65 66 6f 72 65 20 74 68 61 74 2e 20 20 44 69 73 74 72 69 62 75 74 65 20 74 68 65 0a 20 20 20 20 efore.that...Distribute.the.....
ac00 20 20 3b 3b 20 73 61 6d 65 20 63 6f 6d 6d 69 74 2f 72 65 6c 65 61 73 65 20 61 73 20 6f 6e 20 74 ..;;.same.commit/release.as.on.t
ac20 68 65 20 73 74 61 62 6c 65 20 63 68 61 6e 6e 65 6c 3b 20 61 73 20 69 74 20 77 6f 75 6c 64 20 6e he.stable.channel;.as.it.would.n
ac40 6f 74 0a 20 20 20 20 20 20 3b 3b 20 6d 61 6b 65 20 73 65 6e 73 65 20 66 6f 72 20 74 68 65 20 64 ot.......;;.make.sense.for.the.d
ac60 65 76 65 6c 6f 70 6d 65 6e 74 20 63 68 61 6e 6e 65 6c 20 74 6f 20 6c 61 67 20 62 65 68 69 6e 64 evelopment.channel.to.lag.behind
ac80 20 74 68 65 20 6c 61 74 65 73 74 0a 20 20 20 20 20 20 3b 3b 20 72 65 6c 65 61 73 65 2e 0a 20 20 .the.latest.......;;.release....
aca0 20 20 20 20 28 6c 69 73 74 20 72 63 6f 6d 6d 69 74 20 72 74 69 6d 65 20 28 70 61 63 6b 61 67 65 ....(list.rcommit.rtime.(package
acc0 2d 76 65 72 73 69 6f 6e 2d 6a 6f 69 6e 20 76 65 72 73 69 6f 6e 29 29 29 29 29 29 0a 0a 28 64 65 -version-join.version))))))..(de
ace0 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 65 6e 73 75 72 65 2d 63 6f 75 6e 74 2d fun.package-build--ensure-count-
ad00 69 6e 63 72 65 61 73 65 20 28 72 63 70 20 76 65 72 73 69 6f 6e 20 61 68 65 61 64 29 0a 20 20 28 increase.(rcp.version.ahead)...(
ad20 69 66 2d 6c 65 74 20 28 28 70 72 65 76 69 6f 75 73 20 28 63 64 72 20 28 61 73 73 71 20 28 69 6e if-let.((previous.(cdr.(assq.(in
ad40 74 65 72 6e 20 28 6f 72 65 66 20 72 63 70 20 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 tern.(oref.rcp.name))...........
ad60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 ......................(package-b
ad80 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 61 6c 69 73 74 29 29 29 29 29 0a 20 20 20 20 20 20 3b 3b uild-archive-alist))))).......;;
ada0 20 42 65 63 61 75 73 65 20 75 70 73 74 72 65 61 6d 20 6d 61 79 20 68 61 76 65 20 72 65 77 72 69 .Because.upstream.may.have.rewri
adc0 74 74 65 6e 20 68 69 73 74 6f 72 79 2c 20 77 65 20 63 61 6e 6e 6f 74 20 62 65 20 63 65 72 74 61 tten.history,.we.cannot.be.certa
ade0 69 6e 0a 20 20 20 20 20 20 3b 3b 20 74 68 61 74 20 61 70 70 65 6e 64 69 6e 67 20 74 68 65 20 6e in.......;;.that.appending.the.n
ae00 65 77 20 63 6f 75 6e 74 20 6f 66 20 63 6f 6d 6d 69 74 73 20 77 6f 75 6c 64 20 72 65 73 75 6c 74 ew.count.of.commits.would.result
ae20 20 69 6e 20 61 20 76 65 72 73 69 6f 6e 0a 20 20 20 20 20 20 3b 3b 20 73 74 72 69 6e 67 20 74 68 .in.a.version.......;;.string.th
ae40 61 74 20 69 73 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 74 68 65 20 76 65 72 73 69 6f 6e 20 73 at.is.greater.than.the.version.s
ae60 74 72 69 6e 67 20 75 73 65 64 20 66 6f 72 20 74 68 65 0a 20 20 20 20 20 20 3b 3b 20 70 72 65 76 tring.used.for.the.......;;.prev
ae80 69 6f 75 73 20 73 6e 61 70 73 68 6f 74 2e 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 75 6e ious.snapshot........(let.((coun
aea0 74 20 28 6c 69 73 74 20 61 68 65 61 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 76 65 t.(list.ahead)).............(pve
aec0 72 73 69 6f 6e 20 28 61 72 65 66 20 70 72 65 76 69 6f 75 73 20 30 29 29 0a 20 20 20 20 20 20 20 rsion.(aref.previous.0))........
aee0 20 20 20 20 20 28 70 63 6f 75 6e 74 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e .....(pcount.nil)).........(when
af00 20 28 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 74 68 65 72 65 .(and................;;.If.there
af20 20 69 73 20 6e 6f 20 7a 65 72 6f 20 70 61 72 74 2c 20 74 68 65 6e 20 77 65 20 6b 6e 6f 77 20 74 .is.no.zero.part,.then.we.know.t
af40 68 61 74 20 74 68 65 20 70 72 65 76 69 6f 75 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 hat.the.previous................
af60 3b 3b 20 73 6e 61 70 73 68 6f 74 20 65 78 61 63 74 6c 79 20 6d 61 74 63 68 65 64 20 61 20 74 61 ;;.snapshot.exactly.matched.a.ta
af80 67 67 65 64 20 72 65 6c 65 61 73 65 20 28 69 6e 20 77 68 69 63 68 20 63 61 73 65 0a 20 20 20 20 gged.release.(in.which.case.....
afa0 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 77 65 20 64 6f 20 6e 6f 74 20 61 70 70 65 6e 64 20 7a ...........;;.we.do.not.append.z
afc0 65 72 6f 20 61 6e 64 20 74 68 65 20 63 6f 75 6e 74 29 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 ero.and.the.count)..............
afe0 20 20 20 28 6d 65 6d 71 20 30 20 70 76 65 72 73 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 ...(memq.0.pversion)............
b000 20 20 20 20 3b 3b 20 4c 69 6b 65 77 69 73 65 20 69 66 20 74 68 65 72 65 20 69 73 20 61 20 74 61 ....;;.Likewise.if.there.is.a.ta
b020 67 20 74 68 61 74 20 65 78 61 63 74 6c 79 20 6d 61 74 63 68 65 73 20 74 68 65 0a 20 20 20 20 20 g.that.exactly.matches.the......
b040 20 20 20 20 20 20 20 20 20 20 3b 3b 20 70 72 65 76 69 6f 75 73 20 28 6e 6f 6e 2d 29 73 6e 61 70 ..........;;.previous.(non-)snap
b060 73 68 6f 74 2c 20 74 68 65 6e 20 74 68 65 72 65 20 69 73 20 6e 6f 20 6f 6c 64 20 63 6f 75 6e 74 shot,.then.there.is.no.old.count
b080 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 77 68 69 63 68 20 77 65 20 77 6f 75 6c ................;;.which.we.woul
b0a0 64 20 68 61 76 65 20 74 6f 20 63 6f 6d 70 61 72 65 20 77 69 74 68 20 74 68 65 20 6e 65 77 20 63 d.have.to.compare.with.the.new.c
b0c0 6f 75 6e 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 6d 65 6d 62 65 ount.................(not.(membe
b0e0 72 20 28 6d 61 70 63 6f 6e 63 61 74 20 23 27 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 20 r.(mapconcat.#'number-to-string.
b100 70 76 65 72 73 69 6f 6e 20 22 2e 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 pversion.".")...................
b120 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6c 69 73 74 2d 74 ..........(package-build--list-t
b140 61 67 73 20 72 63 70 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 68 65 20 70 72 65 ags.rcp))))...........;;.The.pre
b160 76 69 6f 75 73 20 73 6e 61 70 73 68 6f 74 20 64 6f 65 73 20 6e 6f 74 20 65 78 61 63 74 6c 79 20 vious.snapshot.does.not.exactly.
b180 6d 61 74 63 68 20 61 20 74 61 67 67 65 64 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 76 65 72 73 match.a.tagged...........;;.vers
b1a0 69 6f 6e 2e 20 20 57 65 20 6d 75 73 74 20 73 70 6c 69 74 20 74 68 65 20 76 65 72 73 69 6f 6e 20 ion...We.must.split.the.version.
b1c0 73 74 72 69 6e 67 20 69 6e 74 6f 20 69 74 73 20 74 61 67 0a 20 20 20 20 20 20 20 20 20 20 3b 3b string.into.its.tag...........;;
b1e0 20 61 6e 64 20 63 6f 75 6e 74 20 70 61 72 74 73 2e 20 20 54 68 65 20 6c 61 73 74 20 7a 65 72 6f .and.count.parts...The.last.zero
b200 20 70 61 72 74 20 69 73 20 74 68 65 20 62 6f 75 6e 64 61 72 79 2e 0a 20 20 20 20 20 20 20 20 20 .part.is.the.boundary...........
b220 20 28 6c 65 74 20 28 28 73 70 6c 69 74 20 28 63 6c 2d 70 6f 73 69 74 69 6f 6e 20 30 20 70 76 65 .(let.((split.(cl-position.0.pve
b240 72 73 69 6f 6e 20 3a 66 72 6f 6d 2d 65 6e 64 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 rsion.:from-end.t)).............
b260 20 20 20 20 28 69 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 61 67 67 65 ....(i.0).................(tagge
b280 64 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 3c 20 69 20 d.nil)).............(while.(<.i.
b2a0 73 70 6c 69 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 70 6f 70 20 split)...............(push.(pop.
b2c0 70 76 65 72 73 69 6f 6e 29 20 74 61 67 67 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 pversion).tagged)...............
b2e0 28 63 6c 2d 69 6e 63 66 20 69 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70 (cl-incf.i)).............(setq.p
b300 63 6f 75 6e 74 20 28 63 64 72 20 70 76 65 72 73 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 count.(cdr.pversion))...........
b320 20 20 28 73 65 74 71 20 70 76 65 72 73 69 6f 6e 20 28 6e 72 65 76 65 72 73 65 20 74 61 67 67 65 ..(setq.pversion.(nreverse.tagge
b340 64 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 44 65 74 65 72 6d 69 6e 65 20 77 68 65 74 d)))...........;;.Determine.whet
b360 68 65 72 20 77 65 20 63 61 6e 20 72 65 73 65 74 20 74 68 65 20 63 6f 75 6e 74 20 6f 72 20 69 6e her.we.can.reset.the.count.or.in
b380 63 72 65 61 73 65 20 69 74 2c 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 77 68 65 74 68 crease.it,.or...........;;.wheth
b3a0 65 72 20 77 65 20 68 61 76 65 20 74 6f 20 70 72 65 73 65 72 76 65 20 74 68 65 20 6f 6c 64 20 63 er.we.have.to.preserve.the.old.c
b3c0 6f 75 6e 74 20 64 75 65 20 74 6f 20 72 65 77 72 69 74 74 65 6e 0a 20 20 20 20 20 20 20 20 20 20 ount.due.to.rewritten...........
b3e0 3b 3b 20 68 69 73 74 6f 72 79 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 65 6e 73 75 72 65 20 74 68 ;;.history.in.order.to.ensure.th
b400 61 74 20 74 68 65 20 6e 65 77 20 73 6e 61 70 73 68 6f 74 20 76 65 72 73 69 6f 6e 20 69 73 0a 20 at.the.new.snapshot.version.is..
b420 20 20 20 20 20 20 20 20 20 3b 3b 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 74 68 65 20 70 72 65 .........;;.greater.than.the.pre
b440 76 69 6f 75 73 20 73 6e 61 70 73 68 6f 74 2e 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 vious.snapshot............;;.If.
b460 74 68 65 20 70 72 65 76 69 6f 75 73 20 61 6e 64 20 63 75 72 72 65 6e 74 20 73 6e 61 70 73 68 6f the.previous.and.current.snapsho
b480 74 20 63 6f 6d 6d 69 74 73 20 64 6f 20 6e 6f 74 20 66 6f 6c 6c 6f 77 0a 20 20 20 20 20 20 20 20 t.commits.do.not.follow.........
b4a0 20 20 3b 3b 20 74 68 65 20 73 61 6d 65 20 74 61 67 2c 20 74 68 65 6e 20 74 68 65 69 72 20 72 65 ..;;.the.same.tag,.then.their.re
b4c0 73 70 65 63 74 69 76 65 20 63 6f 75 6e 74 73 20 6f 66 20 63 6f 6d 6d 69 74 73 20 73 69 6e 63 65 spective.counts.of.commits.since
b4e0 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 69 72 20 72 65 73 70 65 63 74 69 76 65 20 74 ...........;;.their.respective.t
b500 61 67 20 68 61 76 65 20 6e 6f 20 72 65 6c 61 74 69 6f 6e 20 74 6f 20 65 61 63 68 20 6f 74 68 65 ag.have.no.relation.to.each.othe
b520 72 20 61 6e 64 20 77 65 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 63 61 6e 20 73 69 6d 70 6c 79 r.and.we...........;;.can.simply
b540 20 72 65 73 65 74 20 74 68 65 20 63 6f 75 6e 74 2c 20 64 65 74 65 72 6d 69 6e 65 64 20 61 62 6f .reset.the.count,.determined.abo
b560 76 65 2e 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 65 71 75 61 6c 20 76 65 72 73 69 ve............(when.(equal.versi
b580 6f 6e 20 70 76 65 72 73 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 74 on.pversion).............;;.If.t
b5a0 68 65 20 6e 65 77 20 63 6f 75 6e 74 20 69 73 20 73 6d 61 6c 6c 65 72 20 74 68 61 6e 20 74 68 65 he.new.count.is.smaller.than.the
b5c0 20 6f 6c 64 2c 20 74 68 65 6e 20 77 65 20 6b 65 65 70 20 74 68 65 0a 20 20 20 20 20 20 20 20 20 .old,.then.we.keep.the..........
b5e0 20 20 20 3b 3b 20 6f 6c 64 20 63 6f 75 6e 74 20 61 6e 64 20 61 70 70 65 6e 64 20 74 68 65 20 6e ...;;.old.count.and.append.the.n
b600 65 77 20 63 6f 75 6e 74 20 61 73 20 61 20 73 65 70 61 72 61 74 65 20 76 65 72 73 69 6f 6e 0a 20 ew.count.as.a.separate.version..
b620 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 70 61 72 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 ...........;;.part..............
b640 3b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 65 20 6d 61 79 20 68 61 76 65 20 68 61 ;;.............;;.We.may.have.ha
b660 64 20 74 6f 20 64 6f 20 74 68 61 74 20 66 6f 72 20 70 72 65 76 69 6f 75 73 20 73 6e 61 70 73 68 d.to.do.that.for.previous.snapsh
b680 6f 74 73 2c 20 70 6f 73 73 69 62 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 65 76 65 ots,.possibly.............;;.eve
b6a0 6e 20 66 6f 72 20 6d 75 6c 74 69 70 6c 65 20 63 6f 6e 73 65 63 75 74 69 76 65 20 73 6e 61 70 73 n.for.multiple.consecutive.snaps
b6c0 68 6f 74 73 2e 20 20 42 65 67 69 6e 6e 69 6e 67 20 61 74 20 74 68 65 0a 20 20 20 20 20 20 20 20 hots...Beginning.at.the.........
b6e0 20 20 20 20 3b 3b 20 65 6e 64 2c 20 73 63 72 61 70 65 20 6f 66 20 61 6c 6c 20 63 6f 75 6e 74 73 ....;;.end,.scrape.of.all.counts
b700 20 74 68 61 74 20 61 72 65 20 73 6d 61 6c 6c 65 72 20 74 68 61 6e 20 74 68 65 20 63 75 72 72 65 .that.are.smaller.than.the.curre
b720 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 63 6f 75 6e 74 2c 20 62 75 74 20 6c 65 61 nt.............;;.count,.but.lea
b740 76 65 20 74 68 65 20 6f 74 68 65 72 73 20 69 6e 74 61 63 74 2e 0a 20 20 20 20 20 20 20 20 20 20 ve.the.others.intact............
b760 20 20 28 73 65 74 71 20 70 63 6f 75 6e 74 20 28 6e 72 65 76 65 72 73 65 20 70 63 6f 75 6e 74 29 ..(setq.pcount.(nreverse.pcount)
b780 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 70 63 6f 75 6e 74 ).............(while.(and.pcount
b7a0 20 28 3e 20 61 68 65 61 64 20 28 63 61 72 20 70 63 6f 75 6e 74 29 29 29 0a 20 20 20 20 20 20 20 .(>.ahead.(car.pcount)))........
b7c0 20 20 20 20 20 20 20 28 70 6f 70 20 70 63 6f 75 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 .......(pop.pcount))............
b7e0 20 28 77 68 65 6e 20 70 63 6f 75 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 .(when.pcount...............;;.T
b800 68 69 73 20 73 6e 61 70 73 68 6f 74 20 69 73 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 73 61 6d his.snapshot.is.based.on.the.sam
b820 65 20 74 61 67 20 61 73 20 74 68 65 20 70 72 65 76 69 6f 75 73 0a 20 20 20 20 20 20 20 20 20 20 e.tag.as.the.previous...........
b840 20 20 20 20 3b 3b 20 73 6e 61 70 73 68 6f 74 20 61 6e 64 2c 20 64 75 65 20 74 6f 20 68 69 73 74 ....;;.snapshot.and,.due.to.hist
b860 6f 72 79 20 72 65 77 72 69 74 69 6e 67 2c 20 74 68 65 20 63 6f 75 6e 74 20 64 69 64 0a 20 20 20 ory.rewriting,.the.count.did....
b880 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6e 6f 74 20 69 6e 63 72 65 61 73 65 2e 0a 20 20 20 20 ...........;;.not.increase......
b8a0 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 75 6e 74 20 28 6e 72 65 76 65 72 73 65 20 ..........(setq.count.(nreverse.
b8c0 28 63 6f 6e 73 20 28 63 61 72 20 63 6f 75 6e 74 29 20 70 63 6f 75 6e 74 29 29 29 29 29 29 0a 20 (cons.(car.count).pcount))))))..
b8e0 20 20 20 20 20 20 20 63 6f 75 6e 74 29 0a 20 20 20 20 28 6c 69 73 74 20 61 68 65 61 64 29 29 29 .......count).....(list.ahead)))
b900 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d ..(cl-defmethod.package-build--m
b920 65 72 67 65 2d 62 61 73 65 20 28 28 5f 72 63 70 20 70 61 63 6b 61 67 65 2d 67 69 74 2d 72 65 63 erge-base.((_rcp.package-git-rec
b940 69 70 65 29 20 61 20 62 29 0a 20 20 28 69 67 6e 6f 72 65 2d 65 72 72 6f 72 73 20 28 63 61 72 20 ipe).a.b)...(ignore-errors.(car.
b960 28 70 72 6f 63 65 73 73 2d 6c 69 6e 65 73 20 22 67 69 74 22 20 22 6d 65 72 67 65 2d 62 61 73 65 (process-lines."git"."merge-base
b980 22 20 61 20 62 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 65 ".a.b))))..(cl-defmethod.package
b9a0 2d 62 75 69 6c 64 2d 2d 6d 65 72 67 65 2d 62 61 73 65 20 28 28 5f 72 63 70 20 70 61 63 6b 61 67 -build--merge-base.((_rcp.packag
b9c0 65 2d 68 67 2d 72 65 63 69 70 65 29 20 61 20 62 29 0a 20 20 28 63 61 72 20 28 70 72 6f 63 65 73 e-hg-recipe).a.b)...(car.(proces
b9e0 73 2d 6c 69 6e 65 73 20 22 68 67 22 20 22 6c 6f 67 22 20 22 2d 2d 74 65 6d 70 6c 61 74 65 22 20 s-lines."hg"."log"."--template".
ba00 22 7b 6e 6f 64 65 7d 5c 5c 6e 22 20 22 2d 2d 72 65 76 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 "{node}\\n"."--rev".............
ba20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 61 6e 63 65 73 74 6f 72 28 25 73 2c 20 ..........(format."ancestor(%s,.
ba40 25 73 29 22 20 61 20 62 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 61 63 6b %s)".a.b))))..(cl-defmethod.pack
ba60 61 67 65 2d 62 75 69 6c 64 2d 2d 63 6f 6d 6d 69 74 2d 63 6f 75 6e 74 20 28 28 5f 72 63 70 20 70 age-build--commit-count.((_rcp.p
ba80 61 63 6b 61 67 65 2d 67 69 74 2d 72 65 63 69 70 65 29 20 72 65 76 20 73 69 6e 63 65 29 0a 20 20 ackage-git-recipe).rev.since)...
baa0 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 0a 20 20 20 28 63 61 72 20 28 69 66 20 73 69 (string-to-number....(car.(if.si
bac0 6e 63 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 63 65 73 73 2d 6c 69 6e 65 73 20 22 nce.............(process-lines."
bae0 67 69 74 22 20 22 72 65 76 2d 6c 69 73 74 22 20 22 2d 2d 63 6f 75 6e 74 22 20 72 65 76 20 28 63 git"."rev-list"."--count".rev.(c
bb00 6f 6e 63 61 74 20 22 5e 22 20 73 69 6e 63 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 72 6f oncat."^".since))...........(pro
bb20 63 65 73 73 2d 6c 69 6e 65 73 20 22 67 69 74 22 20 22 72 65 76 2d 6c 69 73 74 22 20 22 2d 2d 63 cess-lines."git"."rev-list"."--c
bb40 6f 75 6e 74 22 20 72 65 76 29 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 61 ount".rev)))))..(cl-defmethod.pa
bb60 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 6f 6d 6d 69 74 2d 63 6f 75 6e 74 20 28 28 5f 72 63 70 ckage-build--commit-count.((_rcp
bb80 20 70 61 63 6b 61 67 65 2d 68 67 2d 72 65 63 69 70 65 29 20 72 65 76 20 73 69 6e 63 65 29 0a 20 .package-hg-recipe).rev.since)..
bba0 20 28 6c 65 6e 67 74 68 20 28 70 72 6f 63 65 73 73 2d 6c 69 6e 65 73 20 22 68 67 22 20 22 6c 6f .(length.(process-lines."hg"."lo
bbc0 67 22 20 22 2d 2d 74 65 6d 70 6c 61 74 65 22 20 22 7b 72 65 76 7d 5c 5c 6e 22 20 22 2d 2d 72 65 g"."--template"."{rev}\\n"."--re
bbe0 76 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 v"..........................(if.
bc00 73 69 6e 63 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 since...........................
bc20 20 20 20 28 66 6f 72 6d 61 74 20 22 6f 6e 6c 79 28 25 73 2c 20 25 73 29 22 20 72 65 76 20 73 69 ...(format."only(%s,.%s)".rev.si
bc40 6e 63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nce)............................
bc60 28 66 6f 72 6d 61 74 20 22 61 6e 63 65 73 74 6f 72 73 28 25 73 29 22 20 72 65 76 29 29 29 29 29 (format."ancestors(%s)".rev)))))
bc80 0a 0a 3b 3b 3b 3b 20 46 61 6c 6c 62 61 63 6b 2d 43 6f 75 6e 74 0a 0a 28 64 65 66 75 6e 20 70 61 ..;;;;.Fallback-Count..(defun.pa
bca0 63 6b 61 67 65 2d 62 75 69 6c 64 2d 66 61 6c 6c 62 61 63 6b 2d 63 6f 75 6e 74 2d 76 65 72 73 69 ckage-build-fallback-count-versi
bcc0 6f 6e 20 28 72 63 70 29 0a 20 20 22 44 65 74 65 72 6d 69 6e 65 20 76 65 72 73 69 6f 6e 20 73 74 on.(rcp)..."Determine.version.st
bce0 72 69 6e 67 20 69 6e 20 74 68 65 20 5c 22 30 2e 30 2e 30 2e 43 4f 55 4e 54 5c 22 20 66 6f 72 6d ring.in.the.\"0.0.0.COUNT\".form
bd00 61 74 20 66 6f 72 20 52 43 50 2e 0a 0a 2a 45 78 70 65 72 69 6d 65 6e 74 61 6c 2a 20 54 68 69 73 at.for.RCP...*Experimental*.This
bd20 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 73 74 69 6c 6c 20 73 75 62 6a 65 63 74 20 74 6f 20 63 68 .function.is.still.subject.to.ch
bd40 61 6e 67 65 2e 0a 0a 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 6d 70 6c 65 6d 65 6e 74 73 20 ange...This.function.implements.
bd60 61 20 66 61 6c 6c 62 61 63 6b 20 74 68 61 74 20 63 61 6e 20 62 65 20 75 73 65 64 20 6f 6e 20 74 a.fallback.that.can.be.used.on.t
bd80 68 65 0a 72 65 6c 65 61 73 65 20 63 68 61 6e 6e 65 6c 2c 20 66 6f 72 20 70 61 63 6b 61 67 65 73 he.release.channel,.for.packages
bda0 20 74 68 61 74 20 64 6f 6e 27 74 20 64 6f 20 72 65 6c 65 61 73 65 73 2e 20 20 49 74 20 73 68 6f .that.don't.do.releases...It.sho
bdc0 75 6c 64 0a 62 65 20 74 68 65 20 6c 61 73 74 20 65 6c 65 6d 65 6e 74 20 6f 66 20 60 70 61 63 6b uld.be.the.last.element.of.`pack
bde0 61 67 65 2d 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 age-build-release-version-functi
be00 6f 6e 73 27 2c 0a 61 6e 64 20 61 74 20 74 68 65 20 73 61 6d 65 20 74 69 6d 65 20 60 70 61 63 6b ons',.and.at.the.same.time.`pack
be20 61 67 65 2d 62 75 69 6c 64 2d 73 6e 61 70 73 68 6f 74 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 age-build-snapshot-version-funct
be40 69 6f 6e 73 27 0a 73 68 6f 75 6c 64 20 63 6f 6e 74 61 69 6e 20 6f 6e 6c 79 20 60 70 61 63 6b 61 ions'.should.contain.only.`packa
be60 67 65 2d 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2b 63 6f 75 6e 74 2d 76 65 72 73 69 6f 6e 27 2e ge-build-release+count-version'.
be80 0a 0a 54 68 65 20 72 65 73 75 6c 74 20 6f 66 20 73 75 63 68 20 61 20 63 6f 6e 66 69 67 75 72 61 ..The.result.of.such.a.configura
bea0 74 69 6f 6e 20 69 73 20 74 68 61 74 2c 20 66 6f 72 20 70 61 63 6b 61 67 65 73 20 74 68 61 74 0a tion.is.that,.for.packages.that.
bec0 64 6f 6e 27 74 20 64 6f 20 72 65 6c 65 61 73 65 73 2c 20 74 68 65 20 72 65 6c 65 61 73 65 20 61 don't.do.releases,.the.release.a
bee0 6e 64 20 73 6e 61 70 73 68 6f 74 20 63 68 61 6e 6e 65 6c 73 20 70 72 6f 76 69 64 65 0a 74 68 65 nd.snapshot.channels.provide.the
bf00 20 73 61 6d 65 20 5c 22 30 2e 30 2e 30 2e 43 4f 55 4e 54 5c 22 20 73 6e 61 70 73 68 6f 74 2e 20 .same.\"0.0.0.COUNT\".snapshot..
bf20 20 54 68 61 74 20 77 61 79 2c 20 61 6c 6c 20 70 61 63 6b 61 67 65 73 20 61 72 65 0a 61 76 61 69 .That.way,.all.packages.are.avai
bf40 6c 61 62 6c 65 20 6f 6e 20 74 68 65 20 72 65 6c 65 61 73 65 20 63 68 61 6e 6e 65 6c 2c 20 77 68 lable.on.the.release.channel,.wh
bf60 69 63 68 20 6d 61 6b 65 73 20 74 68 61 74 20 63 68 61 6e 6e 65 6c 20 6d 6f 72 65 0a 61 74 74 72 ich.makes.that.channel.more.attr
bf80 61 63 74 69 76 65 20 74 6f 20 75 73 65 72 73 2c 20 77 68 69 63 68 20 6d 69 67 68 74 20 65 6e 63 active.to.users,.which.might.enc
bfa0 6f 75 72 61 67 65 20 73 6f 6d 65 20 6d 61 69 6e 74 61 69 6e 65 72 73 20 74 6f 0a 72 65 6c 65 61 ourage.some.maintainers.to.relea
bfc0 73 65 20 6d 6f 72 65 20 6f 66 74 65 6e 2c 20 6f 72 20 69 66 20 74 68 65 79 20 68 61 76 65 20 6e se.more.often,.or.if.they.have.n
bfe0 65 76 65 72 20 64 6f 6e 65 20 61 20 72 65 6c 65 61 73 65 20 62 65 66 6f 72 65 2c 0a 74 6f 20 66 ever.done.a.release.before,.to.f
c000 69 6e 61 6c 6c 79 20 67 65 74 20 61 72 6f 75 6e 64 20 74 6f 20 74 68 61 74 20 69 6e 69 74 69 61 inally.get.around.to.that.initia
c020 6c 20 72 65 6c 65 61 73 65 2e 20 20 49 6e 20 6f 74 68 65 72 20 77 6f 72 64 73 2c 0a 74 68 69 73 l.release...In.other.words,.this
c040 20 6d 69 67 68 74 20 68 65 6c 70 20 6f 76 65 72 63 6f 6d 65 20 74 68 65 20 72 65 6c 65 61 73 65 .might.help.overcome.the.release
c060 20 63 68 61 6e 6e 65 6c 27 73 20 63 68 69 63 6b 65 6e 20 61 6e 64 20 65 67 67 0a 70 72 6f 62 6c .channel's.chicken.and.egg.probl
c080 65 6d 2e 22 0a 20 20 28 6c 65 74 20 28 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 6c 65 em."...(let.((package-build-rele
c0a0 61 73 65 2d 76 65 72 73 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 73 20 6e 69 6c 29 29 0a 20 20 20 20 ase-version-functions.nil)).....
c0c0 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2b 63 6f 75 6e 74 2d 76 65 72 (package-build-release+count-ver
c0e0 73 69 6f 6e 20 72 63 70 29 29 29 0a 0a 3b 3b 3b 20 43 61 6c 6c 20 50 72 6f 63 65 73 73 0a 0a 28 sion.rcp)))..;;;.Call.Process..(
c100 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 61 6c 6c 2d 70 72 6f 63 65 73 defun.package-build--call-proces
c120 73 20 28 70 61 63 6b 61 67 65 20 63 6f 6d 6d 61 6e 64 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 s.(package.command.&rest.args)..
c140 20 22 46 6f 72 20 50 41 43 4b 41 47 45 2c 20 72 75 6e 20 43 4f 4d 4d 41 4e 44 20 77 69 74 68 20 ."For.PACKAGE,.run.COMMAND.with.
c160 41 52 47 53 20 69 6e 20 60 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 27 2e 0a 57 65 20 ARGS.in.`default-directory'..We.
c180 75 73 65 20 74 68 69 73 20 74 6f 20 77 72 61 70 20 63 6f 6d 6d 61 6e 64 73 20 69 73 20 70 72 6f use.this.to.wrap.commands.is.pro
c1a0 70 65 72 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 73 65 74 74 69 6e 67 73 20 61 6e 64 0a 77 69 74 per.environment.settings.and.wit
c1c0 68 20 61 20 74 69 6d 65 6f 75 74 20 73 6f 20 74 68 61 74 20 6e 6f 20 63 6f 6d 6d 61 6e 64 20 63 h.a.timeout.so.that.no.command.c
c1e0 61 6e 20 62 6c 6f 63 6b 20 74 68 65 20 62 75 69 6c 64 20 70 72 6f 63 65 73 73 2c 0a 61 6e 64 20 an.block.the.build.process,.and.
c200 73 6f 20 77 65 20 63 61 6e 20 70 72 6f 70 65 72 6c 79 20 6c 6f 67 20 65 72 72 6f 72 73 2e 20 20 so.we.can.properly.log.errors...
c220 50 41 43 4b 41 47 45 20 6d 75 73 74 20 62 65 20 74 68 65 20 6e 61 6d 65 20 6f 66 0a 61 20 70 61 PACKAGE.must.be.the.name.of.a.pa
c240 63 6b 61 67 65 2c 20 61 20 60 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 27 20 6f 62 6a 65 63 74 ckage,.a.`package-recipe'.object
c260 20 6f 72 20 6e 69 6c 2c 20 61 6e 64 20 69 73 20 6f 6e 6c 79 20 75 73 65 64 0a 66 6f 72 20 6c 6f .or.nil,.and.is.only.used.for.lo
c280 67 67 69 6e 67 20 70 75 72 70 6f 73 65 73 2e 22 0a 20 20 28 75 6e 6c 65 73 73 20 28 66 69 6c 65 gging.purposes."...(unless.(file
c2a0 2d 64 69 72 65 63 74 6f 72 79 2d 70 20 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 29 0a -directory-p.default-directory).
c2c0 20 20 20 20 28 65 72 72 6f 72 20 22 43 61 6e 6e 6f 74 20 72 75 6e 20 70 72 6f 63 65 73 73 20 69 ....(error."Cannot.run.process.i
c2e0 6e 20 6e 6f 6e 2d 65 78 69 73 74 65 6e 74 20 64 69 72 65 63 74 6f 72 79 3a 20 25 73 22 0a 20 20 n.non-existent.directory:.%s"...
c300 20 20 20 20 20 20 20 20 20 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 29 29 0a 20 20 28 .........default-directory))...(
c320 77 69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 28 70 63 61 73 65 2d 6c 65 74 2a with-temp-buffer.....(pcase-let*
c340 20 28 28 61 72 67 73 2d 6f 72 69 67 20 28 63 6f 6e 73 20 63 6f 6d 6d 61 6e 64 20 61 72 67 73 29 .((args-orig.(cons.command.args)
c360 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 2c 63 6f 6d 6d 61 6e 64 20 2e )..................(`(,command..
c380 20 2c 61 72 67 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 63 6f 6e 63 .,args)...................(nconc
c3a0 20 28 61 6e 64 20 28 6e 6f 74 20 28 65 71 20 73 79 73 74 65 6d 2d 74 79 70 65 20 27 77 69 6e 64 .(and.(not.(eq.system-type.'wind
c3c0 6f 77 73 2d 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ows-nt))........................
c3e0 20 20 20 20 20 20 20 28 6c 69 73 74 20 22 65 6e 76 22 20 22 4c 43 5f 41 4c 4c 3d 43 22 29 29 0a .......(list."env"."LC_ALL=C")).
c400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 61 6e .........................(if.(an
c420 64 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 69 6d 65 6f 75 74 2d 73 65 63 73 0a 20 20 20 d.package-build-timeout-secs....
c440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 ...............................p
c460 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 69 6d 65 6f 75 74 2d 65 78 65 63 75 74 61 62 6c 65 29 ackage-build-timeout-executable)
c480 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e ..............................(n
c4a0 63 6f 6e 63 20 28 6c 69 73 74 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 69 6d 65 6f 75 74 conc.(list.package-build-timeout
c4c0 2d 65 78 65 63 75 74 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -executable.....................
c4e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2d 6b 22 20 22 36 30 22 0a ......................"-k"."60".
c500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
c520 20 20 20 20 20 20 20 20 20 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 0a 20 20 20 20 ..........(number-to-string.....
c540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
c560 20 20 20 20 20 20 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 69 6d 65 6f 75 74 2d 73 65 63 .......package-build-timeout-sec
c580 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s)..............................
c5a0 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6d 6d 61 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 .............command)...........
c5c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 72 67 73 29 0a ..........................args).
c5e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 ...........................(cons
c600 20 63 6f 6d 6d 61 6e 64 20 61 72 67 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .command.args))))...............
c620 20 20 20 28 65 78 69 74 2d 63 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...(exit-code...................
c640 28 61 70 70 6c 79 20 23 27 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 63 6f 6d 6d 61 6e 64 20 6e 69 (apply.#'call-process.command.ni
c660 6c 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 20 6e 69 6c 20 61 72 67 73 29 29 29 0a 20 l.(current-buffer).nil.args)))..
c680 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 65 71 75 61 6c 20 65 78 69 74 2d 63 6f 64 65 20 30 29 .....(unless.(equal.exit-code.0)
c6a0 20 3b 20 6d 61 79 20 61 6c 73 6f 20 62 65 20 61 20 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 .;.may.also.be.a.string.........
c6c0 28 6c 65 74 20 28 28 73 75 6d 6d 61 72 79 20 28 66 6f 72 6d 61 74 2d 6d 65 73 73 61 67 65 0a 20 (let.((summary.(format-message..
c6e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 43 6f 6d 6d 61 6e 64 20 ......................."Command.
c700 60 25 73 27 20 65 78 69 74 65 64 20 77 69 74 68 20 6e 6f 6e 2d 7a 65 72 6f 20 65 78 69 74 2d 63 `%s'.exited.with.non-zero.exit-c
c720 6f 64 65 3a 20 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ode:.%s"........................
c740 20 28 6d 61 70 63 6f 6e 63 61 74 20 23 27 73 68 65 6c 6c 2d 71 75 6f 74 65 2d 61 72 67 75 6d 65 .(mapconcat.#'shell-quote-argume
c760 6e 74 20 61 72 67 73 2d 6f 72 69 67 20 22 20 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nt.args-orig.".")...............
c780 20 20 20 20 20 20 20 20 20 20 65 78 69 74 2d 63 6f 64 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 ..........exit-code)))..........
c7a0 20 3b 3b 20 44 75 70 6c 69 63 61 74 69 6e 67 20 74 68 65 20 73 75 6d 6d 61 72 79 20 6c 69 6b 65 .;;.Duplicating.the.summary.like
c7c0 20 74 68 69 73 20 69 73 20 61 20 62 69 74 20 75 6e 66 6f 72 74 75 6e 61 74 65 2c 20 62 75 74 0a .this.is.a.bit.unfortunate,.but.
c7e0 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73 74 69 6c 6c 20 74 68 65 20 62 65 73 74 20 6f 70 74 69 ..........;;.still.the.best.opti
c800 6f 6e 20 62 65 63 61 75 73 65 20 77 65 20 77 61 6e 74 20 74 6f 20 73 68 6f 77 20 69 74 20 62 65 on.because.we.want.to.show.it.be
c820 66 6f 72 65 20 74 68 65 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6f 75 74 70 75 74 2c 20 62 75 fore.the...........;;.output,.bu
c840 74 20 61 6c 73 6f 20 77 61 6e 74 20 69 74 20 74 6f 20 61 70 70 65 61 72 20 61 73 20 61 6e 20 65 t.also.want.it.to.appear.as.an.e
c860 72 72 6f 72 20 6d 65 73 73 61 67 65 2c 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 77 69 74 68 6f rror.message,...........;;.witho
c880 75 74 20 6d 61 6b 69 6e 67 20 74 68 65 2c 20 70 6f 74 65 6e 74 69 61 6c 6c 79 20 6d 75 6c 74 69 ut.making.the,.potentially.multi
c8a0 2d 6c 69 6e 65 2c 20 6f 75 74 70 75 74 20 70 61 72 74 20 6f 66 0a 20 20 20 20 20 20 20 20 20 20 -line,.output.part.of...........
c8c0 3b 3b 20 74 68 65 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 2e 0a 20 20 20 20 20 20 20 20 20 20 ;;.the.error.message............
c8e0 28 6d 65 73 73 61 67 65 20 22 25 73 22 20 73 75 6d 6d 61 72 79 29 0a 20 20 20 20 20 20 20 20 20 (message."%s".summary)..........
c900 20 28 6d 65 73 73 61 67 65 20 22 25 73 22 20 28 62 75 66 66 65 72 2d 73 74 72 69 6e 67 29 29 0a .(message."%s".(buffer-string)).
c920 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 65 72 72 6f 72 20 ..........(package-build--error.
c940 70 61 63 6b 61 67 65 20 22 25 73 22 20 73 75 6d 6d 61 72 79 29 29 29 29 29 29 0a 0a 28 64 65 66 package."%s".summary))))))..(def
c960 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 72 75 6e 2d 70 72 6f 63 65 73 73 20 28 63 un.package-build--run-process.(c
c980 6f 6d 6d 61 6e 64 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 4c 69 6b 65 20 60 70 61 63 6b ommand.&rest.args)..."Like.`pack
c9a0 61 67 65 2d 62 75 69 6c 64 2d 2d 63 61 6c 6c 2d 70 72 6f 63 65 73 73 27 2c 20 62 75 74 20 6c 61 age-build--call-process',.but.la
c9c0 63 6b 73 20 74 68 65 20 50 41 43 4b 41 47 45 20 61 72 67 75 6d 65 6e 74 2e 22 0a 20 20 28 61 70 cks.the.PACKAGE.argument."...(ap
c9e0 70 6c 79 20 23 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 61 6c 6c 2d 70 72 6f 63 65 73 ply.#'package-build--call-proces
ca00 73 20 6e 69 6c 20 63 6f 6d 6d 61 6e 64 20 61 72 67 73 29 29 0a 28 6d 61 6b 65 2d 6f 62 73 6f 6c s.nil.command.args)).(make-obsol
ca20 65 74 65 20 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 72 75 6e 2d 70 72 6f 63 65 73 73 20 ete.'package-build--run-process.
ca40 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 22 35 2e 'package-build--call-process."5.
ca60 30 2e 30 22 29 0a 0a 3b 3b 3b 20 57 6f 72 6b 74 72 65 65 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 0.0")..;;;.Worktree..(defun.pack
ca80 61 67 65 2d 62 75 69 6c 64 2d 2d 77 6f 72 6b 69 6e 67 2d 74 72 65 65 20 28 72 63 70 20 26 6f 70 age-build--working-tree.(rcp.&op
caa0 74 69 6f 6e 61 6c 20 65 61 72 6c 79 29 0a 20 20 28 69 66 20 65 61 72 6c 79 0a 20 20 20 20 20 20 tional.early)...(if.early.......
cac0 28 66 75 6e 63 61 6c 6c 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 65 61 72 6c 79 2d 77 6f 72 (funcall.package-build-early-wor
cae0 6b 74 72 65 65 2d 66 75 6e 63 74 69 6f 6e 20 72 63 70 29 0a 20 20 20 20 28 66 75 6e 63 61 6c 6c ktree-function.rcp).....(funcall
cb00 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 77 6f 72 6b 74 72 65 65 2d 66 75 6e 63 74 69 6f 6e .package-build-worktree-function
cb20 20 72 63 70 29 29 29 0a 0a 3b 3b 3b 20 46 65 74 63 68 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f .rcp)))..;;;.Fetch..(cl-defmetho
cb40 64 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 66 65 74 63 68 20 28 28 72 63 70 20 70 61 63 d.package-build--fetch.((rcp.pac
cb60 6b 61 67 65 2d 67 69 74 2d 72 65 63 69 70 65 29 29 0a 20 20 28 6c 65 74 20 28 28 64 69 72 20 28 kage-git-recipe))...(let.((dir.(
cb80 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 77 6f 72 6b 69 6e 67 2d 74 72 65 65 20 72 63 70 20 package-build--working-tree.rcp.
cba0 74 29 29 0a 20 20 20 20 20 20 20 20 28 75 72 6c 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 t)).........(url.(package-recipe
cbc0 2d 2d 75 70 73 74 72 65 61 6d 2d 75 72 6c 20 72 63 70 29 29 0a 20 20 20 20 20 20 20 20 28 70 72 --upstream-url.rcp)).........(pr
cbe0 6f 74 6f 63 6f 6c 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 2d 75 70 73 74 72 65 61 6d otocol.(package-recipe--upstream
cc00 2d 70 72 6f 74 6f 63 6f 6c 20 72 63 70 29 29 29 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 28 6d 65 -protocol.rcp))).....(unless.(me
cc20 6d 62 65 72 20 70 72 6f 74 6f 63 6f 6c 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 6c 6c 6f mber.protocol.package-build-allo
cc40 77 65 64 2d 67 69 74 2d 70 72 6f 74 6f 63 6f 6c 73 29 0a 20 20 20 20 20 20 28 70 61 63 6b 61 67 wed-git-protocols).......(packag
cc60 65 2d 62 75 69 6c 64 2d 2d 65 72 72 6f 72 20 72 63 70 0a 20 20 20 20 20 20 20 20 22 46 65 74 63 e-build--error.rcp........."Fetc
cc80 68 69 6e 67 20 75 73 69 6e 67 20 74 68 65 20 25 73 20 70 72 6f 74 6f 63 6f 6c 20 69 73 20 6e 6f hing.using.the.%s.protocol.is.no
cca0 74 20 61 6c 6c 6f 77 65 64 22 20 70 72 6f 74 6f 63 6f 6c 29 29 0a 20 20 20 20 28 63 6f 6e 64 0a t.allowed".protocol)).....(cond.
ccc0 20 20 20 20 20 28 28 61 6e 64 20 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 28 65 78 70 61 6e .....((and.(file-exists-p.(expan
cce0 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 22 2e 67 69 74 22 20 64 69 72 29 29 0a 20 20 20 20 20 20 20 d-file-name.".git".dir))........
cd00 20 20 20 20 28 6c 65 74 20 28 28 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 64 69 72 ....(let.((default-directory.dir
cd20 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 3d 20 28 63 61 72 20 28 70 ))..............(string=.(car.(p
cd40 72 6f 63 65 73 73 2d 6c 69 6e 65 73 20 22 67 69 74 22 20 22 63 6f 6e 66 69 67 22 20 22 72 65 6d rocess-lines."git"."config"."rem
cd60 6f 74 65 2e 6f 72 69 67 69 6e 2e 75 72 6c 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ote.origin.url"))...............
cd80 20 20 20 20 20 20 20 20 75 72 6c 29 29 29 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 70 61 63 ........url))).......(unless.pac
cda0 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 69 6e 68 69 62 69 74 2d 66 65 74 63 68 0a 20 20 20 20 20 20 kage-build--inhibit-fetch.......
cdc0 20 20 28 6c 65 74 20 28 28 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 64 69 72 29 29 ..(let.((default-directory.dir))
cde0 0a 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d 65 73 73 61 ...........(package-build--messa
ce00 67 65 20 22 55 70 64 61 74 69 6e 67 20 25 73 22 20 64 69 72 29 0a 20 20 20 20 20 20 20 20 20 20 ge."Updating.%s".dir)...........
ce20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 72 63 70 (package-build--call-process.rcp
ce40 20 22 67 69 74 22 20 22 66 65 74 63 68 22 20 22 2d 66 22 20 22 2d 2d 74 61 67 73 22 20 22 6f 72 ."git"."fetch"."-f"."--tags"."or
ce60 69 67 69 6e 22 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 65 20 6d 69 67 68 74 20 6c 61 74 igin")...........;;.We.might.lat
ce80 65 72 20 63 68 65 63 6b 6f 75 74 20 22 6f 72 69 67 69 6e 2f 48 45 41 44 22 2e 20 53 61 64 6c 79 er.checkout."origin/HEAD"..Sadly
cea0 20 22 67 69 74 20 66 65 74 63 68 22 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 63 61 6e 6e 6f 74 ."git.fetch"...........;;.cannot
cec0 20 62 65 20 74 6f 6c 64 20 74 6f 20 6b 65 65 70 20 69 74 20 75 70 2d 74 6f 2d 64 61 74 65 2c 20 .be.told.to.keep.it.up-to-date,.
cee0 73 6f 20 77 65 20 68 61 76 65 20 74 6f 20 6d 61 6b 65 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 so.we.have.to.make...........;;.
cf00 61 20 73 65 63 6f 6e 64 20 72 65 71 75 65 73 74 2e 0a 20 20 20 20 20 20 20 20 20 20 28 70 61 63 a.second.request............(pac
cf20 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 61 6c 6c 2d 70 72 6f 63 65 73 73 0a 20 20 20 20 20 20 20 kage-build--call-process........
cf40 20 20 20 20 72 63 70 20 22 67 69 74 22 20 22 72 65 6d 6f 74 65 22 20 22 73 65 74 2d 68 65 61 64 ....rcp."git"."remote"."set-head
cf60 22 20 22 6f 72 69 67 69 6e 22 20 22 2d 2d 61 75 74 6f 22 29 29 29 29 0a 20 20 20 20 20 28 74 0a "."origin"."--auto"))))......(t.
cf80 20 20 20 20 20 20 28 77 68 65 6e 20 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 64 69 72 29 0a ......(when.(file-exists-p.dir).
cfa0 20 20 20 20 20 20 20 20 28 64 65 6c 65 74 65 2d 64 69 72 65 63 74 6f 72 79 20 64 69 72 20 74 29 ........(delete-directory.dir.t)
cfc0 29 0a 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d 65 73 73 61 67 65 20 ).......(package-build--message.
cfe0 22 43 6c 6f 6e 69 6e 67 20 25 73 20 74 6f 20 25 73 22 20 75 72 6c 20 64 69 72 29 0a 20 20 20 20 "Cloning.%s.to.%s".url.dir).....
d000 20 20 28 6d 61 6b 65 2d 64 69 72 65 63 74 6f 72 79 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d ..(make-directory.package-build-
d020 77 6f 72 6b 69 6e 67 2d 64 69 72 20 74 29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 64 65 66 61 working-dir.t).......(let.((defa
d040 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 77 6f 72 6b ult-directory.package-build-work
d060 69 6e 67 2d 64 69 72 29 29 0a 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 ing-dir)).........(package-build
d080 2d 2d 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 72 63 70 20 22 67 69 74 22 20 22 63 6c 6f 6e 65 22 --call-process.rcp."git"."clone"
d0a0 20 75 72 6c 20 64 69 72 29 29 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 61 .url.dir))))))..(cl-defmethod.pa
d0c0 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 66 65 74 63 68 20 28 28 72 63 70 20 70 61 63 6b 61 67 65 ckage-build--fetch.((rcp.package
d0e0 2d 68 67 2d 72 65 63 69 70 65 29 29 0a 20 20 28 6c 65 74 20 28 28 64 69 72 20 28 70 61 63 6b 61 -hg-recipe))...(let.((dir.(packa
d100 67 65 2d 62 75 69 6c 64 2d 2d 77 6f 72 6b 69 6e 67 2d 74 72 65 65 20 72 63 70 20 74 29 29 0a 20 ge-build--working-tree.rcp.t))..
d120 20 20 20 20 20 20 20 28 75 72 6c 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 2d 75 70 73 .......(url.(package-recipe--ups
d140 74 72 65 61 6d 2d 75 72 6c 20 72 63 70 29 29 29 0a 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 tream-url.rcp))).....(cond......
d160 28 28 61 6e 64 20 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 28 65 78 70 61 6e 64 2d 66 69 6c ((and.(file-exists-p.(expand-fil
d180 65 2d 6e 61 6d 65 20 22 2e 68 67 22 20 64 69 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6c e-name.".hg".dir))............(l
d1a0 65 74 20 28 28 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 64 69 72 29 29 0a 20 20 20 et.((default-directory.dir))....
d1c0 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 3d 20 28 63 61 72 20 28 70 72 6f 63 65 73 73 ..........(string=.(car.(process
d1e0 2d 6c 69 6e 65 73 20 22 68 67 22 20 22 70 61 74 68 73 22 20 22 64 65 66 61 75 6c 74 22 29 29 20 -lines."hg"."paths"."default")).
d200 75 72 6c 29 29 29 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 70 61 63 6b 61 67 65 2d 62 75 69 url))).......(unless.package-bui
d220 6c 64 2d 2d 69 6e 68 69 62 69 74 2d 66 65 74 63 68 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 ld--inhibit-fetch.........(let.(
d240 28 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 64 69 72 29 29 0a 20 20 20 20 20 20 20 (default-directory.dir))........
d260 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d 65 73 73 61 67 65 20 22 55 70 64 61 ...(package-build--message."Upda
d280 74 69 6e 67 20 25 73 22 20 64 69 72 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 ting.%s".dir)...........(package
d2a0 2d 62 75 69 6c 64 2d 2d 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 72 63 70 20 22 68 67 22 20 22 70 -build--call-process.rcp."hg"."p
d2c0 75 6c 6c 22 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d ull")...........(package-build--
d2e0 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 72 63 70 20 22 68 67 22 20 22 75 70 64 61 74 65 22 29 29 call-process.rcp."hg"."update"))
d300 29 29 0a 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 66 69 6c 65 2d 65 78 69 ))......(t.......(when.(file-exi
d320 73 74 73 2d 70 20 64 69 72 29 0a 20 20 20 20 20 20 20 20 28 64 65 6c 65 74 65 2d 64 69 72 65 63 sts-p.dir).........(delete-direc
d340 74 6f 72 79 20 64 69 72 20 74 29 29 0a 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c tory.dir.t)).......(package-buil
d360 64 2d 2d 6d 65 73 73 61 67 65 20 22 43 6c 6f 6e 69 6e 67 20 25 73 20 74 6f 20 25 73 22 20 75 72 d--message."Cloning.%s.to.%s".ur
d380 6c 20 64 69 72 29 0a 20 20 20 20 20 20 28 6d 61 6b 65 2d 64 69 72 65 63 74 6f 72 79 20 70 61 63 l.dir).......(make-directory.pac
d3a0 6b 61 67 65 2d 62 75 69 6c 64 2d 77 6f 72 6b 69 6e 67 2d 64 69 72 20 74 29 0a 20 20 20 20 20 20 kage-build-working-dir.t).......
d3c0 28 6c 65 74 20 28 28 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 70 61 63 6b 61 67 65 (let.((default-directory.package
d3e0 2d 62 75 69 6c 64 2d 77 6f 72 6b 69 6e 67 2d 64 69 72 29 29 0a 20 20 20 20 20 20 20 20 28 70 61 -build-working-dir)).........(pa
d400 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 72 63 70 20 22 68 ckage-build--call-process.rcp."h
d420 67 22 20 22 63 6c 6f 6e 65 22 20 75 72 6c 20 64 69 72 29 29 29 29 29 29 0a 0a 3b 3b 3b 20 43 68 g"."clone".url.dir))))))..;;;.Ch
d440 65 63 6b 6f 75 74 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 70 61 63 6b 61 67 65 2d 62 75 eckout..(cl-defmethod.package-bu
d460 69 6c 64 2d 2d 63 68 65 63 6b 6f 75 74 20 28 28 72 63 70 20 70 61 63 6b 61 67 65 2d 67 69 74 2d ild--checkout.((rcp.package-git-
d480 72 65 63 69 70 65 29 29 0a 20 20 28 75 6e 6c 65 73 73 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 recipe))...(unless.package-build
d4a0 2d 2d 69 6e 68 69 62 69 74 2d 63 68 65 63 6b 6f 75 74 0a 20 20 20 20 28 6c 65 74 20 28 28 72 65 --inhibit-checkout.....(let.((re
d4c0 76 20 28 6f 72 65 66 20 72 63 70 20 63 6f 6d 6d 69 74 29 29 29 0a 20 20 20 20 20 20 28 70 61 63 v.(oref.rcp.commit))).......(pac
d4e0 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d 65 73 73 61 67 65 20 22 43 68 65 63 6b 69 6e 67 20 6f 75 kage-build--message."Checking.ou
d500 74 20 25 73 22 20 72 65 76 29 0a 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d t.%s".rev).......(package-build-
d520 2d 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 72 63 70 20 22 67 69 74 22 20 22 72 65 73 65 74 22 20 -call-process.rcp."git"."reset".
d540 22 2d 2d 68 61 72 64 22 20 72 65 76 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 6d 65 74 68 6f 64 20 "--hard".rev))))..(cl-defmethod.
d560 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 68 65 63 6b 6f 75 74 20 28 28 72 63 70 20 70 61 package-build--checkout.((rcp.pa
d580 63 6b 61 67 65 2d 68 67 2d 72 65 63 69 70 65 29 29 0a 20 20 28 75 6e 6c 65 73 73 20 70 61 63 6b ckage-hg-recipe))...(unless.pack
d5a0 61 67 65 2d 62 75 69 6c 64 2d 2d 69 6e 68 69 62 69 74 2d 63 68 65 63 6b 6f 75 74 0a 20 20 20 20 age-build--inhibit-checkout.....
d5c0 28 6c 65 74 20 28 28 72 65 76 20 28 6f 72 65 66 20 72 63 70 20 63 6f 6d 6d 69 74 29 29 29 0a 20 (let.((rev.(oref.rcp.commit)))..
d5e0 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d 65 73 73 61 67 65 20 22 43 68 .....(package-build--message."Ch
d600 65 63 6b 69 6e 67 20 6f 75 74 20 25 73 22 20 72 65 76 29 0a 20 20 20 20 20 20 28 70 61 63 6b 61 ecking.out.%s".rev).......(packa
d620 67 65 2d 62 75 69 6c 64 2d 2d 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 72 63 70 20 22 68 67 22 20 ge-build--call-process.rcp."hg".
d640 22 75 70 64 61 74 65 22 20 72 65 76 29 29 29 29 0a 0a 3b 3b 3b 20 47 65 6e 65 72 61 74 65 20 46 "update".rev))))..;;;.Generate.F
d660 69 6c 65 73 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 77 72 69 74 iles..(defun.package-build--writ
d680 65 2d 70 6b 67 2d 66 69 6c 65 20 28 64 65 73 63 20 64 69 72 29 0a 20 20 28 6c 65 74 20 28 28 6e e-pkg-file.(desc.dir)...(let.((n
d6a0 61 6d 65 20 28 70 61 63 6b 61 67 65 2d 64 65 73 63 2d 6e 61 6d 65 20 64 65 73 63 29 29 29 0a 20 ame.(package-desc-name.desc)))..
d6c0 20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 66 69 6c 65 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d ...(with-temp-file.(expand-file-
d6e0 6e 61 6d 65 20 28 66 6f 72 6d 61 74 20 22 25 73 2d 70 6b 67 2e 65 6c 22 20 6e 61 6d 65 29 20 64 name.(format."%s-pkg.el".name).d
d700 69 72 29 0a 20 20 20 20 20 20 28 70 70 20 60 28 64 65 66 69 6e 65 2d 70 61 63 6b 61 67 65 20 2c ir).......(pp.`(define-package.,
d720 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 (symbol-name.name)..............
d740 2c 28 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 2d 6a 6f 69 6e 20 28 70 61 63 6b 61 67 65 2d ,(package-version-join.(package-
d760 64 65 73 63 2d 76 65 72 73 69 6f 6e 20 64 65 73 63 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 desc-version.desc)).............
d780 20 2c 28 70 61 63 6b 61 67 65 2d 64 65 73 63 2d 73 75 6d 6d 61 72 79 20 64 65 73 63 29 0a 20 20 .,(package-desc-summary.desc)...
d7a0 20 20 20 20 20 20 20 20 20 20 20 27 2c 28 6d 61 70 63 61 72 20 28 70 63 61 73 65 2d 6c 61 6d 62 ...........',(mapcar.(pcase-lamb
d7c0 64 61 20 28 60 28 2c 70 6b 67 20 2c 76 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 da.(`(,pkg.,ver))...............
d7e0 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 70 6b 67 20 28 70 61 63 6b 61 67 65 2d 76 65 ...........(list.pkg.(package-ve
d800 72 73 69 6f 6e 2d 6a 6f 69 6e 20 76 65 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rsion-join.ver)))...............
d820 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 64 65 73 63 2d 72 65 71 73 20 64 65 73 63 .........(package-desc-reqs.desc
d840 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 40 28 63 6c 2d 6d 61 70 63 61 6e 20 28 70 63 ))..............,@(cl-mapcan.(pc
d860 61 73 65 2d 6c 61 6d 62 64 61 20 28 60 28 2c 6b 65 79 20 2e 20 2c 76 61 6c 29 29 0a 20 20 20 20 ase-lambda.(`(,key...,val)).....
d880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 6f ........................(when.(o
d8a0 72 20 28 73 79 6d 62 6f 6c 70 20 76 61 6c 29 20 28 6c 69 73 74 70 20 76 61 6c 29 29 0a 20 20 20 r.(symbolp.val).(listp.val))....
d8c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 65 ...........................;;.We
d8e0 20 6d 75 73 74 20 71 75 6f 74 65 20 6c 69 73 74 73 20 61 6e 64 20 73 79 6d 62 6f 6c 73 2c 0a 20 .must.quote.lists.and.symbols,..
d900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 .............................;;.
d920 62 65 63 61 75 73 65 20 45 6d 61 63 73 20 32 34 2e 33 20 61 6e 64 20 65 61 72 6c 69 65 72 20 65 because.Emacs.24.3.and.earlier.e
d940 76 61 6c 75 61 74 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 valuate.........................
d960 20 20 20 20 20 20 3b 3b 20 74 68 65 20 70 61 63 6b 61 67 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e ......;;.the.package.information
d980 2c 20 77 68 69 63 68 20 77 6f 75 6c 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ,.which.would...................
d9a0 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 62 72 65 61 6b 20 66 6f 72 20 75 6e 71 75 6f 74 65 ............;;.break.for.unquote
d9c0 64 20 73 79 6d 62 6f 6c 73 20 6f 72 20 6c 69 73 74 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 d.symbols.or.lists..............
d9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 68 69 6c 65 20 74 68 69 73 20 ..................;;.While.this.
da00 6c 69 62 72 61 72 79 20 64 6f 65 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 0a 20 20 20 20 20 20 20 library.does.not.support........
da20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73 75 63 68 20 6f .......................;;.such.o
da40 6c 64 20 45 6d 61 63 73 65 6e 2c 20 74 68 65 20 70 61 63 6b 61 67 65 73 20 74 68 61 74 0a 20 20 ld.Emacsen,.the.packages.that...
da60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 77 ............................;;.w
da80 65 20 70 72 6f 64 75 63 65 20 73 68 6f 75 6c 64 20 72 65 6d 61 69 6e 20 63 6f 6d 70 61 74 69 62 e.produce.should.remain.compatib
daa0 6c 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 le..............................
dac0 20 20 28 73 65 74 71 20 76 61 6c 20 28 6c 69 73 74 20 27 71 75 6f 74 65 20 76 61 6c 29 29 29 0a ..(setq.val.(list.'quote.val))).
dae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 ............................(lis
db00 74 20 6b 65 79 20 76 61 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t.key.val)).....................
db20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 64 65 73 63 2d 65 78 74 72 61 73 20 64 65 73 63 29 ......(package-desc-extras.desc)
db40 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 0a 20 ))...........(current-buffer))..
db60 20 20 20 20 20 28 70 72 69 6e 63 20 22 3b 3b 20 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3a .....(princ.";;.Local.Variables:
db80 5c 6e 3b 3b 20 6e 6f 2d 62 79 74 65 2d 63 6f 6d 70 69 6c 65 3a 20 74 5c 6e 3b 3b 20 45 6e 64 3a \n;;.no-byte-compile:.t\n;;.End:
dba0 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 \n"..............(current-buffer
dbc0 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 74 61 72 )))))..(defun.package-build--tar
dbe0 2d 74 79 70 65 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 60 62 73 64 27 20 6f 72 20 60 67 6e 75 -type.()..."Return.`bsd'.or.`gnu
dc00 27 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 79 70 65 20 6f 66 20 54 61 72 20 65 78 65 63 75 '.depending.on.type.of.Tar.execu
dc20 74 61 62 6c 65 2e 0a 54 65 73 74 73 20 61 6e 64 20 73 65 74 73 20 76 61 72 69 61 62 6c 65 20 60 table..Tests.and.sets.variable.`
dc40 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 74 61 72 2d 74 79 70 65 27 20 69 66 20 6e 6f 74 20 package-build--tar-type'.if.not.
dc60 61 6c 72 65 61 64 79 20 73 65 74 2e 22 0a 20 20 28 6f 72 20 70 61 63 6b 61 67 65 2d 62 75 69 6c already.set."...(or.package-buil
dc80 64 2d 2d 74 61 72 2d 74 79 70 65 0a 20 20 20 20 20 20 28 61 6e 64 20 70 61 63 6b 61 67 65 2d 62 d--tar-type.......(and.package-b
dca0 75 69 6c 64 2d 74 61 72 2d 65 78 65 63 75 74 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 28 uild-tar-executable............(
dcc0 6c 65 74 20 28 28 76 20 28 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 74 6f 2d 73 74 72 69 6e 67 let.((v.(shell-command-to-string
dce0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 25 ......................(format."%
dd00 73 20 2d 2d 76 65 72 73 69 6f 6e 22 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 61 72 2d 65 s.--version".package-build-tar-e
dd20 78 65 63 75 74 61 62 6c 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 xecutable))))..............(setq
dd40 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 74 61 72 2d 74 79 70 65 0a 20 20 20 20 20 20 20 .package-build--tar-type........
dd60 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 ............(cond.((string-match
dd80 2d 70 20 22 62 73 64 74 61 72 22 20 76 29 20 27 62 73 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 -p."bsdtar".v).'bsd)............
dda0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 2d 70 20 22 ..............((string-match-p."
ddc0 47 4e 55 20 74 61 72 22 20 76 29 20 27 67 6e 75 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 GNU.tar".v).'gnu)...............
dde0 20 20 20 20 20 20 20 20 20 20 20 28 74 20 27 67 6e 75 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 ...........(t.'gnu)))))))..(defu
de00 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 72 65 61 74 65 2d 74 61 72 20 28 72 63 70 n.package-build--create-tar.(rcp
de20 20 64 69 72 65 63 74 6f 72 79 29 0a 20 20 22 43 72 65 61 74 65 20 61 20 74 61 72 20 66 69 6c 65 .directory)..."Create.a.tar.file
de40 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 70 61 63 6b 61 67 65 20 76 65 72 73 69 6f 6e 20 .containing.the.package.version.
de60 73 70 65 63 69 66 69 65 64 20 62 79 20 52 43 50 2e 0a 44 49 52 45 43 54 4f 52 59 20 69 73 20 61 specified.by.RCP..DIRECTORY.is.a
de80 20 74 65 6d 70 6f 72 61 72 79 20 64 69 72 65 63 74 6f 72 79 20 74 68 61 74 20 63 6f 6e 74 61 69 .temporary.directory.that.contai
dea0 6e 73 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 0a 74 68 61 74 20 69 73 20 70 75 74 20 69 6e 20 ns.the.directory.that.is.put.in.
dec0 74 68 65 20 74 61 72 62 61 6c 6c 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 6e 61 6d 65 20 28 6f 72 the.tarball."...(let*.((name.(or
dee0 65 66 20 72 63 70 20 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 76 65 72 73 69 6f 6e 20 ef.rcp.name))..........(version.
df00 28 6f 72 65 66 20 72 63 70 20 76 65 72 73 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 28 74 69 (oref.rcp.version))..........(ti
df20 6d 65 20 28 6f 72 65 66 20 72 63 70 20 74 69 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 74 61 me.(oref.rcp.time))..........(ta
df40 72 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 28 63 6f 6e 63 61 74 20 6e 61 6d 65 r.(expand-file-name.(concat.name
df60 20 22 2d 22 20 76 65 72 73 69 6f 6e 20 22 2e 74 61 72 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 ."-".version.".tar")............
df80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 63 6b 61 67 65 2d 62 75 69 .....................package-bui
dfa0 6c 64 2d 61 72 63 68 69 76 65 2d 64 69 72 29 29 0a 20 20 20 20 20 20 20 20 20 28 64 69 72 20 28 ld-archive-dir))..........(dir.(
dfc0 63 6f 6e 63 61 74 20 6e 61 6d 65 20 22 2d 22 20 76 65 72 73 69 6f 6e 29 29 29 0a 20 20 20 20 28 concat.name."-".version))).....(
dfe0 77 68 65 6e 20 28 61 6e 64 20 28 65 71 20 73 79 73 74 65 6d 2d 74 79 70 65 20 27 77 69 6e 64 6f when.(and.(eq.system-type.'windo
e000 77 73 2d 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 20 28 70 61 63 6b 61 ws-nt)................(eq.(packa
e020 67 65 2d 62 75 69 6c 64 2d 2d 74 61 72 2d 74 79 70 65 29 20 27 67 6e 75 29 29 0a 20 20 20 20 20 ge-build--tar-type).'gnu))......
e040 20 28 73 65 74 71 20 74 61 72 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 .(setq.tar.(replace-regexp-in-st
e060 72 69 6e 67 20 22 5e 5c 5c 28 5b 61 2d 7a 5d 5c 5c 29 3a 22 20 22 2f 5c 5c 31 22 20 74 61 72 29 ring."^\\([a-z]\\):"."/\\1".tar)
e080 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 )).....(let.((default-directory.
e0a0 64 69 72 65 63 74 6f 72 79 29 29 0a 20 20 20 20 20 20 28 70 72 6f 63 65 73 73 2d 66 69 6c 65 0a directory)).......(process-file.
e0c0 20 20 20 20 20 20 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 61 72 2d 65 78 65 63 75 74 61 .......package-build-tar-executa
e0e0 62 6c 65 20 6e 69 6c 0a 20 20 20 20 20 20 20 28 67 65 74 2d 62 75 66 66 65 72 2d 63 72 65 61 74 ble.nil........(get-buffer-creat
e100 65 20 22 2a 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 63 68 65 63 6b 6f 75 74 2a 22 29 20 6e 69 e."*package-build-checkout*").ni
e120 6c 0a 20 20 20 20 20 20 20 22 2d 63 66 22 20 74 61 72 20 64 69 72 0a 20 20 20 20 20 20 20 3b 3b l........"-cf".tar.dir........;;
e140 20 41 72 67 75 6d 65 6e 74 73 20 74 68 61 74 20 61 72 65 20 6e 65 65 64 20 74 6f 20 73 74 72 69 .Arguments.that.are.need.to.stri
e160 70 20 6d 65 74 61 64 61 74 61 20 74 68 61 74 0a 20 20 20 20 20 20 20 3b 3b 20 70 72 65 76 65 6e p.metadata.that........;;.preven
e180 74 20 61 20 72 65 70 72 6f 64 75 63 69 62 6c 65 20 74 61 72 62 61 6c 6c 20 61 73 20 64 65 73 63 t.a.reproducible.tarball.as.desc
e1a0 72 69 62 65 64 20 61 74 0a 20 20 20 20 20 20 20 3b 3b 20 68 74 74 70 73 3a 2f 2f 72 65 70 72 6f ribed.at........;;.https://repro
e1c0 64 75 63 69 62 6c 65 2d 62 75 69 6c 64 73 2e 6f 72 67 2f 64 6f 63 73 2f 61 72 63 68 69 76 65 73 ducible-builds.org/docs/archives
e1e0 2e 0a 20 20 20 20 20 20 20 22 2d 2d 73 6f 72 74 3d 6e 61 6d 65 22 0a 20 20 20 20 20 20 20 28 66 ........."--sort=name"........(f
e200 6f 72 6d 61 74 20 22 2d 2d 6d 74 69 6d 65 3d 40 25 64 22 20 74 69 6d 65 29 0a 20 20 20 20 20 20 ormat."--mtime=@%d".time).......
e220 20 22 2d 2d 6f 77 6e 65 72 3d 30 22 20 22 2d 2d 67 72 6f 75 70 3d 30 22 20 22 2d 2d 6e 75 6d 65 ."--owner=0"."--group=0"."--nume
e240 72 69 63 2d 6f 77 6e 65 72 22 0a 20 20 20 20 20 20 20 22 2d 2d 70 61 78 2d 6f 70 74 69 6f 6e 3d ric-owner"........"--pax-option=
e260 65 78 74 68 64 72 2e 6e 61 6d 65 3d 25 64 2f 50 61 78 48 65 61 64 65 72 73 2f 25 66 2c 64 65 6c exthdr.name=%d/PaxHeaders/%f,del
e280 65 74 65 3d 61 74 69 6d 65 2c 64 65 6c 65 74 65 3d 63 74 69 6d 65 22 29 29 0a 20 20 20 20 28 77 ete=atime,delete=ctime")).....(w
e2a0 68 65 6e 20 28 61 6e 64 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 76 65 72 62 6f 73 65 20 6e hen.(and.package-build-verbose.n
e2c0 6f 6e 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 43 oninteractive).......(message."C
e2e0 72 65 61 74 65 64 20 25 73 20 63 6f 6e 74 61 69 6e 69 6e 67 3a 22 20 28 66 69 6c 65 2d 6e 61 6d reated.%s.containing:".(file-nam
e300 65 2d 6e 6f 6e 64 69 72 65 63 74 6f 72 79 20 74 61 72 29 29 0a 20 20 20 20 20 20 28 64 6f 6c 69 e-nondirectory.tar)).......(doli
e320 73 74 20 28 6c 69 6e 65 20 28 73 6f 72 74 20 28 70 72 6f 63 65 73 73 2d 6c 69 6e 65 73 20 70 61 st.(line.(sort.(process-lines.pa
e340 63 6b 61 67 65 2d 62 75 69 6c 64 2d 74 61 72 2d 65 78 65 63 75 74 61 62 6c 65 0a 20 20 20 20 20 ckage-build-tar-executable......
e360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
e380 20 20 20 20 22 2d 2d 6c 69 73 74 22 20 22 2d 2d 66 69 6c 65 22 20 74 61 72 29 0a 20 20 20 20 20 ...."--list"."--file".tar)......
e3a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 73 74 72 69 6e 67 3c 29 29 .....................#'string<))
e3c0 0a 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 20 20 25 73 22 20 6c 69 6e 65 29 29 29 .........(message."..%s".line)))
e3e0 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 77 72 69 74 65 2d ))..(defun.package-build--write-
e400 70 6b 67 2d 72 65 61 64 6d 65 20 28 70 6b 67 20 66 69 6c 65 73 29 0a 20 20 28 77 68 65 6e 2d 6c pkg-readme.(pkg.files)...(when-l
e420 65 74 2a 20 28 28 6e 61 6d 65 20 28 6f 72 65 66 20 70 6b 67 20 6e 61 6d 65 29 29 0a 20 20 20 20 et*.((name.(oref.pkg.name)).....
e440 20 20 20 20 20 20 20 20 20 20 28 63 6f 6d 6d 65 6e 74 61 72 79 0a 20 20 20 20 20 20 20 20 20 20 ..........(commentary...........
e460 20 20 20 20 20 28 6c 65 74 2a 20 28 28 66 69 6c 65 20 28 63 6f 6e 63 61 74 20 6e 61 6d 65 20 22 .....(let*.((file.(concat.name."
e480 2e 65 6c 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 69 .el")).......................(fi
e4a0 6c 65 20 28 6f 72 20 28 63 61 72 20 28 72 61 73 73 6f 63 20 66 69 6c 65 20 66 69 6c 65 73 29 29 le.(or.(car.(rassoc.file.files))
e4c0 20 66 69 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 .file)).......................(f
e4e0 69 6c 65 20 28 61 6e 64 20 66 69 6c 65 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 ile.(and.file.(expand-file-name.
e500 66 69 6c 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 28 file))))..................(and.(
e520 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 file-exists-p.file).............
e540 20 20 20 20 20 20 20 20 20 20 28 6c 6d 2d 63 6f 6d 6d 65 6e 74 61 72 79 20 66 69 6c 65 29 29 29 ..........(lm-commentary.file)))
e560 29 29 0a 20 20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 28 )).....(with-temp-buffer.......(
e580 69 66 20 28 3e 3d 20 65 6d 61 63 73 2d 6d 61 6a 6f 72 2d 76 65 72 73 69 6f 6e 20 32 38 29 0a 20 if.(>=.emacs-major-version.28)..
e5a0 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 63 6f 6d 6d 65 6e 74 61 72 79 29 0a 20 20 20 .........(insert.commentary)....
e5c0 20 20 20 20 20 3b 3b 20 54 61 6b 65 6e 20 66 72 6f 6d 20 32 38 2e 30 27 73 20 60 6c 6d 2d 63 6f .....;;.Taken.from.28.0's.`lm-co
e5e0 6d 6d 65 6e 74 61 72 79 27 2e 0a 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 0a 20 20 20 20 20 mmentary'..........(insert......
e600 20 20 20 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 20 20 ....(replace-regexp-in-string...
e620 20 20 20 20 3b 20 47 65 74 20 72 69 64 20 6f 66 2e 2e 2e 0a 20 20 20 20 20 20 20 20 20 20 22 5b ....;.Get.rid.of.............."[
e640 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2a 24 22 20 22 22 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 20 74 [:blank:]]*$"."".............;.t
e660 72 61 69 6c 69 6e 67 20 77 68 69 74 65 2d 73 70 61 63 65 0a 20 20 20 20 20 20 20 20 20 20 28 72 railing.white-space...........(r
e680 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 eplace-regexp-in-string.........
e6a0 20 20 20 28 66 6f 72 6d 61 74 20 22 25 73 5c 5c 7c 25 73 5c 5c 7c 25 73 22 0a 20 20 20 20 20 20 ...(format."%s\\|%s\\|%s".......
e6c0 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 63 6f 6d 6d 65 6e 74 61 72 79 20 68 65 61 64 65 .............;;.commentary.heade
e6e0 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 22 5e 3b r....................(concat."^;
e700 3b 3b 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2a 5c 5c 28 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ;;[[:blank:]]*\\("..............
e720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 6d 2d 63 6f 6d 6d 65 6e 74 61 72 79 2d 68 65 61 64 ..............lm-commentary-head
e740 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c er............................"\
e760 5c 29 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5c 6e 5d 2a 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 \):[[:blank:]\n]*").............
e780 20 20 20 20 20 20 20 22 5e 3b 3b 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 3f 22 20 20 20 20 20 3b 20 64 ......."^;;[[:blank:]]?".....;.d
e7a0 6f 75 62 6c 65 20 73 65 6d 69 63 6f 6c 6f 6e 20 70 72 65 66 69 78 0a 20 20 20 20 20 20 20 20 20 ouble.semicolon.prefix..........
e7c0 20 20 20 20 20 20 20 20 20 20 22 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5c 6e 5d 2a 5c 5c 27 22 29 20 20 .........."[[:blank:]\n]*\\'")..
e7e0 3b 20 74 72 61 69 6c 69 6e 67 20 6e 65 77 2d 6c 69 6e 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 ;.trailing.new-lines............
e800 22 22 20 63 6f 6d 6d 65 6e 74 61 72 79 29 29 29 29 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 "".commentary)))).......(unless.
e820 28 6f 72 20 28 62 6f 62 70 29 20 28 3d 20 28 63 68 61 72 2d 62 65 66 6f 72 65 29 20 3f 5c 6e 29 (or.(bobp).(=.(char-before).?\n)
e840 29 0a 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 3f 5c 6e 29 29 0a 20 20 20 20 20 20 3b 3b ).........(insert.?\n)).......;;
e860 20 57 65 20 77 72 69 74 65 20 74 68 65 20 66 69 6c 65 20 65 76 65 6e 20 69 66 20 69 74 20 69 73 .We.write.the.file.even.if.it.is
e880 20 65 6d 70 74 79 2c 20 77 68 69 63 68 20 69 73 20 70 65 72 68 61 70 73 0a 20 20 20 20 20 20 3b .empty,.which.is.perhaps.......;
e8a0 3b 20 61 20 71 75 65 73 74 69 6f 6e 61 62 6c 65 20 63 68 6f 69 63 65 2c 20 62 75 74 20 61 74 20 ;.a.questionable.choice,.but.at.
e8c0 6c 65 61 73 74 20 69 74 27 73 20 63 6f 6e 73 69 73 74 65 6e 74 2e 0a 20 20 20 20 20 20 28 6c 65 least.it's.consistent........(le
e8e0 74 20 28 28 63 6f 64 69 6e 67 2d 73 79 73 74 65 6d 2d 66 6f 72 2d 77 72 69 74 65 20 62 75 66 66 t.((coding-system-for-write.buff
e900 65 72 2d 66 69 6c 65 2d 63 6f 64 69 6e 67 2d 73 79 73 74 65 6d 29 29 0a 20 20 20 20 20 20 20 20 er-file-coding-system)).........
e920 28 77 72 69 74 65 2d 72 65 67 69 6f 6e 20 6e 69 6c 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 (write-region.nil.nil...........
e940 20 20 20 20 20 20 20 20 20 20 20 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 28 63 ............(expand-file-name.(c
e960 6f 6e 63 61 74 20 6e 61 6d 65 20 22 2d 72 65 61 64 6d 65 2e 74 78 74 22 29 0a 20 20 20 20 20 20 oncat.name."-readme.txt").......
e980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
e9a0 20 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 64 69 72 29 29 29 29 29 ..package-build-archive-dir)))))
e9c0 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 67 65 6e 65 72 61 74 )..(defun.package-build--generat
e9e0 65 2d 69 6e 66 6f 2d 66 69 6c 65 73 20 28 72 63 70 20 66 69 6c 65 73 20 74 61 72 67 65 74 2d 64 e-info-files.(rcp.files.target-d
ea00 69 72 29 0a 20 20 22 43 72 65 61 74 65 20 61 6e 20 69 6e 66 6f 20 66 69 6c 65 20 66 6f 72 20 65 ir)..."Create.an.info.file.for.e
ea20 61 63 68 20 74 65 78 69 6e 66 6f 20 66 69 6c 65 20 6c 69 73 74 65 64 20 69 6e 20 46 49 4c 45 53 ach.texinfo.file.listed.in.FILES
ea40 2e 0a 41 6c 73 6f 20 63 72 65 61 74 65 20 74 68 65 20 69 6e 66 6f 20 64 69 72 20 66 69 6c 65 2e ..Also.create.the.info.dir.file.
ea60 20 20 52 65 6d 6f 76 65 20 65 61 63 68 20 6f 72 69 67 69 6e 61 6c 20 74 65 78 69 6e 66 6f 0a 66 ..Remove.each.original.texinfo.f
ea80 69 6c 65 2e 20 20 54 68 65 20 73 6f 75 72 63 65 20 61 6e 64 20 64 65 73 74 69 6e 61 74 69 6f 6e ile...The.source.and.destination
eaa0 20 66 69 6c 65 20 70 61 74 68 73 20 61 72 65 20 65 78 70 61 6e 64 65 64 20 69 6e 0a 60 64 65 66 .file.paths.are.expanded.in.`def
eac0 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 27 20 61 6e 64 20 54 41 52 47 45 54 2d 44 49 52 20 72 ault-directory'.and.TARGET-DIR.r
eae0 65 73 70 65 63 74 69 76 65 6c 79 2e 22 0a 20 20 28 70 63 61 73 65 2d 64 6f 6c 69 73 74 20 28 60 espectively."...(pcase-dolist.(`
eb00 28 2c 73 72 63 20 2e 20 2c 74 6d 70 29 20 66 69 6c 65 73 29 0a 20 20 20 20 28 6c 65 74 20 28 28 (,src...,tmp).files).....(let.((
eb20 65 78 74 65 6e 73 69 6f 6e 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 65 78 74 65 6e 73 69 6f 6e 20 74 extension.(file-name-extension.t
eb40 6d 70 29 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 6d 65 6d 62 65 72 20 65 78 74 65 6e 73 mp))).......(when.(member.extens
eb60 69 6f 6e 20 27 28 22 69 6e 66 6f 22 20 22 74 65 78 69 22 20 22 74 65 78 69 6e 66 6f 22 29 29 0a ion.'("info"."texi"."texinfo")).
eb80 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 73 72 63 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 ........(let*.((src.(expand-file
eba0 2d 6e 61 6d 65 20 73 72 63 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 6d 70 20 -name.src))................(tmp.
ebc0 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 74 6d 70 20 74 61 72 67 65 74 2d 64 69 72 (expand-file-name.tmp.target-dir
ebe0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 65 78 69 20 73 72 63 29 0a 20 20 20 ))................(texi.src)....
ec00 20 20 20 20 20 20 20 20 20 20 20 20 28 69 6e 66 6f 20 74 6d 70 29 29 0a 20 20 20 20 20 20 20 20 ............(info.tmp)).........
ec20 20 20 28 77 68 65 6e 20 28 6d 65 6d 62 65 72 20 65 78 74 65 6e 73 69 6f 6e 20 27 28 22 74 65 78 ..(when.(member.extension.'("tex
ec40 69 22 20 22 74 65 78 69 6e 66 6f 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 6c 65 i"."texinfo")).............(dele
ec60 74 65 2d 66 69 6c 65 20 74 6d 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 69 te-file.tmp).............(setq.i
ec80 6e 66 6f 20 28 63 6f 6e 63 61 74 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 73 61 6e 73 2d 65 78 74 65 nfo.(concat.(file-name-sans-exte
eca0 6e 73 69 6f 6e 20 74 6d 70 29 20 22 2e 69 6e 66 6f 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 nsion.tmp).".info"))............
ecc0 20 28 75 6e 6c 65 73 73 20 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 69 6e 66 6f 29 0a 20 20 .(unless.(file-exists-p.info)...
ece0 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d 65 73 73 ............(package-build--mess
ed00 61 67 65 20 22 47 65 6e 65 72 61 74 69 6e 67 20 25 73 22 20 69 6e 66 6f 29 0a 20 20 20 20 20 20 age."Generating.%s".info).......
ed20 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 74 68 65 20 69 6e 66 6f 20 66 69 6c 65 20 69 73 20 6c ........;;.If.the.info.file.is.l
ed40 6f 63 61 74 65 64 20 69 6e 20 61 20 73 75 62 64 69 72 65 63 74 6f 72 79 0a 20 20 20 20 20 20 20 ocated.in.a.subdirectory........
ed60 20 20 20 20 20 20 20 3b 3b 20 61 6e 64 20 63 6f 6e 74 61 69 6e 73 20 72 65 6c 61 74 69 76 65 20 .......;;.and.contains.relative.
ed80 69 6e 63 6c 75 64 65 73 2c 20 74 68 65 6e 20 69 74 20 69 73 0a 20 20 20 20 20 20 20 20 20 20 20 includes,.then.it.is............
eda0 20 20 20 3b 3b 20 6e 65 63 65 73 73 61 72 79 20 74 6f 20 72 75 6e 20 6d 61 6b 65 69 6e 66 6f 20 ...;;.necessary.to.run.makeinfo.
edc0 69 6e 20 74 68 65 20 73 75 62 64 69 72 65 63 74 6f 72 79 2e 0a 20 20 20 20 20 20 20 20 20 20 20 in.the.subdirectory.............
ede0 20 20 20 28 77 69 74 68 2d 64 65 6d 6f 74 65 64 2d 65 72 72 6f 72 73 20 22 45 72 72 6f 72 3a 20 ...(with-demoted-errors."Error:.
ee00 25 53 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 64 65 66 61 75 %S".................(let.((defau
ee20 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 64 69 72 65 63 74 6f 72 lt-directory.(file-name-director
ee40 79 20 74 65 78 69 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 y.texi)))...................(pac
ee60 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 61 6c 6c 2d 70 72 6f 63 65 73 73 0a 20 20 20 20 20 20 20 kage-build--call-process........
ee80 20 20 20 20 20 20 20 20 20 20 20 20 72 63 70 20 22 6d 61 6b 65 69 6e 66 6f 22 20 22 2d 2d 6e 6f ............rcp."makeinfo"."--no
eea0 2d 73 70 6c 69 74 22 20 74 65 78 69 20 22 2d 6f 22 20 69 6e 66 6f 29 29 29 29 29 0a 20 20 20 20 -split".texi."-o".info))))).....
eec0 20 20 20 20 20 20 28 77 69 74 68 2d 64 65 6d 6f 74 65 64 2d 65 72 72 6f 72 73 20 22 45 72 72 6f ......(with-demoted-errors."Erro
eee0 72 3a 20 25 53 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 64 65 66 61 75 6c r:.%S".............(let.((defaul
ef00 74 2d 64 69 72 65 63 74 6f 72 79 20 74 61 72 67 65 74 2d 64 69 72 29 29 0a 20 20 20 20 20 20 20 t-directory.target-dir))........
ef20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 61 6c 6c 2d 70 72 6f 63 .......(package-build--call-proc
ef40 65 73 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 63 70 20 22 69 6e 73 74 61 6c 6c 2d ess................rcp."install-
ef60 69 6e 66 6f 22 20 22 2d 2d 64 69 72 3d 64 69 72 22 20 69 6e 66 6f 29 29 29 29 29 29 29 29 0a 0a info"."--dir=dir".info))))))))..
ef80 3b 3b 3b 20 50 61 74 63 68 20 4c 69 62 72 61 72 69 65 73 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b ;;;.Patch.Libraries..(defun.pack
efa0 61 67 65 2d 62 75 69 6c 64 2d 2d 75 70 64 61 74 65 2d 6f 72 2d 69 6e 73 65 72 74 2d 68 65 61 64 age-build--update-or-insert-head
efc0 65 72 20 28 6e 61 6d 65 20 76 61 6c 75 65 29 0a 20 20 22 45 6e 73 75 72 65 20 63 75 72 72 65 6e er.(name.value)..."Ensure.curren
efe0 74 20 62 75 66 66 65 72 20 68 61 73 20 4e 41 4d 45 20 68 65 61 64 65 72 20 77 69 74 68 20 74 68 t.buffer.has.NAME.header.with.th
f000 65 20 67 69 76 65 6e 20 56 41 4c 55 45 2e 0a 41 6e 79 20 65 78 69 73 74 69 6e 67 20 68 65 61 64 e.given.VALUE..Any.existing.head
f020 65 72 20 77 69 6c 6c 20 62 65 20 70 72 65 73 65 72 76 65 64 20 61 6e 64 20 67 69 76 65 6e 20 74 er.will.be.preserved.and.given.t
f040 68 65 20 5c 22 58 2d 4f 72 69 67 69 6e 61 6c 2d 5c 22 20 70 72 65 66 69 78 2e 0a 49 66 20 56 41 he.\"X-Original-\".prefix..If.VA
f060 4c 55 45 20 69 73 20 6e 69 6c 2c 20 74 68 65 20 6e 65 77 20 68 65 61 64 65 72 20 77 69 6c 6c 20 LUE.is.nil,.the.new.header.will.
f080 6e 6f 74 20 62 65 20 69 6e 73 65 72 74 65 64 2c 20 62 75 74 20 61 6e 79 20 6f 72 69 67 69 6e 61 not.be.inserted,.but.any.origina
f0a0 6c 20 77 69 6c 6c 0a 73 74 69 6c 6c 20 62 65 20 72 65 6e 61 6d 65 64 2e 22 0a 20 20 28 67 6f 74 l.will.still.be.renamed."...(got
f0c0 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 28 63 6f 6e 64 0a 20 20 20 28 o-char.(point-min))...(cond....(
f0e0 28 6c 65 74 20 28 28 63 61 73 65 2d 66 6f 6c 64 2d 73 65 61 72 63 68 20 74 29 29 0a 20 20 20 20 (let.((case-fold-search.t)).....
f100 20 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 28 66 6f 72 6d 61 74 20 22 5e 3b ..(re-search-forward.(format."^;
f120 2b 2a 20 2a 25 73 20 2a 3a 20 2a 22 20 28 72 65 67 65 78 70 2d 71 75 6f 74 65 20 6e 61 6d 65 29 +*.*%s.*:.*".(regexp-quote.name)
f140 29 20 6e 69 6c 20 74 29 29 0a 20 20 20 20 28 6d 6f 76 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 ).nil.t)).....(move-beginning-of
f160 2d 6c 69 6e 65 20 6e 69 6c 29 0a 20 20 20 20 28 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 -line.nil).....(search-forward."
f180 56 22 20 6e 69 6c 20 74 29 0a 20 20 20 20 28 62 61 63 6b 77 61 72 64 2d 63 68 61 72 29 0a 20 20 V".nil.t).....(backward-char)...
f1a0 20 20 28 69 6e 73 65 72 74 20 22 58 2d 4f 72 69 67 69 6e 61 6c 2d 22 29 0a 20 20 20 20 28 6d 6f ..(insert."X-Original-").....(mo
f1c0 76 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 20 6e 69 6c 29 29 0a 20 20 20 28 74 ve-beginning-of-line.nil))....(t
f1e0 0a 20 20 20 20 3b 3b 20 50 75 74 20 74 68 65 20 6e 65 77 20 68 65 61 64 65 72 20 69 6e 20 61 20 .....;;.Put.the.new.header.in.a.
f200 73 65 6e 73 69 62 6c 65 20 70 6c 61 63 65 20 69 66 20 77 65 20 63 61 6e 2e 0a 20 20 20 20 28 72 sensible.place.if.we.can......(r
f220 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 0a 20 20 20 20 20 22 5e 3b 2b 2a 20 2a 5c 5c 28 e-search-forward......"^;+*.*\\(
f240 56 65 72 73 69 6f 6e 5c 5c 7c 50 61 63 6b 61 67 65 2d 52 65 71 75 69 72 65 73 5c 5c 7c 4b 65 79 Version\\|Package-Requires\\|Key
f260 77 6f 72 64 73 5c 5c 7c 55 52 4c 5c 5c 29 20 2a 3a 22 20 6e 69 6c 20 74 29 0a 20 20 20 20 28 66 words\\|URL\\).*:".nil.t).....(f
f280 6f 72 77 61 72 64 2d 6c 69 6e 65 29 29 29 0a 20 20 28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61 74 orward-line)))...(insert.(format
f2a0 20 22 3b 3b 20 25 73 3a 20 25 73 5c 6e 22 20 6e 61 6d 65 20 76 61 6c 75 65 29 29 29 0a 0a 28 64 .";;.%s:.%s\n".name.value)))..(d
f2c0 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 65 6e 73 75 72 65 2d 65 6e 64 73 2d efun.package-build--ensure-ends-
f2e0 68 65 72 65 2d 6c 69 6e 65 20 28 66 69 6c 65 29 0a 20 20 22 41 64 64 20 74 68 65 20 5c 22 46 49 here-line.(file)..."Add.the.\"FI
f300 4c 45 20 65 6e 64 73 20 68 65 72 65 5c 22 20 74 72 61 69 6c 69 6e 67 20 6c 69 6e 65 20 69 66 20 LE.ends.here\".trailing.line.if.
f320 69 74 20 69 73 20 6d 69 73 73 69 6e 67 2e 22 0a 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f it.is.missing."...(save-excursio
f340 6e 0a 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 n.....(goto-char.(point-min))...
f360 20 20 28 6c 65 74 20 28 28 74 72 61 69 6c 65 72 20 28 66 6f 72 6d 61 74 20 22 3b 3b 3b 20 25 73 ..(let.((trailer.(format.";;;.%s
f380 20 65 6e 64 73 20 68 65 72 65 22 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f 6e 64 69 72 65 63 74 .ends.here".(file-name-nondirect
f3a0 6f 72 79 20 66 69 6c 65 29 29 29 29 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 72 65 2d 73 ory.file)))).......(unless.(re-s
f3c0 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 28 66 6f 72 6d 61 74 20 22 5e 25 73 22 20 28 72 65 67 earch-forward.(format."^%s".(reg
f3e0 65 78 70 2d 71 75 6f 74 65 20 74 72 61 69 6c 65 72 29 29 20 6e 69 6c 20 74 29 0a 20 20 20 20 20 exp-quote.trailer)).nil.t)......
f400 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20 20 20 20 ...(goto-char.(point-max))......
f420 20 20 20 28 69 6e 73 65 72 74 20 3f 5c 6e 20 74 72 61 69 6c 65 72 20 3f 5c 6e 29 29 29 29 29 0a ...(insert.?\n.trailer.?\n))))).
f440 0a 3b 3b 3b 20 50 61 63 6b 61 67 65 20 53 74 72 75 63 74 73 0a 0a 28 64 65 66 75 6e 20 70 61 63 .;;;.Package.Structs..(defun.pac
f460 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 64 65 73 63 2d 66 72 6f 6d 2d 6c 69 62 72 61 72 79 20 28 72 kage-build--desc-from-library.(r
f480 63 70 20 66 69 6c 65 73 20 26 6f 70 74 69 6f 6e 61 6c 20 6b 69 6e 64 29 0a 20 20 22 52 65 74 75 cp.files.&optional.kind)..."Retu
f4a0 72 6e 20 74 68 65 20 70 61 63 6b 61 67 65 20 64 65 73 63 72 69 70 74 69 6f 6e 20 66 6f 72 20 52 rn.the.package.description.for.R
f4c0 43 50 2e 0a 0a 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 75 73 65 64 20 66 6f 72 20 61 CP...This.function.is.used.for.a
f4e0 6c 6c 20 70 61 63 6b 61 67 65 73 20 74 68 61 74 20 63 6f 6e 73 69 73 74 20 6f 66 20 61 20 73 69 ll.packages.that.consist.of.a.si
f500 6e 67 6c 65 0a 66 69 6c 65 20 61 6e 64 20 74 68 6f 73 65 20 70 61 63 6b 61 67 65 73 20 74 68 61 ngle.file.and.those.packages.tha
f520 74 20 63 6f 6e 73 69 73 74 20 6f 66 20 6d 75 6c 74 69 70 6c 65 20 66 69 6c 65 73 20 62 75 74 20 t.consist.of.multiple.files.but.
f540 6c 61 63 6b 0a 61 20 66 69 6c 65 20 6e 61 6d 65 64 20 5c 22 4e 41 4d 45 2d 70 6b 67 2e 65 6c 5c lack.a.file.named.\"NAME-pkg.el\
f560 22 20 6f 72 20 5c 22 4e 41 4d 45 2d 70 6b 67 2e 65 6c 5c 22 2e 0a 0a 54 68 65 20 72 65 74 75 72 ".or.\"NAME-pkg.el\"...The.retur
f580 6e 65 64 20 76 61 6c 75 65 20 69 73 20 61 20 60 70 61 63 6b 61 67 65 2d 64 65 73 63 27 20 73 74 ned.value.is.a.`package-desc'.st
f5a0 72 75 63 74 20 28 77 68 69 63 68 20 73 65 65 29 2e 0a 54 68 65 20 76 61 6c 75 65 73 20 6f 66 20 ruct.(which.see)..The.values.of.
f5c0 74 68 65 20 60 6e 61 6d 65 27 20 61 6e 64 20 60 76 65 72 73 69 6f 6e 27 20 73 6c 6f 74 73 20 61 the.`name'.and.`version'.slots.a
f5e0 72 65 20 74 61 6b 65 6e 20 66 72 6f 6d 20 52 43 50 0a 69 74 73 65 6c 66 2e 20 20 54 68 65 20 76 re.taken.from.RCP.itself...The.v
f600 61 6c 75 65 20 6f 66 20 60 6b 69 6e 64 27 20 69 73 20 74 61 6b 65 6e 20 66 72 6f 6d 20 74 68 65 alue.of.`kind'.is.taken.from.the
f620 20 4b 49 4e 44 20 61 72 67 75 6d 65 6e 74 2c 0a 77 68 69 63 68 20 64 65 66 61 75 6c 74 73 20 74 .KIND.argument,.which.defaults.t
f640 6f 20 60 73 69 6e 67 6c 65 27 3b 20 74 68 65 20 6f 74 68 65 72 20 76 61 6c 69 64 20 76 61 6c 75 o.`single';.the.other.valid.valu
f660 65 20 62 65 69 6e 67 20 60 74 61 72 27 2e 0a 0a 4f 74 68 65 72 20 69 6e 66 6f 72 6d 61 74 69 6f e.being.`tar'...Other.informatio
f680 6e 20 69 73 20 74 61 6b 65 6e 20 66 72 6f 6d 20 74 68 65 20 66 69 6c 65 20 6e 61 6d 65 64 20 5c n.is.taken.from.the.file.named.\
f6a0 22 4e 41 4d 45 2d 70 6b 67 2e 65 6c 5c 22 2c 0a 77 68 69 63 68 20 73 68 6f 75 6c 64 20 61 70 70 "NAME-pkg.el\",.which.should.app
f6c0 65 61 72 20 69 6e 20 46 49 4c 45 53 2e 20 20 41 73 20 61 20 66 61 6c 6c 62 61 63 6b 2c 20 5c 22 ear.in.FILES...As.a.fallback,.\"
f6e0 4e 41 4d 45 2d 70 6b 67 2e 65 6c 2e 69 6e 5c 22 0a 69 73 20 61 6c 73 6f 20 74 72 69 65 64 2e 20 NAME-pkg.el.in\".is.also.tried..
f700 20 49 66 20 6e 65 69 74 68 65 72 20 66 69 6c 65 20 65 78 69 73 74 73 2c 20 74 68 65 6e 20 72 65 .If.neither.file.exists,.then.re
f720 74 75 72 6e 20 6e 69 6c 2e 20 20 49 66 20 61 0a 76 61 6c 75 65 20 69 73 20 6e 6f 74 20 73 70 65 turn.nil...If.a.value.is.not.spe
f740 63 69 66 69 65 64 20 69 6e 20 74 68 65 20 75 73 65 64 20 66 69 6c 65 2c 20 74 68 65 6e 20 66 61 cified.in.the.used.file,.then.fa
f760 6c 6c 20 62 61 63 6b 20 74 6f 20 74 68 65 0a 76 61 6c 75 65 20 73 70 65 63 69 66 69 65 64 20 69 ll.back.to.the.value.specified.i
f780 6e 20 74 68 65 20 66 69 6c 65 20 5c 22 4e 41 4d 45 2e 65 6c 5c 22 2e 22 0a 20 20 28 6c 65 74 2a n.the.file.\"NAME.el\"."...(let*
f7a0 20 28 28 6e 61 6d 65 20 28 6f 72 65 66 20 72 63 70 20 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 .((name.(oref.rcp.name))........
f7c0 20 20 28 76 65 72 73 69 6f 6e 20 28 6f 72 65 66 20 72 63 70 20 76 65 72 73 69 6f 6e 29 29 0a 20 ..(version.(oref.rcp.version))..
f7e0 20 20 20 20 20 20 20 20 28 63 6f 6d 6d 69 74 20 28 6f 72 65 66 20 72 63 70 20 63 6f 6d 6d 69 74 ........(commit.(oref.rcp.commit
f800 29 29 0a 20 20 20 20 20 20 20 20 20 28 66 69 6c 65 20 28 63 6f 6e 63 61 74 20 6e 61 6d 65 20 22 ))..........(file.(concat.name."
f820 2e 65 6c 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 66 69 6c 65 20 28 6f 72 20 28 63 61 72 20 28 .el"))..........(file.(or.(car.(
f840 72 61 73 73 6f 63 20 66 69 6c 65 20 66 69 6c 65 73 29 29 20 66 69 6c 65 29 29 0a 20 20 20 20 20 rassoc.file.files)).file))......
f860 20 20 20 20 28 6d 61 69 6e 74 61 69 6e 65 72 73 20 6e 69 6c 29 29 0a 20 20 20 20 28 61 6e 64 20 ....(maintainers.nil)).....(and.
f880 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 28 77 (file-exists-p.file)..........(w
f8a0 69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 ith-temp-buffer............(inse
f8c0 72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e 74 73 20 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 rt-file-contents.file)..........
f8e0 20 20 28 73 65 74 71 20 6d 61 69 6e 74 61 69 6e 65 72 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 ..(setq.maintainers.............
f900 20 20 20 20 20 28 69 66 20 28 66 62 6f 75 6e 64 70 20 27 6c 6d 2d 6d 61 69 6e 74 61 69 6e 65 72 .....(if.(fboundp.'lm-maintainer
f920 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 6d 2d 6d 61 69 6e s)......................(lm-main
f940 74 61 69 6e 65 72 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 74 tainers)....................(wit
f960 68 2d 6e 6f 2d 77 61 72 6e 69 6e 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 h-no-warnings...................
f980 20 20 20 28 61 6e 64 2d 6c 65 74 2a 20 28 28 6d 61 69 6e 74 61 69 6e 65 72 20 28 6c 6d 2d 6d 61 ...(and-let*.((maintainer.(lm-ma
f9a0 69 6e 74 61 69 6e 65 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 intainer))).....................
f9c0 20 20 20 28 6c 69 73 74 20 6d 61 69 6e 74 61 69 6e 65 72 29 29 29 29 29 0a 20 20 20 20 20 20 20 ...(list.maintainer)))))........
f9e0 20 20 20 20 28 70 61 63 6b 61 67 65 2d 64 65 73 63 2d 66 72 6f 6d 2d 64 65 66 69 6e 65 0a 20 20 ....(package-desc-from-define...
fa00 20 20 20 20 20 20 20 20 20 20 6e 61 6d 65 20 76 65 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 ..........name.version..........
fa20 20 20 20 28 6f 72 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 ...(or.(save-excursion..........
fa40 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 .........(goto-char.(point-min))
fa60 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 28 72 65 2d 73 65 61 72 ...................(and.(re-sear
fa80 63 68 2d 66 6f 72 77 61 72 64 20 22 5c 0a 5e 3b 3b 3b 20 5b 5e 20 5d 2a 5c 5c 2e 65 6c 20 2d 2d ch-forward."\.^;;;.[^.]*\\.el.--
faa0 2d 5b 20 5c 74 5d 2a 5c 5c 28 2e 2a 3f 5c 5c 29 5b 20 5c 74 5d 2a 5c 5c 28 2d 5c 5c 2a 2d 2e 2a -[.\t]*\\(.*?\\)[.\t]*\\(-\\*-.*
fac0 2d 5c 5c 2a 2d 5b 20 5c 74 5d 2a 5c 5c 29 3f 24 22 20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 20 -\\*-[.\t]*\\)?$".nil.t)........
fae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 2d 6e 6f ................(match-string-no
fb00 2d 70 72 6f 70 65 72 74 69 65 73 20 31 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -properties.1)))................
fb20 20 22 4e 6f 20 64 65 73 63 72 69 70 74 69 6f 6e 20 61 76 61 69 6c 61 62 6c 65 2e 22 29 0a 20 20 ."No.description.available.")...
fb40 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 66 ..........(cond..............((f
fb60 62 6f 75 6e 64 70 20 27 6c 6d 2d 70 61 63 6b 61 67 65 2d 72 65 71 75 69 72 65 73 29 0a 20 20 20 boundp.'lm-package-requires)....
fb80 20 20 20 20 20 20 20 20 20 20 20 28 6c 6d 2d 70 61 63 6b 61 67 65 2d 72 65 71 75 69 72 65 73 29 ...........(lm-package-requires)
fba0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 66 62 6f 75 6e 64 70 20 27 70 61 63 6b 61 67 )..............((fboundp.'packag
fbc0 65 2d 2d 70 72 65 70 61 72 65 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 29 0a 20 20 20 20 20 20 20 e--prepare-dependencies)........
fbe0 20 20 20 20 20 20 20 28 61 6e 64 2d 6c 65 74 2a 20 28 28 72 65 71 75 69 72 65 2d 6c 69 6e 65 73 .......(and-let*.((require-lines
fc00 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 6d 2d 68 ...........................(lm-h
fc20 65 61 64 65 72 2d 6d 75 6c 74 69 6c 69 6e 65 20 22 70 61 63 6b 61 67 65 2d 72 65 71 75 69 72 65 eader-multiline."package-require
fc40 73 22 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 2d s"))).................(package--
fc60 70 72 65 70 61 72 65 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 prepare-dependencies............
fc80 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 72 65 61 64 2d 66 72 6f 6d 2d 73 74 72 69 6e 67 0a ......(package-read-from-string.
fca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 6f 6e 63 61 74 20 23 27 69 ..................(mapconcat.#'i
fcc0 64 65 6e 74 69 74 79 20 72 65 71 75 69 72 65 2d 6c 69 6e 65 73 20 22 20 22 29 29 29 29 29 29 0a dentity.require-lines.".")))))).
fce0 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 60 3a 6b 69 6e 64 27 20 61 6e 64 20 60 3a 61 72 63 ............;;.`:kind'.and.`:arc
fd00 68 69 76 65 27 20 61 72 65 20 68 61 6e 64 6c 65 64 20 73 65 70 61 72 61 74 65 6c 79 2e 0a 20 20 hive'.are.handled.separately....
fd20 20 20 20 20 20 20 20 20 20 20 3a 6b 69 6e 64 20 20 20 20 20 20 20 28 6f 72 20 6b 69 6e 64 20 27 ..........:kind.......(or.kind.'
fd40 73 69 6e 67 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 68 65 20 6f 74 68 65 72 single).............;;.The.other
fd60 20 6b 65 79 77 6f 72 64 20 61 72 67 75 6d 65 6e 74 73 20 61 72 65 20 61 70 70 65 6e 64 65 64 20 .keyword.arguments.are.appended.
fd80 74 6f 20 74 68 65 20 61 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73 74 6f 72 to.the.alist.............;;.stor
fda0 65 64 20 69 6e 20 74 68 65 20 60 65 78 74 72 61 73 27 20 73 6c 6f 74 2e 20 20 4d 61 6b 65 20 73 ed.in.the.`extras'.slot...Make.s
fdc0 75 72 65 20 60 3a 63 6f 6d 6d 69 74 27 2c 20 77 68 69 63 68 0a 20 20 20 20 20 20 20 20 20 20 20 ure.`:commit',.which............
fde0 20 3b 3b 20 61 6c 77 61 79 73 20 65 78 69 73 74 73 20 61 6e 64 20 6e 65 76 65 72 20 68 61 73 20 .;;.always.exists.and.never.has.
fe00 74 6f 20 62 65 20 72 65 6d 6f 76 65 64 2c 20 63 6f 6d 65 73 20 66 69 72 73 74 20 69 6e 0a 20 20 to.be.removed,.comes.first.in...
fe20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 20 65 6e 64 20 72 65 73 75 6c 74 2c 20 73 6f 20 ..........;;.the.end.result,.so.
fe40 77 65 20 63 61 6e 20 70 6f 73 74 2d 70 72 6f 63 65 73 73 20 74 68 65 20 72 65 74 75 72 6e 65 64 we.can.post-process.the.returned
fe60 20 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 62 79 20 73 69 64 65 2d 65 66 66 .data.............;;.by.side-eff
fe80 65 63 74 2c 20 65 2e 67 2e 2c 20 74 6f 20 72 65 6d 6f 76 65 20 73 6f 6d 65 77 68 61 74 20 62 72 ect,.e.g.,.to.remove.somewhat.br
fea0 6f 6b 65 6e 20 6d 61 69 6e 74 61 69 6e 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 69 oken.maintainer.............;;.i
fec0 6e 66 6f 72 6d 61 74 69 6f 6e 2c 20 74 68 61 74 20 63 61 6e 6e 6f 74 20 65 61 73 69 6c 79 20 62 nformation,.that.cannot.easily.b
fee0 65 20 65 6e 63 6f 64 65 64 20 61 73 20 6a 73 6f 6e 20 28 73 65 65 0a 20 20 20 20 20 20 20 20 20 e.encoded.as.json.(see..........
ff00 20 20 20 3b 3b 20 60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 61 72 63 68 69 76 65 2d 61 6c ...;;.`package-build--archive-al
ff20 69 73 74 2d 66 6f 72 2d 6a 73 6f 6e 27 29 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3a 75 72 6c ist-for-json')..............:url
ff40 20 20 20 20 20 20 20 20 28 6c 6d 2d 68 6f 6d 65 70 61 67 65 29 0a 20 20 20 20 20 20 20 20 20 20 ........(lm-homepage)...........
ff60 20 20 3a 6b 65 79 77 6f 72 64 73 20 20 20 28 6c 6d 2d 6b 65 79 77 6f 72 64 73 2d 6c 69 73 74 29 ..:keywords...(lm-keywords-list)
ff80 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4e 65 77 65 72 20 60 70 61 63 6b 61 67 65 2e 65 .............;;.Newer.`package.e
ffa0 6c 27 20 76 65 72 73 69 6f 6e 73 20 73 75 70 70 6f 72 74 20 62 6f 74 68 20 60 3a 6d 61 69 6e 74 l'.versions.support.both.`:maint
ffc0 61 69 6e 65 72 73 27 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 60 3a 6d 61 69 ainers'.and.............;;.`:mai
ffe0 6e 74 61 69 6e 65 72 27 2c 20 77 68 69 6c 65 20 6f 6c 64 65 72 20 76 65 72 73 69 6f 6e 73 20 6f ntainer',.while.older.versions.o
10000 6e 6c 79 20 73 75 70 70 6f 72 74 20 74 68 65 20 6c 61 74 74 65 72 2e 0a 20 20 20 20 20 20 20 20 nly.support.the.latter..........
10020 20 20 20 20 3a 6d 61 69 6e 74 61 69 6e 65 72 20 20 28 63 61 72 20 6d 61 69 6e 74 61 69 6e 65 72 ....:maintainer..(car.maintainer
10040 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3a 6d 61 69 6e 74 61 69 6e 65 72 73 20 6d 61 69 6e s).............:maintainers.main
10060 74 61 69 6e 65 72 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 3a 61 75 74 68 6f 72 73 20 20 20 20 tainers.............:authors....
10080 20 28 6c 6d 2d 61 75 74 68 6f 72 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3a 63 6f 6d 6d 69 .(lm-authors).............:commi
100a0 74 20 20 20 20 20 20 63 6f 6d 6d 69 74 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 t......commit)))))..(defun.packa
100c0 67 65 2d 62 75 69 6c 64 2d 2d 64 65 73 63 2d 66 72 6f 6d 2d 70 61 63 6b 61 67 65 20 28 72 63 70 ge-build--desc-from-package.(rcp
100e0 20 66 69 6c 65 73 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 70 61 63 6b 61 67 65 20 64 65 .files)..."Return.the.package.de
10100 73 63 72 69 70 74 69 6f 6e 20 66 6f 72 20 52 43 50 2e 0a 0a 54 68 69 73 20 66 75 6e 63 74 69 6f scription.for.RCP...This.functio
10120 6e 20 69 73 20 75 73 65 64 20 66 6f 72 20 70 61 63 6b 61 67 65 73 20 74 68 61 74 20 63 6f 6e 73 n.is.used.for.packages.that.cons
10140 69 73 74 20 6f 66 20 6d 75 6c 74 69 70 6c 65 20 66 69 6c 65 73 2e 0a 0a 54 68 65 20 72 65 74 75 ist.of.multiple.files...The.retu
10160 72 6e 65 64 20 76 61 6c 75 65 20 69 73 20 61 20 60 70 61 63 6b 61 67 65 2d 64 65 73 63 27 20 73 rned.value.is.a.`package-desc'.s
10180 74 72 75 63 74 20 28 77 68 69 63 68 20 73 65 65 29 2e 0a 54 68 65 20 76 61 6c 75 65 73 20 6f 66 truct.(which.see)..The.values.of
101a0 20 74 68 65 20 60 6e 61 6d 65 27 20 61 6e 64 20 60 76 65 72 73 69 6f 6e 27 20 73 6c 6f 74 73 20 .the.`name'.and.`version'.slots.
101c0 61 72 65 20 74 61 6b 65 6e 20 66 72 6f 6d 20 52 43 50 0a 69 74 73 65 6c 66 2e 20 20 54 68 65 20 are.taken.from.RCP.itself...The.
101e0 76 61 6c 75 65 20 6f 66 20 60 6b 69 6e 64 27 20 69 73 20 61 6c 77 61 79 73 20 60 74 61 72 27 2e value.of.`kind'.is.always.`tar'.
10200 0a 0a 4f 74 68 65 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 73 20 74 61 6b 65 6e 20 66 72 6f ..Other.information.is.taken.fro
10220 6d 20 74 68 65 20 66 69 6c 65 20 6e 61 6d 65 64 20 5c 22 4e 41 4d 45 2e 65 6c 5c 22 2c 0a 77 68 m.the.file.named.\"NAME.el\",.wh
10240 69 63 68 20 73 68 6f 75 6c 64 20 61 70 70 65 61 72 20 69 6e 20 46 49 4c 45 53 2e 20 20 41 73 20 ich.should.appear.in.FILES...As.
10260 61 20 66 61 6c 6c 62 61 63 6b 2c 20 5c 22 4e 41 4d 45 2e 65 6c 2e 69 6e 5c 22 0a 69 73 20 61 6c a.fallback,.\"NAME.el.in\".is.al
10280 73 6f 20 74 72 69 65 64 2e 20 20 49 66 20 6e 65 69 74 68 65 72 20 66 69 6c 65 20 65 78 69 73 74 so.tried...If.neither.file.exist
102a0 73 2c 20 74 68 65 6e 20 72 65 74 75 72 6e 20 6e 69 6c 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 6e s,.then.return.nil."...(let*.((n
102c0 61 6d 65 20 28 6f 72 65 66 20 72 63 70 20 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 76 ame.(oref.rcp.name))..........(v
102e0 65 72 73 69 6f 6e 20 28 6f 72 65 66 20 72 63 70 20 76 65 72 73 69 6f 6e 29 29 0a 20 20 20 20 20 ersion.(oref.rcp.version))......
10300 20 20 20 20 28 63 6f 6d 6d 69 74 20 28 6f 72 65 66 20 72 63 70 20 63 6f 6d 6d 69 74 29 29 0a 20 ....(commit.(oref.rcp.commit))..
10320 20 20 20 20 20 20 20 20 28 66 69 6c 65 20 28 63 6f 6e 63 61 74 20 6e 61 6d 65 20 22 2d 70 6b 67 ........(file.(concat.name."-pkg
10340 2e 65 6c 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 66 69 6c 65 20 28 6f 72 20 28 63 61 72 20 28 .el"))..........(file.(or.(car.(
10360 72 61 73 73 6f 63 20 66 69 6c 65 20 66 69 6c 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 rassoc.file.files)).............
10380 20 20 20 20 20 20 20 66 69 6c 65 29 29 29 0a 20 20 20 20 28 61 6e 64 20 28 6f 72 20 28 66 69 6c .......file))).....(and.(or.(fil
103a0 65 2d 65 78 69 73 74 73 2d 70 20 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 e-exists-p.file)..............(f
103c0 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 28 73 65 74 71 20 66 69 6c 65 20 28 63 6f 6e 63 61 74 20 ile-exists-p.(setq.file.(concat.
103e0 66 69 6c 65 20 22 2e 69 6e 22 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 66 file.".in"))))..........(let.((f
10400 6f 72 6d 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 orm.(with-temp-buffer...........
10420 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e .............(insert-file-conten
10440 74 73 20 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ts.file)........................
10460 28 72 65 61 64 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 29 29 0a 20 20 20 20 20 (read.(current-buffer)))))......
10480 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 65 71 20 28 63 61 72 20 66 6f 72 6d 29 20 27 64 65 ......(unless.(eq.(car.form).'de
104a0 66 69 6e 65 2d 70 61 63 6b 61 67 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b fine-package)..............(pack
104c0 61 67 65 2d 62 75 69 6c 64 2d 2d 65 72 72 6f 72 20 6e 61 6d 65 20 22 4e 6f 20 64 65 66 69 6e 65 age-build--error.name."No.define
104e0 2d 70 61 63 6b 61 67 65 20 66 6f 75 6e 64 20 69 6e 20 25 73 22 20 66 69 6c 65 29 29 0a 20 20 20 -package.found.in.%s".file))....
10500 20 20 20 20 20 20 20 20 28 70 63 61 73 65 2d 6c 65 74 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20 ........(pcase-let*.............
10520 20 20 20 28 28 60 28 2c 5f 20 2c 5f 20 2c 5f 20 2c 73 75 6d 6d 61 72 79 20 2c 64 65 70 73 20 2e ...((`(,_.,_.,_.,summary.,deps..
10540 20 2c 65 78 74 72 61 29 20 66 6f 72 6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 .,extra).form).................(
10560 64 65 70 73 20 28 65 76 61 6c 20 64 65 70 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 deps.(eval.deps))...............
10580 20 20 28 61 6c 74 2d 64 65 73 63 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 64 65 73 63 ..(alt-desc.(package-build--desc
105a0 2d 66 72 6f 6d 2d 6c 69 62 72 61 72 79 20 72 63 70 20 66 69 6c 65 73 29 29 0a 20 20 20 20 20 20 -from-library.rcp.files)).......
105c0 20 20 20 20 20 20 20 20 20 20 28 61 6c 74 20 28 61 6e 64 20 61 6c 74 2d 64 65 73 63 20 28 70 61 ..........(alt.(and.alt-desc.(pa
105e0 63 6b 61 67 65 2d 64 65 73 63 2d 65 78 74 72 61 73 20 61 6c 74 2d 64 65 73 63 29 29 29 29 0a 20 ckage-desc-extras.alt-desc))))..
10600 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 ............(when.(string-match.
10620 22 5b 5c 72 5c 6e 5d 22 20 73 75 6d 6d 61 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 "[\r\n]".summary)...............
10640 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 65 72 72 6f 72 20 6e 61 6d 65 0a 20 20 20 20 .(package-build--error.name.....
10660 20 20 20 20 20 20 20 20 20 20 20 20 20 22 49 6c 6c 65 67 61 6c 20 6d 75 6c 74 69 2d 6c 69 6e 65 ............."Illegal.multi-line
10680 20 70 61 63 6b 61 67 65 20 64 65 73 63 72 69 70 74 69 6f 6e 20 69 6e 20 25 73 22 20 66 69 6c 65 .package.description.in.%s".file
106a0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 64 65 73 63 2d 66 72 ))..............(package-desc-fr
106c0 6f 6d 2d 64 65 66 69 6e 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 61 6d 65 20 76 65 72 om-define...............name.ver
106e0 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 73 74 72 69 6e 67 2d 65 sion...............(if.(string-e
10700 6d 70 74 79 2d 70 20 73 75 6d 6d 61 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 mpty-p.summary).................
10720 20 20 28 6f 72 20 28 61 6e 64 20 61 6c 74 2d 64 65 73 63 20 28 70 61 63 6b 61 67 65 2d 64 65 73 ..(or.(and.alt-desc.(package-des
10740 63 2d 73 75 6d 6d 61 72 79 20 61 6c 74 2d 64 65 73 63 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 c-summary.alt-desc))............
10760 20 20 20 20 20 20 20 20 20 20 20 22 4e 6f 20 64 65 73 63 72 69 70 74 69 6f 6e 20 61 76 61 69 6c ..........."No.description.avail
10780 61 62 6c 65 2e 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 75 6d 6d 61 72 79 29 able.").................summary)
107a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 61 72 20 28 70 63 61 73 65 2d 6c 61 ...............(mapcar.(pcase-la
107c0 6d 62 64 61 20 28 60 28 2c 70 6b 67 20 2c 76 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 mbda.(`(,pkg.,ver)).............
107e0 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 73 79 6d 62 6f 6c 70 20 70 6b 67 ............(unless.(symbolp.pkg
10800 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 )...........................(pac
10820 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 65 72 72 6f 72 20 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 kage-build--error.name..........
10840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 49 6e 76 61 6c 69 64 20 70 61 63 6b ..................."Invalid.pack
10860 61 67 65 20 6e 61 6d 65 20 69 6e 20 64 65 70 65 6e 64 65 6e 63 79 3a 20 25 53 22 20 70 6b 67 29 age.name.in.dependency:.%S".pkg)
10880 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 ).........................(list.
108a0 70 6b 67 20 76 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 pkg.ver)).......................
108c0 64 65 70 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6b 69 6e 64 20 20 20 20 20 20 20 deps)...............:kind.......
108e0 27 74 61 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 75 72 6c 20 20 20 20 20 20 20 20 28 'tar...............:url........(
10900 6f 72 20 28 61 6c 69 73 74 2d 67 65 74 20 3a 75 72 6c 20 65 78 74 72 61 29 0a 20 20 20 20 20 20 or.(alist-get.:url.extra).......
10920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6c 69 73 74 2d 67 ........................(alist-g
10940 65 74 20 3a 68 6f 6d 65 70 61 67 65 20 65 78 74 72 61 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 et.:homepage.extra).............
10960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6c 69 73 74 2d 67 65 74 20 3a 75 72 ..................(alist-get.:ur
10980 6c 20 61 6c 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6b 65 79 77 6f 72 64 73 20 l.alt))...............:keywords.
109a0 20 20 28 6f 72 20 28 61 6c 69 73 74 2d 67 65 74 20 3a 6b 65 79 77 6f 72 64 73 20 65 78 74 72 61 ..(or.(alist-get.:keywords.extra
109c0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )...............................
109e0 28 61 6c 69 73 74 2d 67 65 74 20 3a 6b 65 79 77 6f 72 64 73 20 61 6c 74 29 29 0a 20 20 20 20 20 (alist-get.:keywords.alt))......
10a00 20 20 20 20 20 20 20 20 20 3a 6d 61 69 6e 74 61 69 6e 65 72 20 28 6f 72 20 28 61 6c 69 73 74 2d .........:maintainer.(or.(alist-
10a20 67 65 74 20 3a 6d 61 69 6e 74 61 69 6e 65 72 20 65 78 74 72 61 29 0a 20 20 20 20 20 20 20 20 20 get.:maintainer.extra)..........
10a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6c 69 73 74 2d 67 65 74 20 .....................(alist-get.
10a60 3a 6d 61 69 6e 74 61 69 6e 65 72 20 61 6c 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 :maintainer.alt))...............
10a80 3a 61 75 74 68 6f 72 73 20 20 20 20 28 6f 72 20 28 61 6c 69 73 74 2d 67 65 74 20 3a 61 75 74 68 :authors....(or.(alist-get.:auth
10aa0 6f 72 73 20 65 78 74 72 61 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ors.extra)......................
10ac0 20 20 20 20 20 20 20 20 20 28 61 6c 69 73 74 2d 67 65 74 20 3a 61 75 74 68 6f 72 73 20 61 6c 74 .........(alist-get.:authors.alt
10ae0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 63 6f 6d 6d 69 74 20 20 20 20 20 63 6f 6d ))...............:commit.....com
10b00 6d 69 74 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d mit))))))..(defun.package-build-
10b20 2d 77 72 69 74 65 2d 61 72 63 68 69 76 65 2d 65 6e 74 72 79 20 28 64 65 73 63 29 0a 20 20 28 77 -write-archive-entry.(desc)...(w
10b40 69 74 68 2d 74 65 6d 70 2d 66 69 6c 65 0a 20 20 20 20 20 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 ith-temp-file.......(expand-file
10b60 2d 6e 61 6d 65 20 28 63 6f 6e 63 61 74 20 28 70 61 63 6b 61 67 65 2d 64 65 73 63 2d 66 75 6c 6c -name.(concat.(package-desc-full
10b80 2d 6e 61 6d 65 20 64 65 73 63 29 20 22 2e 65 6e 74 72 79 22 29 0a 20 20 20 20 20 20 20 20 20 20 -name.desc).".entry")...........
10ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 ..............package-build-arch
10bc0 69 76 65 2d 64 69 72 29 0a 20 20 20 20 28 73 65 74 2d 62 75 66 66 65 72 2d 66 69 6c 65 2d 63 6f ive-dir).....(set-buffer-file-co
10be0 64 69 6e 67 2d 73 79 73 74 65 6d 20 27 75 74 66 2d 38 29 0a 20 20 20 20 28 70 70 20 28 63 6f 6e ding-system.'utf-8).....(pp.(con
10c00 73 20 28 70 61 63 6b 61 67 65 2d 64 65 73 63 2d 6e 61 6d 65 20 20 20 20 64 65 73 63 29 0a 20 20 s.(package-desc-name....desc)...
10c20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 20 28 70 61 63 6b 61 67 65 2d 64 65 73 ............(vector.(package-des
10c40 63 2d 76 65 72 73 69 6f 6e 20 64 65 73 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 c-version.desc).................
10c60 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 64 65 73 63 2d 72 65 71 73 20 20 20 20 64 65 73 63 ......(package-desc-reqs....desc
10c80 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 ).......................(package
10ca0 2d 64 65 73 63 2d 73 75 6d 6d 61 72 79 20 64 65 73 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 -desc-summary.desc).............
10cc0 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 64 65 73 63 2d 6b 69 6e 64 20 20 20 20 ..........(package-desc-kind....
10ce0 64 65 73 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 desc).......................(pac
10d00 6b 61 67 65 2d 64 65 73 63 2d 65 78 74 72 61 73 20 20 64 65 73 63 29 29 29 0a 20 20 20 20 20 20 kage-desc-extras..desc))).......
10d20 20 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 29 0a 0a 3b 3b 3b 20 46 69 6c 65 73 ..(current-buffer))))..;;;.Files
10d40 20 53 70 65 63 0a 0a 28 64 65 66 63 6f 6e 73 74 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 64 .Spec..(defconst.package-build-d
10d60 65 66 61 75 6c 74 2d 66 69 6c 65 73 2d 73 70 65 63 0a 20 20 27 28 22 2a 2e 65 6c 22 20 22 6c 69 efault-files-spec...'("*.el"."li
10d80 73 70 2f 2a 2e 65 6c 22 0a 20 20 20 20 22 64 69 72 22 20 22 2a 2e 69 6e 66 6f 22 20 22 2a 2e 74 sp/*.el"....."dir"."*.info"."*.t
10da0 65 78 69 22 20 22 2a 2e 74 65 78 69 6e 66 6f 22 0a 20 20 20 20 22 64 6f 63 2f 64 69 72 22 20 22 exi"."*.texinfo"....."doc/dir"."
10dc0 64 6f 63 2f 2a 2e 69 6e 66 6f 22 20 22 64 6f 63 2f 2a 2e 74 65 78 69 22 20 22 64 6f 63 2f 2a 2e doc/*.info"."doc/*.texi"."doc/*.
10de0 74 65 78 69 6e 66 6f 22 0a 20 20 20 20 22 64 6f 63 73 2f 64 69 72 22 20 22 64 6f 63 73 2f 2a 2e texinfo"....."docs/dir"."docs/*.
10e00 69 6e 66 6f 22 20 22 64 6f 63 73 2f 2a 2e 74 65 78 69 22 20 22 64 6f 63 73 2f 2a 2e 74 65 78 69 info"."docs/*.texi"."docs/*.texi
10e20 6e 66 6f 22 0a 20 20 20 20 28 3a 65 78 63 6c 75 64 65 0a 20 20 20 20 20 22 2e 64 69 72 2d 6c 6f nfo".....(:exclude......".dir-lo
10e40 63 61 6c 73 2e 65 6c 22 20 22 6c 69 73 70 2f 2e 64 69 72 2d 6c 6f 63 61 6c 73 2e 65 6c 22 0a 20 cals.el"."lisp/.dir-locals.el"..
10e60 20 20 20 20 22 74 65 73 74 2e 65 6c 22 20 22 74 65 73 74 73 2e 65 6c 22 20 22 2a 2d 74 65 73 74 ...."test.el"."tests.el"."*-test
10e80 2e 65 6c 22 20 22 2a 2d 74 65 73 74 73 2e 65 6c 22 0a 20 20 20 20 20 22 6c 69 73 70 2f 74 65 73 .el"."*-tests.el"......"lisp/tes
10ea0 74 2e 65 6c 22 20 22 6c 69 73 70 2f 74 65 73 74 73 2e 65 6c 22 20 22 6c 69 73 70 2f 2a 2d 74 65 t.el"."lisp/tests.el"."lisp/*-te
10ec0 73 74 2e 65 6c 22 20 22 6c 69 73 70 2f 2a 2d 74 65 73 74 73 2e 65 6c 22 29 29 0a 20 20 22 44 65 st.el"."lisp/*-tests.el"))..."De
10ee0 66 61 75 6c 74 20 76 61 6c 75 65 20 66 6f 72 20 3a 66 69 6c 65 73 20 61 74 74 72 69 62 75 74 65 fault.value.for.:files.attribute
10f00 20 69 6e 20 72 65 63 69 70 65 73 2e 22 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 .in.recipes.")..(defun.package-b
10f20 75 69 6c 64 2d 65 78 70 61 6e 64 2d 66 69 6c 65 73 2d 73 70 65 63 20 28 72 63 70 20 26 6f 70 74 uild-expand-files-spec.(rcp.&opt
10f40 69 6f 6e 61 6c 20 61 73 73 65 72 74 20 72 65 70 6f 20 73 70 65 63 29 0a 20 20 22 52 65 74 75 72 ional.assert.repo.spec)..."Retur
10f60 6e 20 61 6e 20 61 6c 69 73 74 20 6f 66 20 66 69 6c 65 73 20 6f 66 20 70 61 63 6b 61 67 65 20 52 n.an.alist.of.files.of.package.R
10f80 43 50 20 74 6f 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 74 61 72 62 61 6c 6c 2e 0a 0a 45 CP.to.be.included.in.tarball...E
10fa0 61 63 68 20 65 6c 65 6d 65 6e 74 20 68 61 73 20 74 68 65 20 66 6f 72 6d 20 28 53 4f 55 52 43 45 ach.element.has.the.form.(SOURCE
10fc0 20 2e 20 44 45 53 54 49 4e 41 54 49 4f 4e 29 2c 20 77 68 65 72 65 20 53 4f 55 52 43 45 0a 69 73 ...DESTINATION),.where.SOURCE.is
10fe0 20 61 20 66 69 6c 65 20 69 6e 20 74 68 65 20 70 61 63 6b 61 67 65 27 73 20 72 65 70 6f 73 69 74 .a.file.in.the.package's.reposit
11000 6f 72 79 20 61 6e 64 20 44 45 53 54 49 4e 41 54 49 4f 4e 20 69 73 20 77 68 65 72 65 0a 74 68 61 ory.and.DESTINATION.is.where.tha
11020 74 20 66 69 6c 65 20 69 73 20 70 6c 61 63 65 64 20 69 6e 20 74 68 65 20 70 61 63 6b 61 67 65 27 t.file.is.placed.in.the.package'
11040 73 20 74 61 72 62 61 6c 6c 2e 0a 0a 52 43 50 20 69 73 20 74 68 65 20 70 61 63 6b 61 67 65 20 72 s.tarball...RCP.is.the.package.r
11060 65 63 69 70 65 20 61 73 20 61 6e 20 6f 62 6a 65 63 74 2e 20 20 49 66 20 74 68 65 20 60 66 69 6c ecipe.as.an.object...If.the.`fil
11080 65 73 27 20 73 6c 6f 74 20 6f 66 0a 52 43 50 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 74 68 65 6e es'.slot.of.RCP.is.non-nil,.then
110a0 20 74 68 61 74 20 69 73 20 75 73 65 64 20 61 73 20 74 68 65 20 66 69 6c 65 20 73 70 65 63 69 66 .that.is.used.as.the.file.specif
110c0 69 63 61 74 69 6f 6e 2e 0a 4f 74 68 65 72 77 69 73 65 20 60 70 61 63 6b 61 67 65 2d 62 75 69 6c ication..Otherwise.`package-buil
110e0 64 2d 64 65 66 61 75 6c 74 2d 66 69 6c 65 73 2d 73 70 65 63 27 20 69 73 20 75 73 65 64 2e 0a 0a d-default-files-spec'.is.used...
11100 49 66 20 6f 70 74 69 6f 6e 61 6c 20 41 53 53 45 52 54 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 74 If.optional.ASSERT.is.non-nil,.t
11120 68 65 6e 20 72 61 69 73 65 20 61 6e 20 65 72 72 6f 72 20 69 66 20 6e 69 6c 20 77 6f 75 6c 64 0a hen.raise.an.error.if.nil.would.
11140 62 65 20 72 65 74 75 72 6e 65 64 2e 20 20 49 66 20 41 53 53 45 52 54 20 61 6e 64 20 60 66 69 6c be.returned...If.ASSERT.and.`fil
11160 65 73 27 20 61 72 65 20 62 6f 74 68 20 6e 6f 6e 2d 6e 69 6c 20 61 6e 64 20 75 73 69 6e 67 0a 60 es'.are.both.non-nil.and.using.`
11180 66 69 6c 65 73 27 20 72 65 73 75 6c 74 73 20 69 6e 20 74 68 65 20 73 61 6d 65 20 73 65 74 20 6f files'.results.in.the.same.set.o
111a0 66 20 66 69 6c 65 73 20 61 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 73 70 65 63 2c 0a 74 68 65 f.files.as.the.default.spec,.the
111c0 6e 20 73 68 6f 77 20 61 20 77 61 72 6e 69 6e 67 2e 0a 0a 41 20 66 69 6c 65 73 20 73 70 65 63 69 n.show.a.warning...A.files.speci
111e0 66 69 63 61 74 69 6f 6e 20 69 73 20 61 20 6c 69 73 74 2e 20 20 49 74 73 20 65 6c 65 6d 65 6e 74 fication.is.a.list...Its.element
11200 73 20 61 72 65 20 70 72 6f 63 65 73 73 65 64 20 69 6e 0a 6f 72 64 65 72 20 61 6e 64 20 63 61 6e s.are.processed.in.order.and.can
11220 20 68 61 76 65 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 6f 72 6d 3a 0a 0a 2d 20 3a 64 65 .have.the.following.form:..-.:de
11240 66 61 75 6c 74 73 0a 0a 20 20 49 66 20 74 68 65 20 66 69 72 73 74 20 65 6c 65 6d 65 6e 74 20 69 faults....If.the.first.element.i
11260 73 20 60 3a 64 65 66 61 75 6c 74 73 27 2c 20 74 68 65 6e 20 74 68 61 74 20 6d 65 61 6e 73 20 74 s.`:defaults',.then.that.means.t
11280 6f 20 70 72 65 70 65 6e 64 0a 20 20 74 68 65 20 64 65 66 61 75 6c 74 20 66 69 6c 65 73 20 73 70 o.prepend...the.default.files.sp
112a0 65 63 20 74 6f 20 74 68 65 20 53 50 45 43 20 73 70 65 63 69 66 69 65 64 20 62 79 20 74 68 65 20 ec.to.the.SPEC.specified.by.the.
112c0 72 65 6d 61 69 6e 69 6e 67 0a 20 20 65 6c 65 6d 65 6e 74 73 2e 0a 0a 2d 20 47 4c 4f 42 0a 0a 20 remaining...elements...-.GLOB...
112e0 20 41 20 73 74 72 69 6e 67 20 69 73 20 67 6c 6f 62 2d 65 78 70 61 6e 64 65 64 20 74 6f 20 6d 61 .A.string.is.glob-expanded.to.ma
11300 74 63 68 20 7a 65 72 6f 20 6f 72 20 6d 6f 72 65 20 66 69 6c 65 73 2e 20 20 4d 61 74 63 68 65 64 tch.zero.or.more.files...Matched
11320 0a 20 20 66 69 6c 65 73 20 61 72 65 20 63 6f 70 69 65 64 20 74 6f 20 74 68 65 20 74 6f 70 2d 6c ...files.are.copied.to.the.top-l
11340 65 76 65 6c 20 64 69 72 65 63 74 6f 72 79 2e 0a 0a 2d 20 28 53 55 42 44 49 52 45 43 54 4f 52 59 evel.directory...-.(SUBDIRECTORY
11360 20 47 4c 4f 42 2e 2e 2e 29 0a 0a 20 20 41 20 6c 69 73 74 20 74 68 61 74 20 62 65 67 69 6e 73 20 .GLOB...)....A.list.that.begins.
11380 77 69 74 68 20 61 20 73 74 72 69 6e 67 20 63 61 75 73 65 73 20 74 68 65 20 66 69 6c 65 73 20 6d with.a.string.causes.the.files.m
113a0 61 74 63 68 65 64 20 62 79 0a 20 20 74 68 65 20 73 65 63 6f 6e 64 20 61 6e 64 20 73 75 62 73 65 atched.by...the.second.and.subse
113c0 71 75 65 6e 74 20 65 6c 65 6d 65 6e 74 73 20 74 6f 20 62 65 20 63 6f 70 69 65 64 20 69 6e 74 6f quent.elements.to.be.copied.into
113e0 20 74 68 65 20 73 75 62 2d 0a 20 20 64 69 72 65 63 74 6f 72 79 20 73 70 65 63 69 66 69 65 64 20 .the.sub-...directory.specified.
11400 62 79 20 74 68 65 20 66 69 72 73 74 20 65 6c 65 6d 65 6e 74 2e 0a 0a 2d 20 28 3a 65 78 63 6c 75 by.the.first.element...-.(:exclu
11420 64 65 20 47 4c 4f 42 2e 2e 2e 29 0a 0a 20 20 41 20 6c 69 73 74 20 74 68 61 74 20 62 65 67 69 6e de.GLOB...)....A.list.that.begin
11440 73 20 77 69 74 68 20 60 3a 65 78 63 6c 75 64 65 27 20 63 61 75 73 65 73 20 66 69 6c 65 73 20 74 s.with.`:exclude'.causes.files.t
11460 68 61 74 20 77 65 72 65 0a 20 20 6d 61 74 63 68 65 64 20 62 79 20 65 61 72 6c 69 65 72 20 65 6c hat.were...matched.by.earlier.el
11480 65 6d 65 6e 74 73 20 74 68 61 74 20 61 72 65 20 61 6c 73 6f 20 6d 61 74 63 68 65 64 20 62 79 20 ements.that.are.also.matched.by.
114a0 74 68 65 20 73 65 63 6f 6e 64 0a 20 20 61 6e 64 20 73 75 62 73 65 71 75 65 6e 74 20 65 6c 65 6d the.second...and.subsequent.elem
114c0 65 6e 74 73 20 6f 66 20 74 68 69 73 20 6c 69 73 74 20 74 6f 20 62 65 20 72 65 6d 6f 76 65 64 20 ents.of.this.list.to.be.removed.
114e0 66 72 6f 6d 20 74 68 65 0a 20 20 72 65 74 75 72 6e 65 64 20 61 6c 69 73 74 2e 20 20 46 69 6c 65 from.the...returned.alist...File
11500 73 20 6d 61 74 63 68 65 64 20 62 79 20 6c 61 74 65 72 20 65 6c 65 6d 65 6e 74 73 20 61 72 65 20 s.matched.by.later.elements.are.
11520 6e 6f 74 0a 20 20 61 66 66 65 63 74 65 64 2e 22 0a 20 20 28 6c 65 74 20 28 28 64 65 66 61 75 6c not...affected."...(let.((defaul
11540 74 2d 64 69 72 65 63 74 6f 72 79 20 28 6f 72 20 72 65 70 6f 20 28 70 61 63 6b 61 67 65 2d 62 75 t-directory.(or.repo.(package-bu
11560 69 6c 64 2d 2d 77 6f 72 6b 69 6e 67 2d 74 72 65 65 20 72 63 70 29 29 29 0a 20 20 20 20 20 20 20 ild--working-tree.rcp)))........
11580 20 28 73 70 65 63 20 28 6f 72 20 73 70 65 63 20 28 6f 72 65 66 20 72 63 70 20 66 69 6c 65 73 29 .(spec.(or.spec.(oref.rcp.files)
115a0 29 29 0a 20 20 20 20 20 20 20 20 28 6e 61 6d 65 20 28 6f 72 65 66 20 72 63 70 20 6e 61 6d 65 29 )).........(name.(oref.rcp.name)
115c0 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 28 63 61 72 20 73 70 65 63 29 20 3a 64 65 66 )).....(when.(eq.(car.spec).:def
115e0 61 75 6c 74 73 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 73 70 65 63 20 28 61 70 70 65 6e 64 20 aults).......(setq.spec.(append.
11600 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 64 65 66 61 75 6c 74 2d 66 69 6c 65 73 2d 73 70 65 63 package-build-default-files-spec
11620 20 28 63 64 72 20 73 70 65 63 29 29 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 66 69 6c 65 73 20 .(cdr.spec)))).....(let.((files.
11640 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 65 78 70 61 6e 64 2d 66 69 6c 65 73 2d 73 70 65 (package-build--expand-files-spe
11660 63 2d 31 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 73 70 65 63 20 70 c-1...................(or.spec.p
11680 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 64 65 66 61 75 6c 74 2d 66 69 6c 65 73 2d 73 70 65 63 29 ackage-build-default-files-spec)
116a0 29 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 61 73 73 65 72 74 0a 20 20 20 20 20 20 20 20 28 ))).......(when.assert.........(
116c0 77 68 65 6e 20 28 61 6e 64 20 72 63 70 20 73 70 65 63 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 when.(and.rcp.spec..............
116e0 20 20 20 20 20 20 28 65 71 75 61 6c 20 66 69 6c 65 73 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c ......(equal.files.(package-buil
11700 64 2d 2d 65 78 70 61 6e 64 2d 66 69 6c 65 73 2d 73 70 65 63 2d 31 0a 20 20 20 20 20 20 20 20 20 d--expand-files-spec-1..........
11720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 63 6b 61 67 65 2d ........................package-
11740 62 75 69 6c 64 2d 64 65 66 61 75 6c 74 2d 66 69 6c 65 73 2d 73 70 65 63 29 29 29 0a 20 20 20 20 build-default-files-spec))).....
11760 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 57 61 72 6e 69 6e 67 3a 20 25 73 20 3a 66 69 6c ......(message."Warning:.%s.:fil
11780 65 73 20 73 70 65 63 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 74 68 65 20 64 65 66 es.spec.is.equivalent.to.the.def
117a0 61 75 6c 74 22 20 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 66 69 6c ault".name)).........(unless.fil
117c0 65 73 0a 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 65 72 72 es...........(package-build--err
117e0 6f 72 20 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 4e 6f 20 6d 61 74 63 68 69 6e 67 or.name............."No.matching
11800 20 66 69 6c 65 28 73 29 20 66 6f 75 6e 64 20 69 6e 20 25 73 20 75 73 69 6e 67 20 25 73 22 0a 20 .file(s).found.in.%s.using.%s"..
11820 20 20 20 20 20 20 20 20 20 20 20 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 28 6f 72 ...........default-directory.(or
11840 20 73 70 65 63 20 22 64 65 66 61 75 6c 74 20 73 70 65 63 22 29 29 29 29 0a 20 20 20 20 20 20 66 .spec."default.spec")))).......f
11860 69 6c 65 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 65 iles)))..(defun.package-build--e
11880 78 70 61 6e 64 2d 66 69 6c 65 73 2d 73 70 65 63 2d 31 20 28 73 70 65 63 29 0a 20 20 22 52 65 74 xpand-files-spec-1.(spec)..."Ret
118a0 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 61 6c 6c 20 66 69 6c 65 73 20 6d 61 74 63 68 69 6e 67 urn.a.list.of.all.files.matching
118c0 20 53 50 45 43 20 69 6e 20 60 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 27 2e 0a 53 50 .SPEC.in.`default-directory'..SP
118e0 45 43 20 69 73 20 61 20 66 75 6c 6c 20 66 69 6c 65 73 20 73 70 65 63 20 61 73 20 73 74 6f 72 65 EC.is.a.full.files.spec.as.store
11900 64 20 69 6e 20 61 20 72 65 63 69 70 65 20 6f 62 6a 65 63 74 2e 22 0a 20 20 28 6c 65 74 20 28 69 d.in.a.recipe.object."...(let.(i
11920 6e 63 6c 75 64 65 20 65 78 63 6c 75 64 65 29 0a 20 20 20 20 28 64 6f 6c 69 73 74 20 28 65 6e 74 nclude.exclude).....(dolist.(ent
11940 72 79 20 73 70 65 63 29 0a 20 20 20 20 20 20 28 69 66 20 28 65 71 20 28 63 61 72 2d 73 61 66 65 ry.spec).......(if.(eq.(car-safe
11960 20 65 6e 74 72 79 29 20 3a 65 78 63 6c 75 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 28 64 6f 6c .entry).:exclude)...........(dol
11980 69 73 74 20 28 65 6e 74 72 79 20 28 63 64 72 20 65 6e 74 72 79 29 29 0a 20 20 20 20 20 20 20 20 ist.(entry.(cdr.entry)).........
119a0 20 20 20 20 28 70 75 73 68 20 65 6e 74 72 79 20 65 78 63 6c 75 64 65 29 29 0a 20 20 20 20 20 20 ....(push.entry.exclude)).......
119c0 20 20 28 70 75 73 68 20 65 6e 74 72 79 20 69 6e 63 6c 75 64 65 29 29 29 0a 20 20 20 20 28 63 6c ..(push.entry.include))).....(cl
119e0 2d 73 65 74 2d 64 69 66 66 65 72 65 6e 63 65 0a 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 -set-difference......(package-bu
11a00 69 6c 64 2d 2d 65 78 70 61 6e 64 2d 66 69 6c 65 73 2d 73 70 65 63 2d 32 20 28 6e 72 65 76 65 72 ild--expand-files-spec-2.(nrever
11a20 73 65 20 69 6e 63 6c 75 64 65 29 29 0a 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 se.include))......(package-build
11a40 2d 2d 65 78 70 61 6e 64 2d 66 69 6c 65 73 2d 73 70 65 63 2d 32 20 28 6e 72 65 76 65 72 73 65 20 --expand-files-spec-2.(nreverse.
11a60 65 78 63 6c 75 64 65 29 29 0a 20 20 20 20 20 3a 74 65 73 74 20 23 27 65 71 75 61 6c 20 3a 6b 65 exclude))......:test.#'equal.:ke
11a80 79 20 23 27 63 61 72 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 y.#'car)))..(defun.package-build
11aa0 2d 2d 65 78 70 61 6e 64 2d 66 69 6c 65 73 2d 73 70 65 63 2d 32 20 28 73 70 65 63 20 26 6f 70 74 --expand-files-spec-2.(spec.&opt
11ac0 69 6f 6e 61 6c 20 73 75 62 64 69 72 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f ional.subdir)..."Return.a.list.o
11ae0 66 20 61 6c 6c 20 66 69 6c 65 73 20 6d 61 74 63 68 69 6e 67 20 53 50 45 43 20 69 6e 20 53 55 42 f.all.files.matching.SPEC.in.SUB
11b00 44 49 52 2e 0a 49 66 20 53 55 42 44 49 52 20 69 73 20 6e 69 6c 2c 20 75 73 65 20 60 64 65 66 61 DIR..If.SUBDIR.is.nil,.use.`defa
11b20 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 27 2e 20 20 53 50 45 43 20 69 73 20 65 78 70 65 63 74 65 ult-directory'...SPEC.is.expecte
11b40 64 20 74 6f 0a 62 65 20 61 20 70 61 72 74 69 61 6c 20 66 69 6c 65 73 20 73 70 65 63 2c 20 63 6f d.to.be.a.partial.files.spec,.co
11b60 6e 73 69 73 74 69 6e 67 20 6f 66 20 65 69 74 68 65 72 20 61 6c 6c 20 69 6e 63 6c 75 64 65 20 72 nsisting.of.either.all.include.r
11b80 75 6c 65 73 0a 6f 72 20 61 6c 6c 20 65 78 63 6c 75 64 65 20 72 75 6c 65 73 20 28 77 69 74 68 20 ules.or.all.exclude.rules.(with.
11ba0 74 68 65 20 60 3a 65 78 63 6c 75 64 65 27 20 6b 65 79 77 6f 72 64 20 72 65 6d 6f 76 65 64 29 2e the.`:exclude'.keyword.removed).
11bc0 22 0a 20 20 28 6d 61 70 63 61 6e 20 28 6c 61 6d 62 64 61 20 28 65 6e 74 72 79 29 0a 20 20 20 20 "...(mapcan.(lambda.(entry).....
11be0 20 20 20 20 20 20 20 20 28 69 66 20 28 73 74 72 69 6e 67 70 20 65 6e 74 72 79 29 0a 20 20 20 20 ........(if.(stringp.entry).....
11c00 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 61 72 20 28 6c 61 6d 62 64 61 20 28 66 29 0a ............(mapcar.(lambda.(f).
11c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 ..........................(cons.
11c40 66 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 f...............................
11c60 20 20 28 63 6f 6e 63 61 74 20 73 75 62 64 69 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..(concat.subdir................
11c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 .........................(replac
11ca0 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 e-regexp-in-string..............
11cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c 5c 2e ............................"\\.
11ce0 65 6c 5c 5c 2e 69 6e 5c 5c 27 22 20 20 22 2e 65 6c 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 el\\.in\\'"..".el"..............
11d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 69 6c ............................(fil
11d20 65 2d 6e 61 6d 65 2d 6e 6f 6e 64 69 72 65 63 74 6f 72 79 20 66 29 29 29 29 29 0a 20 20 20 20 20 e-name-nondirectory.f)))))......
11d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 69 6c 65 2d 65 78 70 61 6e 64 2d ...................(file-expand-
11d60 77 69 6c 64 63 61 72 64 73 20 65 6e 74 72 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 wildcards.entry))...............
11d80 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 65 78 70 61 6e 64 2d 66 69 6c 65 73 2d 73 70 65 (package-build--expand-files-spe
11da0 63 2d 32 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 64 72 20 65 6e 74 72 79 29 0a 20 c-2................(cdr.entry)..
11dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 73 75 62 64 69 72 20 28 63 61 ..............(concat.subdir.(ca
11de0 72 20 65 6e 74 72 79 29 20 22 2f 22 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 73 70 65 63 29 r.entry)."/"))))...........spec)
11e00 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 6f 70 79 2d 70 61 )..(defun.package-build--copy-pa
11e20 63 6b 61 67 65 2d 66 69 6c 65 73 20 28 66 69 6c 65 73 20 74 61 72 67 65 74 2d 64 69 72 29 0a 20 ckage-files.(files.target-dir)..
11e40 20 22 43 6f 70 79 20 46 49 4c 45 53 20 66 72 6f 6d 20 60 64 65 66 61 75 6c 74 2d 64 69 72 65 63 ."Copy.FILES.from.`default-direc
11e60 74 6f 72 79 27 20 74 6f 20 54 41 52 47 45 54 2d 44 49 52 2e 0a 46 49 4c 45 53 20 69 73 20 61 20 tory'.to.TARGET-DIR..FILES.is.a.
11e80 6c 69 73 74 20 6f 66 20 28 53 4f 55 52 43 45 20 2e 20 44 45 53 54 29 20 72 65 6c 61 74 69 76 65 list.of.(SOURCE...DEST).relative
11ea0 20 66 69 6c 65 70 61 74 68 20 70 61 69 72 73 2e 22 0a 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 .filepath.pairs."...(package-bui
11ec0 6c 64 2d 2d 6d 65 73 73 61 67 65 0a 20 20 20 22 43 6f 70 79 69 6e 67 20 66 69 6c 65 73 20 28 2d ld--message...."Copying.files.(-
11ee0 3e 29 20 61 6e 64 20 64 69 72 65 63 74 6f 72 69 65 73 20 28 3d 3e 29 5c 6e 20 20 66 72 6f 6d 20 >).and.directories.(=>)\n..from.
11f00 25 73 5c 6e 20 20 74 6f 20 25 73 22 0a 20 20 20 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 %s\n..to.%s"....default-director
11f20 79 20 74 61 72 67 65 74 2d 64 69 72 29 0a 20 20 28 70 63 61 73 65 2d 64 6f 6c 69 73 74 20 28 60 y.target-dir)...(pcase-dolist.(`
11f40 28 2c 73 72 63 20 2e 20 2c 64 73 74 29 20 66 69 6c 65 73 29 0a 20 20 20 20 28 6c 65 74 20 28 28 (,src...,dst).files).....(let.((
11f60 73 72 63 2a 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 73 72 63 29 29 0a 20 20 20 src*.(expand-file-name.src))....
11f80 20 20 20 20 20 20 20 28 64 73 74 2a 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 64 .......(dst*.(expand-file-name.d
11fa0 73 74 20 74 61 72 67 65 74 2d 64 69 72 29 29 29 0a 20 20 20 20 20 20 28 6d 61 6b 65 2d 64 69 72 st.target-dir))).......(make-dir
11fc0 65 63 74 6f 72 79 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 64 69 72 65 63 74 6f 72 79 20 64 73 74 2a ectory.(file-name-directory.dst*
11fe0 29 20 74 29 0a 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 66 69 6c 65 2d 72 65 67 75 6c 61 72 2d ).t).......(cond.((file-regular-
12000 70 20 73 72 63 2a 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 p.src*)..............(package-bu
12020 69 6c 64 2d 2d 6d 65 73 73 61 67 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 25 73 ild--message..............."..%s
12040 20 25 73 20 2d 3e 20 25 73 22 20 28 69 66 20 28 65 71 75 61 6c 20 73 72 63 20 64 73 74 29 20 22 .%s.->.%s".(if.(equal.src.dst)."
12060 20 22 20 22 21 22 29 20 73 72 63 20 64 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 ."."!").src.dst)..............(c
12080 6f 70 79 2d 66 69 6c 65 20 73 72 63 2a 20 64 73 74 2a 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 opy-file.src*.dst*))............
120a0 20 28 28 66 69 6c 65 2d 64 69 72 65 63 74 6f 72 79 2d 70 20 73 72 63 2a 29 0a 20 20 20 20 20 20 .((file-directory-p.src*).......
120c0 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 6d 65 73 73 61 67 65 0a 20 .......(package-build--message..
120e0 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 25 73 20 25 73 20 3d 3e 20 25 73 22 20 28 69 66 ............."..%s.%s.=>.%s".(if
12100 20 28 65 71 75 61 6c 20 73 72 63 20 64 73 74 29 20 22 20 22 20 22 21 22 29 20 73 72 63 20 64 73 .(equal.src.dst)."."."!").src.ds
12120 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 70 79 2d 64 69 72 65 63 74 6f 72 79 20 t)..............(copy-directory.
12140 73 72 63 2a 20 64 73 74 2a 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d src*.dst*))))))..(defun.package-
12160 62 75 69 6c 64 2d 2d 73 70 65 63 2d 67 6c 6f 62 73 20 28 72 63 70 29 0a 20 20 22 52 65 74 75 72 build--spec-globs.(rcp)..."Retur
12180 6e 20 61 20 6c 69 73 74 20 6f 66 20 76 63 73 20 61 72 67 75 6d 65 6e 74 73 20 74 6f 20 6d 61 74 n.a.list.of.vcs.arguments.to.mat
121a0 63 68 20 74 68 65 20 66 69 6c 65 73 20 73 70 65 63 69 66 69 65 64 20 69 6e 20 52 43 50 2e 22 0a ch.the.files.specified.in.RCP.".
121c0 20 20 3b 3b 20 53 65 65 20 67 6c 6f 62 28 37 29 2c 20 67 69 74 67 6c 6f 73 73 61 72 79 28 37 29 ..;;.See.glob(7),.gitglossary(7)
121e0 20 61 6e 64 20 22 68 67 20 68 65 6c 70 20 70 61 74 74 65 72 6e 73 22 2e 0a 20 20 28 63 6c 2d 66 .and."hg.help.patterns"....(cl-f
12200 6c 65 74 20 28 28 74 6f 61 72 67 73 20 28 67 6c 6f 62 20 26 6f 70 74 69 6f 6e 61 6c 20 65 78 63 let.((toargs.(glob.&optional.exc
12220 6c 75 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 47 69 76 65 6e 20 61 6e 20 lude)...............;;.Given.an.
12240 65 6c 65 6d 65 6e 74 20 6c 69 6b 65 20 28 22 64 69 72 22 20 22 64 69 72 2f 2a 22 29 2c 20 77 65 element.like.("dir"."dir/*"),.we
12260 20 77 61 6e 74 20 74 6f 20 6d 6f 76 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 61 .want.to.move...............;;.a
12280 6c 6c 20 63 68 69 6c 64 72 65 6e 20 6f 66 20 22 64 69 72 22 20 74 6f 20 74 68 65 20 74 6f 70 2d ll.children.of."dir".to.the.top-
122a0 6c 65 76 65 6c 2e 20 20 47 6c 6f 62 20 68 61 6e 64 6c 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 level...Glob.handling...........
122c0 20 20 20 20 3b 3b 20 6f 66 20 67 69 74 2d 6c 6f 67 2f 68 67 2d 6c 6f 67 20 6f 6e 6c 79 20 63 61 ....;;.of.git-log/hg-log.only.ca
122e0 72 65 73 20 61 62 6f 75 74 20 72 65 67 75 6c 61 72 20 66 69 6c 65 2c 20 73 6f 20 69 66 0a 20 20 res.about.regular.file,.so.if...
12300 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 22 64 69 72 2f 73 75 62 64 69 72 2f 66 69 6c 65 22 ............;;."dir/subdir/file"
12320 20 69 73 20 6d 6f 64 69 66 69 65 64 2c 20 74 68 65 6e 20 22 64 69 72 2f 2a 22 20 64 6f 65 73 20 .is.modified,.then."dir/*".does.
12340 6e 6f 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6d 61 74 63 68 20 74 68 61 74 20 not...............;;.match.that.
12360 63 68 61 6e 67 65 2e 20 20 55 73 65 20 22 64 69 72 2f 2a 2a 22 20 69 6e 73 74 65 61 64 2c 20 74 change...Use."dir/**".instead,.t
12380 6f 20 6d 61 6b 65 20 74 68 65 6d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6c 6f 6f o.make.them...............;;.loo
123a0 6b 20 66 6f 72 20 63 68 61 6e 67 65 73 20 74 6f 20 66 69 6c 65 73 20 69 6e 20 22 64 69 72 22 20 k.for.changes.to.files.in."dir".
123c0 61 6e 64 20 61 6c 6c 20 73 75 62 64 69 72 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 and.all.subdirs................(
123e0 77 68 65 6e 20 28 73 74 72 69 6e 67 2d 73 75 66 66 69 78 2d 70 20 22 2f 2a 22 20 67 6c 6f 62 29 when.(string-suffix-p."/*".glob)
12400 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 67 6c 6f 62 20 28 63 6f 6e .................(setq.glob.(con
12420 63 61 74 20 67 6c 6f 62 20 22 2a 22 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 cat.glob."*")))...............(c
12440 6c 2d 65 74 79 70 65 63 61 73 65 20 72 63 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 l-etypecase.rcp.................
12460 28 70 61 63 6b 61 67 65 2d 67 69 74 2d 72 65 63 69 70 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 (package-git-recipe.............
12480 20 20 20 20 20 28 6c 69 73 74 20 28 66 6f 72 6d 61 74 20 22 3a 28 67 6c 6f 62 25 73 29 25 73 22 .....(list.(format.":(glob%s)%s"
124a0 20 28 69 66 20 65 78 63 6c 75 64 65 20 22 2c 65 78 63 6c 75 64 65 22 20 22 22 29 20 67 6c 6f 62 .(if.exclude.",exclude"."").glob
124c0 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 68 67 2d ))).................(package-hg-
124e0 72 65 63 69 70 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 28 69 recipe..................(list.(i
12500 66 20 65 78 63 6c 75 64 65 20 22 2d 2d 65 78 63 6c 75 64 65 22 20 22 2d 2d 69 6e 63 6c 75 64 65 f.exclude."--exclude"."--include
12520 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 ")........................(conca
12540 74 20 22 67 6c 6f 62 3a 22 20 67 6c 6f 62 29 29 29 29 29 29 0a 20 20 20 20 28 6d 61 70 63 61 6e t."glob:".glob)))))).....(mapcan
12560 20 28 6c 61 6d 62 64 61 20 28 65 6e 74 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 .(lambda.(entry)...............(
12580 70 63 61 73 65 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 74 72 79 0a 20 20 20 20 20 20 20 20 20 pcase-exhaustive.entry..........
125a0 20 20 20 20 20 20 20 28 28 61 6e 64 20 67 6c 6f 62 20 28 70 72 65 64 20 73 74 72 69 6e 67 70 29 .......((and.glob.(pred.stringp)
125c0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 6f 61 72 67 73 20 67 6c 6f 62 29 )..................(toargs.glob)
125e0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 60 28 3a 65 78 63 6c 75 ).................((and.`(:exclu
12600 64 65 20 2e 20 2c 67 6c 6f 62 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 de...,globs)....................
12620 20 20 20 28 67 75 61 72 64 20 28 63 6c 2d 65 76 65 72 79 20 23 27 73 74 72 69 6e 67 70 20 67 6c ...(guard.(cl-every.#'stringp.gl
12640 6f 62 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 61 6e 20 obs)))..................(mapcan.
12660 28 6c 61 6d 62 64 61 20 28 67 29 20 28 74 6f 61 72 67 73 20 67 20 74 29 29 20 67 6c 6f 62 73 29 (lambda.(g).(toargs.g.t)).globs)
12680 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 60 28 2c 64 69 72 20 2e ).................((and.`(,dir..
126a0 20 2c 67 6c 6f 62 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 .,globs).......................(
126c0 67 75 61 72 64 20 28 73 74 72 69 6e 67 70 20 64 69 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 guard.(stringp.dir))............
126e0 20 20 20 20 20 20 20 20 20 20 20 28 67 75 61 72 64 20 28 63 6c 2d 65 76 65 72 79 20 23 27 73 74 ...........(guard.(cl-every.#'st
12700 72 69 6e 67 70 20 67 6c 6f 62 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ringp.globs)))..................
12720 64 69 72 20 3b 20 53 69 6c 65 6e 63 65 20 62 79 74 65 2d 63 6f 6d 70 69 6c 65 72 20 6f 66 20 45 dir.;.Silence.byte-compiler.of.E
12740 6d 61 63 73 20 3c 20 32 38 2e 31 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d macs.<.28.1...................(m
12760 61 70 63 61 6e 20 23 27 74 6f 61 72 67 73 20 67 6c 6f 62 73 29 29 29 29 0a 20 20 20 20 20 20 20 apcan.#'toargs.globs))))........
12780 20 20 20 20 20 28 6c 65 74 20 28 28 73 70 65 63 20 28 6f 72 20 28 6f 72 65 66 20 72 63 70 20 66 .....(let.((spec.(or.(oref.rcp.f
127a0 69 6c 65 73 29 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 64 65 66 61 75 6c 74 2d 66 69 6c 65 iles).package-build-default-file
127c0 73 2d 73 70 65 63 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 65 71 20 s-spec)))...............(if.(eq.
127e0 28 63 61 72 20 73 70 65 63 29 20 3a 64 65 66 61 75 6c 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 (car.spec).:defaults)...........
12800 20 20 20 20 20 20 20 20 28 61 70 70 65 6e 64 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 64 65 ........(append.package-build-de
12820 66 61 75 6c 74 2d 66 69 6c 65 73 2d 73 70 65 63 20 28 63 64 72 20 73 70 65 63 29 29 0a 20 20 20 fault-files-spec.(cdr.spec))....
12840 20 20 20 20 20 20 20 20 20 20 20 20 20 73 70 65 63 29 29 29 29 29 0a 0a 3b 3b 3b 20 43 6f 6d 6d .............spec)))))..;;;.Comm
12860 61 6e 64 73 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 70 61 63 6b ands..;;;###autoload.(defun.pack
12880 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 20 28 6e 61 6d 65 20 26 6f 70 74 69 6f 6e 61 age-build-archive.(name.&optiona
128a0 6c 20 64 75 6d 70 2d 61 72 63 68 69 76 65 2d 63 6f 6e 74 65 6e 74 73 29 0a 20 20 22 42 75 69 6c l.dump-archive-contents)..."Buil
128c0 64 20 61 20 70 61 63 6b 61 67 65 20 61 72 63 68 69 76 65 20 66 6f 72 20 74 68 65 20 70 61 63 6b d.a.package.archive.for.the.pack
128e0 61 67 65 20 6e 61 6d 65 64 20 4e 41 4d 45 2e 0a 49 66 20 44 55 4d 50 2d 41 52 43 48 49 56 45 2d age.named.NAME..If.DUMP-ARCHIVE-
12900 43 4f 4e 54 45 4e 54 53 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 74 68 65 20 75 70 64 61 74 65 64 CONTENTS.is.non-nil,.the.updated
12920 20 61 72 63 68 69 76 65 20 63 6f 6e 74 65 6e 74 73 0a 61 72 65 20 73 75 62 73 65 71 75 65 6e 74 .archive.contents.are.subsequent
12940 6c 79 20 64 75 6d 70 65 64 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20 28 6c 69 73 74 ly.dumped."...(interactive.(list
12960 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 72 65 61 64 2d 6e 61 6d 65 29 20 74 29 29 0a .(package-recipe-read-name).t)).
12980 20 20 28 75 6e 6c 65 73 73 20 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 70 61 63 6b 61 67 65 ..(unless.(file-exists-p.package
129a0 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 64 69 72 29 0a 20 20 20 20 28 70 61 63 6b 61 67 65 -build-archive-dir).....(package
129c0 2d 62 75 69 6c 64 2d 2d 6d 65 73 73 61 67 65 20 22 43 72 65 61 74 69 6e 67 20 64 69 72 65 63 74 -build--message."Creating.direct
129e0 6f 72 79 20 25 73 22 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 64 69 ory.%s".package-build-archive-di
12a00 72 29 0a 20 20 20 20 28 6d 61 6b 65 2d 64 69 72 65 63 74 6f 72 79 20 70 61 63 6b 61 67 65 2d 62 r).....(make-directory.package-b
12a20 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 64 69 72 29 29 0a 20 20 28 6c 65 74 2a 20 28 28 73 74 61 uild-archive-dir))...(let*.((sta
12a40 72 74 2d 74 69 6d 65 20 28 63 75 72 72 65 6e 74 2d 74 69 6d 65 29 29 0a 20 20 20 20 20 20 20 20 rt-time.(current-time)).........
12a60 20 28 72 63 70 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 6c 6f 6f 6b 75 70 20 6e 61 6d .(rcp.(package-recipe-lookup.nam
12a80 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 75 72 6c 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 e))..........(url.(package-recip
12aa0 65 2d 2d 75 70 73 74 72 65 61 6d 2d 75 72 6c 20 72 63 70 29 29 0a 20 20 20 20 20 20 20 20 20 28 e--upstream-url.rcp))..........(
12ac0 72 65 70 6f 20 28 6f 72 65 66 20 72 63 70 20 72 65 70 6f 29 29 0a 20 20 20 20 20 20 20 20 20 28 repo.(oref.rcp.repo))..........(
12ae0 66 65 74 63 68 65 72 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 2d 66 65 74 63 68 65 72 fetcher.(package-recipe--fetcher
12b00 20 72 63 70 29 29 0a 20 20 20 20 20 20 20 20 20 28 76 65 72 73 69 6f 6e 20 6e 69 6c 29 29 0a 20 .rcp))..........(version.nil))..
12b20 20 20 20 28 63 6f 6e 64 20 28 28 6e 6f 74 20 6e 6f 6e 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 ...(cond.((not.noninteractive)..
12b40 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 20 e2 80 a2 20 25 73 20 70 61 63 6b ..........(message.".....%s.pack
12b60 61 67 65 20 25 73 20 28 66 72 6f 6d 20 25 73 29 2e 2e 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 age.%s.(from.%s)..."............
12b80 20 20 20 20 20 20 20 20 20 28 69 66 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 69 6e 68 69 .........(if.package-build--inhi
12ba0 62 69 74 2d 62 75 69 6c 64 20 22 46 65 74 63 68 69 6e 67 22 20 22 42 75 69 6c 64 69 6e 67 22 29 bit-build."Fetching"."Building")
12bc0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 61 6d 65 0a 20 20 20 20 20 20 .....................name.......
12be0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 72 65 70 6f 20 28 66 6f 72 6d 61 74 20 22 ..............(if.repo.(format."
12c00 25 73 3a 25 73 22 20 66 65 74 63 68 65 72 20 72 65 70 6f 29 20 75 72 6c 29 29 29 0a 20 20 20 20 %s:%s".fetcher.repo).url))).....
12c20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 76 65 72 62 6f 73 65 0a 20 20 20 ......(package-build-verbose....
12c40 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 50 61 63 6b 61 67 65 3a 20 25 73 22 20 6e ........(message."Package:.%s".n
12c60 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 46 65 74 63 68 65 ame)............(message."Fetche
12c80 72 3a 20 25 73 22 20 66 65 74 63 68 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 r:.%s".fetcher)............(mess
12ca0 61 67 65 20 22 53 6f 75 72 63 65 3a 20 20 25 73 5c 6e 22 20 75 72 6c 29 29 29 0a 20 20 20 20 28 age."Source:..%s\n".url))).....(
12cc0 66 75 6e 63 61 6c 6c 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 66 65 74 63 68 2d 66 75 6e 63 funcall.package-build-fetch-func
12ce0 74 69 6f 6e 20 72 63 70 29 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 70 61 63 6b 61 67 65 2d 62 75 tion.rcp).....(unless.package-bu
12d00 69 6c 64 2d 2d 69 6e 68 69 62 69 74 2d 62 75 69 6c 64 0a 20 20 20 20 20 20 28 70 61 63 6b 61 67 ild--inhibit-build.......(packag
12d20 65 2d 62 75 69 6c 64 2d 2d 73 65 6c 65 63 74 2d 76 65 72 73 69 6f 6e 20 72 63 70 29 0a 20 20 20 e-build--select-version.rcp)....
12d40 20 20 20 28 73 65 74 71 20 76 65 72 73 69 6f 6e 20 28 6f 72 65 66 20 72 63 70 20 76 65 72 73 69 ...(setq.version.(oref.rcp.versi
12d60 6f 6e 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 76 65 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 on)).......(when.version........
12d80 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 70 61 63 6b 61 67 65 20 72 63 70 29 0a 20 20 .(package-build--package.rcp)...
12da0 20 20 20 20 20 20 28 77 68 65 6e 20 64 75 6d 70 2d 61 72 63 68 69 76 65 2d 63 6f 6e 74 65 6e 74 ......(when.dump-archive-content
12dc0 73 0a 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 64 75 6d 70 2d s...........(package-build-dump-
12de0 61 72 63 68 69 76 65 2d 63 6f 6e 74 65 6e 74 73 29 29 29 0a 20 20 20 20 20 20 28 69 66 20 28 6e archive-contents))).......(if.(n
12e00 6f 74 20 76 65 72 73 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 ot.version)...........(message."
12e20 20 e2 9c 97 20 43 61 6e 6e 6f 74 20 64 65 74 65 72 6d 69 6e 65 20 76 65 72 73 69 6f 6e 21 22 29 .....Cannot.determine.version!")
12e40 0a 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 20 e2 9c 93 20 53 75 63 63 65 73 73 3a .........(message.".....Success:
12e60 22 29 0a 20 20 20 20 20 20 20 20 28 70 63 61 73 65 2d 64 6f 6c 69 73 74 20 28 60 28 2c 66 69 6c ").........(pcase-dolist.(`(,fil
12e80 65 20 2e 20 2c 61 74 74 72 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e...,attrs).....................
12ea0 20 20 20 28 64 69 72 65 63 74 6f 72 79 2d 66 69 6c 65 73 2d 61 6e 64 2d 61 74 74 72 69 62 75 74 ...(directory-files-and-attribut
12ec0 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 63 6b 61 es.........................packa
12ee0 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 64 69 72 20 6e 69 6c 0a 20 20 20 20 20 20 20 ge-build-archive-dir.nil........
12f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 5c 5c 60 25 73 2d .................(format."\\`%s-
12f20 5b 30 2d 39 5d 2b 22 20 6e 61 6d 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 [0-9]+".name)))...........(messa
12f40 67 65 20 22 20 20 25 73 20 20 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ge."..%s..%s"...................
12f60 20 28 66 6f 72 6d 61 74 2d 74 69 6d 65 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 .(format-time-string............
12f80 20 20 20 20 20 20 20 20 20 22 25 46 54 25 54 25 7a 22 20 28 66 69 6c 65 2d 61 74 74 72 69 62 75 ........."%FT%T%z".(file-attribu
12fa0 74 65 2d 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2d 74 69 6d 65 20 61 74 74 72 73 29 20 74 29 0a 20 te-modification-time.attrs).t)..
12fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6c 65 29 29 29 29 0a 20 20 20 20 28 ..................file)))).....(
12fe0 6d 65 73 73 61 67 65 20 22 25 73 20 25 73 20 69 6e 20 25 2e 33 66 73 2c 20 66 69 6e 69 73 68 65 message."%s.%s.in.%.3fs,.finishe
13000 64 20 61 74 20 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 76 65 72 73 69 6f d.at.%s"..............(if.versio
13020 6e 20 22 42 75 69 6c 74 22 20 22 46 65 74 63 68 65 64 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 n."Built"."Fetched")............
13040 20 20 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6c 6f 61 74 2d 74 69 6d 65 20 ..name..............(float-time.
13060 28 74 69 6d 65 2d 73 69 6e 63 65 20 73 74 61 72 74 2d 74 69 6d 65 29 29 0a 20 20 20 20 20 20 20 (time-since.start-time))........
13080 20 20 20 20 20 20 28 66 6f 72 6d 61 74 2d 74 69 6d 65 2d 73 74 72 69 6e 67 20 22 25 46 54 25 54 ......(format-time-string."%FT%T
130a0 25 7a 22 20 6e 69 6c 20 74 29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 %z".nil.t))))..;;;###autoload.(d
130c0 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 70 61 63 6b 61 67 65 20 28 72 63 70 efun.package-build--package.(rcp
130e0 29 0a 20 20 22 42 75 69 6c 64 20 74 68 65 20 70 61 63 6b 61 67 65 20 76 65 72 73 69 6f 6e 20 73 )..."Build.the.package.version.s
13100 70 65 63 69 66 69 65 64 20 62 79 20 52 43 50 2e 0a 52 65 74 75 72 6e 20 74 68 65 20 61 72 63 68 pecified.by.RCP..Return.the.arch
13120 69 76 65 20 65 6e 74 72 79 20 66 6f 72 20 74 68 65 20 70 61 63 6b 61 67 65 20 61 6e 64 20 73 74 ive.entry.for.the.package.and.st
13140 6f 72 65 20 74 68 65 20 70 61 63 6b 61 67 65 0a 69 6e 20 60 70 61 63 6b 61 67 65 2d 62 75 69 6c ore.the.package.in.`package-buil
13160 64 2d 61 72 63 68 69 76 65 2d 64 69 72 27 2e 22 0a 20 20 28 6c 65 74 20 28 28 64 65 66 61 75 6c d-archive-dir'."...(let.((defaul
13180 74 2d 64 69 72 65 63 74 6f 72 79 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 77 6f 72 6b t-directory.(package-build--work
131a0 69 6e 67 2d 74 72 65 65 20 72 63 70 29 29 29 0a 20 20 20 20 28 75 6e 77 69 6e 64 2d 70 72 6f 74 ing-tree.rcp))).....(unwind-prot
131c0 65 63 74 0a 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 28 66 75 ect.........(progn...........(fu
131e0 6e 63 61 6c 6c 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 63 68 65 63 6b 6f 75 74 2d 66 75 6e ncall.package-build-checkout-fun
13200 63 74 69 6f 6e 20 72 63 70 29 0a 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 66 69 6c 65 ction.rcp)...........(let.((file
13220 73 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 65 78 70 61 6e 64 2d 66 69 6c 65 73 2d 73 70 s.(package-build-expand-files-sp
13240 65 63 20 72 63 70 20 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 ec.rcp.t))).............(cond...
13260 20 20 20 20 20 20 20 20 20 20 20 28 28 3d 20 28 6c 65 6e 67 74 68 20 66 69 6c 65 73 29 20 30 29 ...........((=.(length.files).0)
13280 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 65 ...............(package-build--e
132a0 72 72 6f 72 20 72 63 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 55 6e 61 62 6c 65 rror.rcp................."Unable
132c0 20 74 6f 20 66 69 6e 64 20 66 69 6c 65 73 20 6d 61 74 63 68 69 6e 67 20 72 65 63 69 70 65 20 70 .to.find.files.matching.recipe.p
132e0 61 74 74 65 72 6e 73 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 atterns"))..............(package
13300 2d 62 75 69 6c 64 2d 62 75 69 6c 64 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 -build-build-function...........
13320 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 62 75 69 6c 64 ....(funcall.package-build-build
13340 2d 66 75 6e 63 74 69 6f 6e 20 72 63 70 20 66 69 6c 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 -function.rcp.files))...........
13360 20 20 20 28 28 3d 20 28 6c 65 6e 67 74 68 20 66 69 6c 65 73 29 20 31 29 0a 20 20 20 20 20 20 20 ...((=.(length.files).1)........
13380 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 62 75 69 6c 64 2d 73 69 6e .......(package-build--build-sin
133a0 67 6c 65 2d 66 69 6c 65 2d 70 61 63 6b 61 67 65 20 72 63 70 20 66 69 6c 65 73 29 29 0a 20 20 20 gle-file-package.rcp.files))....
133c0 20 20 20 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b ..........(t...............(pack
133e0 61 67 65 2d 62 75 69 6c 64 2d 2d 62 75 69 6c 64 2d 6d 75 6c 74 69 2d 66 69 6c 65 2d 70 61 63 6b age-build--build-multi-file-pack
13400 61 67 65 20 72 63 70 20 66 69 6c 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 age.rcp.files))).............(wh
13420 65 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 62 61 64 67 65 2d 64 61 74 61 0a 20 20 20 20 en.package-build-badge-data.....
13440 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 77 72 69 74 65 2d ..........(package-build--write-
13460 62 61 64 67 65 2d 69 6d 61 67 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 65 66 badge-image................(oref
13480 20 72 63 70 20 6e 61 6d 65 29 20 28 6f 72 65 66 20 72 63 70 20 76 65 72 73 69 6f 6e 29 20 70 61 .rcp.name).(oref.rcp.version).pa
134a0 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 64 69 72 29 29 29 29 0a 20 20 20 20 ckage-build-archive-dir)))).....
134c0 20 20 28 66 75 6e 63 61 6c 6c 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 63 6c 65 61 6e 75 70 ..(funcall.package-build-cleanup
134e0 2d 66 75 6e 63 74 69 6f 6e 20 72 63 70 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 -function.rcp))))..(defun.packag
13500 65 2d 62 75 69 6c 64 2d 2d 62 75 69 6c 64 2d 73 69 6e 67 6c 65 2d 66 69 6c 65 2d 70 61 63 6b 61 e-build--build-single-file-packa
13520 67 65 20 28 72 63 70 20 66 69 6c 65 73 29 0a 20 20 28 6c 65 74 2a 20 28 28 6e 61 6d 65 20 28 6f ge.(rcp.files)...(let*.((name.(o
13540 72 65 66 20 72 63 70 20 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 76 65 72 73 69 6f 6e ref.rcp.name))..........(version
13560 20 28 6f 72 65 66 20 72 63 70 20 76 65 72 73 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 28 63 .(oref.rcp.version))..........(c
13580 6f 6d 6d 69 74 20 28 6f 72 65 66 20 72 63 70 20 63 6f 6d 6d 69 74 29 29 0a 20 20 20 20 20 20 20 ommit.(oref.rcp.commit))........
135a0 20 20 28 66 69 6c 65 20 28 63 61 61 72 20 66 69 6c 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 ..(file.(caar.files))..........(
135c0 73 6f 75 72 63 65 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 66 69 6c 65 29 29 0a source.(expand-file-name.file)).
135e0 20 20 20 20 20 20 20 20 20 28 74 61 72 67 65 74 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 .........(target.(expand-file-na
13600 6d 65 20 28 63 6f 6e 63 61 74 20 6e 61 6d 65 20 22 2d 22 20 76 65 72 73 69 6f 6e 20 22 2e 65 6c me.(concat.name."-".version.".el
13620 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ")..............................
13640 20 20 20 20 20 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 64 69 72 29 ......package-build-archive-dir)
13660 29 0a 20 20 20 20 20 20 20 20 20 28 64 65 73 63 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d )..........(desc.(package-build-
13680 2d 64 65 73 63 2d 66 72 6f 6d 2d 6c 69 62 72 61 72 79 20 72 63 70 20 66 69 6c 65 73 29 29 29 0a -desc-from-library.rcp.files))).
136a0 20 20 20 20 28 75 6e 6c 65 73 73 20 28 6d 65 6d 62 65 72 20 28 64 6f 77 6e 63 61 73 65 20 28 66 ....(unless.(member.(downcase.(f
136c0 69 6c 65 2d 6e 61 6d 65 2d 6e 6f 6e 64 69 72 65 63 74 6f 72 79 20 66 69 6c 65 29 29 0a 20 20 20 ile-name-nondirectory.file))....
136e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 28 64 6f 77 6e 63 61 73 65 .................(list.(downcase
13700 20 28 63 6f 6e 63 61 74 20 6e 61 6d 65 20 22 2e 65 6c 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 .(concat.name.".el"))...........
13720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6f 77 6e 63 61 73 65 20 28 63 6f 6e 63 61 ................(downcase.(conca
13740 74 20 6e 61 6d 65 20 22 2e 65 6c 2e 69 6e 22 29 29 29 29 0a 20 20 20 20 20 20 28 70 61 63 6b 61 t.name.".el.in")))).......(packa
13760 67 65 2d 62 75 69 6c 64 2d 2d 65 72 72 6f 72 20 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 22 53 69 ge-build--error.name........."Si
13780 6e 67 6c 65 20 66 69 6c 65 20 25 73 20 64 6f 65 73 20 6e 6f 74 20 6d 61 74 63 68 20 70 61 63 6b ngle.file.%s.does.not.match.pack
137a0 61 67 65 20 6e 61 6d 65 20 25 73 22 20 66 69 6c 65 20 6e 61 6d 65 29 29 0a 20 20 20 20 28 63 6f age.name.%s".file.name)).....(co
137c0 70 79 2d 66 69 6c 65 20 73 6f 75 72 63 65 20 74 61 72 67 65 74 20 74 29 0a 20 20 20 20 28 6c 65 py-file.source.target.t).....(le
137e0 74 20 28 28 65 6e 61 62 6c 65 2d 6c 6f 63 61 6c 2d 76 61 72 69 61 62 6c 65 73 20 6e 69 6c 29 0a t.((enable-local-variables.nil).
13800 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 62 61 63 6b 75 70 2d 66 69 6c 65 73 20 6e 69 6c ..........(make-backup-files.nil
13820 29 0a 20 20 20 20 20 20 20 20 20 20 28 62 65 66 6f 72 65 2d 73 61 76 65 2d 68 6f 6f 6b 20 6e 69 )...........(before-save-hook.ni
13840 6c 29 29 0a 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 l)).......(with-current-buffer.(
13860 66 69 6e 64 2d 66 69 6c 65 20 74 61 72 67 65 74 29 0a 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 find-file.target).........(packa
13880 67 65 2d 62 75 69 6c 64 2d 2d 75 70 64 61 74 65 2d 6f 72 2d 69 6e 73 65 72 74 2d 68 65 61 64 65 ge-build--update-or-insert-heade
138a0 72 20 22 50 61 63 6b 61 67 65 2d 43 6f 6d 6d 69 74 22 20 63 6f 6d 6d 69 74 29 0a 20 20 20 20 20 r."Package-Commit".commit)......
138c0 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 75 70 64 61 74 65 2d 6f 72 2d 69 6e 73 ...(package-build--update-or-ins
138e0 65 72 74 2d 68 65 61 64 65 72 20 22 50 61 63 6b 61 67 65 2d 56 65 72 73 69 6f 6e 22 20 76 65 72 ert-header."Package-Version".ver
13900 73 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 65 6e sion).........(package-build--en
13920 73 75 72 65 2d 65 6e 64 73 2d 68 65 72 65 2d 6c 69 6e 65 20 73 6f 75 72 63 65 29 0a 20 20 20 20 sure-ends-here-line.source).....
13940 20 20 20 20 28 77 72 69 74 65 2d 66 69 6c 65 20 74 61 72 67 65 74 20 6e 69 6c 29 0a 20 20 20 20 ....(write-file.target.nil).....
13960 20 20 20 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72 29 29 29 0a 20 20 20 20 28 70 61 63 6b 61 67 65 ....(kill-buffer))).....(package
13980 2d 62 75 69 6c 64 2d 2d 77 72 69 74 65 2d 70 6b 67 2d 72 65 61 64 6d 65 20 72 63 70 20 66 69 6c -build--write-pkg-readme.rcp.fil
139a0 65 73 29 0a 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 77 72 69 74 65 2d 61 72 es).....(package-build--write-ar
139c0 63 68 69 76 65 2d 65 6e 74 72 79 20 64 65 73 63 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b chive-entry.desc)))..(defun.pack
139e0 61 67 65 2d 62 75 69 6c 64 2d 2d 62 75 69 6c 64 2d 6d 75 6c 74 69 2d 66 69 6c 65 2d 70 61 63 6b age-build--build-multi-file-pack
13a00 61 67 65 20 28 72 63 70 20 66 69 6c 65 73 29 0a 20 20 28 6c 65 74 2a 20 28 28 6e 61 6d 65 20 28 age.(rcp.files)...(let*.((name.(
13a20 6f 72 65 66 20 72 63 70 20 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 76 65 72 73 69 6f oref.rcp.name))..........(versio
13a40 6e 20 28 6f 72 65 66 20 72 63 70 20 76 65 72 73 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 28 n.(oref.rcp.version))..........(
13a60 74 6d 70 2d 64 69 72 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 61 73 2d 64 69 72 65 63 74 6f 72 79 20 tmp-dir.(file-name-as-directory.
13a80 28 6d 61 6b 65 2d 74 65 6d 70 2d 66 69 6c 65 20 6e 61 6d 65 20 74 29 29 29 29 0a 20 20 20 20 28 (make-temp-file.name.t)))).....(
13aa0 75 6e 77 69 6e 64 2d 70 72 6f 74 65 63 74 0a 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 74 unwind-protect.........(let*.((t
13ac0 61 72 67 65 74 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 28 63 6f 6e 63 61 74 20 arget.(expand-file-name.(concat.
13ae0 6e 61 6d 65 20 22 2d 22 20 76 65 72 73 69 6f 6e 29 20 74 6d 70 2d 64 69 72 29 29 0a 20 20 20 20 name."-".version).tmp-dir)).....
13b00 20 20 20 20 20 20 20 20 20 20 20 28 64 65 73 63 20 28 6f 72 20 28 70 61 63 6b 61 67 65 2d 62 75 ...........(desc.(or.(package-bu
13b20 69 6c 64 2d 2d 64 65 73 63 2d 66 72 6f 6d 2d 70 61 63 6b 61 67 65 20 72 63 70 20 66 69 6c 65 73 ild--desc-from-package.rcp.files
13b40 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b )..........................(pack
13b60 61 67 65 2d 62 75 69 6c 64 2d 2d 64 65 73 63 2d 66 72 6f 6d 2d 6c 69 62 72 61 72 79 20 72 63 70 age-build--desc-from-library.rcp
13b80 20 66 69 6c 65 73 20 27 74 61 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .files.'tar)....................
13ba0 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 65 72 72 6f 72 20 6e 61 6d 65 ......(package-build--error.name
13bc0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 25 73 5b ............................"%s[
13be0 2d 70 6b 67 5d 2e 65 6c 20 6d 61 74 63 68 69 6e 67 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 69 -pkg].el.matching.package.name.i
13c00 73 20 6d 69 73 73 69 6e 67 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s.missing"......................
13c20 20 20 20 20 20 20 6e 61 6d 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 ......name))))...........(packag
13c40 65 2d 62 75 69 6c 64 2d 2d 63 6f 70 79 2d 70 61 63 6b 61 67 65 2d 66 69 6c 65 73 20 66 69 6c 65 e-build--copy-package-files.file
13c60 73 20 74 61 72 67 65 74 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 s.target)...........(package-bui
13c80 6c 64 2d 2d 77 72 69 74 65 2d 70 6b 67 2d 66 69 6c 65 20 64 65 73 63 20 74 61 72 67 65 74 29 0a ld--write-pkg-file.desc.target).
13ca0 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 67 65 6e 65 72 61 ..........(package-build--genera
13cc0 74 65 2d 69 6e 66 6f 2d 66 69 6c 65 73 20 72 63 70 20 66 69 6c 65 73 20 74 61 72 67 65 74 29 0a te-info-files.rcp.files.target).
13ce0 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 72 65 61 74 65 ..........(package-build--create
13d00 2d 74 61 72 20 72 63 70 20 74 6d 70 2d 64 69 72 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 61 63 -tar.rcp.tmp-dir)...........(pac
13d20 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 77 72 69 74 65 2d 70 6b 67 2d 72 65 61 64 6d 65 20 72 63 70 kage-build--write-pkg-readme.rcp
13d40 20 66 69 6c 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 .files)...........(package-build
13d60 2d 2d 77 72 69 74 65 2d 61 72 63 68 69 76 65 2d 65 6e 74 72 79 20 64 65 73 63 29 29 0a 20 20 20 --write-archive-entry.desc))....
13d80 20 20 20 28 64 65 6c 65 74 65 2d 64 69 72 65 63 74 6f 72 79 20 74 6d 70 2d 64 69 72 20 74 20 6e ...(delete-directory.tmp-dir.t.n
13da0 69 6c 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 6c il))))..(defun.package-build--cl
13dc0 65 61 6e 75 70 20 28 72 63 70 29 0a 20 20 28 63 6f 6e 64 20 28 28 63 6c 2d 74 79 70 65 70 20 72 eanup.(rcp)...(cond.((cl-typep.r
13de0 63 70 20 27 70 61 63 6b 61 67 65 2d 67 69 74 2d 72 65 63 69 70 65 29 0a 20 20 20 20 20 20 20 20 cp.'package-git-recipe).........
13e00 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 72 63 .(package-build--call-process.rc
13e20 70 20 22 67 69 74 22 20 22 63 6c 65 61 6e 22 20 22 2d 66 22 20 22 2d 64 22 20 22 2d 78 22 29 29 p."git"."clean"."-f"."-d"."-x"))
13e40 0a 20 20 20 20 20 20 20 20 28 28 63 6c 2d 74 79 70 65 70 20 72 63 70 20 27 70 61 63 6b 61 67 65 .........((cl-typep.rcp.'package
13e60 2d 68 67 2d 72 65 63 69 70 65 29 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 4d 65 72 63 75 72 69 61 -hg-recipe)..........;;.Mercuria
13e80 6c 27 73 20 69 6e 74 65 72 66 61 63 65 20 69 73 20 73 6f 20 6d 75 63 68 20 62 65 74 74 65 72 20 l's.interface.is.so.much.better.
13ea0 74 68 61 6e 20 47 69 74 27 73 2c 20 74 68 65 79 20 73 61 69 64 2e 0a 20 20 20 20 20 20 20 20 20 than.Git's,.they.said...........
13ec0 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 28 70 72 (with-temp-buffer............(pr
13ee0 6f 63 65 73 73 2d 66 69 6c 65 20 22 68 67 22 20 6e 69 6c 20 74 20 6e 69 6c 20 22 73 74 61 74 75 ocess-file."hg".nil.t.nil."statu
13f00 73 22 20 22 2d 2d 6e 6f 2d 73 74 61 74 75 73 22 20 22 2d 2d 75 6e 6b 6e 6f 77 6e 22 20 22 2d 30 s"."--no-status"."--unknown"."-0
13f20 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 20 23 27 64 65 6c 65 74 65 2d 66 69 6c ")............(mapc.#'delete-fil
13f40 65 20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67 20 28 62 75 66 66 65 72 2d 73 74 72 69 6e 67 29 20 e.(split-string.(buffer-string).
13f60 22 5c 30 22 20 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 "\0".t)))..........(with-temp-bu
13f80 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 63 65 73 73 2d 66 69 6c 65 20 22 68 ffer............(process-file."h
13fa0 67 22 20 6e 69 6c 20 74 20 6e 69 6c 20 22 73 74 61 74 75 73 22 20 22 2d 2d 6e 6f 2d 73 74 61 74 g".nil.t.nil."status"."--no-stat
13fc0 75 73 22 20 22 2d 2d 69 67 6e 6f 72 65 64 22 20 22 2d 30 22 29 0a 20 20 20 20 20 20 20 20 20 20 us"."--ignored"."-0")...........
13fe0 20 28 6d 61 70 63 20 23 27 64 65 6c 65 74 65 2d 66 69 6c 65 20 28 73 70 6c 69 74 2d 73 74 72 69 .(mapc.#'delete-file.(split-stri
14000 6e 67 20 28 62 75 66 66 65 72 2d 73 74 72 69 6e 67 29 20 22 5c 30 22 20 74 29 29 29 0a 20 20 20 ng.(buffer-string)."\0".t)))....
14020 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 63 61 6c 6c 2d 70 72 6f 63 65 ......(package-build--call-proce
14040 73 73 20 72 63 70 20 22 68 67 22 20 22 70 75 72 67 65 22 29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 ss.rcp."hg"."purge"))))..;;;###a
14060 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 6c 6c utoload.(defun.package-build-all
14080 20 28 29 0a 20 20 22 42 75 69 6c 64 20 61 20 70 61 63 6b 61 67 65 20 66 6f 72 20 65 61 63 68 20 .()..."Build.a.package.for.each.
140a0 6f 66 20 74 68 65 20 61 76 61 69 6c 61 62 6c 65 20 72 65 63 69 70 65 73 2e 0a 49 66 20 60 70 61 of.the.available.recipes..If.`pa
140c0 63 6b 61 67 65 2d 62 75 69 6c 64 2d 70 72 65 64 69 63 61 74 65 2d 66 75 6e 63 74 69 6f 6e 27 20 ckage-build-predicate-function'.
140e0 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 74 68 65 6e 20 6f 6e 6c 79 0a 70 61 63 6b 61 67 65 73 20 66 is.non-nil,.then.only.packages.f
14100 6f 72 20 77 68 69 63 68 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 6e 6f 6e 2d 6e 69 6c 20 61 72 or.which.that.returns.non-nil.ar
14120 65 20 62 75 69 6c 64 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 6c 65 74 e.build."...(interactive)...(let
14140 2a 20 28 28 73 74 61 72 74 20 28 63 75 72 72 65 6e 74 2d 74 69 6d 65 29 29 0a 20 20 20 20 20 20 *.((start.(current-time)).......
14160 20 20 20 28 72 65 63 69 70 65 73 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 72 65 63 69 ...(recipes.(package-recipe-reci
14180 70 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 74 6f 74 61 6c 20 28 6c 65 6e 67 74 68 20 72 65 pes))..........(total.(length.re
141a0 63 69 70 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 75 63 63 65 73 73 20 30 29 0a 20 20 20 cipes))..........(success.0)....
141c0 20 20 20 20 20 20 73 6b 69 70 70 65 64 20 69 6e 76 61 6c 69 64 20 66 61 69 6c 65 64 29 0a 20 20 ......skipped.invalid.failed)...
141e0 20 20 28 64 6f 6c 69 73 74 20 28 6e 61 6d 65 20 72 65 63 69 70 65 73 29 0a 20 20 20 20 20 20 28 ..(dolist.(name.recipes).......(
14200 6c 65 74 20 28 28 72 63 70 20 28 77 69 74 68 2d 64 65 6d 6f 74 65 64 2d 65 72 72 6f 72 73 20 22 let.((rcp.(with-demoted-errors."
14220 52 65 63 69 70 65 20 65 72 72 6f 72 3a 20 25 53 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Recipe.error:.%S"...............
14240 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 6c 6f 6f 6b 75 70 20 6e 61 6d 65 .....(package-recipe-lookup.name
14260 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 6e 6f 74 20 72 63 70 29 0a 20 20 )))).........(cond.((not.rcp)...
14280 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 6e 61 6d 65 20 69 6e 76 61 6c 69 64 29 .............(push.name.invalid)
142a0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 70 61 63 6b 61 67 65 2d 62 75 )...............((and.package-bu
142c0 69 6c 64 2d 70 72 65 64 69 63 61 74 65 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 ild-predicate-function..........
142e0 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 66 75 6e 63 61 6c 6c 20 70 61 63 6b 61 67 65 ...........(not.(funcall.package
14300 2d 62 75 69 6c 64 2d 70 72 65 64 69 63 61 74 65 2d 66 75 6e 63 74 69 6f 6e 20 72 63 70 29 29 29 -build-predicate-function.rcp)))
14320 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 6e 61 6d 65 20 73 6b 69 70 70 ................(push.name.skipp
14340 65 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 77 69 74 68 2d 64 65 6d 6f 74 65 ed))...............((with-demote
14360 64 2d 65 72 72 6f 72 73 20 22 42 75 69 6c 64 20 65 72 72 6f 72 3a 20 25 53 22 0a 20 20 20 20 20 d-errors."Build.error:.%S"......
14380 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 ............(package-build-archi
143a0 76 65 20 6e 61 6d 65 29 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 69 ve.name).t)................(cl-i
143c0 6e 63 66 20 73 75 63 63 65 73 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 70 75 ncf.success))...............((pu
143e0 73 68 20 6e 61 6d 65 20 66 61 69 6c 65 64 29 29 29 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 64 sh.name.failed))))).....(let.((d
14400 75 72 61 74 69 6f 6e 20 28 2f 20 28 66 6c 6f 61 74 2d 74 69 6d 65 20 28 74 69 6d 65 2d 73 75 62 uration.(/.(float-time.(time-sub
14420 74 72 61 63 74 20 28 63 75 72 72 65 6e 74 2d 74 69 6d 65 29 20 73 74 61 72 74 29 29 20 36 30 29 tract.(current-time).start)).60)
14440 29 29 0a 20 20 20 20 20 20 28 69 66 20 28 6e 6f 74 20 28 6f 72 20 73 6b 69 70 70 65 64 20 69 6e )).......(if.(not.(or.skipped.in
14460 76 61 6c 69 64 20 66 61 69 6c 65 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 valid.failed))...........(messag
14480 65 20 22 53 75 63 63 65 73 73 66 75 6c 6c 79 20 62 75 69 6c 74 20 61 6c 6c 20 25 73 20 70 61 63 e."Successfully.built.all.%s.pac
144a0 6b 61 67 65 73 20 28 25 2e 30 66 6d 29 22 20 74 6f 74 61 6c 20 64 75 72 61 74 69 6f 6e 29 0a 20 kages.(%.0fm)".total.duration)..
144c0 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 53 75 63 63 65 73 73 66 75 6c 6c 79 20 62 75 .......(message."Successfully.bu
144e0 69 6c 74 20 25 69 20 6f 66 20 25 73 20 70 61 63 6b 61 67 65 73 20 28 25 2e 30 66 6d 29 22 0a 20 ilt.%i.of.%s.packages.(%.0fm)"..
14500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 75 63 63 65 73 73 20 74 6f 74 61 6c 20 64 75 ................success.total.du
14520 72 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 73 6b 69 70 70 65 64 0a 20 20 ration).........(when.skipped...
14540 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 53 6b 69 70 70 65 64 20 25 69 20 70 61 63 ........(message."Skipped.%i.pac
14560 6b 61 67 65 73 3a 5c 6e 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 kages:\n%s"....................(
14580 6c 65 6e 67 74 68 20 73 6b 69 70 70 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 length.skipped).................
145a0 20 20 20 28 6d 61 70 63 6f 6e 63 61 74 20 28 6c 61 6d 62 64 61 20 28 6e 29 20 28 63 6f 6e 63 61 ...(mapconcat.(lambda.(n).(conca
145c0 74 20 22 20 20 22 20 6e 29 29 20 28 6e 72 65 76 65 72 73 65 20 73 6b 69 70 70 65 64 29 20 22 5c t."..".n)).(nreverse.skipped)."\
145e0 6e 22 29 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 69 6e 76 61 6c 69 64 0a 20 20 20 20 n"))).........(when.invalid.....
14600 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 44 69 64 20 6e 6f 74 20 62 75 69 6c 74 20 70 61 ......(message."Did.not.built.pa
14620 63 6b 61 67 65 73 20 66 6f 72 20 25 69 20 69 6e 76 61 6c 69 64 20 72 65 63 69 70 65 73 3a 5c 6e ckages.for.%i.invalid.recipes:\n
14640 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 6e 67 74 68 20 69 %s"....................(length.i
14660 6e 76 61 6c 69 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 nvalid)....................(mapc
14680 6f 6e 63 61 74 20 28 6c 61 6d 62 64 61 20 28 6e 29 20 28 63 6f 6e 63 61 74 20 22 20 20 22 20 6e oncat.(lambda.(n).(concat."..".n
146a0 29 29 20 28 6e 72 65 76 65 72 73 65 20 69 6e 76 61 6c 69 64 29 20 22 5c 6e 22 29 29 29 0a 20 20 )).(nreverse.invalid)."\n")))...
146c0 20 20 20 20 20 20 28 77 68 65 6e 20 66 61 69 6c 65 64 0a 20 20 20 20 20 20 20 20 20 20 28 6d 65 ......(when.failed...........(me
146e0 73 73 61 67 65 20 22 42 75 69 6c 64 69 6e 67 20 25 69 20 70 61 63 6b 61 67 65 73 20 66 61 69 6c ssage."Building.%i.packages.fail
14700 65 64 3a 5c 6e 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 6e ed:\n%s"....................(len
14720 67 74 68 20 66 61 69 6c 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 gth.failed)....................(
14740 6d 61 70 63 6f 6e 63 61 74 20 28 6c 61 6d 62 64 61 20 28 6e 29 20 28 63 6f 6e 63 61 74 20 22 20 mapconcat.(lambda.(n).(concat.".
14760 20 22 20 6e 29 29 20 28 6e 72 65 76 65 72 73 65 20 66 61 69 6c 65 64 29 20 22 5c 6e 22 29 29 29 .".n)).(nreverse.failed)."\n")))
14780 29 29 29 0a 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 64 75 6d 70 2d 61 72 63 68 69 76 )))...(package-build-dump-archiv
147a0 65 2d 63 6f 6e 74 65 6e 74 73 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 e-contents))..(defun.package-bui
147c0 6c 64 2d 63 6c 65 61 6e 75 70 20 28 29 0a 20 20 22 52 65 6d 6f 76 65 20 70 72 65 76 69 6f 75 73 ld-cleanup.()..."Remove.previous
147e0 6c 79 20 62 75 69 6c 74 20 70 61 63 6b 61 67 65 73 20 74 68 61 74 20 6e 6f 20 6c 6f 6e 67 65 72 ly.built.packages.that.no.longer
14800 20 68 61 76 65 20 72 65 63 69 70 65 73 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a .have.recipes."...(interactive).
14820 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 64 75 6d 70 2d 61 72 63 68 69 76 65 2d 63 6f ..(package-build-dump-archive-co
14840 6e 74 65 6e 74 73 29 29 0a 0a 3b 3b 3b 20 41 72 63 68 69 76 65 0a 0a 28 64 65 66 75 6e 20 70 61 ntents))..;;;.Archive..(defun.pa
14860 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 61 6c 69 73 74 20 28 29 0a 20 20 22 ckage-build-archive-alist.()..."
14880 52 65 74 75 72 6e 20 74 68 65 20 61 72 63 68 69 76 65 20 63 6f 6e 74 65 6e 74 73 2c 20 77 69 74 Return.the.archive.contents,.wit
148a0 68 6f 75 74 20 75 70 64 61 74 69 6e 67 20 69 74 20 66 69 72 73 74 2e 22 0a 20 20 28 6c 65 74 20 hout.updating.it.first."...(let.
148c0 28 28 66 69 6c 65 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 22 61 72 63 68 69 76 ((file.(expand-file-name."archiv
148e0 65 2d 63 6f 6e 74 65 6e 74 73 22 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 e-contents".package-build-archiv
14900 65 2d 64 69 72 29 29 29 0a 20 20 20 20 28 61 6e 64 20 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 e-dir))).....(and.(file-exists-p
14920 20 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 .file)..........(with-temp-buffe
14940 72 0a 20 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e r............(insert-file-conten
14960 74 73 20 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 63 64 72 20 28 72 65 61 64 20 28 ts.file)............(cdr.(read.(
14980 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 current-buffer)))))))..(defun.pa
149a0 63 6b 61 67 65 2d 62 75 69 6c 64 2d 64 75 6d 70 2d 61 72 63 68 69 76 65 2d 63 6f 6e 74 65 6e 74 ckage-build-dump-archive-content
149c0 73 20 28 26 6f 70 74 69 6f 6e 61 6c 20 66 69 6c 65 20 70 72 65 74 74 79 2d 70 72 69 6e 74 29 0a s.(&optional.file.pretty-print).
149e0 20 20 22 55 70 64 61 74 65 20 61 6e 64 20 72 65 74 75 72 6e 20 74 68 65 20 61 72 63 68 69 76 65 .."Update.and.return.the.archive
14a00 20 63 6f 6e 74 65 6e 74 73 2e 0a 0a 55 70 64 61 74 65 20 66 69 6c 65 73 20 5c 22 61 72 63 68 69 .contents...Update.files.\"archi
14a20 76 65 2d 63 6f 6e 74 65 6e 74 73 5c 22 20 61 6e 64 20 5c 22 65 6c 70 61 2d 70 61 63 6b 61 67 65 ve-contents\".and.\"elpa-package
14a40 73 2e 65 6c 64 5c 22 20 69 6e 0a 60 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 s.eld\".in.`package-build-archiv
14a60 65 2d 64 69 72 27 2e 20 20 49 66 20 6f 70 74 69 6f 6e 61 6c 20 46 49 4c 45 20 69 73 20 6e 6f 6e e-dir'...If.optional.FILE.is.non
14a80 2d 6e 69 6c 2c 0a 75 73 65 20 74 68 61 74 20 74 6f 20 73 74 6f 72 65 20 74 68 65 20 61 72 63 68 -nil,.use.that.to.store.the.arch
14aa0 69 76 65 20 63 6f 6e 74 65 6e 74 73 20 61 6e 64 20 70 6c 61 63 65 20 74 68 65 20 73 65 63 6f 6e ive.contents.and.place.the.secon
14ac0 64 0a 66 69 6c 65 20 6e 65 78 74 20 74 6f 20 69 74 2e 0a 0a 49 66 20 6f 70 74 69 6f 6e 61 6c 20 d.file.next.to.it...If.optional.
14ae0 50 52 45 54 54 59 2d 50 52 49 4e 54 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 74 68 65 6e 20 70 72 PRETTY-PRINT.is.non-nil,.then.pr
14b00 65 74 74 79 2d 70 72 69 6e 74 0a 5c 22 61 72 63 68 69 76 65 2d 63 6f 6e 74 65 6e 74 73 5c 22 20 etty-print.\"archive-contents\".
14b20 69 6e 73 74 65 61 64 20 6f 66 20 75 73 69 6e 67 20 6f 6e 65 20 6c 69 6e 65 20 70 65 72 20 65 6e instead.of.using.one.line.per.en
14b40 74 72 79 2e 0a 5c 22 65 6c 70 61 2d 70 61 63 6b 61 67 65 73 2e 65 6c 64 5c 22 20 61 6c 77 61 79 try..\"elpa-packages.eld\".alway
14b60 73 20 75 73 65 73 20 6f 6e 65 20 6c 69 6e 65 20 70 65 72 20 65 6e 74 72 79 2e 22 0a 20 20 28 6c s.uses.one.line.per.entry."...(l
14b80 65 74 20 28 28 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 70 61 63 6b 61 67 65 2d 62 et.((default-directory.package-b
14ba0 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 64 69 72 29 0a 20 20 20 20 20 20 20 20 28 65 6e 74 72 69 uild-archive-dir).........(entri
14bc0 65 73 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 28 76 63 2d 70 6b 67 73 20 6e 69 6c 29 29 0a 20 es.nil).........(vc-pkgs.nil))..
14be0 20 20 20 28 64 6f 6c 69 73 74 20 28 66 69 6c 65 20 28 73 6f 72 74 20 28 64 69 72 65 63 74 6f 72 ...(dolist.(file.(sort.(director
14c00 79 2d 66 69 6c 65 73 20 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 74 20 22 2e 2a 5c y-files.default-directory.t.".*\
14c20 5c 2e 65 6e 74 72 79 5c 5c 27 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 \.entry\\'")....................
14c40 20 20 20 20 20 3b 3b 20 53 6f 72 74 20 6d 6f 72 65 20 72 65 63 65 6e 74 6c 79 20 62 75 69 6c 64 .....;;.Sort.more.recently.build
14c60 20 70 61 63 6b 61 67 65 73 20 66 69 72 73 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .packages.first.................
14c80 20 20 20 20 20 20 20 20 20 23 27 66 69 6c 65 2d 6e 65 77 65 72 2d 74 68 61 6e 2d 66 69 6c 65 2d .........#'file-newer-than-file-
14ca0 70 29 29 0a 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 65 6e 74 72 79 20 28 77 69 74 68 2d 74 65 p)).......(let*.((entry.(with-te
14cc0 6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 mp-buffer.......................
14ce0 28 69 6e 73 65 72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e 74 73 20 66 69 6c 65 29 0a 20 20 20 20 (insert-file-contents.file).....
14d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 61 64 20 28 63 75 72 72 65 6e 74 ..................(read.(current
14d20 2d 62 75 66 66 65 72 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 79 6d 62 6f 6c -buffer))))..............(symbol
14d40 20 28 63 61 72 20 65 6e 74 72 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 61 6d 65 .(car.entry))..............(name
14d60 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 73 79 6d 62 6f 6c 29 29 0a 20 20 20 20 20 20 20 20 20 .(symbol-name.symbol))..........
14d80 20 20 20 20 28 6f 75 74 64 61 74 65 64 20 28 61 73 73 71 20 73 79 6d 62 6f 6c 20 65 6e 74 72 69 ....(outdated.(assq.symbol.entri
14da0 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 28 28 6e es))).........(cond..........((n
14dc0 6f 74 20 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e ot.(file-exists-p.(expand-file-n
14de0 61 6d 65 20 6e 61 6d 65 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 63 69 70 65 73 2d 64 ame.name.package-build-recipes-d
14e00 69 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 52 65 63 69 70 65 20 63 6f 72 72 65 73 ir)))...........;;.Recipe.corres
14e20 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 69 73 20 65 6e 74 72 79 20 6e 6f 20 6c 6f 6e 67 65 72 20 ponding.to.this.entry.no.longer.
14e40 65 78 69 73 74 73 2e 0a 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 exists............(package-build
14e60 2d 2d 72 65 6d 6f 76 65 2d 61 72 63 68 69 76 65 2d 66 69 6c 65 73 20 65 6e 74 72 79 29 29 0a 20 --remove-archive-files.entry))..
14e80 20 20 20 20 20 20 20 20 28 6f 75 74 64 61 74 65 64 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 50 ........(outdated...........;;.P
14ea0 72 65 66 65 72 20 74 68 65 20 6d 6f 72 65 20 72 65 63 65 6e 74 6c 79 20 62 75 69 6c 74 20 70 61 refer.the.more.recently.built.pa
14ec0 63 6b 61 67 65 2c 20 77 68 69 63 68 20 6d 61 79 20 6e 6f 74 0a 20 20 20 20 20 20 20 20 20 20 3b ckage,.which.may.not...........;
14ee0 3b 20 6e 65 63 65 73 73 61 72 69 6c 79 20 68 61 76 65 20 74 68 65 20 68 69 67 68 65 73 74 20 76 ;.necessarily.have.the.highest.v
14f00 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 2c 20 65 2e 67 2e 2c 20 69 66 0a 20 20 20 20 20 20 20 20 ersion.number,.e.g.,.if.........
14f20 20 20 3b 3b 20 63 6f 6d 6d 69 74 20 68 69 73 74 6f 72 69 65 73 20 77 65 72 65 20 63 68 61 6e 67 ..;;.commit.histories.were.chang
14f40 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 72 65 ed............(package-build--re
14f60 6d 6f 76 65 2d 61 72 63 68 69 76 65 2d 66 69 6c 65 73 20 65 6e 74 72 79 29 29 0a 20 20 20 20 20 move-archive-files.entry))......
14f80 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 65 6e 74 72 79 20 65 6e 74 ....(t...........(push.entry.ent
14fa0 72 69 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 5b 4e 6f 6e 5d 47 4e 55 20 45 4c 50 41 ries)...........;;.[Non]GNU.ELPA
14fc0 20 72 65 63 69 70 65 73 20 61 72 65 20 6e 6f 74 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 .recipes.are.not.compatible.with
14fe0 20 4d 65 6c 70 61 20 72 65 63 69 70 65 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 53 65 65 .Melpa.recipes............;;.See
15000 20 61 72 6f 75 6e 64 20 6f 63 63 75 72 72 65 6e 63 65 73 20 6f 66 20 22 70 6b 67 2d 73 70 65 63 .around.occurrences.of."pkg-spec
15020 22 20 69 6e 20 22 70 61 63 6b 61 67 65 2d 76 63 2e 65 6c 22 3b 0a 20 20 20 20 20 20 20 20 20 20 ".in."package-vc.el";...........
15040 3b 3b 20 73 65 63 74 69 6f 6e 20 22 53 70 65 63 69 66 69 63 61 74 69 6f 6e 73 20 28 65 6c 70 61 ;;.section."Specifications.(elpa
15060 2d 70 61 63 6b 61 67 65 73 29 22 20 69 6e 20 22 52 45 41 44 4d 45 22 20 6f 66 20 74 68 65 0a 20 -packages)".in."README".of.the..
15080 20 20 20 20 20 20 20 20 20 3b 3b 20 22 65 6c 70 61 2d 61 64 6d 69 6e 22 20 62 72 61 6e 63 68 20 .........;;."elpa-admin".branch.
150a0 69 6e 20 22 65 6d 61 63 73 2f 65 6c 70 61 2e 67 69 74 22 20 72 65 70 6f 73 69 74 6f 72 79 3b 20 in."emacs/elpa.git".repository;.
150c0 61 6e 64 20 61 6c 73 6f 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 60 65 6c 70 61 61 2d 2d 73 75 and.also...........;;.`elpaa--su
150e0 70 70 6f 72 74 65 64 2d 6b 65 79 77 6f 72 64 73 27 20 61 6e 64 20 60 65 6c 70 61 61 2d 2d 70 75 pported-keywords'.and.`elpaa--pu
15100 62 6c 69 73 68 2d 70 61 63 6b 61 67 65 2d 73 70 65 63 27 2e 0a 20 20 20 20 20 20 20 20 20 20 28 blish-package-spec'............(
15120 61 6e 64 2d 6c 65 74 2a 20 28 28 72 65 63 69 70 65 20 28 77 69 74 68 2d 64 65 6d 6f 74 65 64 2d and-let*.((recipe.(with-demoted-
15140 65 72 72 6f 72 73 20 22 52 65 63 69 70 65 20 65 72 72 6f 72 3a 20 25 53 22 0a 20 20 20 20 20 20 errors."Recipe.error:.%S".......
15160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 .........................(packag
15180 65 2d 72 65 63 69 70 65 2d 6c 6f 6f 6b 75 70 20 6e 61 6d 65 29 29 29 29 0a 20 20 20 20 20 20 20 e-recipe-lookup.name))))........
151a0 20 20 20 20 20 28 70 75 73 68 20 60 28 2c 73 79 6d 62 6f 6c 0a 20 20 20 20 20 20 20 20 20 20 20 .....(push.`(,symbol............
151c0 20 20 20 20 20 20 20 20 20 3a 75 72 6c 20 2c 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 2d .........:url.,(package-recipe--
151e0 75 70 73 74 72 65 61 6d 2d 75 72 6c 20 72 65 63 69 70 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 upstream-url.recipe)............
15200 20 20 20 20 20 20 20 20 20 2c 40 28 61 6e 64 20 28 63 6c 2d 74 79 70 65 70 20 72 65 63 69 70 65 .........,@(and.(cl-typep.recipe
15220 20 27 70 61 63 6b 61 67 65 2d 68 67 2d 72 65 63 69 70 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 .'package-hg-recipe)............
15240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 3a 76 63 2d 62 61 63 6b 65 6e ................(list.:vc-backen
15260 64 20 27 48 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 40 28 61 d.'Hg)).....................,@(a
15280 6e 64 2d 6c 65 74 2a 20 28 28 62 72 61 6e 63 68 20 28 6f 72 65 66 20 72 65 63 69 70 65 20 62 72 nd-let*.((branch.(oref.recipe.br
152a0 61 6e 63 68 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 anch))).........................
152c0 28 6c 69 73 74 20 3a 62 72 61 6e 63 68 20 62 72 61 6e 63 68 29 29 29 0a 20 20 20 20 20 20 20 20 (list.:branch.branch))).........
152e0 20 20 20 20 20 20 20 20 20 20 76 63 2d 70 6b 67 73 29 29 29 29 29 29 0a 20 20 20 20 28 73 65 74 ..........vc-pkgs)))))).....(set
15300 71 20 65 6e 74 72 69 65 73 20 28 63 6c 2d 73 6f 72 74 20 65 6e 74 72 69 65 73 20 23 27 73 74 72 q.entries.(cl-sort.entries.#'str
15320 69 6e 67 3c 20 3a 6b 65 79 20 23 27 63 61 72 29 29 0a 20 20 20 20 28 77 69 74 68 2d 74 65 6d 70 ing<.:key.#'car)).....(with-temp
15340 2d 66 69 6c 65 20 28 6f 72 20 66 69 6c 65 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 -file.(or.file.(expand-file-name
15360 20 22 61 72 63 68 69 76 65 2d 63 6f 6e 74 65 6e 74 73 22 29 29 0a 20 20 20 20 20 20 28 6c 65 74 ."archive-contents")).......(let
15380 20 28 28 70 72 69 6e 74 2d 6c 65 76 65 6c 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .((print-level.nil).............
153a0 28 70 72 69 6e 74 2d 6c 65 6e 67 74 68 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 28 69 66 20 (print-length.nil)).........(if.
153c0 70 72 65 74 74 79 2d 70 72 69 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 70 20 28 63 6f pretty-print.............(pp.(co
153e0 6e 73 20 31 20 65 6e 74 72 69 65 73 29 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 0a ns.1.entries).(current-buffer)).
15400 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 22 28 31 22 29 0a 20 20 20 20 20 20 20 20 ..........(insert."(1").........
15420 20 20 28 64 6f 6c 69 73 74 20 28 65 6e 74 72 79 20 65 6e 74 72 69 65 73 29 0a 20 20 20 20 20 20 ..(dolist.(entry.entries).......
15440 20 20 20 20 20 20 28 6e 65 77 6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 ......(newline).............(ins
15460 65 72 74 20 22 20 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 69 6e 31 20 65 6e 74 72 ert.".").............(prin1.entr
15480 79 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 y.(current-buffer)))...........(
154a0 69 6e 73 65 72 74 20 22 29 5c 6e 22 29 29 29 29 0a 20 20 20 20 28 73 65 74 71 20 76 63 2d 70 6b insert.")\n")))).....(setq.vc-pk
154c0 67 73 20 28 63 6c 2d 73 6f 72 74 20 76 63 2d 70 6b 67 73 20 23 27 73 74 72 69 6e 67 3c 20 3a 6b gs.(cl-sort.vc-pkgs.#'string<.:k
154e0 65 79 20 23 27 63 61 72 29 29 0a 20 20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 66 69 6c 65 20 28 ey.#'car)).....(with-temp-file.(
15500 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 22 65 6c 70 61 2d 70 61 63 6b 61 67 65 73 2e expand-file-name."elpa-packages.
15520 65 6c 64 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eld"............................
15540 20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 66 69 6c 65 20 28 66 69 6c 65 2d 6e 61 6d 65 2d ...........(and.file.(file-name-
15560 6e 6f 6e 64 69 72 65 63 74 6f 72 79 20 66 69 6c 65 29 29 29 0a 20 20 20 20 20 20 28 6c 65 74 20 nondirectory.file))).......(let.
15580 28 28 70 72 69 6e 74 2d 6c 65 76 65 6c 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 ((print-level.nil).............(
155a0 70 72 69 6e 74 2d 6c 65 6e 67 74 68 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 28 69 6e 73 65 print-length.nil)).........(inse
155c0 72 74 20 22 28 28 22 29 0a 20 20 20 20 20 20 20 20 28 70 72 69 6e 31 20 28 63 61 72 20 76 63 2d rt."((").........(prin1.(car.vc-
155e0 70 6b 67 73 29 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 20 20 20 20 pkgs).(current-buffer)).........
15600 28 64 6f 6c 69 73 74 20 28 65 6e 74 72 79 20 28 63 64 72 20 76 63 2d 70 6b 67 73 29 29 0a 20 20 (dolist.(entry.(cdr.vc-pkgs))...
15620 20 20 20 20 20 20 20 20 28 6e 65 77 6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 ........(newline)...........(ins
15640 65 72 74 20 22 20 20 22 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 72 69 6e 31 20 65 6e 74 72 79 ert."..")...........(prin1.entry
15660 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 0a 20 20 20 20 20 20 20 20 28 69 6e 73 .(current-buffer))).........(ins
15680 65 72 74 20 22 29 5c 6e 20 3a 76 65 72 73 69 6f 6e 20 31 20 3a 64 65 66 61 75 6c 74 2d 76 63 20 ert.")\n.:version.1.:default-vc.
156a0 47 69 74 29 5c 6e 22 29 29 29 0a 20 20 20 20 65 6e 74 72 69 65 73 29 29 0a 0a 28 64 65 66 75 6e Git)\n"))).....entries))..(defun
156c0 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 72 65 6d 6f 76 65 2d 61 72 63 68 69 76 65 2d 66 .package-build--remove-archive-f
156e0 69 6c 65 73 20 28 61 72 63 68 69 76 65 2d 65 6e 74 72 79 29 0a 20 20 22 52 65 6d 6f 76 65 20 74 iles.(archive-entry)..."Remove.t
15700 68 65 20 65 6e 74 72 79 20 61 6e 64 20 61 72 63 68 69 76 65 20 66 69 6c 65 20 66 6f 72 20 41 52 he.entry.and.archive.file.for.AR
15720 43 48 49 56 45 2d 45 4e 54 52 59 2e 22 0a 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d CHIVE-ENTRY."...(package-build--
15740 6d 65 73 73 61 67 65 20 22 52 65 6d 6f 76 69 6e 67 20 61 72 63 68 69 76 65 3a 20 25 73 2d 25 73 message."Removing.archive:.%s-%s
15760 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 72 "...........................(car
15780 20 61 72 63 68 69 76 65 2d 65 6e 74 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .archive-entry).................
157a0 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 2d 6a 6f 69 6e 20 ..........(package-version-join.
157c0 28 61 72 65 66 20 28 63 64 72 20 61 72 63 68 69 76 65 2d 65 6e 74 72 79 29 20 30 29 29 29 0a 20 (aref.(cdr.archive-entry).0)))..
157e0 20 28 6c 65 74 20 28 28 66 69 6c 65 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 61 72 74 .(let.((file.(package-build--art
15800 69 66 61 63 74 2d 66 69 6c 65 20 61 72 63 68 69 76 65 2d 65 6e 74 72 79 29 29 29 0a 20 20 20 20 ifact-file.archive-entry))).....
15820 28 77 68 65 6e 20 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 66 69 6c 65 29 0a 20 20 20 20 20 (when.(file-exists-p.file)......
15840 20 28 64 65 6c 65 74 65 2d 66 69 6c 65 20 66 69 6c 65 29 29 29 0a 20 20 28 6c 65 74 20 28 28 66 .(delete-file.file)))...(let.((f
15860 69 6c 65 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 61 72 63 68 69 76 65 2d 65 6e 74 72 ile.(package-build--archive-entr
15880 79 2d 66 69 6c 65 20 61 72 63 68 69 76 65 2d 65 6e 74 72 79 29 29 29 0a 20 20 20 20 28 77 68 65 y-file.archive-entry))).....(whe
158a0 6e 20 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 66 69 6c 65 29 0a 20 20 20 20 20 20 28 64 65 n.(file-exists-p.file).......(de
158c0 6c 65 74 65 2d 66 69 6c 65 20 66 69 6c 65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 lete-file.file))))..(defun.packa
158e0 67 65 2d 62 75 69 6c 64 2d 2d 61 72 74 69 66 61 63 74 2d 66 69 6c 65 20 28 61 72 63 68 69 76 65 ge-build--artifact-file.(archive
15900 2d 65 6e 74 72 79 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 61 72 74 69 66 61 63 74 20 66 -entry)..."Return.the.artifact.f
15920 69 6c 65 20 66 6f 72 20 74 68 65 20 70 61 63 6b 61 67 65 20 73 70 65 63 69 66 69 65 64 20 62 79 ile.for.the.package.specified.by
15940 20 41 52 43 48 49 56 45 2d 45 4e 54 52 59 2e 0a 54 68 69 73 20 69 73 20 65 69 74 68 65 72 20 61 .ARCHIVE-ENTRY..This.is.either.a
15960 20 74 61 72 62 61 6c 6c 20 6f 72 20 61 6e 20 45 6c 69 73 70 20 66 69 6c 65 2e 22 0a 20 20 28 70 .tarball.or.an.Elisp.file."...(p
15980 63 61 73 65 2d 6c 65 74 2a 20 28 28 60 28 2c 6e 61 6d 65 20 2e 20 2c 64 65 73 63 29 20 61 72 63 case-let*.((`(,name...,desc).arc
159a0 68 69 76 65 2d 65 6e 74 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65 72 73 hive-entry)................(vers
159c0 69 6f 6e 20 28 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 2d 6a 6f 69 6e 20 28 61 72 65 66 20 ion.(package-version-join.(aref.
159e0 64 65 73 63 20 30 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6c 61 76 6f 75 desc.0)))................(flavou
15a00 72 20 28 61 72 65 66 20 64 65 73 63 20 33 29 29 29 0a 20 20 20 20 28 65 78 70 61 6e 64 2d 66 69 r.(aref.desc.3))).....(expand-fi
15a20 6c 65 2d 6e 61 6d 65 0a 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 25 73 2d 25 73 2e 25 73 22 20 le-name......(format."%s-%s.%s".
15a40 6e 61 6d 65 20 76 65 72 73 69 6f 6e 20 28 69 66 20 28 65 71 20 66 6c 61 76 6f 75 72 20 27 73 69 name.version.(if.(eq.flavour.'si
15a60 6e 67 6c 65 29 20 22 65 6c 22 20 22 74 61 72 22 29 29 0a 20 20 20 20 20 70 61 63 6b 61 67 65 2d ngle)."el"."tar"))......package-
15a80 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 64 69 72 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 build-archive-dir)))..(defun.pac
15aa0 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 61 72 63 68 69 76 65 2d 65 6e 74 72 79 2d 66 69 6c 65 20 28 kage-build--archive-entry-file.(
15ac0 61 72 63 68 69 76 65 2d 65 6e 74 72 79 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 66 69 6c archive-entry)..."Return.the.fil
15ae0 65 20 69 6e 20 77 68 69 63 68 20 41 52 43 48 49 56 45 2d 45 4e 54 52 59 20 73 68 6f 75 6c 64 20 e.in.which.ARCHIVE-ENTRY.should.
15b00 62 65 20 73 74 6f 72 65 64 2e 0a 41 52 43 48 49 56 45 2d 45 4e 54 52 59 20 63 6f 6e 74 61 69 6e be.stored..ARCHIVE-ENTRY.contain
15b20 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 61 20 73 70 65 63 69 66 69 63 20 76 s.information.about.a.specific.v
15b40 65 72 73 69 6f 6e 20 6f 66 0a 61 20 70 61 63 6b 61 67 65 2e 22 0a 20 20 28 70 63 61 73 65 2d 6c ersion.of.a.package."...(pcase-l
15b60 65 74 2a 20 28 28 60 28 2c 6e 61 6d 65 20 2e 20 2c 64 65 73 63 29 20 61 72 63 68 69 76 65 2d 65 et*.((`(,name...,desc).archive-e
15b80 6e 74 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65 72 73 69 6f 6e 20 28 70 ntry)................(version.(p
15ba0 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 2d 6a 6f 69 6e 20 28 61 72 65 66 20 64 65 73 63 20 30 ackage-version-join.(aref.desc.0
15bc0 29 29 29 29 0a 20 20 20 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 0a 20 20 20 20 20 )))).....(expand-file-name......
15be0 28 66 6f 72 6d 61 74 20 22 25 73 2d 25 73 2e 65 6e 74 72 79 22 20 6e 61 6d 65 20 76 65 72 73 69 (format."%s-%s.entry".name.versi
15c00 6f 6e 29 0a 20 20 20 20 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 64 on)......package-build-archive-d
15c20 69 72 29 29 29 0a 0a 3b 3b 3b 20 4a 73 6f 6e 20 45 78 70 6f 72 74 73 0a 0a 28 64 65 66 75 6e 20 ir)))..;;;.Json.Exports..(defun.
15c40 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 63 69 70 65 2d 61 6c 69 73 74 2d 61 73 2d 6a 73 package-build-recipe-alist-as-js
15c60 6f 6e 20 28 66 69 6c 65 29 0a 20 20 22 44 75 6d 70 20 74 68 65 20 72 65 63 69 70 65 20 6c 69 73 on.(file)..."Dump.the.recipe.lis
15c80 74 20 74 6f 20 46 49 4c 45 20 61 73 20 6a 73 6f 6e 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 t.to.FILE.as.json."...(interacti
15ca0 76 65 20 22 46 44 75 6d 70 20 6a 73 6f 6e 20 74 6f 20 66 69 6c 65 3a 20 22 29 0a 20 20 28 77 69 ve."FDump.json.to.file:.")...(wi
15cc0 74 68 2d 74 65 6d 70 2d 66 69 6c 65 20 66 69 6c 65 0a 20 20 20 20 28 69 6e 73 65 72 74 0a 20 20 th-temp-file.file.....(insert...
15ce0 20 20 20 28 6a 73 6f 6e 2d 65 6e 63 6f 64 65 0a 20 20 20 20 20 20 28 63 6c 2d 6d 61 70 63 61 6e ...(json-encode.......(cl-mapcan
15d00 0a 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 ........(lambda.(name)..........
15d20 28 77 69 74 68 2d 64 65 6d 6f 74 65 64 2d 65 72 72 6f 72 73 20 22 52 65 63 69 70 65 20 65 72 72 (with-demoted-errors."Recipe.err
15d40 6f 72 3a 20 25 53 22 0a 20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 28 70 61 63 6b 61 67 65 or:.%S"............(and.(package
15d60 2d 72 65 63 69 70 65 2d 6c 6f 6f 6b 75 70 20 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 -recipe-lookup.name)............
15d80 20 20 20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 .....(with-temp-buffer..........
15da0 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e 74 73 0a 20 .........(insert-file-contents..
15dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e ..................(expand-file-n
15de0 61 6d 65 20 6e 61 6d 65 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 72 65 63 69 70 65 73 2d 64 ame.name.package-build-recipes-d
15e00 69 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 65 78 ir))...................(let.((ex
15e20 70 20 28 72 65 61 64 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 29 0a 20 20 20 20 p.(read.(current-buffer)))).....
15e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 70 6c 69 73 74 2d 6d 65 6d ................(when.(plist-mem
15e60 62 65 72 20 28 63 64 72 20 65 78 70 29 20 3a 66 69 6c 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 ber.(cdr.exp).:files)...........
15e80 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 70 75 74 20 28 63 64 72 20 65 78 70 29 ............(plist-put.(cdr.exp)
15ea0 20 3a 66 69 6c 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .:files.........................
15ec0 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 25 53 22 20 28 70 6c 69 73 74 2d 67 65 74 .........(format."%S".(plist-get
15ee0 20 28 63 64 72 20 65 78 70 29 20 3a 66 69 6c 65 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 .(cdr.exp).:files))))...........
15f00 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 65 78 70 29 29 29 29 29 29 0a 20 20 20 20 20 20 ..........(list.exp)))))).......
15f20 20 28 70 61 63 6b 61 67 65 2d 72 65 63 69 70 65 2d 72 65 63 69 70 65 73 29 29 29 29 29 29 0a 0a .(package-recipe-recipes))))))..
15f40 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 70 6b 67 2d 69 6e 66 6f 2d 66 (defun.package-build--pkg-info-f
15f60 6f 72 2d 6a 73 6f 6e 20 28 69 6e 66 6f 29 0a 20 20 22 43 6f 6e 76 65 72 74 20 49 4e 46 4f 20 73 or-json.(info)..."Convert.INFO.s
15f80 6f 20 74 68 61 74 20 69 74 20 63 61 6e 20 62 65 20 73 65 72 69 61 6c 69 7a 65 20 74 6f 20 4a 53 o.that.it.can.be.serialize.to.JS
15fa0 4f 4e 20 69 6e 20 74 68 65 20 64 65 73 69 72 65 64 20 73 68 61 70 65 2e 22 0a 20 20 28 70 63 61 ON.in.the.desired.shape."...(pca
15fc0 73 65 2d 6c 65 74 20 28 28 60 28 2c 76 65 72 20 2c 64 65 70 73 20 2c 64 65 73 63 20 2c 74 79 70 se-let.((`(,ver.,deps.,desc.,typ
15fe0 65 20 2e 20 28 2c 70 72 6f 70 73 29 29 20 28 61 70 70 65 6e 64 20 69 6e 66 6f 20 6e 69 6c 29 29 e...(,props)).(append.info.nil))
16000 29 0a 20 20 20 20 28 6c 69 73 74 20 3a 76 65 72 20 76 65 72 0a 20 20 20 20 20 20 20 20 20 20 3a ).....(list.:ver.ver...........:
16020 64 65 70 73 20 28 63 6c 2d 6d 61 70 63 61 6e 20 28 6c 61 6d 62 64 61 20 28 64 65 70 29 0a 20 20 deps.(cl-mapcan.(lambda.(dep)...
16040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 ...........................(list
16060 20 28 69 6e 74 65 72 6e 20 28 66 6f 72 6d 61 74 20 22 3a 25 73 22 20 28 63 61 72 20 64 65 70 29 .(intern.(format.":%s".(car.dep)
16080 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ))..............................
160a0 20 20 20 20 20 20 28 63 61 64 72 20 64 65 70 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ......(cadr.dep)))..............
160c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 70 73 29 0a 20 20 20 20 20 20 20 20 20 20 3a 64 ..............deps)...........:d
160e0 65 73 63 20 64 65 73 63 0a 20 20 20 20 20 20 20 20 20 20 3a 74 79 70 65 20 74 79 70 65 0a 20 20 esc.desc...........:type.type...
16100 20 20 20 20 20 20 20 20 3a 70 72 6f 70 73 20 70 72 6f 70 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 ........:props.props)))..(defun.
16120 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 61 72 63 68 69 76 65 2d 61 6c 69 73 74 2d 66 6f 72 package-build--archive-alist-for
16140 2d 6a 73 6f 6e 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 61 72 63 68 69 76 65 20 61 -json.()..."Return.the.archive.a
16160 6c 69 73 74 20 69 6e 20 61 20 66 6f 72 6d 20 73 75 69 74 61 62 6c 65 20 66 6f 72 20 4a 53 4f 4e list.in.a.form.suitable.for.JSON
16180 20 65 6e 63 6f 64 69 6e 67 2e 22 0a 20 20 28 63 6c 2d 66 6c 65 74 20 28 28 66 6f 72 6d 61 74 2d .encoding."...(cl-flet.((format-
161a0 70 65 72 73 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 65 72 73 6f 6e 29 0a 20 20 20 person..............(person)....
161c0 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6e 61 6d 65 20 28 63 61 72 20 70 65 72 73 6f ..........(let.((name.(car.perso
161e0 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 69 6c 20 28 63 64 n))....................(mail.(cd
16200 72 20 70 65 72 73 6f 6e 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 r.person)))................(if.(
16220 61 6e 64 20 6e 61 6d 65 20 6d 61 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 and.name.mail)..................
16240 20 20 28 66 6f 72 6d 61 74 20 22 25 73 20 3c 25 73 3e 22 20 6e 61 6d 65 20 6d 61 69 6c 29 0a 20 ..(format."%s.<%s>".name.mail)..
16260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 6e 61 6d 65 0a 20 20 20 20 20 20 20 ................(or.name........
16280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 3c 25 73 3e 22 20 6d 61 69 ..............(format."<%s>".mai
162a0 6c 29 29 29 29 29 29 0a 20 20 20 20 28 63 6c 2d 6d 61 70 63 61 6e 20 28 6c 61 6d 62 64 61 20 28 l)))))).....(cl-mapcan.(lambda.(
162c0 65 6e 74 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 28 69 entry)..................(list.(i
162e0 6e 74 65 72 6e 20 28 66 6f 72 6d 61 74 20 22 3a 25 73 22 20 28 63 61 72 20 65 6e 74 72 79 29 29 ntern.(format.":%s".(car.entry))
16300 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 )........................(let*.(
16320 28 69 6e 66 6f 20 28 63 64 72 20 65 6e 74 72 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 (info.(cdr.entry))..............
16340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 78 74 72 61 20 28 61 72 65 66 20 69 6e .................(extra.(aref.in
16360 66 6f 20 34 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 fo.4))..........................
16380 20 20 20 20 20 28 6d 61 69 6e 74 61 69 6e 65 72 20 28 61 73 73 71 20 3a 6d 61 69 6e 74 61 69 6e .....(maintainer.(assq.:maintain
163a0 65 72 20 65 78 74 72 61 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 er.extra))......................
163c0 20 20 20 20 20 20 20 20 20 28 6d 61 69 6e 74 61 69 6e 65 72 73 20 28 61 73 73 71 20 3a 6d 61 69 .........(maintainers.(assq.:mai
163e0 6e 74 61 69 6e 65 72 73 20 65 78 74 72 61 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ntainers.extra))................
16400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 75 74 68 6f 72 73 20 28 61 73 73 71 20 3a 61 ...............(authors.(assq.:a
16420 75 74 68 6f 72 73 20 65 78 74 72 61 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 uthors.extra))).................
16440 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 6d 61 69 6e 74 61 69 6e 65 72 0a 20 20 20 20 20 20 .........(when.maintainer.......
16460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 63 64 72 20 6d 61 69 .....................(setcdr.mai
16480 6e 74 61 69 6e 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ntainer.........................
164a0 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 2d 70 65 72 73 6f 6e 20 28 63 64 72 20 6d ...........(format-person.(cdr.m
164c0 61 69 6e 74 61 69 6e 65 72 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 aintainer))))...................
164e0 20 20 20 20 20 20 20 28 77 68 65 6e 20 6d 61 69 6e 74 61 69 6e 65 72 73 0a 20 20 20 20 20 20 20 .......(when.maintainers........
16500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 63 6c 2d 65 76 65 72 ....................(if.(cl-ever
16520 79 20 23 27 6c 69 73 74 70 20 28 63 64 72 20 6d 61 69 6e 74 61 69 6e 65 72 73 29 29 0a 20 20 20 y.#'listp.(cdr.maintainers))....
16540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 ............................(set
16560 63 64 72 20 6d 61 69 6e 74 61 69 6e 65 72 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 cdr.maintainers.................
16580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 61 72 20 23 .......................(mapcar.#
165a0 27 66 6f 72 6d 61 74 2d 70 65 72 73 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 'format-person..................
165c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 ..............................(c
165e0 64 72 20 6d 61 69 6e 74 61 69 6e 65 72 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dr.maintainers)))...............
16600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6d 61 69 6e 74 61 69 6e 65 72 73 ...............(setq.maintainers
16620 20 3b 20 73 69 6c 65 6e 63 65 20 3e 3d 20 33 30 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 .;.silence.>=.30.compiler.......
16640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 73 .............................(as
16660 73 71 2d 64 65 6c 65 74 65 2d 61 6c 6c 20 3a 6d 61 69 6e 74 61 69 6e 65 72 73 20 65 78 74 72 61 sq-delete-all.:maintainers.extra
16680 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 ))))..........................(w
166a0 68 65 6e 20 61 75 74 68 6f 72 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 hen.authors.....................
166c0 20 20 20 20 20 20 20 28 69 66 20 28 63 6c 2d 65 76 65 72 79 20 23 27 6c 69 73 74 70 20 28 63 64 .......(if.(cl-every.#'listp.(cd
166e0 72 20 61 75 74 68 6f 72 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r.authors)).....................
16700 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 63 64 72 20 61 75 74 68 6f 72 73 0a 20 20 20 20 20 ...........(setcdr.authors......
16720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
16740 20 20 28 6d 61 70 63 61 72 20 23 27 66 6f 72 6d 61 74 2d 70 65 72 73 6f 6e 20 28 63 64 72 20 61 ..(mapcar.#'format-person.(cdr.a
16760 75 74 68 6f 72 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 uthors))).......................
16780 20 20 20 20 20 20 20 28 73 65 74 71 20 61 75 74 68 6f 72 73 20 3b 20 73 69 6c 65 6e 63 65 20 3e .......(setq.authors.;.silence.>
167a0 3d 20 33 30 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 =.30.compiler...................
167c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 73 73 71 2d 64 65 6c 65 74 65 2d 61 6c .................(assq-delete-al
167e0 6c 20 3a 61 75 74 68 6f 72 73 20 65 78 74 72 61 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 l.:authors.extra))))............
16800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 70 6b ..............(package-build--pk
16820 67 2d 69 6e 66 6f 2d 66 6f 72 2d 6a 73 6f 6e 20 69 6e 66 6f 29 29 29 29 0a 20 20 20 20 20 20 20 g-info-for-json.info))))........
16840 20 20 20 20 20 20 20 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 72 63 68 69 76 65 2d 61 ........(package-build-archive-a
16860 6c 69 73 74 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 61 list))))..(defun.package-build-a
16880 72 63 68 69 76 65 2d 61 6c 69 73 74 2d 61 73 2d 6a 73 6f 6e 20 28 66 69 6c 65 29 0a 20 20 22 44 rchive-alist-as-json.(file)..."D
168a0 75 6d 70 20 74 68 65 20 62 75 69 6c 64 20 70 61 63 6b 61 67 65 73 20 6c 69 73 74 20 74 6f 20 46 ump.the.build.packages.list.to.F
168c0 49 4c 45 20 61 73 20 6a 73 6f 6e 2e 22 0a 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 66 69 6c 65 20 ILE.as.json."...(with-temp-file.
168e0 66 69 6c 65 0a 20 20 20 20 28 69 6e 73 65 72 74 20 28 6a 73 6f 6e 2d 65 6e 63 6f 64 65 20 28 70 file.....(insert.(json-encode.(p
16900 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 2d 61 72 63 68 69 76 65 2d 61 6c 69 73 74 2d 66 6f 72 2d ackage-build--archive-alist-for-
16920 6a 73 6f 6e 29 29 29 29 29 0a 0a 3b 3b 3b 20 5f 0a 0a 28 70 72 6f 76 69 64 65 20 27 70 61 63 6b json)))))..;;;._..(provide.'pack
16940 61 67 65 2d 62 75 69 6c 64 29 0a 3b 3b 3b 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2e 65 6c 20 age-build).;;;.package-build.el.
16960 65 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ends.here.......................
16980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
169a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
169c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
169e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16a00 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 32 30 32 34 30 33 30 36 2e 32 32 33 34 2f 70 61 63 6b package-build-20240306.2234/pack
16a20 61 67 65 2d 62 75 69 6c 64 2d 62 61 64 67 65 73 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 age-build-badges.el.............
16a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16a60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
16a80 30 30 31 32 36 36 37 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 37 37 34 35 00 20 30 00 00 00 0012667.00000000000.017745..0...
16aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16b00 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
16b20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
16b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16c00 3b 3b 3b 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 62 61 64 67 65 73 2e 65 6c 20 2d 2d 2d 20 ;;;.package-build-badges.el.---.
16c20 43 72 65 61 74 65 20 62 61 64 67 65 73 20 66 6f 72 20 70 61 63 6b 61 67 65 73 20 20 2d 2a 2d 20 Create.badges.for.packages..-*-.
16c40 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 74 3b 20 63 6f 64 69 6e 67 3a 75 74 66 2d 38 20 lexical-binding:t;.coding:utf-8.
16c60 2d 2a 2d 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 31 2d 32 30 32 34 20 -*-..;;.Copyright.(C).2011-2024.
16c80 44 6f 6e 61 6c 64 20 45 70 68 72 61 69 6d 20 43 75 72 74 69 73 0a 3b 3b 20 43 6f 70 79 72 69 67 Donald.Ephraim.Curtis.;;.Copyrig
16ca0 68 74 20 28 43 29 20 32 30 31 32 2d 32 30 32 34 20 53 74 65 76 65 20 50 75 72 63 65 6c 6c 0a 3b ht.(C).2012-2024.Steve.Purcell.;
16cc0 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 38 2d 32 30 32 34 20 4a 6f 6e 61 73 20 ;.Copyright.(C).2018-2024.Jonas.
16ce0 42 65 72 6e 6f 75 6c 6c 69 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 32 31 2d Bernoulli.;;.Copyright.(C).2021-
16d00 32 30 32 33 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 49 2023.Free.Software.Foundation,.I
16d20 6e 63 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 39 20 50 68 69 6c 20 48 61 nc.;;.Copyright.(C).2009.Phil.Ha
16d40 67 65 6c 62 65 72 67 0a 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 44 6f 6e 61 6c 64 20 45 70 68 72 61 gelberg..;;.Author:.Donald.Ephra
16d60 69 6d 20 43 75 72 74 69 73 20 3c 64 63 75 72 74 69 73 40 6d 69 6c 6b 62 6f 78 2e 6e 65 74 3e 0a im.Curtis.<dcurtis@milkbox.net>.
16d80 3b 3b 20 48 6f 6d 65 70 61 67 65 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f ;;.Homepage:.https://github.com/
16da0 6d 65 6c 70 61 2f 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a melpa/package-build.;;.Keywords:
16dc0 20 6d 61 69 6e 74 20 74 6f 6f 6c 73 0a 0a 3b 3b 20 53 50 44 58 2d 4c 69 63 65 6e 73 65 2d 49 64 .maint.tools..;;.SPDX-License-Id
16de0 65 6e 74 69 66 69 65 72 3a 20 47 50 4c 2d 33 2e 30 2d 6f 72 2d 6c 61 74 65 72 0a 0a 3b 3b 20 54 entifier:.GPL-3.0-or-later..;;.T
16e00 68 69 73 20 66 69 6c 65 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 his.file.is.free.software:.you.c
16e20 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 an.redistribute.it.and/or.modify
16e40 0a 3b 3b 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e .;;.it.under.the.terms.of.the.GN
16e60 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c U.General.Public.License.as.publ
16e80 69 73 68 65 64 0a 3b 3b 20 62 79 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f ished.;;.by.the.Free.Software.Fo
16ea0 75 6e 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 33 20 6f 66 20 74 68 undation,.either.version.3.of.th
16ec0 65 20 4c 69 63 65 6e 73 65 2c 0a 3b 3b 20 6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e e.License,.;;.or.(at.your.option
16ee0 29 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b 20 54 68 69 73 20 ).any.later.version..;;.;;.This.
16f00 66 69 6c 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 file.is.distributed.in.the.hope.
16f20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 74 20 57 that.it.will.be.useful,.;;.but.W
16f40 49 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 ITHOUT.ANY.WARRANTY;.without.eve
16f60 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 n.the.implied.warranty.of.;;.MER
16f80 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 CHANTABILITY.or.FITNESS.FOR.A.PA
16fa0 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 3b 3b 20 47 4e RTICULAR.PURPOSE...See.the.;;.GN
16fc0 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 U.General.Public.License.for.mor
16fe0 65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 e.details..;;.;;.You.should.have
17000 20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 .received.a.copy.of.the.GNU.Gene
17020 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 ral.Public.License.;;.along.with
17040 20 74 68 69 73 20 66 69 6c 65 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 73 3a .this.file...If.not,.see.<https:
17060 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b 3b 20 43 //www.gnu.org/licenses/>...;;;.C
17080 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 43 72 65 61 74 65 20 62 61 64 67 65 73 20 66 6f 72 ommentary:..;;.Create.badges.for
170a0 20 70 61 63 6b 61 67 65 73 2e 0a 3b 3b 20 54 68 65 20 63 6f 64 65 20 69 6e 20 74 68 69 73 20 66 .packages..;;.The.code.in.this.f
170c0 69 6c 65 20 77 61 73 20 6c 69 66 74 65 64 20 66 72 6f 6d 20 60 65 6c 70 61 2d 61 64 6d 69 6e 27 ile.was.lifted.from.`elpa-admin'
170e0 2e 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 64 65 66 76 61 72 20 70 61 63 6b 61 67 65 2d 62 75 ...;;;.Code:..(defvar.package-bu
17100 69 6c 64 2d 62 61 64 67 65 2d 64 61 74 61 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d ild-badge-data)..(defun.package-
17120 62 75 69 6c 64 2d 2d 77 72 69 74 65 2d 62 61 64 67 65 2d 69 6d 61 67 65 20 28 20 6e 61 6d 65 20 build--write-badge-image.(.name.
17140 76 65 72 73 69 6f 6e 20 74 61 72 67 65 74 2d 64 69 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 version.target-dir..............
17160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6f 70 .............................&op
17180 74 69 6f 6e 61 6c 20 61 72 63 68 69 76 65 20 63 6f 6c 6f 72 29 0a 20 20 22 4d 61 6b 65 20 62 61 tional.archive.color)..."Make.ba
171a0 64 67 65 20 73 76 67 20 66 69 6c 65 2e 0a 54 68 69 73 20 69 73 20 65 73 73 65 6e 74 69 61 6c 6c dge.svg.file..This.is.essentiall
171c0 79 20 61 20 63 6f 70 79 20 6f 66 20 60 65 6c 70 61 61 2d 2d 6d 61 6b 65 2d 62 61 64 67 65 27 2e y.a.copy.of.`elpaa--make-badge'.
171e0 22 0a 20 20 28 6c 65 74 2a 20 28 28 66 69 6c 65 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 "...(let*.((file.(expand-file-na
17200 6d 65 20 28 63 6f 6e 63 61 74 20 6e 61 6d 65 20 22 2d 62 61 64 67 65 2e 73 76 67 22 29 20 74 61 me.(concat.name."-badge.svg").ta
17220 72 67 65 74 2d 64 69 72 29 29 0a 20 20 20 20 20 20 20 20 20 28 6c 65 66 74 20 28 6f 72 20 61 72 rget-dir))..........(left.(or.ar
17240 63 68 69 76 65 20 28 63 61 72 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 62 61 64 67 65 2d 64 chive.(car.package-build-badge-d
17260 61 74 61 29 20 22 6d 79 45 6c 70 61 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 72 69 67 68 74 20 ata)."myElpa"))..........(right.
17280 76 65 72 73 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6c 6f 72 20 28 6f 72 20 63 6f 6c version)..........(color.(or.col
172a0 6f 72 20 28 63 61 64 72 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 62 61 64 67 65 2d 64 61 74 or.(cadr.package-build-badge-dat
172c0 61 29 20 22 23 66 66 34 39 31 62 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 6c 77 20 28 70 61 63 a)."#ff491b"))..........(lw.(pac
172e0 6b 61 67 65 2d 62 75 69 6c 64 2d 62 61 64 67 65 2d 2d 73 74 72 69 6e 67 2d 77 69 64 74 68 20 6c kage-build-badge--string-width.l
17300 65 66 74 29 29 0a 20 20 20 20 20 20 20 20 20 28 72 77 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c eft))..........(rw.(package-buil
17320 64 2d 62 61 64 67 65 2d 2d 73 74 72 69 6e 67 2d 77 69 64 74 68 20 72 69 67 68 74 29 29 0a 20 20 d-badge--string-width.right))...
17340 20 20 20 20 20 20 20 28 70 61 64 20 28 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 62 61 64 67 65 .......(pad.(package-build-badge
17360 2d 2d 73 74 72 69 6e 67 2d 77 69 64 74 68 20 22 78 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 77 --string-width."x"))..........(w
17380 69 64 74 68 20 28 2f 20 28 2b 20 6c 77 20 72 77 20 28 2a 20 34 20 70 61 64 29 29 20 31 30 29 29 idth.(/.(+.lw.rw.(*.4.pad)).10))
173a0 0a 20 20 20 20 20 20 20 20 20 28 6f 66 66 73 65 74 20 2d 31 30 29 20 3b 3b 20 53 6d 61 6c 6c 20 ..........(offset.-10).;;.Small.
173c0 61 6c 69 67 6e 6d 65 6e 74 20 63 6f 72 72 65 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 28 63 alignment.correction..........(c
173e0 74 78 20 60 28 28 6f 66 66 73 65 74 20 2e 20 2c 6f 66 66 73 65 74 29 0a 20 20 20 20 20 20 20 20 tx.`((offset...,offset).........
17400 20 20 20 20 20 20 20 20 28 6c 65 66 74 20 2e 20 2c 6c 65 66 74 29 0a 20 20 20 20 20 20 20 20 20 ........(left...,left)..........
17420 20 20 20 20 20 20 20 28 72 69 67 68 74 20 2e 20 2c 72 69 67 68 74 29 0a 20 20 20 20 20 20 20 20 .......(right...,right).........
17440 20 20 20 20 20 20 20 20 28 6c 77 20 2e 20 2c 6c 77 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ........(lw...,lw)..............
17460 20 20 20 28 72 77 20 2e 20 2c 72 77 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 ...(rw...,rw).................(w
17480 69 64 74 68 20 2e 20 2c 77 69 64 74 68 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 idth...,width).................(
174a0 63 6f 6c 6f 72 20 2e 20 2c 63 6f 6c 6f 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 color...,color).................
174c0 28 70 61 64 20 2e 20 2c 70 61 64 29 29 29 29 0a 20 20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 (pad...,pad)))).....(with-temp-b
174e0 75 66 66 65 72 0a 20 20 20 20 20 20 28 69 6e 73 65 72 74 0a 20 20 20 20 20 20 20 28 72 65 70 6c uffer.......(insert........(repl
17500 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 22 7b 5c ace-regexp-in-string........."{\
17520 5c 28 5b 5e 7d 5d 2b 5c 5c 29 7d 22 0a 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 73 74 \([^}]+\\)}".........(lambda.(st
17540 72 29 0a 20 20 20 20 20 20 20 20 20 20 28 75 72 6c 2d 69 6e 73 65 72 74 2d 65 6e 74 69 74 69 65 r)...........(url-insert-entitie
17560 73 2d 69 6e 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 s-in-string............(format."
17580 25 73 22 20 28 65 76 61 6c 20 28 72 65 61 64 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 20 %s".(eval.(read.(match-string.1.
175a0 73 74 72 29 29 20 63 74 78 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 65 76 61 6c 2d 77 68 65 6e str)).ctx)))).........(eval-when
175c0 2d 63 6f 6d 70 69 6c 65 0a 20 20 20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 -compile...........(replace-rege
175e0 78 70 2d 69 6e 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 22 5b 20 5c 74 5c 6e 5d xp-in-string............"[.\t\n]
17600 2b 22 20 22 20 22 0a 20 20 20 20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 +"."."............(replace-regex
17620 70 2d 69 6e 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 27 22 20 22 5c 22 22 p-in-string............."'"."\""
17640 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 3c 3f 78 6d 6c 20 76 65 72 73 69 6f 6e 3d 27 31 2e 30 ............."<?xml.version='1.0
17660 27 3f 3e 0a 3c 73 76 67 20 78 6d 6c 6e 73 3d 27 68 74 74 70 3a 2f 2f 77 77 77 2e 77 33 2e 6f 72 '?>.<svg.xmlns='http://www.w3.or
17680 67 2f 32 30 30 30 2f 73 76 67 27 0a 20 20 20 20 20 78 6d 6c 6e 73 3a 78 6c 69 6e 6b 3d 27 68 74 g/2000/svg'......xmlns:xlink='ht
176a0 74 70 3a 2f 2f 77 77 77 2e 77 33 2e 6f 72 67 2f 31 39 39 39 2f 78 6c 69 6e 6b 27 0a 20 20 20 20 tp://www.w3.org/1999/xlink'.....
176c0 20 77 69 64 74 68 3d 27 7b 77 69 64 74 68 7d 27 0a 20 20 20 20 20 68 65 69 67 68 74 3d 27 32 30 .width='{width}'......height='20
176e0 27 0a 20 20 20 20 20 72 6f 6c 65 3d 27 69 6d 67 27 0a 20 20 20 20 20 61 72 69 61 2d 6c 61 62 65 '......role='img'......aria-labe
17700 6c 3d 27 7b 6c 65 66 74 7d 3a 20 7b 72 69 67 68 74 7d 27 3e 0a 20 20 3c 74 69 74 6c 65 3e 7b 6c l='{left}:.{right}'>...<title>{l
17720 65 66 74 7d 3a 20 7b 72 69 67 68 74 7d 3c 2f 74 69 74 6c 65 3e 0a 20 20 3c 6c 69 6e 65 61 72 47 eft}:.{right}</title>...<linearG
17740 72 61 64 69 65 6e 74 20 69 64 3d 27 73 27 20 78 32 3d 27 30 27 20 79 32 3d 27 31 30 30 25 27 3e radient.id='s'.x2='0'.y2='100%'>
17760 0a 20 20 20 20 3c 73 74 6f 70 20 6f 66 66 73 65 74 3d 27 30 27 20 73 74 6f 70 2d 63 6f 6c 6f 72 .....<stop.offset='0'.stop-color
17780 3d 27 23 62 62 62 27 20 73 74 6f 70 2d 6f 70 61 63 69 74 79 3d 27 2e 31 27 2f 3e 0a 20 20 20 20 ='#bbb'.stop-opacity='.1'/>.....
177a0 3c 73 74 6f 70 20 6f 66 66 73 65 74 3d 27 31 27 20 73 74 6f 70 2d 6f 70 61 63 69 74 79 3d 27 2e <stop.offset='1'.stop-opacity='.
177c0 31 27 2f 3e 0a 20 20 3c 2f 6c 69 6e 65 61 72 47 72 61 64 69 65 6e 74 3e 0a 20 20 3c 63 6c 69 70 1'/>...</linearGradient>...<clip
177e0 50 61 74 68 20 69 64 3d 27 72 27 3e 0a 20 20 20 20 3c 72 65 63 74 20 77 69 64 74 68 3d 27 7b 77 Path.id='r'>.....<rect.width='{w
17800 69 64 74 68 7d 27 20 68 65 69 67 68 74 3d 27 32 30 27 20 72 78 3d 27 33 27 20 66 69 6c 6c 3d 27 idth}'.height='20'.rx='3'.fill='
17820 23 66 66 66 27 2f 3e 0a 20 20 3c 2f 63 6c 69 70 50 61 74 68 3e 0a 20 20 3c 67 20 63 6c 69 70 2d #fff'/>...</clipPath>...<g.clip-
17840 70 61 74 68 3d 27 75 72 6c 28 23 72 29 27 3e 0a 20 20 20 20 3c 72 65 63 74 20 77 69 64 74 68 3d path='url(#r)'>.....<rect.width=
17860 27 7b 28 2f 20 28 2b 20 6c 77 20 28 2a 20 32 20 70 61 64 29 29 20 31 30 29 7d 27 0a 20 20 20 20 '{(/.(+.lw.(*.2.pad)).10)}'.....
17880 20 20 20 20 20 20 68 65 69 67 68 74 3d 27 32 30 27 20 66 69 6c 6c 3d 27 23 35 35 35 27 2f 3e 0a ......height='20'.fill='#555'/>.
178a0 20 20 20 20 3c 72 65 63 74 20 78 3d 27 7b 28 31 2d 20 28 2f 20 28 2b 20 6c 77 20 28 2a 20 32 20 ....<rect.x='{(1-.(/.(+.lw.(*.2.
178c0 70 61 64 29 29 20 31 30 29 29 7d 27 0a 20 20 20 20 20 20 20 20 20 20 77 69 64 74 68 3d 27 7b 77 pad)).10))}'...........width='{w
178e0 69 64 74 68 7d 27 20 68 65 69 67 68 74 3d 27 32 30 27 20 66 69 6c 6c 3d 27 7b 63 6f 6c 6f 72 7d idth}'.height='20'.fill='{color}
17900 27 2f 3e 0a 20 20 20 20 3c 72 65 63 74 20 77 69 64 74 68 3d 27 7b 77 69 64 74 68 7d 27 20 68 65 '/>.....<rect.width='{width}'.he
17920 69 67 68 74 3d 27 32 30 27 20 66 69 6c 6c 3d 27 75 72 6c 28 23 73 29 27 2f 3e 0a 20 20 3c 2f 67 ight='20'.fill='url(#s)'/>...</g
17940 3e 0a 20 20 3c 67 20 66 69 6c 6c 3d 27 23 66 66 66 27 0a 20 20 20 20 20 74 65 78 74 2d 61 6e 63 >...<g.fill='#fff'......text-anc
17960 68 6f 72 3d 27 6d 69 64 64 6c 65 27 0a 20 20 20 20 20 66 6f 6e 74 2d 66 61 6d 69 6c 79 3d 27 56 hor='middle'......font-family='V
17980 65 72 64 61 6e 61 2c 47 65 6e 65 76 61 2c 44 65 6a 61 56 75 20 53 61 6e 73 2c 73 61 6e 73 2d 73 erdana,Geneva,DejaVu.Sans,sans-s
179a0 65 72 69 66 27 0a 20 20 20 20 20 66 6f 6e 74 2d 73 69 7a 65 3d 27 31 31 30 27 0a 20 20 20 20 20 erif'......font-size='110'......
179c0 74 65 78 74 2d 72 65 6e 64 65 72 69 6e 67 3d 27 67 65 6f 6d 65 74 72 69 63 50 72 65 63 69 73 69 text-rendering='geometricPrecisi
179e0 6f 6e 27 3e 0a 20 20 20 20 3c 74 65 78 74 20 61 72 69 61 2d 68 69 64 64 65 6e 3d 27 74 72 75 65 on'>.....<text.aria-hidden='true
17a00 27 0a 20 20 20 20 20 20 20 20 20 20 78 3d 27 7b 28 2b 20 28 2f 20 6c 77 20 32 29 20 70 61 64 20 '...........x='{(+.(/.lw.2).pad.
17a20 6f 66 66 73 65 74 29 7d 27 0a 20 20 20 20 20 20 20 20 20 20 79 3d 27 31 35 30 27 0a 20 20 20 20 offset)}'...........y='150'.....
17a40 20 20 20 20 20 20 66 69 6c 6c 3d 27 23 30 31 30 31 30 31 27 20 66 69 6c 6c 2d 6f 70 61 63 69 74 ......fill='#010101'.fill-opacit
17a60 79 3d 27 2e 33 27 0a 20 20 20 20 20 20 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 3d 27 73 63 61 6c y='.3'...........transform='scal
17a80 65 28 2e 31 29 27 20 74 65 78 74 4c 65 6e 67 74 68 3d 27 7b 6c 77 7d 27 3e 7b 6c 65 66 74 7d 3c e(.1)'.textLength='{lw}'>{left}<
17aa0 2f 74 65 78 74 3e 0a 20 20 20 20 3c 74 65 78 74 20 78 3d 27 7b 28 2b 20 28 2f 20 6c 77 20 32 29 /text>.....<text.x='{(+.(/.lw.2)
17ac0 20 70 61 64 20 6f 66 66 73 65 74 29 7d 27 0a 20 20 20 20 20 20 20 20 20 20 79 3d 27 31 34 30 27 .pad.offset)}'...........y='140'
17ae0 20 74 72 61 6e 73 66 6f 72 6d 3d 27 73 63 61 6c 65 28 2e 31 29 27 0a 20 20 20 20 20 20 20 20 20 .transform='scale(.1)'..........
17b00 20 66 69 6c 6c 3d 27 23 66 66 66 27 0a 20 20 20 20 20 20 20 20 20 20 74 65 78 74 4c 65 6e 67 74 .fill='#fff'...........textLengt
17b20 68 3d 27 7b 6c 77 7d 27 3e 7b 6c 65 66 74 7d 3c 2f 74 65 78 74 3e 0a 20 20 20 20 3c 74 65 78 74 h='{lw}'>{left}</text>.....<text
17b40 20 61 72 69 61 2d 68 69 64 64 65 6e 3d 27 74 72 75 65 27 0a 20 20 20 20 20 20 20 20 20 20 78 3d .aria-hidden='true'...........x=
17b60 27 7b 28 2b 20 6c 77 20 28 2f 20 72 77 20 32 29 20 28 2a 20 33 20 70 61 64 29 20 6f 66 66 73 65 '{(+.lw.(/.rw.2).(*.3.pad).offse
17b80 74 29 7d 27 0a 20 20 20 20 20 20 20 20 20 20 79 3d 27 31 35 30 27 0a 20 20 20 20 20 20 20 20 20 t)}'...........y='150'..........
17ba0 20 66 69 6c 6c 3d 27 23 30 31 30 31 30 31 27 20 20 66 69 6c 6c 2d 6f 70 61 63 69 74 79 3d 27 2e .fill='#010101'..fill-opacity='.
17bc0 33 27 0a 20 20 20 20 20 20 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 3d 27 73 63 61 6c 65 28 2e 31 3'...........transform='scale(.1
17be0 29 27 20 74 65 78 74 4c 65 6e 67 74 68 3d 27 7b 72 77 7d 27 3e 7b 72 69 67 68 74 7d 3c 2f 74 65 )'.textLength='{rw}'>{right}</te
17c00 78 74 3e 0a 20 20 20 20 3c 74 65 78 74 20 78 3d 27 7b 28 2b 20 6c 77 20 28 2f 20 72 77 20 32 29 xt>.....<text.x='{(+.lw.(/.rw.2)
17c20 20 28 2a 20 33 20 70 61 64 29 20 6f 66 66 73 65 74 29 7d 27 0a 20 20 20 20 20 20 20 20 20 20 79 .(*.3.pad).offset)}'...........y
17c40 3d 27 31 34 30 27 0a 20 20 20 20 20 20 20 20 20 20 74 72 61 6e 73 66 6f 72 6d 3d 27 73 63 61 6c ='140'...........transform='scal
17c60 65 28 2e 31 29 27 0a 20 20 20 20 20 20 20 20 20 20 66 69 6c 6c 3d 27 23 66 66 66 27 20 74 65 78 e(.1)'...........fill='#fff'.tex
17c80 74 4c 65 6e 67 74 68 3d 27 7b 72 77 7d 27 3e 7b 72 69 67 68 74 7d 3c 2f 74 65 78 74 3e 0a 20 20 tLength='{rw}'>{right}</text>...
17ca0 3c 2f 67 3e 0a 3c 2f 73 76 67 3e 22 29 29 29 29 29 0a 20 20 20 20 20 20 28 77 72 69 74 65 2d 72 </g>.</svg>"))))).......(write-r
17cc0 65 67 69 6f 6e 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28 70 6f 69 6e 74 2d 6d 61 78 29 20 66 69 egion.(point-min).(point-max).fi
17ce0 6c 65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 62 61 64 le))))..(defun.package-build-bad
17d00 67 65 2d 2d 73 74 72 69 6e 67 2d 77 69 64 74 68 20 28 73 74 72 29 0a 20 20 22 44 65 74 65 72 6d ge--string-width.(str)..."Determ
17d20 69 6e 65 20 73 74 72 69 6e 67 20 77 69 64 74 68 20 69 6e 20 70 69 78 65 6c 73 20 6f 66 20 53 54 ine.string.width.in.pixels.of.ST
17d40 52 2e 22 0a 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 3b 3b 20 49 R."...(with-temp-buffer.....;;.I
17d60 6d 61 67 65 4d 61 67 69 63 6b 20 37 2e 31 2e 30 20 6f 72 20 6c 61 74 65 72 20 72 65 71 75 69 72 mageMagick.7.1.0.or.later.requir
17d80 65 73 20 75 73 69 6e 67 20 74 68 65 20 22 6d 61 67 69 63 6b 22 20 64 72 69 76 65 72 2c 0a 20 20 es.using.the."magick".driver,...
17da0 20 20 3b 3b 20 72 61 74 68 65 72 20 74 68 61 6e 20 22 63 6f 6e 76 65 72 74 22 20 64 69 72 65 63 ..;;.rather.than."convert".direc
17dc0 74 6c 79 2c 20 62 75 74 20 44 65 62 69 61 6e 20 64 6f 65 73 6e 27 74 20 70 72 6f 76 69 64 65 20 tly,.but.Debian.doesn't.provide.
17de0 69 74 0a 20 20 20 20 3b 3b 20 79 65 74 20 28 32 30 32 31 29 2e 0a 20 20 20 20 28 6c 65 74 20 28 it.....;;.yet.(2021)......(let.(
17e00 28 61 72 67 73 20 60 28 2c 40 28 69 66 20 28 65 78 65 63 75 74 61 62 6c 65 2d 66 69 6e 64 20 22 (args.`(,@(if.(executable-find."
17e20 6d 61 67 69 63 6b 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 magick")........................
17e40 20 27 28 22 6d 61 67 69 63 6b 22 20 22 63 6f 6e 76 65 72 74 22 29 0a 20 20 20 20 20 20 20 20 20 .'("magick"."convert")..........
17e60 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28 22 63 6f 6e 76 65 72 74 22 29 29 0a 20 20 20 20 20 .............'("convert"))......
17e80 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2d 64 65 62 75 67 22 20 22 61 6e 6e 6f 74 61 74 65 22 ............."-debug"."annotate"
17ea0 20 22 78 63 3a 22 20 22 2d 66 6f 6e 74 22 20 22 44 65 6a 61 56 75 2d 53 61 6e 73 22 0a 20 20 20 ."xc:"."-font"."DejaVu-Sans"....
17ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2d 70 6f 69 6e 74 73 69 7a 65 22 20 22 31 31 30 ..............."-pointsize"."110
17ee0 22 20 22 2d 61 6e 6e 6f 74 61 74 65 22 20 22 30 22 20 2c 73 74 72 20 22 6e 75 6c 6c 3a 22 29 29 "."-annotate"."0".,str."null:"))
17f00 29 0a 20 20 20 20 20 20 28 61 70 70 6c 79 20 23 27 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 28 63 ).......(apply.#'call-process.(c
17f20 61 72 20 61 72 67 73 29 20 6e 69 6c 20 74 20 6e 69 6c 20 28 64 65 6c 71 20 6e 69 6c 20 28 63 64 ar.args).nil.t.nil.(delq.nil.(cd
17f40 72 20 61 72 67 73 29 29 29 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e r.args))).......(goto-char.(poin
17f60 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20 28 69 66 20 28 6e 6f 74 20 28 72 65 2d 73 65 61 72 63 t-min)).......(if.(not.(re-searc
17f80 68 2d 66 6f 72 77 61 72 64 20 22 4d 65 74 72 69 63 73 3a 2e 2a 3f 77 69 64 74 68 3a 20 5c 5c 28 h-forward."Metrics:.*?width:.\\(
17fa0 5b 30 2d 39 5d 2b 5c 5c 29 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 43 [0-9]+\\)"))...........(error."C
17fc0 6f 75 6c 64 20 6e 6f 74 20 64 65 74 65 72 6d 69 6e 65 20 73 74 72 69 6e 67 20 77 69 64 74 68 22 ould.not.determine.string.width"
17fe0 29 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 77 69 64 74 68 20 28 73 74 72 69 6e 67 2d 74 ).........(let.((width.(string-t
18000 6f 2d 6e 75 6d 62 65 72 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 29 29 29 29 0a 20 20 20 o-number.(match-string.1))))....
18020 20 20 20 20 20 20 20 3b 3b 20 54 68 69 73 20 74 65 73 74 20 61 69 6d 73 20 74 6f 20 63 61 74 63 .......;;.This.test.aims.to.catc
18040 68 20 74 68 65 20 63 61 73 65 20 77 68 65 72 65 20 74 68 65 20 66 6f 6e 74 20 69 73 20 6d 69 73 h.the.case.where.the.font.is.mis
18060 73 69 6e 67 2c 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 62 75 74 20 69 74 20 73 65 65 6d 73 20 sing,...........;;.but.it.seems.
18080 69 74 20 6f 6e 6c 79 20 77 6f 72 6b 73 20 69 6e 20 73 6f 6d 65 20 63 61 73 65 73 20 3a 2d 28 0a it.only.works.in.some.cases.:-(.
180a0 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 61 6e 64 20 28 3e 20 28 73 74 72 69 6e 67 2d 77 69 ..........(if.(and.(>.(string-wi
180c0 64 74 68 20 73 74 72 29 20 30 29 20 28 6e 6f 74 20 28 3e 20 77 69 64 74 68 20 30 29 29 29 0a 20 dth.str).0).(not.(>.width.0)))..
180e0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 20 28 6d 65 73 73 61 67 65 20 22 63 6f .............(progn.(message."co
18100 6e 76 65 72 74 3a 5c 6e 25 73 22 20 28 62 75 66 66 65 72 2d 73 74 72 69 6e 67 29 29 0a 20 20 20 nvert:\n%s".(buffer-string))....
18120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 43 6f 75 6c 64 20 ..................(error."Could.
18140 6e 6f 74 20 64 65 74 65 72 6d 69 6e 65 20 73 74 72 69 6e 67 20 77 69 64 74 68 22 29 29 0a 20 20 not.determine.string.width"))...
18160 20 20 20 20 20 20 20 20 20 20 77 69 64 74 68 29 29 29 29 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 ..........width))))))..(provide.
18180 27 70 61 63 6b 61 67 65 2d 62 75 69 6c 64 2d 62 61 64 67 65 73 29 0a 3b 3b 3b 20 70 61 63 6b 61 'package-build-badges).;;;.packa
181a0 67 65 2d 62 61 64 67 65 73 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 ge-badges.el.ends.here..........
181c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
181e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
182a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
182c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
182e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
183a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
183c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
183e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
184a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
184c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
184e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
185a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
185c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
185e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
186a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
186c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
186e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
187a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
187c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
187e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
188a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
188c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
188e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
189a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
189c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
189e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18a00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................