aboutsummaryrefslogtreecommitdiff
path: root/static/snapshots/makext-v0.1.tar
blob: 0b3977b9e410756ada6ba86a58358f2141681540 (plain)
ofshex dumpascii
0000 2e 2f 4c 49 43 45 4e 53 45 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ./LICENSE.......................
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 31 30 30 36 34 34 20 00 20 20 31 37 35 30 20 00 20 20 31 37 35 30 20 00 20 20 20 20 ....100644....1750....1750......
0080 20 20 20 32 34 36 34 20 31 34 37 30 36 35 30 32 35 32 35 20 20 20 37 32 34 37 20 00 30 00 00 00 ...2464.14706502525...7247..0...
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 6d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...m......................
0120 00 00 00 00 00 00 00 00 00 6d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........m......................
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 42 53 44 20 32 2d 43 6c 61 75 73 65 20 4c 69 63 65 6e 73 65 0a 0a 43 6f 70 79 72 69 67 68 74 20 BSD.2-Clause.License..Copyright.
0220 28 63 29 20 32 30 32 34 2c 20 4d 69 74 6a 61 20 46 65 6c 69 63 69 6a 61 6e 20 3c 6d 69 74 6a 61 (c).2024,.Mitja.Felicijan.<mitja
0240 2e 66 65 6c 69 63 69 6a 61 6e 40 67 6d 61 69 6c 2e 63 6f 6d 3e 0a 0a 52 65 64 69 73 74 72 69 62 .felicijan@gmail.com>..Redistrib
0260 75 74 69 6f 6e 20 61 6e 64 20 75 73 65 20 69 6e 20 73 6f 75 72 63 65 20 61 6e 64 20 62 69 6e 61 ution.and.use.in.source.and.bina
0280 72 79 20 66 6f 72 6d 73 2c 20 77 69 74 68 20 6f 72 20 77 69 74 68 6f 75 74 0a 6d 6f 64 69 66 69 ry.forms,.with.or.without.modifi
02a0 63 61 74 69 6f 6e 2c 20 61 72 65 20 70 65 72 6d 69 74 74 65 64 20 70 72 6f 76 69 64 65 64 20 74 cation,.are.permitted.provided.t
02c0 68 61 74 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f 6e 73 20 61 72 65 hat.the.following.conditions.are
02e0 20 6d 65 74 3a 0a 0a 31 2e 20 52 65 64 69 73 74 72 69 62 75 74 69 6f 6e 73 20 6f 66 20 73 6f 75 .met:..1..Redistributions.of.sou
0300 72 63 65 20 63 6f 64 65 20 6d 75 73 74 20 72 65 74 61 69 6e 20 74 68 65 20 61 62 6f 76 65 20 63 rce.code.must.retain.the.above.c
0320 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 2c 20 74 68 69 73 0a 20 20 20 6c 69 73 74 20 6f 66 opyright.notice,.this....list.of
0340 20 63 6f 6e 64 69 74 69 6f 6e 73 20 61 6e 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 64 69 .conditions.and.the.following.di
0360 73 63 6c 61 69 6d 65 72 2e 0a 0a 32 2e 20 52 65 64 69 73 74 72 69 62 75 74 69 6f 6e 73 20 69 6e sclaimer...2..Redistributions.in
0380 20 62 69 6e 61 72 79 20 66 6f 72 6d 20 6d 75 73 74 20 72 65 70 72 6f 64 75 63 65 20 74 68 65 20 .binary.form.must.reproduce.the.
03a0 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 2c 0a 20 20 20 74 68 69 73 20 above.copyright.notice,....this.
03c0 6c 69 73 74 20 6f 66 20 63 6f 6e 64 69 74 69 6f 6e 73 20 61 6e 64 20 74 68 65 20 66 6f 6c 6c 6f list.of.conditions.and.the.follo
03e0 77 69 6e 67 20 64 69 73 63 6c 61 69 6d 65 72 20 69 6e 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 61 wing.disclaimer.in.the.documenta
0400 74 69 6f 6e 0a 20 20 20 61 6e 64 2f 6f 72 20 6f 74 68 65 72 20 6d 61 74 65 72 69 61 6c 73 20 70 tion....and/or.other.materials.p
0420 72 6f 76 69 64 65 64 20 77 69 74 68 20 74 68 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 2e 0a 0a rovided.with.the.distribution...
0440 54 48 49 53 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 20 42 59 20 54 48 45 THIS.SOFTWARE.IS.PROVIDED.BY.THE
0460 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 20 41 4e 44 20 43 4f 4e 54 52 49 42 55 54 .COPYRIGHT.HOLDERS.AND.CONTRIBUT
0480 4f 52 53 20 22 41 53 20 49 53 22 0a 41 4e 44 20 41 4e 59 20 45 58 50 52 45 53 53 20 4f 52 20 49 ORS."AS.IS".AND.ANY.EXPRESS.OR.I
04a0 4d 50 4c 49 45 44 20 57 41 52 52 41 4e 54 49 45 53 2c 20 49 4e 43 4c 55 44 49 4e 47 2c 20 42 55 MPLIED.WARRANTIES,.INCLUDING,.BU
04c0 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 2c 20 54 48 45 0a 49 4d 50 4c 49 45 44 20 57 41 T.NOT.LIMITED.TO,.THE.IMPLIED.WA
04e0 52 52 41 4e 54 49 45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 41 4e 44 20 RRANTIES.OF.MERCHANTABILITY.AND.
0500 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 53 45 FITNESS.FOR.A.PARTICULAR.PURPOSE
0520 20 41 52 45 0a 44 49 53 43 4c 41 49 4d 45 44 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 .ARE.DISCLAIMED..IN.NO.EVENT.SHA
0540 4c 4c 20 54 48 45 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 20 4f 52 20 43 4f 4e 54 52 LL.THE.COPYRIGHT.HOLDER.OR.CONTR
0560 49 42 55 54 4f 52 53 20 42 45 20 4c 49 41 42 4c 45 0a 46 4f 52 20 41 4e 59 20 44 49 52 45 43 54 IBUTORS.BE.LIABLE.FOR.ANY.DIRECT
0580 2c 20 49 4e 44 49 52 45 43 54 2c 20 49 4e 43 49 44 45 4e 54 41 4c 2c 20 53 50 45 43 49 41 4c 2c ,.INDIRECT,.INCIDENTAL,.SPECIAL,
05a0 20 45 58 45 4d 50 4c 41 52 59 2c 20 4f 52 20 43 4f 4e 53 45 51 55 45 4e 54 49 41 4c 0a 44 41 4d .EXEMPLARY,.OR.CONSEQUENTIAL.DAM
05c0 41 47 45 53 20 28 49 4e 43 4c 55 44 49 4e 47 2c 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 AGES.(INCLUDING,.BUT.NOT.LIMITED
05e0 20 54 4f 2c 20 50 52 4f 43 55 52 45 4d 45 4e 54 20 4f 46 20 53 55 42 53 54 49 54 55 54 45 20 47 .TO,.PROCUREMENT.OF.SUBSTITUTE.G
0600 4f 4f 44 53 20 4f 52 0a 53 45 52 56 49 43 45 53 3b 20 4c 4f 53 53 20 4f 46 20 55 53 45 2c 20 44 OODS.OR.SERVICES;.LOSS.OF.USE,.D
0620 41 54 41 2c 20 4f 52 20 50 52 4f 46 49 54 53 3b 20 4f 52 20 42 55 53 49 4e 45 53 53 20 49 4e 54 ATA,.OR.PROFITS;.OR.BUSINESS.INT
0640 45 52 52 55 50 54 49 4f 4e 29 20 48 4f 57 45 56 45 52 0a 43 41 55 53 45 44 20 41 4e 44 20 4f 4e ERRUPTION).HOWEVER.CAUSED.AND.ON
0660 20 41 4e 59 20 54 48 45 4f 52 59 20 4f 46 20 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 45 .ANY.THEORY.OF.LIABILITY,.WHETHE
0680 52 20 49 4e 20 43 4f 4e 54 52 41 43 54 2c 20 53 54 52 49 43 54 20 4c 49 41 42 49 4c 49 54 59 2c R.IN.CONTRACT,.STRICT.LIABILITY,
06a0 0a 4f 52 20 54 4f 52 54 20 28 49 4e 43 4c 55 44 49 4e 47 20 4e 45 47 4c 49 47 45 4e 43 45 20 4f .OR.TORT.(INCLUDING.NEGLIGENCE.O
06c0 52 20 4f 54 48 45 52 57 49 53 45 29 20 41 52 49 53 49 4e 47 20 49 4e 20 41 4e 59 20 57 41 59 20 R.OTHERWISE).ARISING.IN.ANY.WAY.
06e0 4f 55 54 20 4f 46 20 54 48 45 20 55 53 45 0a 4f 46 20 54 48 49 53 20 53 4f 46 54 57 41 52 45 2c OUT.OF.THE.USE.OF.THIS.SOFTWARE,
0700 20 45 56 45 4e 20 49 46 20 41 44 56 49 53 45 44 20 4f 46 20 54 48 45 20 50 4f 53 53 49 42 49 4c .EVEN.IF.ADVISED.OF.THE.POSSIBIL
0720 49 54 59 20 4f 46 20 53 55 43 48 20 44 41 4d 41 47 45 2e 0a 00 00 00 00 00 00 00 00 00 00 00 00 ITY.OF.SUCH.DAMAGE..............
0740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0800 2e 2f 4d 61 6b 65 66 69 6c 65 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ./Makefile......................
0820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0860 00 00 00 00 31 30 30 36 34 34 20 00 20 20 31 37 35 30 20 00 20 20 31 37 35 30 20 00 20 20 20 20 ....100644....1750....1750......
0880 20 20 20 32 33 32 32 20 31 34 37 30 36 35 30 32 35 32 35 20 20 20 37 36 37 33 20 00 30 00 00 00 ...2322.14706502525...7673..0...
08a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
08c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
08e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0900 00 75 73 74 61 72 20 20 00 6d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...m......................
0920 00 00 00 00 00 00 00 00 00 6d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........m......................
0940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
09a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
09c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
09e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0a00 4d 45 58 5f 44 45 53 43 52 49 50 54 49 4f 4e 3d 22 54 68 69 73 20 70 72 6f 76 69 64 65 73 20 73 MEX_DESCRIPTION="This.provides.s
0a20 6f 6d 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 74 6f 6f 6c 73 20 66 6f 72 20 6d 61 6b 65 66 69 6c ome.additional.tools.for.makefil
0a40 65 73 2e 22 0a 4d 45 58 5f 4c 49 43 45 4e 53 45 3d 22 52 65 6c 65 61 73 65 64 20 75 6e 64 65 72 es.".MEX_LICENSE="Released.under
0a60 20 74 68 65 20 42 53 44 20 74 77 6f 2d 63 6c 61 75 73 65 20 6c 69 63 65 6e 73 65 2c 20 73 65 65 .the.BSD.two-clause.license,.see
0a80 20 74 68 65 20 4c 49 43 45 4e 53 45 20 66 69 6c 65 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 72 .the.LICENSE.file.for.more.infor
0aa0 6d 61 74 69 6f 6e 2e 22 0a 4d 45 58 5f 41 53 53 55 52 45 3d 22 70 79 74 68 6f 6e 33 20 6c 73 20 mation.".MEX_ASSURE="python3.ls.
0ac0 74 72 65 65 20 63 6c 61 6e 67 22 0a 4d 45 58 5f 45 4e 56 49 52 4f 4e 4d 45 4e 54 3d 22 6c 6f 63 tree.clang".MEX_ENVIRONMENT="loc
0ae0 61 6c 2e 65 6e 76 20 73 65 63 6f 6e 64 2e 65 6e 76 22 0a 0a 69 6e 63 6c 75 64 65 20 6d 61 6b 65 al.env.second.env"..include.make
0b00 78 74 2e 6d 6b 0a 0a 68 65 6c 70 3a 20 2e 68 65 6c 70 0a 0a 64 65 6d 6f 2d 61 73 73 75 72 65 3a xt.mk..help:..help..demo-assure:
0b20 20 2e 61 73 73 75 72 65 0a 09 40 65 63 68 6f 20 22 41 6c 6c 20 67 6f 6f 64 2c 20 63 6f 6e 74 69 ..assure..@echo."All.good,.conti
0b40 6e 75 69 6e 67 2e 2e 2e 22 0a 0a 64 65 6d 6f 2d 65 6e 76 61 72 73 3a 0a 09 40 65 63 68 6f 20 22 nuing..."..demo-envars:..@echo."
0b60 45 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 73 22 0a 09 40 65 63 68 6f 20 22 20 Environment.variables"..@echo.".
0b80 20 48 4f 4d 45 3a 20 24 28 48 4f 4d 45 29 22 0a 09 40 65 63 68 6f 20 22 20 20 54 45 52 4d 3a 20 .HOME:.$(HOME)"..@echo."..TERM:.
0ba0 24 28 54 45 52 4d 29 22 0a 09 40 65 63 68 6f 20 22 20 20 45 4e 56 3a 20 24 28 4d 45 58 5f 45 4e $(TERM)"..@echo."..ENV:.$(MEX_EN
0bc0 56 49 52 4f 4e 4d 45 4e 54 29 22 0a 09 40 65 63 68 6f 20 22 20 20 41 55 44 49 4f 5f 42 55 43 4b VIRONMENT)"..@echo."..AUDIO_BUCK
0be0 45 54 3a 20 24 28 41 55 44 49 4f 5f 42 55 43 4b 45 54 29 22 0a 09 40 65 63 68 6f 20 22 20 20 44 ET:.$(AUDIO_BUCKET)"..@echo."..D
0c00 42 5f 48 4f 53 54 3a 20 24 28 44 42 5f 48 4f 53 54 29 22 0a 0a 62 75 69 6c 64 2d 61 70 70 3a 20 B_HOST:.$(DB_HOST)"..build-app:.
0c20 63 6c 65 61 6e 2d 63 61 63 68 65 20 23 20 42 75 69 6c 64 20 74 68 65 20 61 70 70 6c 69 63 61 74 clean-cache.#.Build.the.applicat
0c40 69 6f 6e 0a 09 40 65 63 68 6f 20 22 42 75 69 6c 64 69 6e 67 20 74 68 65 20 61 70 70 6c 69 63 61 ion..@echo."Building.the.applica
0c60 74 69 6f 6e 2e 2e 2e 22 0a 0a 63 6c 65 61 6e 2d 63 61 63 68 65 3a 20 23 20 43 6c 65 61 6e 20 74 tion..."..clean-cache:.#.Clean.t
0c80 68 65 20 63 61 63 68 65 0a 09 40 65 63 68 6f 20 22 43 6c 65 61 6e 69 6e 67 20 74 68 65 20 63 61 he.cache..@echo."Cleaning.the.ca
0ca0 63 68 65 2e 2e 2e 22 0a 0a 64 65 70 6c 6f 79 2d 70 72 6f 64 3a 20 23 20 44 65 70 6c 6f 79 20 74 che..."..deploy-prod:.#.Deploy.t
0cc0 6f 20 70 72 6f 64 75 63 74 69 6f 6e 0a 09 40 65 63 68 6f 20 22 44 65 70 6c 6f 79 69 6e 67 20 74 o.production..@echo."Deploying.t
0ce0 6f 20 70 72 6f 64 75 63 74 69 6f 6e 2e 2e 2e 22 0a 0a 72 75 6e 2d 74 65 73 74 73 3a 20 23 20 52 o.production..."..run-tests:.#.R
0d00 75 6e 20 74 65 73 74 73 0a 09 40 65 63 68 6f 20 22 52 75 6e 6e 69 6e 67 20 74 65 73 74 73 2e 2e un.tests..@echo."Running.tests..
0d20 2e 22 0a 0a 6f 70 74 69 6d 69 7a 65 2d 69 6d 61 67 65 73 3a 20 23 20 4f 70 74 69 6d 69 7a 65 20 ."..optimize-images:.#.Optimize.
0d40 69 6d 61 67 65 73 0a 09 40 65 63 68 6f 20 22 4f 70 74 69 6d 69 7a 69 6e 67 20 69 6d 61 67 65 73 images..@echo."Optimizing.images
0d60 2e 2e 2e 22 0a 0a 67 65 6e 65 72 61 74 65 2d 64 6f 63 73 3a 20 23 20 47 65 6e 65 72 61 74 65 20 ..."..generate-docs:.#.Generate.
0d80 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 0a 09 40 65 63 68 6f 20 22 47 65 6e 65 72 61 74 69 6e 67 documentation..@echo."Generating
0da0 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2e 2e 2e 22 0a 0a 6c 69 6e 74 2d 63 6f 64 65 3a 20 23 .documentation..."..lint-code:.#
0dc0 20 4c 69 6e 74 20 63 6f 64 65 0a 09 40 65 63 68 6f 20 22 4c 69 6e 74 69 6e 67 20 63 6f 64 65 2e .Lint.code..@echo."Linting.code.
0de0 2e 2e 22 0a 0a 70 61 63 6b 61 67 65 2d 72 65 6c 65 61 73 65 3a 20 23 20 50 61 63 6b 61 67 65 20 .."..package-release:.#.Package.
0e00 72 65 6c 65 61 73 65 0a 09 40 65 63 68 6f 20 22 50 61 63 6b 61 67 69 6e 67 20 72 65 6c 65 61 73 release..@echo."Packaging.releas
0e20 65 2e 2e 2e 22 0a 0a 75 70 64 61 74 65 2d 64 65 70 65 6e 64 65 6e 63 69 65 73 3a 20 23 20 55 70 e..."..update-dependencies:.#.Up
0e40 64 61 74 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73 0a 09 40 65 63 68 6f 20 22 55 70 64 61 74 69 date.dependencies..@echo."Updati
0e60 6e 67 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 2e 2e 22 0a 0a 64 65 70 6c 6f 79 2d 73 74 61 67 ng.dependencies..."..deploy-stag
0e80 69 6e 67 3a 20 23 20 44 65 70 6c 6f 79 20 74 6f 20 73 74 61 67 69 6e 67 20 65 6e 76 69 72 6f 6e ing:.#.Deploy.to.staging.environ
0ea0 6d 65 6e 74 0a 09 40 65 63 68 6f 20 22 44 65 70 6c 6f 79 69 6e 67 20 74 6f 20 73 74 61 67 69 6e ment..@echo."Deploying.to.stagin
0ec0 67 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2e 2e 2e 22 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 g.environment..."...............
0ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1000 2e 2f 52 45 41 44 4d 45 2e 6d 64 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ./README.md.....................
1020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1060 00 00 00 00 31 30 30 36 34 34 20 00 20 20 31 37 35 30 20 00 20 20 31 37 35 30 20 00 20 20 20 20 ....100644....1750....1750......
1080 20 20 31 36 33 30 31 20 31 34 37 30 36 35 30 32 35 32 35 20 20 20 37 35 33 34 20 00 30 00 00 00 ..16301.14706502525...7534..0...
10a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1100 00 75 73 74 61 72 20 20 00 6d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...m......................
1120 00 00 00 00 00 00 00 00 00 6d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........m......................
1140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1200 23 20 47 4e 55 20 4d 61 6b 65 20 45 78 74 65 6e 73 69 6f 6e 73 0a 0a 4d 61 6b 65 78 74 20 69 73 #.GNU.Make.Extensions..Makext.is
1220 20 61 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 6f 66 20 75 73 65 66 75 6c 20 65 78 74 65 6e 73 69 6f .a.collection.of.useful.extensio
1240 6e 73 20 66 6f 72 20 4d 61 6b 65 66 69 6c 65 73 2c 20 61 69 6d 65 64 0a 61 74 20 73 69 6d 70 6c ns.for.Makefiles,.aimed.at.simpl
1260 69 66 79 69 6e 67 20 61 6e 64 20 65 6e 68 61 6e 63 69 6e 67 20 74 68 65 20 66 75 6e 63 74 69 6f ifying.and.enhancing.the.functio
1280 6e 61 6c 69 74 79 20 6f 66 20 4d 61 6b 65 2d 62 61 73 65 64 0a 70 72 6f 6a 65 63 74 73 2e 20 54 nality.of.Make-based.projects..T
12a0 68 65 73 65 20 65 78 74 65 6e 73 69 6f 6e 73 20 70 72 6f 76 69 64 65 20 61 64 64 69 74 69 6f 6e hese.extensions.provide.addition
12c0 61 6c 20 66 65 61 74 75 72 65 73 20 61 6e 64 0a 63 6f 6e 76 65 6e 69 65 6e 63 65 20 66 75 6e 63 al.features.and.convenience.func
12e0 74 69 6f 6e 73 20 74 6f 20 69 6d 70 72 6f 76 65 20 74 68 65 20 6f 76 65 72 61 6c 6c 20 75 73 61 tions.to.improve.the.overall.usa
1300 67 65 20 6f 66 20 5b 47 4e 55 0a 4d 61 6b 65 5d 28 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 6e 75 ge.of.[GNU.Make](https://www.gnu
1320 2e 6f 72 67 2f 73 6f 66 74 77 61 72 65 2f 6d 61 6b 65 2f 29 20 61 73 20 61 20 74 61 73 6b 20 72 .org/software/make/).as.a.task.r
1340 75 6e 6e 65 72 2e 0a 0a 41 6c 6c 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 73 20 61 72 65 20 77 unner...All.the.extensions.are.w
1360 72 69 74 74 65 6e 20 69 6e 20 47 4e 55 20 4d 61 6b 65 20 73 6f 20 6e 6f 20 6f 74 68 65 72 20 6c ritten.in.GNU.Make.so.no.other.l
1380 61 6e 67 75 61 67 65 73 20 61 72 65 20 75 73 65 64 0a 6d 61 6b 69 6e 67 20 74 68 69 73 20 76 65 anguages.are.used.making.this.ve
13a0 72 79 20 65 6d 62 65 64 61 62 6c 65 20 61 6e 64 20 68 61 73 20 7a 65 72 6f 20 64 65 70 65 6e 64 ry.embedable.and.has.zero.depend
13c0 65 6e 63 69 65 73 20 6f 74 68 65 72 20 74 68 61 6e 20 47 4e 55 20 4d 61 6b 65 2e 0a 0a 4f 74 68 encies.other.than.GNU.Make...Oth
13e0 65 72 20 74 68 61 6e 20 60 6d 61 6b 65 78 74 2e 6d 6b 60 20 61 6c 6c 20 74 68 65 20 6f 74 68 65 er.than.`makext.mk`.all.the.othe
1400 72 20 66 69 6c 65 73 20 69 6e 20 74 68 65 20 72 65 70 6f 73 69 74 6f 72 79 20 61 72 65 20 65 69 r.files.in.the.repository.are.ei
1420 74 68 65 72 0a 6c 69 63 65 6e 73 65 20 6f 72 20 72 65 61 64 6d 65 20 66 69 6c 65 73 20 6f 72 20 ther.license.or.readme.files.or.
1440 6a 75 73 74 20 74 65 73 74 69 6e 67 20 64 61 74 61 20 74 68 61 74 20 69 73 2f 61 72 65 20 6e 6f just.testing.data.that.is/are.no
1460 74 20 6e 65 65 64 65 64 20 74 6f 0a 75 73 65 20 69 74 2e 0a 0a 3e 20 5b 21 4e 4f 54 45 5d 0a 3e t.needed.to.use.it...>.[!NOTE].>
1480 20 54 68 65 73 65 20 65 78 74 65 6e 73 69 6f 6e 73 20 61 72 65 20 61 62 75 73 69 6e 67 20 47 4e .These.extensions.are.abusing.GN
14a0 55 20 4d 61 6b 65 20 69 6e 20 73 6f 6d 65 20 73 65 6e 73 65 20 73 69 6e 63 65 20 69 74 20 77 61 U.Make.in.some.sense.since.it.wa
14c0 73 20 6e 6f 74 0a 3e 20 6d 65 61 6e 74 20 74 6f 20 72 65 61 6c 6c 79 20 62 65 20 61 20 74 61 73 s.not.>.meant.to.really.be.a.tas
14e0 6b 20 72 75 6e 6e 65 72 2e 20 4b 65 65 70 20 74 68 61 74 20 69 6e 20 6d 69 6e 64 2e 20 48 6f 77 k.runner..Keep.that.in.mind..How
1500 65 76 65 72 2c 20 64 65 73 70 69 74 65 0a 3e 20 74 68 61 74 2c 20 49 20 63 6f 6e 73 74 61 6e 74 ever,.despite.>.that,.I.constant
1520 6c 79 20 66 69 6e 64 20 6d 79 73 65 6c 66 20 75 73 69 6e 67 20 69 74 20 61 73 20 73 75 63 68 2e ly.find.myself.using.it.as.such.
1540 0a 0a 23 23 20 45 78 74 65 6e 73 69 6f 6e 73 0a 0a 7c 20 45 78 74 65 6e 73 69 6f 6e 20 20 20 7c ..##.Extensions..|.Extension...|
1560 20 44 65 73 63 72 69 70 74 69 6f 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .Description....................
1580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 7c 2d 2d 2d 2d 2d 2d 2d 2d .....................|.|--------
15a0 2d 2d 2d 2d 2d 7c 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d -----|--------------------------
15c0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 7c 0a 7c 20 2a ---------------------------|.|.*
15e0 2a 68 65 6c 70 2a 2a 20 20 20 20 20 20 20 20 7c 20 44 69 73 70 6c 61 79 73 20 61 6c 6c 20 74 61 *help**........|.Displays.all.ta
1600 72 67 65 74 73 20 77 69 74 68 20 61 20 63 6f 6d 6d 65 6e 74 20 69 6e 20 68 65 6c 70 20 66 6f 72 rgets.with.a.comment.in.help.for
1620 6d 61 74 2e 20 7c 0a 7c 20 2a 2a 61 73 73 75 72 65 2a 2a 20 20 20 20 20 20 7c 20 43 68 65 63 6b mat..|.|.**assure**......|.Check
1640 20 66 6f 72 20 74 68 65 20 65 78 69 73 74 65 6e 63 65 20 6f 66 20 70 72 6f 67 72 61 6d 73 20 6f .for.the.existence.of.programs.o
1660 6e 20 61 20 6d 61 63 68 69 6e 65 2e 20 20 20 7c 0a 7c 20 2a 2a 65 6e 76 69 72 6f 6e 6d 65 6e 74 n.a.machine....|.|.**environment
1680 2a 2a 20 7c 20 4c 6f 61 64 73 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 61 6c 20 76 61 72 69 61 62 6c **.|.Loads.environmental.variabl
16a0 65 73 20 66 72 6f 6d 20 6f 74 68 65 72 20 66 69 6c 65 73 2e 20 20 20 20 20 7c 0a 0a 41 64 64 69 es.from.other.files......|..Addi
16c0 74 69 6f 6e 61 6c 20 66 65 61 74 75 72 65 73 3a 0a 0a 2d 20 41 75 74 6f 6d 61 74 69 63 20 64 65 tional.features:..-.Automatic.de
16e0 73 63 72 69 70 74 69 6f 6e 20 69 6e 63 6c 75 73 69 6f 6e 20 69 6e 20 68 65 6c 70 20 6d 65 73 73 scription.inclusion.in.help.mess
1700 61 67 65 2e 0a 2d 20 41 75 74 6f 6d 61 74 69 63 20 6c 69 63 65 6e 73 65 20 69 6e 63 6c 75 73 69 age..-.Automatic.license.inclusi
1720 6f 6e 20 69 6e 20 68 65 6c 70 20 6d 65 73 73 61 67 65 2e 0a 0a 54 65 73 74 65 64 20 6f 6e 3a 0a on.in.help.message...Tested.on:.
1740 0a 2d 20 47 4e 55 20 4c 69 6e 75 78 20 44 65 62 69 61 6e 20 31 32 20 77 69 74 68 20 47 4e 55 20 .-.GNU.Linux.Debian.12.with.GNU.
1760 4d 61 6b 65 20 34 2e 33 0a 2d 20 6d 61 63 4f 53 20 53 6f 6e 6f 6d 61 20 31 34 2e 34 2e 31 20 77 Make.4.3.-.macOS.Sonoma.14.4.1.w
1780 69 74 68 20 47 4e 55 20 4d 61 6b 65 20 33 2e 38 31 0a 2d 20 57 69 6e 64 6f 77 73 20 31 30 2f 31 ith.GNU.Make.3.81.-.Windows.10/1
17a0 31 20 77 69 74 68 20 47 4e 55 20 4d 61 6b 65 20 34 2e 34 2e 31 20 66 6f 72 20 57 69 6e 64 6f 77 1.with.GNU.Make.4.4.1.for.Window
17c0 73 33 32 0a 0a 49 66 20 79 6f 75 20 68 61 76 65 20 61 6e 20 69 64 65 61 20 66 6f 72 20 61 20 6e s32..If.you.have.an.idea.for.a.n
17e0 65 77 20 66 65 61 74 75 72 65 20 5b 6f 70 65 6e 20 61 20 6e 65 77 0a 69 73 73 75 65 5d 28 68 74 ew.feature.[open.a.new.issue](ht
1800 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6d 69 74 6a 61 66 65 6c 69 63 69 6a 61 6e 2f tps://github.com/mitjafelicijan/
1820 6d 61 6b 65 78 74 2f 69 73 73 75 65 73 2f 6e 65 77 29 2e 0a 0a 23 23 20 48 6f 77 20 74 6f 20 75 makext/issues/new)...##.How.to.u
1840 73 65 0a 0a 3e 20 5b 21 49 4d 50 4f 52 54 41 4e 54 5d 0a 3e 20 49 66 20 79 6f 75 20 69 6e 74 65 se..>.[!IMPORTANT].>.If.you.inte
1860 6e 64 20 74 6f 20 75 73 65 20 74 68 69 73 20 73 63 72 69 70 74 20 6f 6e 20 57 69 6e 64 6f 77 73 nd.to.use.this.script.on.Windows
1880 20 6d 61 63 68 69 6e 65 0a 3e 20 6d 61 6b 65 20 73 75 72 65 20 79 6f 75 20 68 61 76 65 20 61 6c .machine.>.make.sure.you.have.al
18a0 6c 20 74 68 65 20 5b 70 72 65 72 65 71 75 69 73 69 74 65 73 5d 28 23 77 69 6e 64 6f 77 73 2d 73 l.the.[prerequisites](#windows-s
18c0 70 65 63 69 66 69 63 2d 69 6e 73 74 72 75 63 74 69 6f 6e 73 29 20 69 6e 73 74 61 6c 6c 65 64 2e pecific-instructions).installed.
18e0 0a 0a 46 69 72 73 74 20 79 6f 75 20 77 69 6c 6c 20 6e 65 65 64 20 74 6f 20 64 6f 77 6e 6c 6f 61 ..First.you.will.need.to.downloa
1900 64 20 60 6d 61 6b 65 78 74 2e 6d 6b 60 20 66 69 6c 65 20 66 72 6f 6d 20 74 68 65 20 72 65 70 6f d.`makext.mk`.file.from.the.repo
1920 73 69 74 6f 72 79 20 74 6f 0a 74 68 65 20 73 61 6d 65 20 64 69 72 65 63 74 6f 72 79 20 77 68 65 sitory.to.the.same.directory.whe
1940 72 65 20 79 6f 75 20 68 61 76 65 20 60 4d 61 6b 65 66 69 6c 65 60 2e 0a 0a 60 60 60 73 68 0a 77 re.you.have.`Makefile`...```sh.w
1960 67 65 74 20 2d 4f 20 6d 61 6b 65 78 74 2e 6d 6b 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e get.-O.makext.mk.https://github.
1980 63 6f 6d 2f 6d 69 74 6a 61 66 65 6c 69 63 69 6a 61 6e 2f 6d 61 6b 65 78 74 2f 72 61 77 2f 6d 61 com/mitjafelicijan/makext/raw/ma
19a0 73 74 65 72 2f 6d 61 6b 65 78 74 2e 6d 6b 0a 60 60 60 0a 0a 4e 6f 77 20 79 6f 75 20 63 61 6e 20 ster/makext.mk.```..Now.you.can.
19c0 69 6e 63 6c 75 64 65 20 69 74 20 69 6e 20 79 6f 75 72 20 60 4d 61 6b 65 66 69 6c 65 60 2e 0a 0a include.it.in.your.`Makefile`...
19e0 60 60 60 6d 61 6b 65 0a 69 6e 63 6c 75 64 65 20 6d 61 6b 65 78 74 2e 6d 6b 0a 0a 68 65 6c 70 3a ```make.include.makext.mk..help:
1a00 20 2e 68 65 6c 70 0a 60 60 60 0a 0a 3e 20 5b 21 49 4d 50 4f 52 54 41 4e 54 5d 0a 3e 20 4d 61 6b ..help.```..>.[!IMPORTANT].>.Mak
1a20 65 20 73 75 72 65 20 79 6f 75 20 63 72 65 61 74 65 20 66 69 72 73 74 20 74 61 72 67 65 74 20 60 e.sure.you.create.first.target.`
1a40 68 65 6c 70 3a 20 2e 68 65 6c 70 60 20 62 65 66 6f 72 65 20 61 6e 79 20 6f 74 68 65 72 0a 3e 20 help:..help`.before.any.other.>.
1a60 74 61 72 67 65 74 73 20 69 6e 20 79 6f 75 72 20 60 4d 61 6b 65 66 69 6c 65 60 2e 20 47 4e 55 20 targets.in.your.`Makefile`..GNU.
1a80 4d 61 6b 65 20 77 69 6c 6c 20 65 78 65 63 75 74 65 20 66 69 72 73 74 20 74 61 72 67 65 74 20 69 Make.will.execute.first.target.i
1aa0 66 0a 3e 20 6e 6f 20 74 61 72 67 65 74 20 70 72 6f 76 69 64 65 64 20 61 73 20 61 6e 20 61 72 67 f.>.no.target.provided.as.an.arg
1ac0 75 6d 65 6e 74 20 77 68 65 6e 20 63 61 6c 6c 69 6e 67 20 60 6d 61 6b 65 60 2e 0a 0a 23 23 23 20 ument.when.calling.`make`...###.
1ae0 57 69 6e 64 6f 77 73 20 73 70 65 63 69 66 69 63 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 0a 0a 4f Windows.specific.instructions..O
1b00 6e 20 57 69 6e 64 6f 77 73 20 4f 53 27 65 73 20 79 6f 75 20 6e 65 65 64 20 74 68 65 20 66 6f 6c n.Windows.OS'es.you.need.the.fol
1b20 6c 6f 77 69 6e 67 3a 0a 0a 2d 20 47 69 74 20 42 61 73 68 20 66 6f 72 20 57 69 6e 64 6f 77 73 0a lowing:..-.Git.Bash.for.Windows.
1b40 2d 20 6d 61 6b 65 0a 0a 41 6c 6c 20 6f 66 20 74 68 65 20 61 62 6f 76 65 20 63 61 6e 20 62 65 20 -.make..All.of.the.above.can.be.
1b60 63 6f 6e 76 65 6e 69 65 6e 74 6c 79 20 69 6e 73 74 61 6c 6c 65 64 20 76 69 61 20 5b 53 63 6f 6f conveniently.installed.via.[Scoo
1b80 70 5d 28 68 74 74 70 73 3a 2f 2f 73 63 6f 6f 70 2e 73 68 2f 29 3a 0a 0a 60 60 60 73 68 0a 73 63 p](https://scoop.sh/):..```sh.sc
1ba0 6f 6f 70 20 69 6e 73 74 61 6c 6c 20 6d 61 69 6e 2f 67 69 74 20 6d 61 69 6e 2f 6d 61 6b 65 0a 60 oop.install.main/git.main/make.`
1bc0 60 60 0a 0a 23 23 20 48 65 6c 70 20 65 78 74 65 6e 73 69 6f 6e 0a 0a 4f 6e 65 20 6f 66 20 74 68 ``..##.Help.extension..One.of.th
1be0 65 20 65 78 74 65 6e 73 69 6f 6e 73 20 69 73 20 60 2e 68 65 6c 70 60 20 77 68 69 63 68 20 64 69 e.extensions.is.`.help`.which.di
1c00 73 70 6c 61 79 73 20 61 6c 6c 20 74 68 65 20 74 61 72 67 65 74 73 20 69 6e 20 74 68 65 0a 60 4d splays.all.the.targets.in.the.`M
1c20 61 6b 65 66 69 6c 65 60 20 61 6e 64 20 74 68 65 69 72 20 64 65 73 63 72 69 70 74 69 6f 6e 73 20 akefile`.and.their.descriptions.
1c40 77 68 69 63 68 20 61 72 65 20 70 72 6f 76 69 64 65 64 20 61 73 20 63 6f 6d 6d 65 6e 74 73 20 6e which.are.provided.as.comments.n
1c60 65 78 74 0a 74 6f 20 74 68 65 20 74 61 72 67 65 74 20 64 65 66 69 6e 69 74 69 6f 6e 2e 0a 0a 4c ext.to.the.target.definition...L
1c80 65 74 73 20 63 68 65 63 6b 20 68 6f 77 20 61 6e 64 20 65 78 61 6d 70 6c 65 20 60 4d 61 6b 65 66 ets.check.how.and.example.`Makef
1ca0 69 6c 65 60 20 77 6f 75 6c 64 20 6c 6f 6f 6b 20 6c 69 6b 65 2e 20 49 74 0a 69 73 20 72 65 63 6f ile`.would.look.like..It.is.reco
1cc0 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 20 60 2e 50 48 4f 4e 59 60 20 66 6f 72 20 74 61 72 67 mmended.to.use.`.PHONY`.for.targ
1ce0 65 74 73 20 74 68 61 74 20 61 72 65 20 6e 6f 74 0a 61 63 74 75 61 6c 20 66 69 6c 65 73 2e 20 49 ets.that.are.not.actual.files..I
1d00 6e 20 74 68 65 20 65 78 61 6d 70 6c 65 20 62 65 6c 6f 77 20 49 20 61 6d 20 6e 6f 74 20 64 6f 69 n.the.example.below.I.am.not.doi
1d20 6e 67 20 74 68 61 74 0a 74 68 6f 75 67 68 2c 20 62 75 74 20 69 74 20 69 73 20 77 69 73 65 20 74 ng.that.though,.but.it.is.wise.t
1d40 6f 20 66 6f 6c 6c 6f 77 20 74 68 61 74 20 72 75 6c 65 2e 20 43 68 65 63 6b 20 5b 34 2e 36 20 50 o.follow.that.rule..Check.[4.6.P
1d60 68 6f 6e 79 0a 54 61 72 67 65 74 73 5d 28 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 hony.Targets](https://www.gnu.or
1d80 67 2f 73 6f 66 74 77 61 72 65 2f 6d 61 6b 65 2f 6d 61 6e 75 61 6c 2f 6d 61 6b 65 2e 68 74 6d 6c g/software/make/manual/make.html
1da0 23 50 68 6f 6e 79 2d 54 61 72 67 65 74 73 29 0a 73 65 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 47 #Phony-Targets).section.in.the.G
1dc0 4e 55 20 4d 61 6b 65 20 6d 61 6e 75 61 6c 2e 0a 0a 60 60 60 6d 61 6b 65 0a 69 6e 63 6c 75 64 65 NU.Make.manual...```make.include
1de0 20 6d 61 6b 65 78 74 2e 6d 6b 0a 0a 68 65 6c 70 3a 20 2e 68 65 6c 70 0a 0a 62 75 69 6c 64 2d 61 .makext.mk..help:..help..build-a
1e00 70 70 3a 20 63 6c 65 61 6e 2d 63 61 63 68 65 20 23 20 42 75 69 6c 64 20 74 68 65 20 61 70 70 6c pp:.clean-cache.#.Build.the.appl
1e20 69 63 61 74 69 6f 6e 0a 09 40 65 63 68 6f 20 22 42 75 69 6c 64 69 6e 67 20 74 68 65 20 61 70 70 ication..@echo."Building.the.app
1e40 6c 69 63 61 74 69 6f 6e 2e 2e 2e 22 0a 0a 63 6c 65 61 6e 2d 63 61 63 68 65 3a 20 23 20 43 6c 65 lication..."..clean-cache:.#.Cle
1e60 61 6e 20 74 68 65 20 63 61 63 68 65 0a 09 40 65 63 68 6f 20 22 43 6c 65 61 6e 69 6e 67 20 74 68 an.the.cache..@echo."Cleaning.th
1e80 65 20 63 61 63 68 65 2e 2e 2e 22 0a 0a 64 65 70 6c 6f 79 2d 70 72 6f 64 3a 20 23 20 44 65 70 6c e.cache..."..deploy-prod:.#.Depl
1ea0 6f 79 20 74 6f 20 70 72 6f 64 75 63 74 69 6f 6e 0a 09 40 65 63 68 6f 20 22 44 65 70 6c 6f 79 69 oy.to.production..@echo."Deployi
1ec0 6e 67 20 74 6f 20 70 72 6f 64 75 63 74 69 6f 6e 2e 2e 2e 22 0a 0a 72 75 6e 2d 74 65 73 74 73 3a ng.to.production..."..run-tests:
1ee0 0a 09 40 65 63 68 6f 20 22 52 75 6e 6e 69 6e 67 20 74 65 73 74 73 2e 2e 2e 22 0a 60 60 60 0a 0a ..@echo."Running.tests...".```..
1f00 54 68 69 73 20 77 69 6c 6c 20 67 69 76 65 20 75 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 This.will.give.us.the.following.
1f20 72 65 73 75 6c 74 20 77 68 65 6e 20 77 65 20 65 78 65 63 75 74 65 20 63 6f 6d 6d 61 6e 64 20 60 result.when.we.execute.command.`
1f40 6d 61 6b 65 60 0a 77 69 74 68 6f 75 74 20 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 2e 0a 0a 60 60 make`.without.any.arguments...``
1f60 60 74 65 78 74 0a 24 20 6d 61 6b 65 0a 54 61 72 67 65 74 73 3a 0a 20 20 62 75 69 6c 64 2d 61 70 `text.$.make.Targets:...build-ap
1f80 70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 42 75 69 6c 64 20 74 68 65 20 61 70 70 6c p.................Build.the.appl
1fa0 69 63 61 74 69 6f 6e 0a 20 20 63 6c 65 61 6e 2d 63 61 63 68 65 20 20 20 20 20 20 20 20 20 20 20 ication...clean-cache...........
1fc0 20 20 20 20 43 6c 65 61 6e 20 74 68 65 20 63 61 63 68 65 0a 20 20 64 65 70 6c 6f 79 2d 70 72 6f ....Clean.the.cache...deploy-pro
1fe0 64 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 65 70 6c 6f 79 20 74 6f 20 70 72 6f 64 75 63 d...............Deploy.to.produc
2000 74 69 6f 6e 0a 60 60 60 0a 0a 2d 20 54 61 72 67 65 74 73 20 77 69 74 68 6f 75 74 20 64 65 66 69 tion.```..-.Targets.without.defi
2020 6e 65 64 20 63 6f 6d 6d 65 6e 74 20 6e 65 78 74 20 74 6f 20 74 68 65 20 74 61 72 67 65 74 20 77 ned.comment.next.to.the.target.w
2040 69 6c 6c 20 62 65 20 69 67 6e 6f 72 65 64 0a 20 20 66 72 6f 6d 20 68 65 6c 70 20 6c 69 73 74 2e ill.be.ignored...from.help.list.
2060 20 49 6e 20 74 68 69 73 20 63 61 73 65 20 60 72 75 6e 2d 74 65 73 74 73 60 20 69 73 20 6d 69 73 .In.this.case.`run-tests`.is.mis
2080 73 69 6e 67 20 66 72 6f 6d 20 74 68 65 20 6c 69 73 74 2e 0a 2d 20 54 61 72 67 65 74 73 20 74 68 sing.from.the.list..-.Targets.th
20a0 61 74 20 73 74 61 72 74 20 77 69 74 68 20 60 2e 60 20 77 69 6c 6c 20 61 6c 73 6f 20 62 65 20 69 at.start.with.`.`.will.also.be.i
20c0 67 6e 6f 72 65 64 2e 0a 2d 20 50 72 65 72 65 71 75 69 73 69 74 65 73 20 69 6e 20 74 61 72 67 65 gnored..-.Prerequisites.in.targe
20e0 74 73 20 77 69 6c 6c 20 62 65 20 6f 6d 69 74 74 65 64 20 66 72 6f 6d 20 74 68 65 20 72 65 73 75 ts.will.be.omitted.from.the.resu
2100 6c 74 2e 20 53 65 65 20 68 6f 77 0a 20 20 60 63 6c 65 61 6e 2d 63 61 63 68 65 60 20 69 73 20 6d lt..See.how...`clean-cache`.is.m
2120 69 73 73 69 6e 67 20 66 72 6f 6d 20 60 62 75 69 6c 64 2d 61 70 70 60 20 74 61 72 67 65 74 2e 0a issing.from.`build-app`.target..
2140 0a 23 23 20 44 65 73 63 72 69 70 74 69 6f 6e 20 26 20 4c 69 63 65 6e 73 65 20 69 6e 66 6f 72 6d .##.Description.&.License.inform
2160 61 74 69 6f 6e 0a 0a 59 6f 75 20 63 61 6e 20 70 72 6f 76 69 64 65 20 64 65 73 63 72 69 70 74 69 ation..You.can.provide.descripti
2180 6f 6e 20 66 6f 72 20 74 68 65 20 70 72 6f 6a 65 63 74 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 on.for.the.project.that.will.be.
21a0 64 69 73 70 6c 61 79 65 64 0a 74 6f 67 65 74 68 65 72 20 77 69 74 68 20 60 68 65 6c 70 60 2e 20 displayed.together.with.`help`..
21c0 54 6f 20 64 6f 20 74 68 69 73 20 70 72 6f 76 69 64 65 20 74 68 69 73 20 69 6e 66 6f 72 6d 61 74 To.do.this.provide.this.informat
21e0 69 6f 6e 20 69 6e 20 74 68 65 0a 60 4d 45 58 5f 44 45 53 43 52 49 50 54 49 4f 4e 60 20 76 61 72 ion.in.the.`MEX_DESCRIPTION`.var
2200 69 61 62 6c 65 2e 0a 0a 53 61 6d 65 20 67 6f 65 73 20 66 6f 72 20 6c 69 63 65 6e 73 65 20 69 6e iable...Same.goes.for.license.in
2220 66 6f 72 6d 61 74 69 6f 6e 2e 20 50 72 6f 76 69 64 65 20 74 68 69 73 20 69 6e 66 6f 72 6d 61 74 formation..Provide.this.informat
2240 69 6f 6e 20 62 79 20 63 72 65 61 74 69 6e 67 0a 60 4d 45 58 5f 4c 49 43 45 4e 53 45 60 20 76 61 ion.by.creating.`MEX_LICENSE`.va
2260 72 69 61 62 6c 65 2e 0a 0a 49 66 20 74 68 65 73 65 20 76 61 72 69 61 62 6c 65 73 20 61 72 65 20 riable...If.these.variables.are.
2280 6e 6f 74 20 70 72 65 73 65 6e 74 20 74 68 69 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 77 69 6c not.present.this.information.wil
22a0 6c 20 6e 6f 74 20 62 65 20 64 69 73 70 6c 61 79 65 64 0a 69 6e 20 74 68 65 20 68 65 6c 70 2e 0a l.not.be.displayed.in.the.help..
22c0 0a 44 65 73 63 72 69 70 74 69 6f 6e 20 61 6e 64 20 6c 69 63 65 6e 73 65 20 69 6e 66 6f 72 6d 61 .Description.and.license.informa
22e0 74 69 6f 6e 20 69 73 20 61 6c 73 6f 20 66 6f 72 6d 61 74 74 65 64 20 74 6f 20 6d 61 78 20 37 35 tion.is.also.formatted.to.max.75
2300 20 63 68 61 72 61 63 74 65 72 73 0a 70 65 72 20 72 6f 77 2e 0a 0a 3e 20 5b 21 49 4d 50 4f 52 54 .characters.per.row...>.[!IMPORT
2320 41 4e 54 5d 0a 3e 20 56 61 72 69 61 62 6c 65 73 20 60 4d 45 58 5f 44 45 53 43 52 49 50 54 49 4f ANT].>.Variables.`MEX_DESCRIPTIO
2340 4e 60 20 61 6e 64 20 60 4d 45 58 5f 4c 49 43 45 4e 53 45 60 20 6d 75 73 74 20 62 65 20 64 65 66 N`.and.`MEX_LICENSE`.must.be.def
2360 69 6e 65 64 20 62 65 66 6f 72 65 20 79 6f 75 0a 3e 20 69 6e 63 6c 75 64 65 20 60 6d 61 6b 65 78 ined.before.you.>.include.`makex
2380 74 2e 6d 6b 60 20 74 6f 20 79 6f 75 72 20 60 4d 61 6b 65 66 69 6c 65 60 2e 20 54 68 69 73 20 69 t.mk`.to.your.`Makefile`..This.i
23a0 73 20 6e 65 65 64 65 64 20 62 65 63 61 75 73 65 20 74 68 65 20 77 61 79 0a 3e 20 47 4e 55 20 4d s.needed.because.the.way.>.GNU.M
23c0 61 6b 65 20 69 73 20 70 61 72 73 69 6e 67 20 4d 61 6b 65 66 69 6c 65 73 2e 0a 0a 60 60 60 6d 61 ake.is.parsing.Makefiles...```ma
23e0 6b 65 0a 4d 45 58 5f 44 45 53 43 52 49 50 54 49 4f 4e 3d 22 54 68 69 73 20 70 72 6f 76 69 64 65 ke.MEX_DESCRIPTION="This.provide
2400 73 20 73 6f 6d 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 74 6f 6f 6c 73 20 66 6f 72 20 74 68 69 73 s.some.additional.tools.for.this
2420 20 70 72 6f 6a 65 63 74 2e 22 0a 4d 45 58 5f 4c 49 43 45 4e 53 45 3d 22 52 65 6c 65 61 73 65 64 .project.".MEX_LICENSE="Released
2440 20 75 6e 64 65 72 20 74 68 65 20 42 53 44 20 74 77 6f 2d 63 6c 61 75 73 65 20 6c 69 63 65 6e 73 .under.the.BSD.two-clause.licens
2460 65 2c 20 73 65 65 20 74 68 65 20 4c 49 43 45 4e 53 45 20 66 69 6c 65 20 66 6f 72 20 6d 6f 72 65 e,.see.the.LICENSE.file.for.more
2480 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 22 0a 0a 69 6e 63 6c 75 64 65 20 6d 61 6b 65 78 74 2e 6d .information."..include.makext.m
24a0 6b 0a 0a 68 65 6c 70 3a 20 2e 68 65 6c 70 0a 0a 62 75 69 6c 64 2d 61 70 70 3a 20 63 6c 65 61 6e k..help:..help..build-app:.clean
24c0 2d 63 61 63 68 65 20 23 20 42 75 69 6c 64 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 0a 09 -cache.#.Build.the.application..
24e0 40 65 63 68 6f 20 22 42 75 69 6c 64 69 6e 67 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e @echo."Building.the.application.
2500 2e 2e 22 0a 0a 63 6c 65 61 6e 2d 63 61 63 68 65 3a 20 23 20 43 6c 65 61 6e 20 74 68 65 20 63 61 .."..clean-cache:.#.Clean.the.ca
2520 63 68 65 0a 09 40 65 63 68 6f 20 22 43 6c 65 61 6e 69 6e 67 20 74 68 65 20 63 61 63 68 65 2e 2e che..@echo."Cleaning.the.cache..
2540 2e 22 0a 60 60 60 0a 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 65 78 61 6d 70 6c 65 20 77 69 .".```..The.following.example.wi
2560 6c 6c 20 70 72 6f 64 75 63 65 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 72 65 73 75 6c 74 2e ll.produce.the.following.result.
2580 0a 0a 60 60 60 74 65 78 74 0a 24 20 6d 61 6b 65 0a 54 68 69 73 20 70 72 6f 76 69 64 65 73 20 73 ..```text.$.make.This.provides.s
25a0 6f 6d 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 74 6f 6f 6c 73 20 66 6f 72 20 74 68 69 73 20 70 72 ome.additional.tools.for.this.pr
25c0 6f 6a 65 63 74 2e 0a 0a 54 61 72 67 65 74 73 3a 0a 20 20 62 75 69 6c 64 2d 61 70 70 20 20 20 20 oject...Targets:...build-app....
25e0 20 20 20 20 20 20 20 20 20 20 20 20 20 42 75 69 6c 64 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 .............Build.the.applicati
2600 6f 6e 0a 20 20 63 6c 65 61 6e 2d 63 61 63 68 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 43 on...clean-cache...............C
2620 6c 65 61 6e 20 74 68 65 20 63 61 63 68 65 0a 0a 52 65 6c 65 61 73 65 64 20 75 6e 64 65 72 20 74 lean.the.cache..Released.under.t
2640 68 65 20 42 53 44 20 74 77 6f 2d 63 6c 61 75 73 65 20 6c 69 63 65 6e 73 65 2c 20 73 65 65 20 74 he.BSD.two-clause.license,.see.t
2660 68 65 20 4c 49 43 45 4e 53 45 20 66 69 6c 65 20 66 6f 72 0a 6d 6f 72 65 20 69 6e 66 6f 72 6d 61 he.LICENSE.file.for.more.informa
2680 74 69 6f 6e 2e 0a 60 60 60 0a 0a 23 23 20 41 73 73 75 72 65 20 65 78 74 65 6e 73 69 6f 6e 0a 0a tion..```..##.Assure.extension..
26a0 4f 66 74 65 6e 20 74 69 6d 65 73 20 70 72 6f 6a 65 63 74 20 75 73 65 73 20 6d 75 6c 74 69 70 6c Often.times.project.uses.multipl
26c0 65 20 70 72 6f 67 72 61 6d 73 20 61 6e 64 20 74 6f 20 65 6e 73 75 72 65 20 74 68 61 74 20 74 68 e.programs.and.to.ensure.that.th
26e0 65 73 65 0a 70 72 6f 67 72 61 6d 73 20 61 72 65 20 61 6c 72 65 61 64 79 20 69 6e 73 74 61 6c 6c ese.programs.are.already.install
2700 65 64 20 62 65 66 6f 72 65 20 72 65 63 69 70 65 73 20 61 72 65 20 65 78 65 63 75 74 65 64 20 60 ed.before.recipes.are.executed.`
2720 2e 61 73 73 75 72 65 60 20 63 61 6e 0a 62 65 20 75 73 65 64 2e 20 49 66 20 70 72 6f 67 72 61 6d .assure`.can.be.used..If.program
2740 73 20 61 72 65 20 6d 69 73 73 69 6e 67 20 72 65 63 69 70 65 73 20 63 61 6e 20 6f 6e 6c 79 20 70 s.are.missing.recipes.can.only.p
2760 61 72 74 69 61 6c 6c 79 20 62 65 20 65 78 65 63 75 74 65 64 0a 6c 65 61 76 69 6e 67 20 70 72 6f artially.be.executed.leaving.pro
2780 6a 65 63 74 20 69 6e 20 61 20 70 6f 74 65 6e 74 69 61 6c 6c 79 20 62 72 6f 6b 65 6e 20 73 74 61 ject.in.a.potentially.broken.sta
27a0 74 65 2e 0a 0a 60 60 60 6d 61 6b 65 0a 4d 45 58 5f 41 53 53 55 52 45 3d 22 70 79 74 68 6f 6e 33 te...```make.MEX_ASSURE="python3
27c0 20 6c 73 20 74 72 65 65 20 63 6c 61 6e 67 22 0a 0a 69 6e 63 6c 75 64 65 20 6d 61 6b 65 78 74 2e .ls.tree.clang"..include.makext.
27e0 6d 6b 0a 0a 62 75 69 6c 64 2d 61 70 70 3a 20 2e 61 73 73 75 72 65 0a 09 40 65 63 68 6f 20 22 42 mk..build-app:..assure..@echo."B
2800 75 69 6c 64 69 6e 67 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 2e 2e 22 0a 60 60 60 0a uilding.the.application...".```.
2820 0a 60 2e 61 73 73 75 72 65 60 20 70 72 65 72 65 71 75 69 73 69 74 65 20 77 69 6c 6c 20 6c 6f 6f .`.assure`.prerequisite.will.loo
2840 70 20 6f 76 65 72 20 74 68 65 20 6c 69 73 74 20 6f 66 20 70 72 6f 67 72 61 6d 73 20 64 65 66 69 p.over.the.list.of.programs.defi
2860 6e 65 64 20 69 6e 0a 60 4d 45 58 5f 41 53 53 55 52 45 60 20 76 61 72 69 61 62 6c 65 20 61 6e 64 ned.in.`MEX_ASSURE`.variable.and
2880 20 69 6e 20 63 61 73 65 20 6f 6e 65 20 69 73 20 6d 69 73 73 69 6e 67 20 77 69 6c 6c 20 65 78 69 .in.case.one.is.missing.will.exi
28a0 74 20 60 6d 61 6b 65 60 20 77 69 74 68 0a 65 72 72 6f 72 20 73 74 61 74 75 73 20 63 6f 64 65 20 t.`make`.with.error.status.code.
28c0 31 2e 20 54 68 69 73 20 77 69 6c 6c 20 73 74 6f 70 20 65 78 65 63 75 74 69 6e 67 20 74 68 65 20 1..This.will.stop.executing.the.
28e0 72 65 63 69 70 65 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 0a 6e 6f 74 20 65 78 65 63 75 74 65 recipe.and.therefore.not.execute
2900 20 61 6e 79 74 68 69 6e 67 20 69 6e 20 74 61 72 67 65 74 20 60 62 75 69 6c 64 2d 61 70 70 60 2e .anything.in.target.`build-app`.
2920 0a 0a 23 23 20 45 6e 76 69 72 6f 6e 6d 65 6e 74 20 65 78 74 65 6e 73 69 6f 6e 0a 0a 54 68 69 73 ..##.Environment.extension..This
2940 20 65 78 74 65 6e 73 69 6f 6e 20 68 65 6c 70 73 20 6c 6f 61 64 69 6e 67 20 6f 66 20 61 64 64 69 .extension.helps.loading.of.addi
2960 74 69 6f 6e 61 6c 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 61 6c 20 66 69 6c 65 73 20 69 6e 20 79 6f tional.environmental.files.in.yo
2980 75 72 0a 70 72 6f 6a 65 63 74 2e 20 54 68 65 20 66 69 6c 65 73 20 73 68 6f 75 6c 64 20 68 61 76 ur.project..The.files.should.hav
29a0 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 61 6c 20 76 61 72 69 61 62 6c 65 73 20 64 65 66 69 6e 65 e.environmental.variables.define
29c0 64 20 69 6e 20 74 68 65 0a 75 73 75 61 6c 20 77 61 79 2e 20 53 65 70 61 72 61 74 65 20 65 61 63 d.in.the.usual.way..Separate.eac
29e0 68 20 66 69 6c 65 20 62 79 20 61 20 73 70 61 63 65 20 61 6e 64 20 74 68 61 74 20 69 73 20 61 62 h.file.by.a.space.and.that.is.ab
2a00 6f 75 74 20 69 74 2e 0a 0a 49 66 20 61 20 66 69 6c 65 20 69 73 20 6d 69 73 73 69 6e 67 20 74 68 out.it...If.a.file.is.missing.th
2a20 69 73 20 77 69 6c 6c 20 62 72 65 61 6b 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 6d is.will.break.the.execution.of.m
2a40 61 6b 65 20 61 6e 64 20 65 78 69 74 20 77 69 74 68 0a 73 74 61 74 75 73 20 63 6f 64 65 20 31 2e ake.and.exit.with.status.code.1.
2a60 0a 0a 60 60 60 65 6e 76 0a 41 50 49 5f 4b 45 59 3d 61 62 63 31 32 33 0a 53 45 43 52 45 54 5f 4b ..```env.API_KEY=abc123.SECRET_K
2a80 45 59 3d 64 65 66 34 35 36 0a 60 60 60 0a 0a 42 79 20 64 65 66 69 6e 69 6e 67 20 60 4d 45 58 5f EY=def456.```..By.defining.`MEX_
2aa0 45 4e 56 49 52 4f 4e 4d 45 4e 54 60 20 76 61 72 69 61 62 6c 65 20 79 6f 75 20 63 61 6e 20 70 72 ENVIRONMENT`.variable.you.can.pr
2ac0 6f 76 69 64 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 66 69 6c 65 73 0a 61 6e 64 20 74 68 65 79 20 ovide.additional.files.and.they.
2ae0 77 69 6c 6c 20 62 65 20 6c 6f 61 64 65 64 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 2e 0a 0a 60 will.be.loaded.automatically...`
2b00 60 60 6d 61 6b 65 0a 4d 45 58 5f 45 4e 56 49 52 4f 4e 4d 45 4e 54 3d 22 6c 6f 63 61 6c 2e 65 6e ``make.MEX_ENVIRONMENT="local.en
2b20 76 20 73 65 63 6f 6e 64 2e 65 6e 76 22 0a 0a 69 6e 63 6c 75 64 65 20 6d 61 6b 65 78 74 2e 6d 6b v.second.env"..include.makext.mk
2b40 0a 0a 64 65 6d 6f 2d 65 6e 76 61 72 73 3a 0a 09 40 65 63 68 6f 20 22 45 6e 76 69 72 6f 6e 6d 65 ..demo-envars:..@echo."Environme
2b60 6e 74 20 76 61 72 69 61 62 6c 65 73 22 0a 09 40 65 63 68 6f 20 22 20 20 48 4f 4d 45 3a 20 24 28 nt.variables"..@echo."..HOME:.$(
2b80 48 4f 4d 45 29 22 0a 09 40 65 63 68 6f 20 22 20 20 54 45 52 4d 3a 20 24 28 54 45 52 4d 29 22 0a HOME)"..@echo."..TERM:.$(TERM)".
2ba0 09 40 65 63 68 6f 20 22 20 20 45 4e 56 3a 20 24 28 4d 45 58 5f 45 4e 56 49 52 4f 4e 4d 45 4e 54 .@echo."..ENV:.$(MEX_ENVIRONMENT
2bc0 29 22 0a 09 40 65 63 68 6f 20 22 20 20 41 55 44 49 4f 5f 42 55 43 4b 45 54 3a 20 24 28 41 55 44 )"..@echo."..AUDIO_BUCKET:.$(AUD
2be0 49 4f 5f 42 55 43 4b 45 54 29 22 0a 09 40 65 63 68 6f 20 22 20 20 44 42 5f 48 4f 53 54 3a 20 24 IO_BUCKET)"..@echo."..DB_HOST:.$
2c00 28 44 42 5f 48 4f 53 54 29 22 0a 60 60 60 0a 0a 41 66 74 65 72 20 74 68 61 74 20 74 68 65 79 20 (DB_HOST)".```..After.that.they.
2c20 63 61 6e 20 62 65 20 75 73 65 64 20 69 6e 20 79 6f 75 72 20 72 65 63 69 70 65 73 20 6c 69 6b 65 can.be.used.in.your.recipes.like
2c40 20 61 6c 6c 20 74 68 65 20 6f 74 68 65 72 20 76 61 72 69 61 62 6c 65 73 0a 79 6f 75 20 68 61 76 .all.the.other.variables.you.hav
2c60 65 2e 20 54 68 65 79 20 77 69 6c 6c 20 68 6f 77 65 76 65 72 20 6f 76 65 72 72 69 64 65 20 76 61 e..They.will.however.override.va
2c80 72 69 61 62 6c 65 73 20 74 68 65 20 73 68 65 6c 6c 20 61 6c 72 65 61 64 79 20 68 61 73 0a 64 65 riables.the.shell.already.has.de
2ca0 66 69 6e 65 64 2e 0a 0a 23 23 20 41 6c 74 65 72 6e 61 74 69 76 65 20 74 6f 6f 6c 73 0a 0a 2d 20 fined...##.Alternative.tools..-.
2cc0 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 72 6f 63 6b 79 2f 72 65 6d 61 6b 65 0a https://github.com/rocky/remake.
2ce0 2d 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 63 61 73 65 79 2f 6a 75 73 74 0a -.https://github.com/casey/just.
2d00 2d 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 78 6f 6e 69 78 78 2f 6d 61 6b 65 -.https://github.com/xonixx/make
2d20 73 75 72 65 0a 2d 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 72 75 62 79 2f 72 sure.-.https://github.com/ruby/r
2d40 61 6b 65 0a 2d 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 61 73 6b 63 74 6c ake.-.https://github.com/taskctl
2d60 2f 74 61 73 6b 63 74 6c 0a 2d 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 67 6f /taskctl.-.https://github.com/go
2d80 2d 74 61 73 6b 2f 74 61 73 6b 0a 2d 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f -task/task.-.https://github.com/
2da0 70 79 64 6f 69 74 2f 64 6f 69 74 0a 0a 23 23 20 41 63 6b 6e 6f 77 6c 65 64 67 6d 65 6e 74 0a 0a pydoit/doit..##.Acknowledgment..
2dc0 2d 20 68 74 74 70 73 3a 2f 2f 73 74 61 63 6b 6f 76 65 72 66 6c 6f 77 2e 63 6f 6d 2f 61 2f 35 39 -.https://stackoverflow.com/a/59
2de0 30 38 37 35 30 39 0a 0a 23 23 20 4c 69 63 65 6e 73 65 0a 0a 5b 6d 61 6b 65 78 74 5d 28 68 74 74 087509..##.License..[makext](htt
2e00 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6d 69 74 6a 61 66 65 6c 69 63 69 6a 61 6e 2f 6d ps://github.com/mitjafelicijan/m
2e20 61 6b 65 78 74 29 20 77 61 73 20 77 72 69 74 74 65 6e 20 62 79 20 5b 4d 69 74 6a 61 0a 46 65 6c akext).was.written.by.[Mitja.Fel
2e40 69 63 69 6a 61 6e 5d 28 68 74 74 70 73 3a 2f 2f 6d 69 74 6a 61 66 65 6c 69 63 69 6a 61 6e 2e 63 icijan](https://mitjafelicijan.c
2e60 6f 6d 29 20 61 6e 64 20 69 73 20 72 65 6c 65 61 73 65 64 20 75 6e 64 65 72 20 74 68 65 20 42 53 om).and.is.released.under.the.BS
2e80 44 0a 74 77 6f 2d 63 6c 61 75 73 65 20 6c 69 63 65 6e 73 65 2c 20 73 65 65 20 74 68 65 20 4c 49 D.two-clause.license,.see.the.LI
2ea0 43 45 4e 53 45 20 66 69 6c 65 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e CENSE.file.for.more.information.
2ec0 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 ................................
2ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3000 2e 2f 6c 6f 63 61 6c 2e 65 6e 76 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ./local.env.....................
3020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3060 00 00 00 00 31 30 30 36 34 34 20 00 20 20 31 37 35 30 20 00 20 20 31 37 35 30 20 00 20 20 20 20 ....100644....1750....1750......
3080 20 20 20 20 33 31 33 20 31 34 37 30 36 35 30 32 35 32 35 20 20 31 30 30 31 35 20 00 30 00 00 00 ....313.14706502525..10015..0...
30a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
30c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
30e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3100 00 75 73 74 61 72 20 20 00 6d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...m......................
3120 00 00 00 00 00 00 00 00 00 6d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........m......................
3140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3200 23 20 44 61 74 61 62 61 73 65 20 73 65 74 74 69 6e 67 73 0a 44 42 5f 48 4f 53 54 3d 6c 6f 63 61 #.Database.settings.DB_HOST=loca
3220 6c 68 6f 73 74 0a 44 42 5f 50 4f 52 54 3d 35 34 33 32 0a 44 42 5f 4e 41 4d 45 3d 6d 79 64 61 74 lhost.DB_PORT=5432.DB_NAME=mydat
3240 61 62 61 73 65 0a 44 42 5f 55 53 45 52 3d 6d 79 75 73 65 72 0a 44 42 5f 50 41 53 53 57 4f 52 44 abase.DB_USER=myuser.DB_PASSWORD
3260 3d 6d 79 70 61 73 73 77 6f 72 64 0a 0a 23 20 41 50 49 20 6b 65 79 73 0a 41 50 49 5f 4b 45 59 3d =mypassword..#.API.keys.API_KEY=
3280 61 62 63 31 32 33 0a 53 45 43 52 45 54 5f 4b 45 59 3d 64 65 66 34 35 36 0a 0a 23 20 4f 74 68 65 abc123.SECRET_KEY=def456..#.Othe
32a0 72 20 73 65 74 74 69 6e 67 73 0a 44 45 42 55 47 5f 4d 4f 44 45 3d 74 72 75 65 0a 4c 4f 47 5f 4c r.settings.DEBUG_MODE=true.LOG_L
32c0 45 56 45 4c 3d 69 6e 66 6f 22 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 EVEL=info"......................
32e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3400 2e 2f 6d 61 6b 65 78 74 2e 6d 6b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ./makext.mk.....................
3420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3460 00 00 00 00 31 30 30 36 34 34 20 00 20 20 31 37 35 30 20 00 20 20 31 37 35 30 20 00 20 20 20 20 ....100644....1750....1750......
3480 20 20 20 33 32 34 34 20 31 34 37 30 36 35 30 32 35 32 35 20 20 31 30 30 36 31 20 00 30 00 00 00 ...3244.14706502525..10061..0...
34a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
34c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
34e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3500 00 75 73 74 61 72 20 20 00 6d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...m......................
3520 00 00 00 00 00 00 00 00 00 6d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........m......................
3540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3600 23 20 4d 61 6b 65 78 74 20 69 73 20 61 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 6f 66 20 75 73 65 66 #.Makext.is.a.collection.of.usef
3620 75 6c 20 65 78 74 65 6e 73 69 6f 6e 73 20 66 6f 72 20 4d 61 6b 65 66 69 6c 65 73 2c 20 61 69 6d ul.extensions.for.Makefiles,.aim
3640 65 64 20 61 74 0a 23 20 73 69 6d 70 6c 69 66 79 69 6e 67 20 61 6e 64 20 65 6e 68 61 6e 63 69 6e ed.at.#.simplifying.and.enhancin
3660 67 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 20 6f 66 20 4d 61 6b 65 2d 62 61 73 65 g.the.functionality.of.Make-base
3680 64 20 70 72 6f 6a 65 63 74 73 2e 20 54 68 65 73 65 0a 23 20 65 78 74 65 6e 73 69 6f 6e 73 20 70 d.projects..These.#.extensions.p
36a0 72 6f 76 69 64 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 66 65 61 74 75 72 65 73 20 61 6e 64 20 63 rovide.additional.features.and.c
36c0 6f 6e 76 65 6e 69 65 6e 63 65 20 66 75 6e 63 74 69 6f 6e 73 20 74 6f 0a 23 20 69 6d 70 72 6f 76 onvenience.functions.to.#.improv
36e0 65 20 74 68 65 20 62 75 69 6c 64 20 70 72 6f 63 65 73 73 2c 20 6d 61 6e 61 67 65 20 64 65 70 65 e.the.build.process,.manage.depe
3700 6e 64 65 6e 63 69 65 73 2c 20 61 6e 64 20 73 74 72 65 61 6d 6c 69 6e 65 20 63 6f 6d 6d 6f 6e 0a ndencies,.and.streamline.common.
3720 23 20 74 61 73 6b 73 2e 0a 23 0a 23 20 56 69 73 69 74 20 74 68 65 20 47 69 74 48 75 62 20 72 65 #.tasks..#.#.Visit.the.GitHub.re
3740 70 6f 73 69 74 6f 72 79 20 61 74 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6d pository.at.https://github.com/m
3760 69 74 6a 61 66 65 6c 69 63 69 6a 61 6e 2f 6d 61 6b 65 78 74 0a 23 20 74 6f 20 6c 65 61 72 6e 20 itjafelicijan/makext.#.to.learn.
3780 6d 6f 72 65 20 61 6e 64 20 63 6f 6e 74 72 69 62 75 74 65 20 74 6f 20 74 68 65 20 70 72 6f 6a 65 more.and.contribute.to.the.proje
37a0 63 74 2e 0a 23 0a 23 20 60 6d 61 6b 65 78 74 60 20 77 61 73 20 77 72 69 74 74 65 6e 20 62 79 20 ct..#.#.`makext`.was.written.by.
37c0 4d 69 74 6a 61 20 46 65 6c 69 63 69 6a 61 6e 20 61 6e 64 20 69 73 20 72 65 6c 65 61 73 65 64 20 Mitja.Felicijan.and.is.released.
37e0 75 6e 64 65 72 20 74 68 65 20 42 53 44 0a 23 20 74 77 6f 2d 63 6c 61 75 73 65 20 6c 69 63 65 6e under.the.BSD.#.two-clause.licen
3800 73 65 2c 20 73 65 65 20 74 68 65 20 4c 49 43 45 4e 53 45 20 66 69 6c 65 20 66 6f 72 20 6d 6f 72 se,.see.the.LICENSE.file.for.mor
3820 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 0a 0a 23 20 4c 6f 61 64 20 65 6e 76 69 72 6f 6e 6d 65 e.information...#.Load.environme
3840 6e 74 61 6c 20 66 69 6c 65 73 20 66 72 6f 6d 20 60 4d 45 58 5f 45 4e 56 49 52 4f 4e 4d 45 4e 54 ntal.files.from.`MEX_ENVIRONMENT
3860 60 2e 20 42 79 20 64 65 66 61 75 6c 74 20 47 4e 55 20 6d 61 6b 65 0a 23 20 6c 6f 61 64 73 20 77 `..By.default.GNU.make.#.loads.w
3880 68 61 74 20 69 73 20 61 6c 72 65 61 64 79 20 69 6e 20 60 65 6e 76 60 2e 20 54 68 69 73 20 65 78 hat.is.already.in.`env`..This.ex
38a0 74 65 6e 64 73 20 69 74 20 74 6f 20 6f 74 68 65 72 20 66 69 6c 65 73 2e 0a 69 66 64 65 66 20 4d tends.it.to.other.files..ifdef.M
38c0 45 58 5f 45 4e 56 49 52 4f 4e 4d 45 4e 54 0a 54 45 4d 50 5f 45 4e 56 5f 46 49 4c 45 53 3d 24 28 EX_ENVIRONMENT.TEMP_ENV_FILES=$(
38e0 73 68 65 6c 6c 20 65 63 68 6f 20 24 28 4d 45 58 5f 45 4e 56 49 52 4f 4e 4d 45 4e 54 29 20 7c 20 shell.echo.$(MEX_ENVIRONMENT).|.
3900 74 72 20 27 2c 27 20 27 20 27 29 0a 24 28 66 6f 72 65 61 63 68 20 66 69 6c 65 2c 24 28 54 45 4d tr.','.'.').$(foreach.file,$(TEM
3920 50 5f 45 4e 56 5f 46 49 4c 45 53 29 2c 24 28 65 76 61 6c 20 69 6e 63 6c 75 64 65 20 24 28 66 69 P_ENV_FILES),$(eval.include.$(fi
3940 6c 65 29 29 29 0a 65 6e 64 69 66 0a 0a 23 20 48 65 6c 70 20 65 78 74 65 6e 73 69 6f 6e 20 74 68 le))).endif..#.Help.extension.th
3960 61 74 20 6c 69 73 74 73 20 61 6c 6c 20 74 68 65 20 74 61 72 67 65 74 73 20 77 69 74 68 20 64 65 at.lists.all.the.targets.with.de
3980 73 63 72 69 70 74 69 6f 6e 73 0a 23 20 61 6e 64 20 61 64 64 73 20 64 65 73 63 72 69 70 74 69 6f scriptions.#.and.adds.descriptio
39a0 6e 20 61 6e 64 20 6c 69 63 65 6e 73 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 66 20 64 61 74 n.and.license.information.if.dat
39c0 61 20 70 72 6f 76 69 64 65 64 2e 0a 2e 50 48 4f 4e 59 3a 20 2e 68 65 6c 70 0a 2e 68 65 6c 70 3a a.provided...PHONY:..help..help:
39e0 0a 69 66 64 65 66 20 4d 45 58 5f 44 45 53 43 52 49 50 54 49 4f 4e 0a 09 40 70 72 69 6e 74 66 20 .ifdef.MEX_DESCRIPTION..@printf.
3a00 22 25 73 5c 6e 5c 6e 22 20 24 28 4d 45 58 5f 44 45 53 43 52 49 50 54 49 4f 4e 29 20 7c 20 66 6d "%s\n\n".$(MEX_DESCRIPTION).|.fm
3a20 74 0a 65 6e 64 69 66 0a 09 40 65 63 68 6f 20 22 54 61 72 67 65 74 73 3a 22 0a 09 40 67 72 65 70 t.endif..@echo."Targets:"..@grep
3a40 20 2d 76 45 20 27 5e 5b 5b 3a 73 70 61 63 65 3a 5d 5d 27 20 24 28 4d 41 4b 45 46 49 4c 45 5f 4c .-vE.'^[[:space:]]'.$(MAKEFILE_L
3a60 49 53 54 29 20 7c 20 67 72 65 70 20 2d 45 20 27 5e 2e 2a 3a 2e 2a 20 23 27 20 7c 20 73 65 64 20 IST).|.grep.-E.'^.*:.*.#'.|.sed.
3a80 2d 45 20 27 73 2f 28 2e 2a 29 3a 28 2e 2a 29 3a 2e 2a 23 28 2e 2a 29 2f 20 20 5c 32 23 23 23 5c -E.'s/(.*):(.*):.*#(.*)/..\2###\
3aa0 33 2f 27 20 7c 20 63 6f 6c 75 6d 6e 20 2d 74 20 2d 73 20 27 23 23 23 27 0a 69 66 64 65 66 20 4d 3/'.|.column.-t.-s.'###'.ifdef.M
3ac0 45 58 5f 4c 49 43 45 4e 53 45 0a 09 40 70 72 69 6e 74 66 20 22 5c 6e 25 73 22 20 24 28 4d 45 58 EX_LICENSE..@printf."\n%s".$(MEX
3ae0 5f 4c 49 43 45 4e 53 45 29 20 7c 20 66 6d 74 0a 65 6e 64 69 66 0a 0a 23 20 43 68 65 63 6b 73 20 _LICENSE).|.fmt.endif..#.Checks.
3b00 60 4d 45 58 5f 41 53 53 55 52 45 60 20 76 61 72 69 61 62 6c 65 20 69 66 20 61 6c 6c 20 74 68 65 `MEX_ASSURE`.variable.if.all.the
3b20 20 70 72 6f 67 72 61 6d 73 20 64 65 63 6c 61 72 65 64 20 61 63 74 75 61 6c 6c 79 0a 23 20 65 78 .programs.declared.actually.#.ex
3b40 69 73 74 20 6f 6e 20 61 20 6d 61 63 68 69 6e 65 2e 20 49 66 20 6e 6f 74 20 74 68 69 73 20 65 78 ist.on.a.machine..If.not.this.ex
3b60 69 73 74 73 20 6d 61 6b 65 20 77 69 74 68 20 65 72 72 6f 72 2e 0a 2e 50 48 4f 4e 59 3a 20 2e 61 ists.make.with.error...PHONY:..a
3b80 73 73 75 72 65 0a 2e 61 73 73 75 72 65 3a 0a 69 66 6e 64 65 66 20 4d 45 58 5f 41 53 53 55 52 45 ssure..assure:.ifndef.MEX_ASSURE
3ba0 0a 09 40 70 72 69 6e 74 66 20 22 56 61 72 69 61 62 6c 65 20 4d 45 58 5f 41 53 53 55 52 45 20 69 ..@printf."Variable.MEX_ASSURE.i
3bc0 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2e 20 43 61 6e 20 6e 6f 74 20 63 68 65 63 6b 20 66 6f 72 s.not.defined..Can.not.check.for
3be0 20 70 72 6f 67 72 61 6d 73 2e 5c 6e 22 0a 65 6c 73 65 0a 09 40 66 6f 72 20 70 72 6f 67 20 69 6e .programs.\n".else..@for.prog.in
3c00 20 24 28 73 68 65 6c 6c 20 65 63 68 6f 20 24 28 4d 45 58 5f 41 53 53 55 52 45 29 29 3b 20 64 6f .$(shell.echo.$(MEX_ASSURE));.do
3c20 20 5c 0a 09 09 69 66 20 21 20 77 68 69 63 68 20 24 24 70 72 6f 67 20 3e 20 2f 64 65 76 2f 6e 75 .\...if.!.which.$$prog.>./dev/nu
3c40 6c 6c 3b 20 74 68 65 6e 20 5c 0a 09 09 09 65 63 68 6f 20 22 45 72 72 6f 72 3a 20 27 24 24 70 72 ll;.then.\....echo."Error:.'$$pr
3c60 6f 67 27 20 6e 6f 74 20 66 6f 75 6e 64 20 6f 6e 20 74 68 69 73 20 6d 61 63 68 69 6e 65 2e 22 3b og'.not.found.on.this.machine.";
3c80 20 5c 0a 09 09 09 65 78 69 74 20 31 3b 20 5c 0a 09 09 66 69 3b 20 5c 0a 09 64 6f 6e 65 0a 65 6e .\....exit.1;.\...fi;.\..done.en
3ca0 64 69 66 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 dif.............................
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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 2e 2f 73 65 63 6f 6e 64 2e 65 6e 76 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ./second.env....................
3e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e60 00 00 00 00 31 30 30 36 34 34 20 00 20 20 31 37 35 30 20 00 20 20 31 37 35 30 20 00 20 20 20 20 ....100644....1750....1750......
3e80 20 20 20 20 32 31 33 20 31 34 37 30 36 35 30 32 35 32 35 20 20 31 30 31 37 35 20 00 30 00 00 00 ....213.14706502525..10175..0...
3ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f00 00 75 73 74 61 72 20 20 00 6d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...m......................
3f20 00 00 00 00 00 00 00 00 00 6d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........m......................
3f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4000 23 20 41 75 64 69 6f 20 73 74 6f 72 61 67 65 20 73 65 74 74 69 6e 67 73 0a 41 55 44 49 4f 5f 42 #.Audio.storage.settings.AUDIO_B
4020 55 43 4b 45 54 3d 6d 79 5f 61 75 64 69 6f 5f 62 75 63 6b 65 74 0a 41 55 44 49 4f 5f 41 43 43 45 UCKET=my_audio_bucket.AUDIO_ACCE
4040 53 53 5f 4b 45 59 3d 6d 79 5f 61 63 63 65 73 73 5f 6b 65 79 0a 41 55 44 49 4f 5f 53 45 43 52 45 SS_KEY=my_access_key.AUDIO_SECRE
4060 54 5f 4b 45 59 3d 6d 79 5f 73 65 63 72 65 74 5f 6b 65 79 0a 41 55 44 49 4f 5f 52 45 47 49 4f 4e T_KEY=my_secret_key.AUDIO_REGION
4080 3d 75 73 2d 77 65 73 74 2d 31 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 =us-west-1......................
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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
44a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
44c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
44e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
45a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
45c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
45e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................