System.Data.SQLite
Hex Artifact Content
Not logged in

Artifact c1487e5de279b824701d9d259502649cf1120bb7:


0000: 40 45 43 48 4f 20 4f 46 46 0d 0a 0d 0a 3a 3a 0d  @ECHO OFF....::.
0010: 0a 3a 3a 20 72 65 6c 65 61 73 65 2e 62 61 74 20  .:: release.bat 
0020: 2d 2d 0d 0a 3a 3a 0d 0a 3a 3a 20 42 69 6e 61 72  --..::..:: Binar
0030: 79 20 52 65 6c 65 61 73 65 20 54 6f 6f 6c 0d 0a  y Release Tool..
0040: 3a 3a 0d 0a 3a 3a 20 57 72 69 74 74 65 6e 20 62  ::..:: Written b
0050: 79 20 4a 6f 65 20 4d 69 73 74 61 63 68 6b 69 6e  y Joe Mistachkin
0060: 2e 0d 0a 3a 3a 20 52 65 6c 65 61 73 65 64 20 74  ...:: Released t
0070: 6f 20 74 68 65 20 70 75 62 6c 69 63 20 64 6f 6d  o the public dom
0080: 61 69 6e 2c 20 75 73 65 20 61 74 20 79 6f 75 72  ain, use at your
0090: 20 6f 77 6e 20 72 69 73 6b 21 0d 0a 3a 3a 0d 0a   own risk!..::..
00a0: 0d 0a 53 45 54 4c 4f 43 41 4c 0d 0a 0d 0a 52 45  ..SETLOCAL....RE
00b0: 4d 20 53 45 54 20 5f 5f 45 43 48 4f 3d 45 43 48  M SET __ECHO=ECH
00c0: 4f 0d 0a 52 45 4d 20 53 45 54 20 5f 5f 45 43 48  O..REM SET __ECH
00d0: 4f 32 3d 45 43 48 4f 0d 0a 52 45 4d 20 53 45 54  O2=ECHO..REM SET
00e0: 20 5f 5f 45 43 48 4f 33 3d 45 43 48 4f 0d 0a 49   __ECHO3=ECHO..I
00f0: 46 20 4e 4f 54 20 44 45 46 49 4e 45 44 20 5f 41  F NOT DEFINED _A
0100: 45 43 48 4f 20 28 53 45 54 20 5f 41 45 43 48 4f  ECHO (SET _AECHO
0110: 3d 52 45 4d 29 0d 0a 49 46 20 4e 4f 54 20 44 45  =REM)..IF NOT DE
0120: 46 49 4e 45 44 20 5f 43 45 43 48 4f 20 28 53 45  FINED _CECHO (SE
0130: 54 20 5f 43 45 43 48 4f 3d 52 45 4d 29 0d 0a 49  T _CECHO=REM)..I
0140: 46 20 4e 4f 54 20 44 45 46 49 4e 45 44 20 5f 56  F NOT DEFINED _V
0150: 45 43 48 4f 20 28 53 45 54 20 5f 56 45 43 48 4f  ECHO (SET _VECHO
0160: 3d 52 45 4d 29 0d 0a 0d 0a 25 5f 41 45 43 48 4f  =REM)....%_AECHO
0170: 25 20 52 75 6e 6e 69 6e 67 20 25 30 20 25 2a 0d  % Running %0 %*.
0180: 0a 0d 0a 53 45 54 20 44 55 4d 4d 59 32 3d 25 34  ...SET DUMMY2=%4
0190: 0d 0a 0d 0a 49 46 20 44 45 46 49 4e 45 44 20 44  ....IF DEFINED D
01a0: 55 4d 4d 59 32 20 28 0d 0a 20 20 47 4f 54 4f 20  UMMY2 (..  GOTO 
01b0: 75 73 61 67 65 0d 0a 29 0d 0a 0d 0a 53 45 54 20  usage..)....SET 
01c0: 54 4f 4f 4c 53 3d 25 7e 64 70 30 0d 0a 53 45 54  TOOLS=%~dp0..SET
01d0: 20 54 4f 4f 4c 53 3d 25 54 4f 4f 4c 53 3a 7e 30   TOOLS=%TOOLS:~0
01e0: 2c 2d 31 25 0d 0a 0d 0a 25 5f 56 45 43 48 4f 25  ,-1%....%_VECHO%
01f0: 20 54 6f 6f 6c 73 20 3d 20 27 25 54 4f 4f 4c 53   Tools = '%TOOLS
0200: 25 27 0d 0a 0d 0a 53 45 54 20 43 4f 4e 46 49 47  %'....SET CONFIG
0210: 55 52 41 54 49 4f 4e 3d 25 31 0d 0a 0d 0a 49 46  URATION=%1....IF
0220: 20 44 45 46 49 4e 45 44 20 43 4f 4e 46 49 47 55   DEFINED CONFIGU
0230: 52 41 54 49 4f 4e 20 28 0d 0a 20 20 43 41 4c 4c  RATION (..  CALL
0240: 20 3a 66 6e 5f 55 6e 71 75 6f 74 65 56 61 72 69   :fn_UnquoteVari
0250: 61 62 6c 65 20 43 4f 4e 46 49 47 55 52 41 54 49  able CONFIGURATI
0260: 4f 4e 0d 0a 29 20 45 4c 53 45 20 28 0d 0a 20 20  ON..) ELSE (..  
0270: 25 5f 41 45 43 48 4f 25 20 4e 6f 20 63 6f 6e 66  %_AECHO% No conf
0280: 69 67 75 72 61 74 69 6f 6e 20 73 70 65 63 69 66  iguration specif
0290: 69 65 64 2c 20 75 73 69 6e 67 20 64 65 66 61 75  ied, using defau
02a0: 6c 74 2e 2e 2e 0d 0a 20 20 53 45 54 20 43 4f 4e  lt.....  SET CON
02b0: 46 49 47 55 52 41 54 49 4f 4e 3d 52 65 6c 65 61  FIGURATION=Relea
02c0: 73 65 0d 0a 29 0d 0a 0d 0a 25 5f 56 45 43 48 4f  se..)....%_VECHO
02d0: 25 20 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20  % Configuration 
02e0: 3d 20 27 25 43 4f 4e 46 49 47 55 52 41 54 49 4f  = '%CONFIGURATIO
02f0: 4e 25 27 0d 0a 25 5f 56 45 43 48 4f 25 20 43 6f  N%'..%_VECHO% Co
0300: 6e 66 69 67 75 72 61 74 69 6f 6e 53 75 66 66 69  nfigurationSuffi
0310: 78 20 3d 20 27 25 43 4f 4e 46 49 47 55 52 41 54  x = '%CONFIGURAT
0320: 49 4f 4e 53 55 46 46 49 58 25 27 0d 0a 0d 0a 53  IONSUFFIX%'....S
0330: 45 54 20 50 4c 41 54 46 4f 52 4d 3d 25 32 0d 0a  ET PLATFORM=%2..
0340: 0d 0a 49 46 20 44 45 46 49 4e 45 44 20 50 4c 41  ..IF DEFINED PLA
0350: 54 46 4f 52 4d 20 28 0d 0a 20 20 43 41 4c 4c 20  TFORM (..  CALL 
0360: 3a 66 6e 5f 55 6e 71 75 6f 74 65 56 61 72 69 61  :fn_UnquoteVaria
0370: 62 6c 65 20 50 4c 41 54 46 4f 52 4d 0d 0a 29 20  ble PLATFORM..) 
0380: 45 4c 53 45 20 28 0d 0a 20 20 25 5f 41 45 43 48  ELSE (..  %_AECH
0390: 4f 25 20 4e 6f 20 70 6c 61 74 66 6f 72 6d 20 73  O% No platform s
03a0: 70 65 63 69 66 69 65 64 2c 20 75 73 69 6e 67 20  pecified, using 
03b0: 64 65 66 61 75 6c 74 2e 2e 2e 0d 0a 20 20 53 45  default.....  SE
03c0: 54 20 50 4c 41 54 46 4f 52 4d 3d 57 69 6e 33 32  T PLATFORM=Win32
03d0: 0d 0a 29 0d 0a 0d 0a 25 5f 56 45 43 48 4f 25 20  ..)....%_VECHO% 
03e0: 50 6c 61 74 66 6f 72 6d 20 3d 20 27 25 50 4c 41  Platform = '%PLA
03f0: 54 46 4f 52 4d 25 27 0d 0a 0d 0a 53 45 54 20 59  TFORM%'....SET Y
0400: 45 41 52 3d 25 33 0d 0a 0d 0a 49 46 20 44 45 46  EAR=%3....IF DEF
0410: 49 4e 45 44 20 59 45 41 52 20 28 0d 0a 20 20 43  INED YEAR (..  C
0420: 41 4c 4c 20 3a 66 6e 5f 55 6e 71 75 6f 74 65 56  ALL :fn_UnquoteV
0430: 61 72 69 61 62 6c 65 20 59 45 41 52 0d 0a 29 20  ariable YEAR..) 
0440: 45 4c 53 45 20 28 0d 0a 20 20 25 5f 41 45 43 48  ELSE (..  %_AECH
0450: 4f 25 20 4e 6f 20 79 65 61 72 20 73 70 65 63 69  O% No year speci
0460: 66 69 65 64 2c 20 75 73 69 6e 67 20 64 65 66 61  fied, using defa
0470: 75 6c 74 2e 2e 2e 0d 0a 20 20 53 45 54 20 59 45  ult.....  SET YE
0480: 41 52 3d 32 30 30 38 0d 0a 29 0d 0a 0d 0a 25 5f  AR=2008..)....%_
0490: 56 45 43 48 4f 25 20 59 65 61 72 20 3d 20 27 25  VECHO% Year = '%
04a0: 59 45 41 52 25 27 0d 0a 0d 0a 53 45 54 20 42 41  YEAR%'....SET BA
04b0: 53 45 5f 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e  SE_CONFIGURATION
04c0: 3d 25 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 25  =%CONFIGURATION%
04d0: 0d 0a 53 45 54 20 42 41 53 45 5f 43 4f 4e 46 49  ..SET BASE_CONFI
04e0: 47 55 52 41 54 49 4f 4e 3d 25 42 41 53 45 5f 43  GURATION=%BASE_C
04f0: 4f 4e 46 49 47 55 52 41 54 49 4f 4e 3a 4d 61 6e  ONFIGURATION:Man
0500: 61 67 65 64 4f 6e 6c 79 3d 25 0d 0a 53 45 54 20  agedOnly=%..SET 
0510: 42 41 53 45 5f 43 4f 4e 46 49 47 55 52 41 54 49  BASE_CONFIGURATI
0520: 4f 4e 3d 25 42 41 53 45 5f 43 4f 4e 46 49 47 55  ON=%BASE_CONFIGU
0530: 52 41 54 49 4f 4e 3a 4e 61 74 69 76 65 4f 6e 6c  RATION:NativeOnl
0540: 79 3d 25 0d 0a 53 45 54 20 42 41 53 45 5f 43 4f  y=%..SET BASE_CO
0550: 4e 46 49 47 55 52 41 54 49 4f 4e 3d 25 42 41 53  NFIGURATION=%BAS
0560: 45 5f 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 3a  E_CONFIGURATION:
0570: 53 74 61 74 69 63 3d 25 0d 0a 0d 0a 25 5f 56 45  Static=%....%_VE
0580: 43 48 4f 25 20 42 61 73 65 43 6f 6e 66 69 67 75  CHO% BaseConfigu
0590: 72 61 74 69 6f 6e 20 3d 20 27 25 42 41 53 45 5f  ration = '%BASE_
05a0: 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 25 27 0d  CONFIGURATION%'.
05b0: 0a 25 5f 56 45 43 48 4f 25 20 42 61 73 65 43 6f  .%_VECHO% BaseCo
05c0: 6e 66 69 67 75 72 61 74 69 6f 6e 53 75 66 66 69  nfigurationSuffi
05d0: 78 20 3d 20 27 25 42 41 53 45 5f 43 4f 4e 46 49  x = '%BASE_CONFI
05e0: 47 55 52 41 54 49 4f 4e 53 55 46 46 49 58 25 27  GURATIONSUFFIX%'
05f0: 0d 0a 0d 0a 49 46 20 4e 4f 54 20 44 45 46 49 4e  ....IF NOT DEFIN
0600: 45 44 20 42 41 53 45 5f 50 4c 41 54 46 4f 52 4d  ED BASE_PLATFORM
0610: 20 28 0d 0a 20 20 43 41 4c 4c 20 3a 66 6e 5f 53   (..  CALL :fn_S
0620: 65 74 56 61 72 69 61 62 6c 65 20 42 41 53 45 5f  etVariable BASE_
0630: 50 4c 41 54 46 4f 52 4d 20 50 4c 41 54 46 4f 52  PLATFORM PLATFOR
0640: 4d 0d 0a 29 0d 0a 0d 0a 25 5f 56 45 43 48 4f 25  M..)....%_VECHO%
0650: 20 42 61 73 65 50 6c 61 74 66 6f 72 6d 20 3d 20   BasePlatform = 
0660: 27 25 42 41 53 45 5f 50 4c 41 54 46 4f 52 4d 25  '%BASE_PLATFORM%
0670: 27 0d 0a 25 5f 56 45 43 48 4f 25 20 45 78 74 72  '..%_VECHO% Extr
0680: 61 50 6c 61 74 66 6f 72 6d 20 3d 20 27 25 45 58  aPlatform = '%EX
0690: 54 52 41 5f 50 4c 41 54 46 4f 52 4d 25 27 0d 0a  TRA_PLATFORM%'..
06a0: 0d 0a 49 46 20 4e 4f 54 20 44 45 46 49 4e 45 44  ..IF NOT DEFINED
06b0: 20 54 59 50 45 20 28 0d 0a 20 20 49 46 20 2f 49   TYPE (..  IF /I
06c0: 20 22 25 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e   "%CONFIGURATION
06d0: 25 22 20 3d 3d 20 22 25 42 41 53 45 5f 43 4f 4e  %" == "%BASE_CON
06e0: 46 49 47 55 52 41 54 49 4f 4e 25 22 20 28 0d 0a  FIGURATION%" (..
06f0: 20 20 20 20 53 45 54 20 54 59 50 45 3d 25 54 59      SET TYPE=%TY
0700: 50 45 5f 50 52 45 46 49 58 25 62 69 6e 61 72 79  PE_PREFIX%binary
0710: 2d 62 75 6e 64 6c 65 0d 0a 20 20 29 20 45 4c 53  -bundle..  ) ELS
0720: 45 20 28 0d 0a 20 20 20 20 53 45 54 20 54 59 50  E (..    SET TYP
0730: 45 3d 25 54 59 50 45 5f 50 52 45 46 49 58 25 62  E=%TYPE_PREFIX%b
0740: 69 6e 61 72 79 0d 0a 20 20 29 0d 0a 29 0d 0a 0d  inary..  )..)...
0750: 0a 25 5f 56 45 43 48 4f 25 20 54 79 70 65 20 3d  .%_VECHO% Type =
0760: 20 27 25 54 59 50 45 25 27 0d 0a 0d 0a 43 41 4c   '%TYPE%'....CAL
0770: 4c 20 3a 66 6e 5f 52 65 73 65 74 45 72 72 6f 72  L :fn_ResetError
0780: 4c 65 76 65 6c 0d 0a 0d 0a 25 5f 5f 45 43 48 4f  Level....%__ECHO
0790: 33 25 20 43 41 4c 4c 20 22 25 54 4f 4f 4c 53 25  3% CALL "%TOOLS%
07a0: 5c 73 65 74 5f 63 6f 6d 6d 6f 6e 2e 62 61 74 22  \set_common.bat"
07b0: 0d 0a 0d 0a 49 46 20 45 52 52 4f 52 4c 45 56 45  ....IF ERRORLEVE
07c0: 4c 20 31 20 28 0d 0a 20 20 45 43 48 4f 20 43 6f  L 1 (..  ECHO Co
07d0: 75 6c 64 20 6e 6f 74 20 73 65 74 20 63 6f 6d 6d  uld not set comm
07e0: 6f 6e 20 76 61 72 69 61 62 6c 65 73 2e 0d 0a 20  on variables... 
07f0: 20 47 4f 54 4f 20 65 72 72 6f 72 73 0d 0a 29 0d   GOTO errors..).
0800: 0a 0d 0a 49 46 20 4e 4f 54 20 44 45 46 49 4e 45  ...IF NOT DEFINE
0810: 44 20 46 52 41 4d 45 57 4f 52 4b 20 28 0d 0a 20  D FRAMEWORK (.. 
0820: 20 49 46 20 44 45 46 49 4e 45 44 20 59 45 41 52   IF DEFINED YEAR
0830: 20 28 0d 0a 20 20 20 20 43 41 4c 4c 20 3a 66 6e   (..    CALL :fn
0840: 5f 53 65 74 56 61 72 69 61 62 6c 65 20 46 52 41  _SetVariable FRA
0850: 4d 45 57 4f 52 4b 20 46 52 41 4d 45 57 4f 52 4b  MEWORK FRAMEWORK
0860: 25 59 45 41 52 25 0d 0a 20 20 29 20 45 4c 53 45  %YEAR%..  ) ELSE
0870: 20 28 0d 0a 20 20 20 20 53 45 54 20 46 52 41 4d   (..    SET FRAM
0880: 45 57 4f 52 4b 3d 6e 65 74 46 78 32 30 0d 0a 20  EWORK=netFx20.. 
0890: 20 29 0d 0a 29 0d 0a 0d 0a 25 5f 56 45 43 48 4f   )..)....%_VECHO
08a0: 25 20 46 72 61 6d 65 77 6f 72 6b 20 3d 20 27 25  % Framework = '%
08b0: 46 52 41 4d 45 57 4f 52 4b 25 27 0d 0a 0d 0a 53  FRAMEWORK%'....S
08c0: 45 54 20 52 4f 4f 54 3d 25 7e 64 70 30 5c 2e 2e  ET ROOT=%~dp0\..
08d0: 0d 0a 53 45 54 20 52 4f 4f 54 3d 25 52 4f 4f 54  ..SET ROOT=%ROOT
08e0: 3a 5c 5c 3d 5c 25 0d 0a 0d 0a 53 45 54 20 54 4f  :\\=\%....SET TO
08f0: 4f 4c 53 3d 25 7e 64 70 30 0d 0a 53 45 54 20 54  OLS=%~dp0..SET T
0900: 4f 4f 4c 53 3d 25 54 4f 4f 4c 53 3a 7e 30 2c 2d  OOLS=%TOOLS:~0,-
0910: 31 25 0d 0a 0d 0a 25 5f 56 45 43 48 4f 25 20 52  1%....%_VECHO% R
0920: 6f 6f 74 20 3d 20 27 25 52 4f 4f 54 25 27 0d 0a  oot = '%ROOT%'..
0930: 25 5f 56 45 43 48 4f 25 20 54 6f 6f 6c 73 20 3d  %_VECHO% Tools =
0940: 20 27 25 54 4f 4f 4c 53 25 27 0d 0a 0d 0a 43 41   '%TOOLS%'....CA
0950: 4c 4c 20 3a 66 6e 5f 52 65 73 65 74 45 72 72 6f  LL :fn_ResetErro
0960: 72 4c 65 76 65 6c 0d 0a 0d 0a 25 5f 5f 45 43 48  rLevel....%__ECH
0970: 4f 32 25 20 50 55 53 48 44 20 22 25 52 4f 4f 54  O2% PUSHD "%ROOT
0980: 25 22 0d 0a 0d 0a 49 46 20 45 52 52 4f 52 4c 45  %"....IF ERRORLE
0990: 56 45 4c 20 31 20 28 0d 0a 20 20 45 43 48 4f 20  VEL 1 (..  ECHO 
09a0: 43 6f 75 6c 64 20 6e 6f 74 20 63 68 61 6e 67 65  Could not change
09b0: 20 64 69 72 65 63 74 6f 72 79 20 74 6f 20 22 25   directory to "%
09c0: 52 4f 4f 54 25 22 2e 0d 0a 20 20 47 4f 54 4f 20  ROOT%"...  GOTO 
09d0: 65 72 72 6f 72 73 0d 0a 29 0d 0a 0d 0a 46 4f 52  errors..)....FOR
09e0: 20 2f 46 20 22 64 65 6c 69 6d 73 3d 22 20 25 25   /F "delims=" %%
09f0: 56 20 49 4e 20 28 27 66 69 6e 64 2e 65 78 65 20  V IN ('find.exe 
0a00: 22 41 73 73 65 6d 62 6c 79 56 65 72 73 69 6f 6e  "AssemblyVersion
0a10: 22 20 53 79 73 74 65 6d 2e 44 61 74 61 2e 53 51  " System.Data.SQ
0a20: 4c 69 74 65 5c 41 73 73 65 6d 62 6c 79 49 6e 66  Lite\AssemblyInf
0a30: 6f 2e 63 73 27 29 20 44 4f 20 28 0d 0a 20 20 53  o.cs') DO (..  S
0a40: 45 54 20 56 45 52 53 49 4f 4e 3d 25 25 56 0d 0a  ET VERSION=%%V..
0a50: 29 0d 0a 0d 0a 49 46 20 4e 4f 54 20 44 45 46 49  )....IF NOT DEFI
0a60: 4e 45 44 20 56 45 52 53 49 4f 4e 20 28 0d 0a 20  NED VERSION (.. 
0a70: 20 53 45 54 20 56 45 52 53 49 4f 4e 3d 31 2e 30   SET VERSION=1.0
0a80: 2e 30 2e 30 0d 0a 20 20 47 4f 54 4f 20 73 6b 69  .0.0..  GOTO ski
0a90: 70 5f 6d 75 6e 67 65 56 65 72 73 69 6f 6e 0d 0a  p_mungeVersion..
0aa0: 29 0d 0a 0d 0a 52 45 4d 0d 0a 52 45 4d 20 4e 4f  )....REM..REM NO
0ab0: 54 45 3a 20 53 74 72 69 70 20 6f 66 66 20 61 6c  TE: Strip off al
0ac0: 6c 20 74 68 65 20 65 78 74 72 61 20 73 74 75 66  l the extra stuf
0ad0: 66 20 66 72 6f 6d 20 74 68 65 20 41 73 73 65 6d  f from the Assem
0ae0: 62 6c 79 56 65 72 73 69 6f 6e 20 6c 69 6e 65 20  blyVersion line 
0af0: 77 65 20 66 6f 75 6e 64 0d 0a 52 45 4d 20 20 20  we found..REM   
0b00: 20 20 20 20 69 6e 20 74 68 65 20 41 73 73 65 6d      in the Assem
0b10: 62 6c 79 49 6e 66 6f 2e 63 73 20 66 69 6c 65 20  blyInfo.cs file 
0b20: 74 68 61 74 20 77 65 20 64 6f 20 6e 6f 74 20 6e  that we do not n
0b30: 65 65 64 20 28 69 2e 65 2e 20 65 76 65 72 79 74  eed (i.e. everyt
0b40: 68 69 6e 67 0d 0a 52 45 4d 20 20 20 20 20 20 20  hing..REM       
0b50: 65 78 63 65 70 74 20 74 68 65 20 72 61 77 20 76  except the raw v
0b60: 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 69 74  ersion number it
0b70: 73 65 6c 66 29 2e 0d 0a 52 45 4d 0d 0a 53 45 54  self)...REM..SET
0b80: 20 56 45 52 53 49 4f 4e 3d 25 56 45 52 53 49 4f   VERSION=%VERSIO
0b90: 4e 3a 28 3d 25 0d 0a 53 45 54 20 56 45 52 53 49  N:(=%..SET VERSI
0ba0: 4f 4e 3d 25 56 45 52 53 49 4f 4e 3a 29 3d 25 0d  ON=%VERSION:)=%.
0bb0: 0a 53 45 54 20 56 45 52 53 49 4f 4e 3d 25 56 45  .SET VERSION=%VE
0bc0: 52 53 49 4f 4e 3a 5b 3d 25 0d 0a 53 45 54 20 56  RSION:[=%..SET V
0bd0: 45 52 53 49 4f 4e 3d 25 56 45 52 53 49 4f 4e 3a  ERSION=%VERSION:
0be0: 5d 3d 25 0d 0a 53 45 54 20 56 45 52 53 49 4f 4e  ]=%..SET VERSION
0bf0: 3d 25 56 45 52 53 49 4f 4e 3a 20 3d 25 0d 0a 53  =%VERSION: =%..S
0c00: 45 54 20 56 45 52 53 49 4f 4e 3d 25 56 45 52 53  ET VERSION=%VERS
0c10: 49 4f 4e 3a 61 73 73 65 6d 62 6c 79 3a 3d 25 0d  ION:assembly:=%.
0c20: 0a 53 45 54 20 56 45 52 53 49 4f 4e 3d 25 56 45  .SET VERSION=%VE
0c30: 52 53 49 4f 4e 3a 41 73 73 65 6d 62 6c 79 56 65  RSION:AssemblyVe
0c40: 72 73 69 6f 6e 3d 25 0d 0a 53 45 54 20 56 45 52  rsion=%..SET VER
0c50: 53 49 4f 4e 3d 25 56 45 52 53 49 4f 4e 3a 22 3d  SION=%VERSION:"=
0c60: 25 0d 0a 52 45 4d 20 22 0d 0a 0d 0a 3a 73 6b 69  %..REM "....:ski
0c70: 70 5f 6d 75 6e 67 65 56 65 72 73 69 6f 6e 0d 0a  p_mungeVersion..
0c80: 0d 0a 25 5f 56 45 43 48 4f 25 20 56 65 72 73 69  ..%_VECHO% Versi
0c90: 6f 6e 20 3d 20 27 25 56 45 52 53 49 4f 4e 25 27  on = '%VERSION%'
0ca0: 0d 0a 0d 0a 43 41 4c 4c 20 3a 66 6e 5f 52 65 73  ....CALL :fn_Res
0cb0: 65 74 45 72 72 6f 72 4c 65 76 65 6c 0d 0a 0d 0a  etErrorLevel....
0cc0: 49 46 20 4e 4f 54 20 45 58 49 53 54 20 53 65 74  IF NOT EXIST Set
0cd0: 75 70 5c 4f 75 74 70 75 74 20 28 0d 0a 20 20 25  up\Output (..  %
0ce0: 5f 5f 45 43 48 4f 25 20 4d 4b 44 49 52 20 53 65  __ECHO% MKDIR Se
0cf0: 74 75 70 5c 4f 75 74 70 75 74 0d 0a 0d 0a 20 20  tup\Output....  
0d00: 49 46 20 45 52 52 4f 52 4c 45 56 45 4c 20 31 20  IF ERRORLEVEL 1 
0d10: 28 0d 0a 20 20 20 20 45 43 48 4f 20 43 6f 75 6c  (..    ECHO Coul
0d20: 64 20 6e 6f 74 20 63 72 65 61 74 65 20 64 69 72  d not create dir
0d30: 65 63 74 6f 72 79 20 22 53 65 74 75 70 5c 4f 75  ectory "Setup\Ou
0d40: 74 70 75 74 22 2e 0d 0a 20 20 20 20 47 4f 54 4f  tput"...    GOTO
0d50: 20 65 72 72 6f 72 73 0d 0a 20 20 29 0d 0a 29 0d   errors..  )..).
0d60: 0a 0d 0a 49 46 20 44 45 46 49 4e 45 44 20 42 41  ...IF DEFINED BA
0d70: 53 45 5f 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e  SE_CONFIGURATION
0d80: 53 55 46 46 49 58 20 28 0d 0a 20 20 46 4f 52 20  SUFFIX (..  FOR 
0d90: 2f 46 20 22 64 65 6c 69 6d 73 3d 22 20 25 25 46  /F "delims=" %%F
0da0: 20 49 4e 20 28 27 44 49 52 20 2f 42 20 2f 53 20   IN ('DIR /B /S 
0db0: 2f 41 44 20 22 62 69 6e 5c 25 59 45 41 52 25 5c  /AD "bin\%YEAR%\
0dc0: 25 42 41 53 45 5f 43 4f 4e 46 49 47 55 52 41 54  %BASE_CONFIGURAT
0dd0: 49 4f 4e 25 25 42 41 53 45 5f 43 4f 4e 46 49 47  ION%%BASE_CONFIG
0de0: 55 52 41 54 49 4f 4e 53 55 46 46 49 58 25 5c 62  URATIONSUFFIX%\b
0df0: 69 6e 22 20 32 5e 3e 20 4e 55 4c 27 29 20 44 4f  in" 2^> NUL') DO
0e00: 20 28 0d 0a 20 20 20 20 25 5f 5f 45 43 48 4f 25   (..    %__ECHO%
0e10: 20 52 4d 44 49 52 20 2f 53 20 2f 51 20 22 25 25   RMDIR /S /Q "%%
0e20: 46 22 0d 0a 20 20 29 0d 0a 20 20 25 5f 5f 45 43  F"..  )..  %__EC
0e30: 48 4f 25 20 7a 69 70 2e 65 78 65 20 2d 76 20 2d  HO% zip.exe -v -
0e40: 6a 20 2d 72 20 22 53 65 74 75 70 5c 4f 75 74 70  j -r "Setup\Outp
0e50: 75 74 5c 73 71 6c 69 74 65 2d 25 46 52 41 4d 45  ut\sqlite-%FRAME
0e60: 57 4f 52 4b 25 2d 25 54 59 50 45 25 2d 25 42 41  WORK%-%TYPE%-%BA
0e70: 53 45 5f 50 4c 41 54 46 4f 52 4d 25 25 45 58 54  SE_PLATFORM%%EXT
0e80: 52 41 5f 50 4c 41 54 46 4f 52 4d 25 2d 25 59 45  RA_PLATFORM%-%YE
0e90: 41 52 25 2d 25 56 45 52 53 49 4f 4e 25 2e 7a 69  AR%-%VERSION%.zi
0ea0: 70 22 20 22 62 69 6e 5c 25 59 45 41 52 25 5c 25  p" "bin\%YEAR%\%
0eb0: 42 41 53 45 5f 43 4f 4e 46 49 47 55 52 41 54 49  BASE_CONFIGURATI
0ec0: 4f 4e 25 25 42 41 53 45 5f 43 4f 4e 46 49 47 55  ON%%BASE_CONFIGU
0ed0: 52 41 54 49 4f 4e 53 55 46 46 49 58 25 5c 62 69  RATIONSUFFIX%\bi
0ee0: 6e 22 20 2d 78 20 40 64 61 74 61 5c 65 78 63 6c  n" -x @data\excl
0ef0: 75 64 65 5f 62 69 6e 2e 74 78 74 0d 0a 29 20 45  ude_bin.txt..) E
0f00: 4c 53 45 20 28 0d 0a 20 20 46 4f 52 20 2f 46 20  LSE (..  FOR /F 
0f10: 22 64 65 6c 69 6d 73 3d 22 20 25 25 46 20 49 4e  "delims=" %%F IN
0f20: 20 28 27 44 49 52 20 2f 42 20 2f 53 20 2f 41 44   ('DIR /B /S /AD
0f30: 20 22 62 69 6e 5c 25 59 45 41 52 25 5c 25 42 41   "bin\%YEAR%\%BA
0f40: 53 45 5f 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e  SE_CONFIGURATION
0f50: 25 5c 62 69 6e 22 20 32 5e 3e 20 4e 55 4c 27 29  %\bin" 2^> NUL')
0f60: 20 44 4f 20 28 0d 0a 20 20 20 20 25 5f 5f 45 43   DO (..    %__EC
0f70: 48 4f 25 20 52 4d 44 49 52 20 2f 53 20 2f 51 20  HO% RMDIR /S /Q 
0f80: 22 25 25 46 22 0d 0a 20 20 29 0d 0a 20 20 25 5f  "%%F"..  )..  %_
0f90: 5f 45 43 48 4f 25 20 7a 69 70 2e 65 78 65 20 2d  _ECHO% zip.exe -
0fa0: 76 20 2d 6a 20 2d 72 20 22 53 65 74 75 70 5c 4f  v -j -r "Setup\O
0fb0: 75 74 70 75 74 5c 73 71 6c 69 74 65 2d 25 46 52  utput\sqlite-%FR
0fc0: 41 4d 45 57 4f 52 4b 25 2d 25 54 59 50 45 25 2d  AMEWORK%-%TYPE%-
0fd0: 25 42 41 53 45 5f 50 4c 41 54 46 4f 52 4d 25 25  %BASE_PLATFORM%%
0fe0: 45 58 54 52 41 5f 50 4c 41 54 46 4f 52 4d 25 2d  EXTRA_PLATFORM%-
0ff0: 25 59 45 41 52 25 2d 25 56 45 52 53 49 4f 4e 25  %YEAR%-%VERSION%
1000: 2e 7a 69 70 22 20 22 62 69 6e 5c 25 59 45 41 52  .zip" "bin\%YEAR
1010: 25 5c 25 42 41 53 45 5f 43 4f 4e 46 49 47 55 52  %\%BASE_CONFIGUR
1020: 41 54 49 4f 4e 25 5c 62 69 6e 22 20 2d 78 20 40  ATION%\bin" -x @
1030: 64 61 74 61 5c 65 78 63 6c 75 64 65 5f 62 69 6e  data\exclude_bin
1040: 2e 74 78 74 0d 0a 29 0d 0a 0d 0a 49 46 20 2f 49  .txt..)....IF /I
1050: 20 22 25 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e   "%CONFIGURATION
1060: 25 22 20 3d 3d 20 22 25 42 41 53 45 5f 43 4f 4e  %" == "%BASE_CON
1070: 46 49 47 55 52 41 54 49 4f 4e 25 22 20 28 0d 0a  FIGURATION%" (..
1080: 20 20 49 46 20 4e 4f 54 20 44 45 46 49 4e 45 44    IF NOT DEFINED
1090: 20 42 41 53 45 5f 43 4f 4e 46 49 47 55 52 41 54   BASE_CONFIGURAT
10a0: 49 4f 4e 53 55 46 46 49 58 20 28 0d 0a 20 20 20  IONSUFFIX (..   
10b0: 20 25 5f 5f 45 43 48 4f 25 20 7a 69 70 20 2d 76   %__ECHO% zip -v
10c0: 20 2d 64 20 22 53 65 74 75 70 5c 4f 75 74 70 75   -d "Setup\Outpu
10d0: 74 5c 73 71 6c 69 74 65 2d 25 46 52 41 4d 45 57  t\sqlite-%FRAMEW
10e0: 4f 52 4b 25 2d 25 54 59 50 45 25 2d 25 42 41 53  ORK%-%TYPE%-%BAS
10f0: 45 5f 50 4c 41 54 46 4f 52 4d 25 25 45 58 54 52  E_PLATFORM%%EXTR
1100: 41 5f 50 4c 41 54 46 4f 52 4d 25 2d 25 59 45 41  A_PLATFORM%-%YEA
1110: 52 25 2d 25 56 45 52 53 49 4f 4e 25 2e 7a 69 70  R%-%VERSION%.zip
1120: 22 20 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f 70  " SQLite.Interop
1130: 2e 2a 0d 0a 20 20 29 0d 0a 29 0d 0a 0d 0a 25 5f  .*..  )..)....%_
1140: 5f 45 43 48 4f 25 20 7a 69 70 2e 65 78 65 20 2d  _ECHO% zip.exe -
1150: 76 20 2d 6a 20 2d 72 20 22 53 65 74 75 70 5c 4f  v -j -r "Setup\O
1160: 75 74 70 75 74 5c 73 71 6c 69 74 65 2d 25 46 52  utput\sqlite-%FR
1170: 41 4d 45 57 4f 52 4b 25 2d 25 54 59 50 45 25 2d  AMEWORK%-%TYPE%-
1180: 25 42 41 53 45 5f 50 4c 41 54 46 4f 52 4d 25 25  %BASE_PLATFORM%%
1190: 45 58 54 52 41 5f 50 4c 41 54 46 4f 52 4d 25 2d  EXTRA_PLATFORM%-
11a0: 25 59 45 41 52 25 2d 25 56 45 52 53 49 4f 4e 25  %YEAR%-%VERSION%
11b0: 2e 7a 69 70 22 20 22 62 69 6e 5c 25 59 45 41 52  .zip" "bin\%YEAR
11c0: 25 5c 25 50 4c 41 54 46 4f 52 4d 25 5c 25 43 4f  %\%PLATFORM%\%CO
11d0: 4e 46 49 47 55 52 41 54 49 4f 4e 25 25 43 4f 4e  NFIGURATION%%CON
11e0: 46 49 47 55 52 41 54 49 4f 4e 53 55 46 46 49 58  FIGURATIONSUFFIX
11f0: 25 22 20 2d 78 20 40 64 61 74 61 5c 65 78 63 6c  %" -x @data\excl
1200: 75 64 65 5f 62 69 6e 2e 74 78 74 0d 0a 0d 0a 49  ude_bin.txt....I
1210: 46 20 45 52 52 4f 52 4c 45 56 45 4c 20 31 20 28  F ERRORLEVEL 1 (
1220: 0d 0a 20 20 45 43 48 4f 20 46 61 69 6c 65 64 20  ..  ECHO Failed 
1230: 74 6f 20 61 72 63 68 69 76 65 20 62 69 6e 61 72  to archive binar
1240: 79 20 66 69 6c 65 73 2e 0d 0a 20 20 47 4f 54 4f  y files...  GOTO
1250: 20 65 72 72 6f 72 73 0d 0a 29 0d 0a 0d 0a 25 5f   errors..)....%_
1260: 5f 45 43 48 4f 32 25 20 50 4f 50 44 0d 0a 0d 0a  _ECHO2% POPD....
1270: 49 46 20 45 52 52 4f 52 4c 45 56 45 4c 20 31 20  IF ERRORLEVEL 1 
1280: 28 0d 0a 20 20 45 43 48 4f 20 43 6f 75 6c 64 20  (..  ECHO Could 
1290: 6e 6f 74 20 72 65 73 74 6f 72 65 20 64 69 72 65  not restore dire
12a0: 63 74 6f 72 79 2e 0d 0a 20 20 47 4f 54 4f 20 65  ctory...  GOTO e
12b0: 72 72 6f 72 73 0d 0a 29 0d 0a 0d 0a 47 4f 54 4f  rrors..)....GOTO
12c0: 20 6e 6f 5f 65 72 72 6f 72 73 0d 0a 0d 0a 3a 66   no_errors....:f
12d0: 6e 5f 53 65 74 56 61 72 69 61 62 6c 65 0d 0a 20  n_SetVariable.. 
12e0: 20 53 45 54 4c 4f 43 41 4c 0d 0a 20 20 53 45 54   SETLOCAL..  SET
12f0: 20 5f 5f 45 43 48 4f 5f 43 4d 44 3d 45 43 48 4f   __ECHO_CMD=ECHO
1300: 20 25 25 25 32 25 25 0d 0a 20 20 46 4f 52 20 2f   %%%2%%..  FOR /
1310: 46 20 22 64 65 6c 69 6d 73 3d 22 20 25 25 56 20  F "delims=" %%V 
1320: 49 4e 20 28 27 25 5f 5f 45 43 48 4f 5f 43 4d 44  IN ('%__ECHO_CMD
1330: 25 27 29 20 44 4f 20 28 0d 0a 20 20 20 20 53 45  %') DO (..    SE
1340: 54 20 56 41 4c 55 45 3d 25 25 56 0d 0a 20 20 29  T VALUE=%%V..  )
1350: 0d 0a 20 20 45 4e 44 4c 4f 43 41 4c 20 26 26 20  ..  ENDLOCAL && 
1360: 28 0d 0a 20 20 20 20 53 45 54 20 25 31 3d 25 56  (..    SET %1=%V
1370: 41 4c 55 45 25 0d 0a 20 20 29 0d 0a 20 20 47 4f  ALUE%..  )..  GO
1380: 54 4f 20 3a 45 4f 46 0d 0a 0d 0a 3a 66 6e 5f 55  TO :EOF....:fn_U
1390: 6e 71 75 6f 74 65 56 61 72 69 61 62 6c 65 0d 0a  nquoteVariable..
13a0: 20 20 49 46 20 4e 4f 54 20 44 45 46 49 4e 45 44    IF NOT DEFINED
13b0: 20 25 31 20 47 4f 54 4f 20 3a 45 4f 46 0d 0a 20   %1 GOTO :EOF.. 
13c0: 20 53 45 54 4c 4f 43 41 4c 0d 0a 20 20 53 45 54   SETLOCAL..  SET
13d0: 20 5f 5f 45 43 48 4f 5f 43 4d 44 3d 45 43 48 4f   __ECHO_CMD=ECHO
13e0: 20 25 25 25 31 25 25 0d 0a 20 20 46 4f 52 20 2f   %%%1%%..  FOR /
13f0: 46 20 22 64 65 6c 69 6d 73 3d 22 20 25 25 56 20  F "delims=" %%V 
1400: 49 4e 20 28 27 25 5f 5f 45 43 48 4f 5f 43 4d 44  IN ('%__ECHO_CMD
1410: 25 27 29 20 44 4f 20 28 0d 0a 20 20 20 20 53 45  %') DO (..    SE
1420: 54 20 56 41 4c 55 45 3d 25 25 56 0d 0a 20 20 29  T VALUE=%%V..  )
1430: 0d 0a 20 20 53 45 54 20 56 41 4c 55 45 3d 25 56  ..  SET VALUE=%V
1440: 41 4c 55 45 3a 22 3d 25 0d 0a 20 20 52 45 4d 20  ALUE:"=%..  REM 
1450: 22 0d 0a 20 20 45 4e 44 4c 4f 43 41 4c 20 26 26  "..  ENDLOCAL &&
1460: 20 53 45 54 20 25 31 3d 25 56 41 4c 55 45 25 0d   SET %1=%VALUE%.
1470: 0a 20 20 47 4f 54 4f 20 3a 45 4f 46 0d 0a 0d 0a  .  GOTO :EOF....
1480: 3a 66 6e 5f 52 65 73 65 74 45 72 72 6f 72 4c 65  :fn_ResetErrorLe
1490: 76 65 6c 0d 0a 20 20 56 45 52 49 46 59 20 3e 20  vel..  VERIFY > 
14a0: 4e 55 4c 0d 0a 20 20 47 4f 54 4f 20 3a 45 4f 46  NUL..  GOTO :EOF
14b0: 0d 0a 0d 0a 3a 66 6e 5f 53 65 74 45 72 72 6f 72  ....:fn_SetError
14c0: 4c 65 76 65 6c 0d 0a 20 20 56 45 52 49 46 59 20  Level..  VERIFY 
14d0: 4d 41 59 42 45 20 32 3e 20 4e 55 4c 0d 0a 20 20  MAYBE 2> NUL..  
14e0: 47 4f 54 4f 20 3a 45 4f 46 0d 0a 0d 0a 3a 75 73  GOTO :EOF....:us
14f0: 61 67 65 0d 0a 20 20 45 43 48 4f 2e 0d 0a 20 20  age..  ECHO...  
1500: 45 43 48 4f 20 55 73 61 67 65 3a 20 25 7e 6e 78  ECHO Usage: %~nx
1510: 30 20 5b 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e  0 [configuration
1520: 5d 20 5b 70 6c 61 74 66 6f 72 6d 5d 20 5b 79 65  ] [platform] [ye
1530: 61 72 5d 0d 0a 20 20 45 43 48 4f 2e 0d 0a 20 20  ar]..  ECHO...  
1540: 47 4f 54 4f 20 65 72 72 6f 72 73 0d 0a 0d 0a 3a  GOTO errors....:
1550: 65 72 72 6f 72 73 0d 0a 20 20 43 41 4c 4c 20 3a  errors..  CALL :
1560: 66 6e 5f 53 65 74 45 72 72 6f 72 4c 65 76 65 6c  fn_SetErrorLevel
1570: 0d 0a 20 20 45 4e 44 4c 4f 43 41 4c 0d 0a 20 20  ..  ENDLOCAL..  
1580: 45 43 48 4f 2e 0d 0a 20 20 45 43 48 4f 20 52 65  ECHO...  ECHO Re
1590: 6c 65 61 73 65 20 66 61 69 6c 75 72 65 2c 20 65  lease failure, e
15a0: 72 72 6f 72 73 20 77 65 72 65 20 65 6e 63 6f 75  rrors were encou
15b0: 6e 74 65 72 65 64 2e 0d 0a 20 20 47 4f 54 4f 20  ntered...  GOTO 
15c0: 65 6e 64 5f 6f 66 5f 66 69 6c 65 0d 0a 0d 0a 3a  end_of_file....:
15d0: 6e 6f 5f 65 72 72 6f 72 73 0d 0a 20 20 43 41 4c  no_errors..  CAL
15e0: 4c 20 3a 66 6e 5f 52 65 73 65 74 45 72 72 6f 72  L :fn_ResetError
15f0: 4c 65 76 65 6c 0d 0a 20 20 45 4e 44 4c 4f 43 41  Level..  ENDLOCA
1600: 4c 0d 0a 20 20 45 43 48 4f 2e 0d 0a 20 20 45 43  L..  ECHO...  EC
1610: 48 4f 20 52 65 6c 65 61 73 65 20 73 75 63 63 65  HO Release succe
1620: 73 73 2c 20 6e 6f 20 65 72 72 6f 72 73 20 77 65  ss, no errors we
1630: 72 65 20 65 6e 63 6f 75 6e 74 65 72 65 64 2e 0d  re encountered..
1640: 0a 20 20 47 4f 54 4f 20 65 6e 64 5f 6f 66 5f 66  .  GOTO end_of_f
1650: 69 6c 65 0d 0a 0d 0a 3a 65 6e 64 5f 6f 66 5f 66  ile....:end_of_f
1660: 69 6c 65 0d 0a 25 5f 5f 45 43 48 4f 25 20 45 58  ile..%__ECHO% EX
1670: 49 54 20 2f 42 20 25 45 52 52 4f 52 4c 45 56 45  IT /B %ERRORLEVE
1680: 4c 25 0d 0a                                      L%..