System.Data.SQLite
Hex Artifact Content
Not logged in

Artifact 228ffaf317de7187c303d17c3cfd249490f59696:


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 49 46 20 2f 49 20 22 25 42 41 53 45      IF /I "%BASE
0700: 5f 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 25 22  _CONFIGURATION%"
0710: 20 3d 3d 20 22 44 65 62 75 67 22 20 28 0d 0a 20   == "Debug" (.. 
0720: 20 20 20 20 20 53 45 54 20 54 59 50 45 3d 25 54       SET TYPE=%T
0730: 59 50 45 5f 50 52 45 46 49 58 25 62 69 6e 61 72  YPE_PREFIX%binar
0740: 79 2d 64 65 62 75 67 2d 62 75 6e 64 6c 65 0d 0a  y-debug-bundle..
0750: 20 20 20 20 29 20 45 4c 53 45 20 28 0d 0a 20 20      ) ELSE (..  
0760: 20 20 20 20 53 45 54 20 54 59 50 45 3d 25 54 59      SET TYPE=%TY
0770: 50 45 5f 50 52 45 46 49 58 25 62 69 6e 61 72 79  PE_PREFIX%binary
0780: 2d 62 75 6e 64 6c 65 0d 0a 20 20 20 20 29 0d 0a  -bundle..    )..
0790: 20 20 29 20 45 4c 53 45 20 28 0d 0a 20 20 20 20    ) ELSE (..    
07a0: 49 46 20 2f 49 20 22 25 42 41 53 45 5f 43 4f 4e  IF /I "%BASE_CON
07b0: 46 49 47 55 52 41 54 49 4f 4e 25 22 20 3d 3d 20  FIGURATION%" == 
07c0: 22 44 65 62 75 67 22 20 28 0d 0a 20 20 20 20 20  "Debug" (..     
07d0: 20 53 45 54 20 54 59 50 45 3d 25 54 59 50 45 5f   SET TYPE=%TYPE_
07e0: 50 52 45 46 49 58 25 62 69 6e 61 72 79 2d 64 65  PREFIX%binary-de
07f0: 62 75 67 0d 0a 20 20 20 20 29 20 45 4c 53 45 20  bug..    ) ELSE 
0800: 28 0d 0a 20 20 20 20 20 20 53 45 54 20 54 59 50  (..      SET TYP
0810: 45 3d 25 54 59 50 45 5f 50 52 45 46 49 58 25 62  E=%TYPE_PREFIX%b
0820: 69 6e 61 72 79 0d 0a 20 20 20 20 29 0d 0a 20 20  inary..    )..  
0830: 29 0d 0a 29 0d 0a 0d 0a 25 5f 56 45 43 48 4f 25  )..)....%_VECHO%
0840: 20 54 79 70 65 20 3d 20 27 25 54 59 50 45 25 27   Type = '%TYPE%'
0850: 0d 0a 0d 0a 43 41 4c 4c 20 3a 66 6e 5f 52 65 73  ....CALL :fn_Res
0860: 65 74 45 72 72 6f 72 4c 65 76 65 6c 0d 0a 0d 0a  etErrorLevel....
0870: 25 5f 5f 45 43 48 4f 33 25 20 43 41 4c 4c 20 22  %__ECHO3% CALL "
0880: 25 54 4f 4f 4c 53 25 5c 73 65 74 5f 63 6f 6d 6d  %TOOLS%\set_comm
0890: 6f 6e 2e 62 61 74 22 0d 0a 0d 0a 49 46 20 45 52  on.bat"....IF ER
08a0: 52 4f 52 4c 45 56 45 4c 20 31 20 28 0d 0a 20 20  RORLEVEL 1 (..  
08b0: 45 43 48 4f 20 43 6f 75 6c 64 20 6e 6f 74 20 73  ECHO Could not s
08c0: 65 74 20 63 6f 6d 6d 6f 6e 20 76 61 72 69 61 62  et common variab
08d0: 6c 65 73 2e 0d 0a 20 20 47 4f 54 4f 20 65 72 72  les...  GOTO err
08e0: 6f 72 73 0d 0a 29 0d 0a 0d 0a 49 46 20 4e 4f 54  ors..)....IF NOT
08f0: 20 44 45 46 49 4e 45 44 20 46 52 41 4d 45 57 4f   DEFINED FRAMEWO
0900: 52 4b 20 28 0d 0a 20 20 49 46 20 44 45 46 49 4e  RK (..  IF DEFIN
0910: 45 44 20 59 45 41 52 20 28 0d 0a 20 20 20 20 43  ED YEAR (..    C
0920: 41 4c 4c 20 3a 66 6e 5f 53 65 74 56 61 72 69 61  ALL :fn_SetVaria
0930: 62 6c 65 20 46 52 41 4d 45 57 4f 52 4b 20 46 52  ble FRAMEWORK FR
0940: 41 4d 45 57 4f 52 4b 25 59 45 41 52 25 0d 0a 20  AMEWORK%YEAR%.. 
0950: 20 29 20 45 4c 53 45 20 28 0d 0a 20 20 20 20 53   ) ELSE (..    S
0960: 45 54 20 46 52 41 4d 45 57 4f 52 4b 3d 6e 65 74  ET FRAMEWORK=net
0970: 46 78 32 30 0d 0a 20 20 29 0d 0a 29 0d 0a 0d 0a  Fx20..  )..)....
0980: 25 5f 56 45 43 48 4f 25 20 46 72 61 6d 65 77 6f  %_VECHO% Framewo
0990: 72 6b 20 3d 20 27 25 46 52 41 4d 45 57 4f 52 4b  rk = '%FRAMEWORK
09a0: 25 27 0d 0a 0d 0a 53 45 54 20 52 4f 4f 54 3d 25  %'....SET ROOT=%
09b0: 7e 64 70 30 5c 2e 2e 0d 0a 53 45 54 20 52 4f 4f  ~dp0\....SET ROO
09c0: 54 3d 25 52 4f 4f 54 3a 5c 5c 3d 5c 25 0d 0a 0d  T=%ROOT:\\=\%...
09d0: 0a 53 45 54 20 54 4f 4f 4c 53 3d 25 7e 64 70 30  .SET TOOLS=%~dp0
09e0: 0d 0a 53 45 54 20 54 4f 4f 4c 53 3d 25 54 4f 4f  ..SET TOOLS=%TOO
09f0: 4c 53 3a 7e 30 2c 2d 31 25 0d 0a 0d 0a 25 5f 56  LS:~0,-1%....%_V
0a00: 45 43 48 4f 25 20 52 6f 6f 74 20 3d 20 27 25 52  ECHO% Root = '%R
0a10: 4f 4f 54 25 27 0d 0a 25 5f 56 45 43 48 4f 25 20  OOT%'..%_VECHO% 
0a20: 54 6f 6f 6c 73 20 3d 20 27 25 54 4f 4f 4c 53 25  Tools = '%TOOLS%
0a30: 27 0d 0a 0d 0a 43 41 4c 4c 20 3a 66 6e 5f 52 65  '....CALL :fn_Re
0a40: 73 65 74 45 72 72 6f 72 4c 65 76 65 6c 0d 0a 0d  setErrorLevel...
0a50: 0a 25 5f 5f 45 43 48 4f 32 25 20 50 55 53 48 44  .%__ECHO2% PUSHD
0a60: 20 22 25 52 4f 4f 54 25 22 0d 0a 0d 0a 49 46 20   "%ROOT%"....IF 
0a70: 45 52 52 4f 52 4c 45 56 45 4c 20 31 20 28 0d 0a  ERRORLEVEL 1 (..
0a80: 20 20 45 43 48 4f 20 43 6f 75 6c 64 20 6e 6f 74    ECHO Could not
0a90: 20 63 68 61 6e 67 65 20 64 69 72 65 63 74 6f 72   change director
0aa0: 79 20 74 6f 20 22 25 52 4f 4f 54 25 22 2e 0d 0a  y to "%ROOT%"...
0ab0: 20 20 47 4f 54 4f 20 65 72 72 6f 72 73 0d 0a 29    GOTO errors..)
0ac0: 0d 0a 0d 0a 46 4f 52 20 2f 46 20 22 64 65 6c 69  ....FOR /F "deli
0ad0: 6d 73 3d 22 20 25 25 56 20 49 4e 20 28 27 54 59  ms=" %%V IN ('TY
0ae0: 50 45 20 53 79 73 74 65 6d 2e 44 61 74 61 2e 53  PE System.Data.S
0af0: 51 4c 69 74 65 5c 41 73 73 65 6d 62 6c 79 49 6e  QLite\AssemblyIn
0b00: 66 6f 2e 63 73 20 5e 7c 20 66 69 6e 64 2e 65 78  fo.cs ^| find.ex
0b10: 65 20 22 41 73 73 65 6d 62 6c 79 56 65 72 73 69  e "AssemblyVersi
0b20: 6f 6e 22 27 29 20 44 4f 20 28 0d 0a 20 20 53 45  on"') DO (..  SE
0b30: 54 20 56 45 52 53 49 4f 4e 3d 25 25 56 0d 0a 29  T VERSION=%%V..)
0b40: 0d 0a 0d 0a 49 46 20 4e 4f 54 20 44 45 46 49 4e  ....IF NOT DEFIN
0b50: 45 44 20 56 45 52 53 49 4f 4e 20 28 0d 0a 20 20  ED VERSION (..  
0b60: 53 45 54 20 56 45 52 53 49 4f 4e 3d 31 2e 30 2e  SET VERSION=1.0.
0b70: 30 2e 30 0d 0a 20 20 47 4f 54 4f 20 73 6b 69 70  0.0..  GOTO skip
0b80: 5f 6d 75 6e 67 65 56 65 72 73 69 6f 6e 0d 0a 29  _mungeVersion..)
0b90: 0d 0a 0d 0a 52 45 4d 0d 0a 52 45 4d 20 4e 4f 54  ....REM..REM NOT
0ba0: 45 3a 20 53 74 72 69 70 20 6f 66 66 20 61 6c 6c  E: Strip off all
0bb0: 20 74 68 65 20 65 78 74 72 61 20 73 74 75 66 66   the extra stuff
0bc0: 20 66 72 6f 6d 20 74 68 65 20 41 73 73 65 6d 62   from the Assemb
0bd0: 6c 79 56 65 72 73 69 6f 6e 20 6c 69 6e 65 20 77  lyVersion line w
0be0: 65 20 66 6f 75 6e 64 0d 0a 52 45 4d 20 20 20 20  e found..REM    
0bf0: 20 20 20 69 6e 20 74 68 65 20 41 73 73 65 6d 62     in the Assemb
0c00: 6c 79 49 6e 66 6f 2e 63 73 20 66 69 6c 65 20 74  lyInfo.cs file t
0c10: 68 61 74 20 77 65 20 64 6f 20 6e 6f 74 20 6e 65  hat we do not ne
0c20: 65 64 20 28 69 2e 65 2e 20 65 76 65 72 79 74 68  ed (i.e. everyth
0c30: 69 6e 67 0d 0a 52 45 4d 20 20 20 20 20 20 20 65  ing..REM       e
0c40: 78 63 65 70 74 20 74 68 65 20 72 61 77 20 76 65  xcept the raw ve
0c50: 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 69 74 73  rsion number its
0c60: 65 6c 66 29 2e 0d 0a 52 45 4d 0d 0a 53 45 54 20  elf)...REM..SET 
0c70: 56 45 52 53 49 4f 4e 3d 25 56 45 52 53 49 4f 4e  VERSION=%VERSION
0c80: 3a 28 3d 25 0d 0a 53 45 54 20 56 45 52 53 49 4f  :(=%..SET VERSIO
0c90: 4e 3d 25 56 45 52 53 49 4f 4e 3a 29 3d 25 0d 0a  N=%VERSION:)=%..
0ca0: 53 45 54 20 56 45 52 53 49 4f 4e 3d 25 56 45 52  SET VERSION=%VER
0cb0: 53 49 4f 4e 3a 5b 3d 25 0d 0a 53 45 54 20 56 45  SION:[=%..SET VE
0cc0: 52 53 49 4f 4e 3d 25 56 45 52 53 49 4f 4e 3a 5d  RSION=%VERSION:]
0cd0: 3d 25 0d 0a 53 45 54 20 56 45 52 53 49 4f 4e 3d  =%..SET VERSION=
0ce0: 25 56 45 52 53 49 4f 4e 3a 20 3d 25 0d 0a 53 45  %VERSION: =%..SE
0cf0: 54 20 56 45 52 53 49 4f 4e 3d 25 56 45 52 53 49  T VERSION=%VERSI
0d00: 4f 4e 3a 61 73 73 65 6d 62 6c 79 3a 3d 25 0d 0a  ON:assembly:=%..
0d10: 53 45 54 20 56 45 52 53 49 4f 4e 3d 25 56 45 52  SET VERSION=%VER
0d20: 53 49 4f 4e 3a 41 73 73 65 6d 62 6c 79 56 65 72  SION:AssemblyVer
0d30: 73 69 6f 6e 3d 25 0d 0a 53 45 54 20 56 45 52 53  sion=%..SET VERS
0d40: 49 4f 4e 3d 25 56 45 52 53 49 4f 4e 3a 22 3d 25  ION=%VERSION:"=%
0d50: 0d 0a 52 45 4d 20 22 0d 0a 0d 0a 3a 73 6b 69 70  ..REM "....:skip
0d60: 5f 6d 75 6e 67 65 56 65 72 73 69 6f 6e 0d 0a 0d  _mungeVersion...
0d70: 0a 25 5f 56 45 43 48 4f 25 20 56 65 72 73 69 6f  .%_VECHO% Versio
0d80: 6e 20 3d 20 27 25 56 45 52 53 49 4f 4e 25 27 0d  n = '%VERSION%'.
0d90: 0a 0d 0a 43 41 4c 4c 20 3a 66 6e 5f 52 65 73 65  ...CALL :fn_Rese
0da0: 74 45 72 72 6f 72 4c 65 76 65 6c 0d 0a 0d 0a 49  tErrorLevel....I
0db0: 46 20 4e 4f 54 20 45 58 49 53 54 20 53 65 74 75  F NOT EXIST Setu
0dc0: 70 5c 4f 75 74 70 75 74 20 28 0d 0a 20 20 25 5f  p\Output (..  %_
0dd0: 5f 45 43 48 4f 25 20 4d 4b 44 49 52 20 53 65 74  _ECHO% MKDIR Set
0de0: 75 70 5c 4f 75 74 70 75 74 0d 0a 0d 0a 20 20 49  up\Output....  I
0df0: 46 20 45 52 52 4f 52 4c 45 56 45 4c 20 31 20 28  F ERRORLEVEL 1 (
0e00: 0d 0a 20 20 20 20 45 43 48 4f 20 43 6f 75 6c 64  ..    ECHO Could
0e10: 20 6e 6f 74 20 63 72 65 61 74 65 20 64 69 72 65   not create dire
0e20: 63 74 6f 72 79 20 22 53 65 74 75 70 5c 4f 75 74  ctory "Setup\Out
0e30: 70 75 74 22 2e 0d 0a 20 20 20 20 47 4f 54 4f 20  put"...    GOTO 
0e40: 65 72 72 6f 72 73 0d 0a 20 20 29 0d 0a 29 0d 0a  errors..  )..)..
0e50: 0d 0a 49 46 20 44 45 46 49 4e 45 44 20 42 41 53  ..IF DEFINED BAS
0e60: 45 5f 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 53  E_CONFIGURATIONS
0e70: 55 46 46 49 58 20 28 0d 0a 20 20 46 4f 52 20 2f  UFFIX (..  FOR /
0e80: 46 20 22 64 65 6c 69 6d 73 3d 22 20 25 25 46 20  F "delims=" %%F 
0e90: 49 4e 20 28 27 44 49 52 20 2f 42 20 2f 53 20 2f  IN ('DIR /B /S /
0ea0: 41 44 20 22 62 69 6e 5c 25 59 45 41 52 25 5c 25  AD "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 32 5e 3e 20 4e 55 4c 27 29 20 44 4f 20  n" 2^> NUL') DO 
0ef0: 28 0d 0a 20 20 20 20 25 5f 5f 45 43 48 4f 25 20  (..    %__ECHO% 
0f00: 52 4d 44 49 52 20 2f 53 20 2f 51 20 22 25 25 46  RMDIR /S /Q "%%F
0f10: 22 0d 0a 20 20 29 0d 0a 20 20 25 5f 5f 45 43 48  "..  )..  %__ECH
0f20: 4f 25 20 7a 69 70 2e 65 78 65 20 2d 76 20 2d 6a  O% zip.exe -v -j
0f30: 20 2d 72 20 22 53 65 74 75 70 5c 4f 75 74 70 75   -r "Setup\Outpu
0f40: 74 5c 73 71 6c 69 74 65 2d 25 46 52 41 4d 45 57  t\sqlite-%FRAMEW
0f50: 4f 52 4b 25 2d 25 54 59 50 45 25 2d 25 42 41 53  ORK%-%TYPE%-%BAS
0f60: 45 5f 50 4c 41 54 46 4f 52 4d 25 25 45 58 54 52  E_PLATFORM%%EXTR
0f70: 41 5f 50 4c 41 54 46 4f 52 4d 25 2d 25 59 45 41  A_PLATFORM%-%YEA
0f80: 52 25 2d 25 56 45 52 53 49 4f 4e 25 2e 7a 69 70  R%-%VERSION%.zip
0f90: 22 20 22 62 69 6e 5c 25 59 45 41 52 25 5c 25 42  " "bin\%YEAR%\%B
0fa0: 41 53 45 5f 43 4f 4e 46 49 47 55 52 41 54 49 4f  ASE_CONFIGURATIO
0fb0: 4e 25 25 42 41 53 45 5f 43 4f 4e 46 49 47 55 52  N%%BASE_CONFIGUR
0fc0: 41 54 49 4f 4e 53 55 46 46 49 58 25 5c 62 69 6e  ATIONSUFFIX%\bin
0fd0: 22 20 2d 78 20 40 64 61 74 61 5c 65 78 63 6c 75  " -x @data\exclu
0fe0: 64 65 5f 62 69 6e 2e 74 78 74 0d 0a 29 20 45 4c  de_bin.txt..) EL
0ff0: 53 45 20 28 0d 0a 20 20 46 4f 52 20 2f 46 20 22  SE (..  FOR /F "
1000: 64 65 6c 69 6d 73 3d 22 20 25 25 46 20 49 4e 20  delims=" %%F IN 
1010: 28 27 44 49 52 20 2f 42 20 2f 53 20 2f 41 44 20  ('DIR /B /S /AD 
1020: 22 62 69 6e 5c 25 59 45 41 52 25 5c 25 42 41 53  "bin\%YEAR%\%BAS
1030: 45 5f 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 25  E_CONFIGURATION%
1040: 5c 62 69 6e 22 20 32 5e 3e 20 4e 55 4c 27 29 20  \bin" 2^> NUL') 
1050: 44 4f 20 28 0d 0a 20 20 20 20 25 5f 5f 45 43 48  DO (..    %__ECH
1060: 4f 25 20 52 4d 44 49 52 20 2f 53 20 2f 51 20 22  O% RMDIR /S /Q "
1070: 25 25 46 22 0d 0a 20 20 29 0d 0a 20 20 25 5f 5f  %%F"..  )..  %__
1080: 45 43 48 4f 25 20 7a 69 70 2e 65 78 65 20 2d 76  ECHO% zip.exe -v
1090: 20 2d 6a 20 2d 72 20 22 53 65 74 75 70 5c 4f 75   -j -r "Setup\Ou
10a0: 74 70 75 74 5c 73 71 6c 69 74 65 2d 25 46 52 41  tput\sqlite-%FRA
10b0: 4d 45 57 4f 52 4b 25 2d 25 54 59 50 45 25 2d 25  MEWORK%-%TYPE%-%
10c0: 42 41 53 45 5f 50 4c 41 54 46 4f 52 4d 25 25 45  BASE_PLATFORM%%E
10d0: 58 54 52 41 5f 50 4c 41 54 46 4f 52 4d 25 2d 25  XTRA_PLATFORM%-%
10e0: 59 45 41 52 25 2d 25 56 45 52 53 49 4f 4e 25 2e  YEAR%-%VERSION%.
10f0: 7a 69 70 22 20 22 62 69 6e 5c 25 59 45 41 52 25  zip" "bin\%YEAR%
1100: 5c 25 42 41 53 45 5f 43 4f 4e 46 49 47 55 52 41  \%BASE_CONFIGURA
1110: 54 49 4f 4e 25 5c 62 69 6e 22 20 2d 78 20 40 64  TION%\bin" -x @d
1120: 61 74 61 5c 65 78 63 6c 75 64 65 5f 62 69 6e 2e  ata\exclude_bin.
1130: 74 78 74 0d 0a 29 0d 0a 0d 0a 49 46 20 2f 49 20  txt..)....IF /I 
1140: 22 25 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 25  "%CONFIGURATION%
1150: 22 20 3d 3d 20 22 25 42 41 53 45 5f 43 4f 4e 46  " == "%BASE_CONF
1160: 49 47 55 52 41 54 49 4f 4e 25 22 20 28 0d 0a 20  IGURATION%" (.. 
1170: 20 49 46 20 4e 4f 54 20 44 45 46 49 4e 45 44 20   IF NOT DEFINED 
1180: 42 41 53 45 5f 43 4f 4e 46 49 47 55 52 41 54 49  BASE_CONFIGURATI
1190: 4f 4e 53 55 46 46 49 58 20 28 0d 0a 20 20 20 20  ONSUFFIX (..    
11a0: 25 5f 5f 45 43 48 4f 25 20 7a 69 70 20 2d 76 20  %__ECHO% zip -v 
11b0: 2d 64 20 22 53 65 74 75 70 5c 4f 75 74 70 75 74  -d "Setup\Output
11c0: 5c 73 71 6c 69 74 65 2d 25 46 52 41 4d 45 57 4f  \sqlite-%FRAMEWO
11d0: 52 4b 25 2d 25 54 59 50 45 25 2d 25 42 41 53 45  RK%-%TYPE%-%BASE
11e0: 5f 50 4c 41 54 46 4f 52 4d 25 25 45 58 54 52 41  _PLATFORM%%EXTRA
11f0: 5f 50 4c 41 54 46 4f 52 4d 25 2d 25 59 45 41 52  _PLATFORM%-%YEAR
1200: 25 2d 25 56 45 52 53 49 4f 4e 25 2e 7a 69 70 22  %-%VERSION%.zip"
1210: 20 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f 70 2e   SQLite.Interop.
1220: 2a 0d 0a 20 20 29 0d 0a 29 0d 0a 0d 0a 25 5f 5f  *..  )..)....%__
1230: 45 43 48 4f 25 20 7a 69 70 2e 65 78 65 20 2d 76  ECHO% zip.exe -v
1240: 20 2d 6a 20 2d 72 20 22 53 65 74 75 70 5c 4f 75   -j -r "Setup\Ou
1250: 74 70 75 74 5c 73 71 6c 69 74 65 2d 25 46 52 41  tput\sqlite-%FRA
1260: 4d 45 57 4f 52 4b 25 2d 25 54 59 50 45 25 2d 25  MEWORK%-%TYPE%-%
1270: 42 41 53 45 5f 50 4c 41 54 46 4f 52 4d 25 25 45  BASE_PLATFORM%%E
1280: 58 54 52 41 5f 50 4c 41 54 46 4f 52 4d 25 2d 25  XTRA_PLATFORM%-%
1290: 59 45 41 52 25 2d 25 56 45 52 53 49 4f 4e 25 2e  YEAR%-%VERSION%.
12a0: 7a 69 70 22 20 22 62 69 6e 5c 25 59 45 41 52 25  zip" "bin\%YEAR%
12b0: 5c 25 50 4c 41 54 46 4f 52 4d 25 5c 25 43 4f 4e  \%PLATFORM%\%CON
12c0: 46 49 47 55 52 41 54 49 4f 4e 25 25 43 4f 4e 46  FIGURATION%%CONF
12d0: 49 47 55 52 41 54 49 4f 4e 53 55 46 46 49 58 25  IGURATIONSUFFIX%
12e0: 22 20 2d 78 20 40 64 61 74 61 5c 65 78 63 6c 75  " -x @data\exclu
12f0: 64 65 5f 62 69 6e 2e 74 78 74 0d 0a 0d 0a 49 46  de_bin.txt....IF
1300: 20 45 52 52 4f 52 4c 45 56 45 4c 20 31 20 28 0d   ERRORLEVEL 1 (.
1310: 0a 20 20 45 43 48 4f 20 46 61 69 6c 65 64 20 74  .  ECHO Failed t
1320: 6f 20 61 72 63 68 69 76 65 20 62 69 6e 61 72 79  o archive binary
1330: 20 66 69 6c 65 73 2e 0d 0a 20 20 47 4f 54 4f 20   files...  GOTO 
1340: 65 72 72 6f 72 73 0d 0a 29 0d 0a 0d 0a 25 5f 5f  errors..)....%__
1350: 45 43 48 4f 32 25 20 50 4f 50 44 0d 0a 0d 0a 49  ECHO2% POPD....I
1360: 46 20 45 52 52 4f 52 4c 45 56 45 4c 20 31 20 28  F ERRORLEVEL 1 (
1370: 0d 0a 20 20 45 43 48 4f 20 43 6f 75 6c 64 20 6e  ..  ECHO Could n
1380: 6f 74 20 72 65 73 74 6f 72 65 20 64 69 72 65 63  ot restore direc
1390: 74 6f 72 79 2e 0d 0a 20 20 47 4f 54 4f 20 65 72  tory...  GOTO er
13a0: 72 6f 72 73 0d 0a 29 0d 0a 0d 0a 47 4f 54 4f 20  rors..)....GOTO 
13b0: 6e 6f 5f 65 72 72 6f 72 73 0d 0a 0d 0a 3a 66 6e  no_errors....:fn
13c0: 5f 53 65 74 56 61 72 69 61 62 6c 65 0d 0a 20 20  _SetVariable..  
13d0: 53 45 54 4c 4f 43 41 4c 0d 0a 20 20 53 45 54 20  SETLOCAL..  SET 
13e0: 5f 5f 45 43 48 4f 5f 43 4d 44 3d 45 43 48 4f 20  __ECHO_CMD=ECHO 
13f0: 25 25 25 32 25 25 0d 0a 20 20 46 4f 52 20 2f 46  %%%2%%..  FOR /F
1400: 20 22 64 65 6c 69 6d 73 3d 22 20 25 25 56 20 49   "delims=" %%V I
1410: 4e 20 28 27 25 5f 5f 45 43 48 4f 5f 43 4d 44 25  N ('%__ECHO_CMD%
1420: 27 29 20 44 4f 20 28 0d 0a 20 20 20 20 53 45 54  ') DO (..    SET
1430: 20 56 41 4c 55 45 3d 25 25 56 0d 0a 20 20 29 0d   VALUE=%%V..  ).
1440: 0a 20 20 45 4e 44 4c 4f 43 41 4c 20 26 26 20 28  .  ENDLOCAL && (
1450: 0d 0a 20 20 20 20 53 45 54 20 25 31 3d 25 56 41  ..    SET %1=%VA
1460: 4c 55 45 25 0d 0a 20 20 29 0d 0a 20 20 47 4f 54  LUE%..  )..  GOT
1470: 4f 20 3a 45 4f 46 0d 0a 0d 0a 3a 66 6e 5f 55 6e  O :EOF....:fn_Un
1480: 71 75 6f 74 65 56 61 72 69 61 62 6c 65 0d 0a 20  quoteVariable.. 
1490: 20 49 46 20 4e 4f 54 20 44 45 46 49 4e 45 44 20   IF NOT DEFINED 
14a0: 25 31 20 47 4f 54 4f 20 3a 45 4f 46 0d 0a 20 20  %1 GOTO :EOF..  
14b0: 53 45 54 4c 4f 43 41 4c 0d 0a 20 20 53 45 54 20  SETLOCAL..  SET 
14c0: 5f 5f 45 43 48 4f 5f 43 4d 44 3d 45 43 48 4f 20  __ECHO_CMD=ECHO 
14d0: 25 25 25 31 25 25 0d 0a 20 20 46 4f 52 20 2f 46  %%%1%%..  FOR /F
14e0: 20 22 64 65 6c 69 6d 73 3d 22 20 25 25 56 20 49   "delims=" %%V I
14f0: 4e 20 28 27 25 5f 5f 45 43 48 4f 5f 43 4d 44 25  N ('%__ECHO_CMD%
1500: 27 29 20 44 4f 20 28 0d 0a 20 20 20 20 53 45 54  ') DO (..    SET
1510: 20 56 41 4c 55 45 3d 25 25 56 0d 0a 20 20 29 0d   VALUE=%%V..  ).
1520: 0a 20 20 53 45 54 20 56 41 4c 55 45 3d 25 56 41  .  SET VALUE=%VA
1530: 4c 55 45 3a 22 3d 25 0d 0a 20 20 52 45 4d 20 22  LUE:"=%..  REM "
1540: 0d 0a 20 20 45 4e 44 4c 4f 43 41 4c 20 26 26 20  ..  ENDLOCAL && 
1550: 53 45 54 20 25 31 3d 25 56 41 4c 55 45 25 0d 0a  SET %1=%VALUE%..
1560: 20 20 47 4f 54 4f 20 3a 45 4f 46 0d 0a 0d 0a 3a    GOTO :EOF....:
1570: 66 6e 5f 52 65 73 65 74 45 72 72 6f 72 4c 65 76  fn_ResetErrorLev
1580: 65 6c 0d 0a 20 20 56 45 52 49 46 59 20 3e 20 4e  el..  VERIFY > N
1590: 55 4c 0d 0a 20 20 47 4f 54 4f 20 3a 45 4f 46 0d  UL..  GOTO :EOF.
15a0: 0a 0d 0a 3a 66 6e 5f 53 65 74 45 72 72 6f 72 4c  ...:fn_SetErrorL
15b0: 65 76 65 6c 0d 0a 20 20 56 45 52 49 46 59 20 4d  evel..  VERIFY M
15c0: 41 59 42 45 20 32 3e 20 4e 55 4c 0d 0a 20 20 47  AYBE 2> NUL..  G
15d0: 4f 54 4f 20 3a 45 4f 46 0d 0a 0d 0a 3a 75 73 61  OTO :EOF....:usa
15e0: 67 65 0d 0a 20 20 45 43 48 4f 2e 0d 0a 20 20 45  ge..  ECHO...  E
15f0: 43 48 4f 20 55 73 61 67 65 3a 20 25 7e 6e 78 30  CHO Usage: %~nx0
1600: 20 5b 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 5d   [configuration]
1610: 20 5b 70 6c 61 74 66 6f 72 6d 5d 20 5b 79 65 61   [platform] [yea
1620: 72 5d 0d 0a 20 20 45 43 48 4f 2e 0d 0a 20 20 47  r]..  ECHO...  G
1630: 4f 54 4f 20 65 72 72 6f 72 73 0d 0a 0d 0a 3a 65  OTO errors....:e
1640: 72 72 6f 72 73 0d 0a 20 20 43 41 4c 4c 20 3a 66  rrors..  CALL :f
1650: 6e 5f 53 65 74 45 72 72 6f 72 4c 65 76 65 6c 0d  n_SetErrorLevel.
1660: 0a 20 20 45 4e 44 4c 4f 43 41 4c 0d 0a 20 20 45  .  ENDLOCAL..  E
1670: 43 48 4f 2e 0d 0a 20 20 45 43 48 4f 20 52 65 6c  CHO...  ECHO Rel
1680: 65 61 73 65 20 66 61 69 6c 75 72 65 2c 20 65 72  ease failure, er
1690: 72 6f 72 73 20 77 65 72 65 20 65 6e 63 6f 75 6e  rors were encoun
16a0: 74 65 72 65 64 2e 0d 0a 20 20 47 4f 54 4f 20 65  tered...  GOTO e
16b0: 6e 64 5f 6f 66 5f 66 69 6c 65 0d 0a 0d 0a 3a 6e  nd_of_file....:n
16c0: 6f 5f 65 72 72 6f 72 73 0d 0a 20 20 43 41 4c 4c  o_errors..  CALL
16d0: 20 3a 66 6e 5f 52 65 73 65 74 45 72 72 6f 72 4c   :fn_ResetErrorL
16e0: 65 76 65 6c 0d 0a 20 20 45 4e 44 4c 4f 43 41 4c  evel..  ENDLOCAL
16f0: 0d 0a 20 20 45 43 48 4f 2e 0d 0a 20 20 45 43 48  ..  ECHO...  ECH
1700: 4f 20 52 65 6c 65 61 73 65 20 73 75 63 63 65 73  O Release succes
1710: 73 2c 20 6e 6f 20 65 72 72 6f 72 73 20 77 65 72  s, no errors wer
1720: 65 20 65 6e 63 6f 75 6e 74 65 72 65 64 2e 0d 0a  e encountered...
1730: 20 20 47 4f 54 4f 20 65 6e 64 5f 6f 66 5f 66 69    GOTO end_of_fi
1740: 6c 65 0d 0a 0d 0a 3a 65 6e 64 5f 6f 66 5f 66 69  le....:end_of_fi
1750: 6c 65 0d 0a 25 5f 5f 45 43 48 4f 25 20 45 58 49  le..%__ECHO% EXI
1760: 54 20 2f 42 20 25 45 52 52 4f 52 4c 45 56 45 4c  T /B %ERRORLEVEL
1770: 25 0d 0a                                         %..