Fossil

Hex Artifact Content
Login

Artifact ec4678380055c280aca764cff805a20e854bc2e715eb24b6d378d42fbd23e0d2:

Wiki page [Release Build How-To] by drh 2019-10-14 16:52:24.
0000: 44 20 32 30 31 39 2d 31 30 2d 31 34 54 31 36 3a  D 2019-10-14T16:
0010: 35 32 3a 32 34 2e 38 39 33 0a 4c 20 52 65 6c 65  52:24.893.L Rele
0020: 61 73 65 5c 73 42 75 69 6c 64 5c 73 48 6f 77 2d  ase\sBuild\sHow-
0030: 54 6f 0a 4e 20 74 65 78 74 2f 78 2d 6d 61 72 6b  To.N text/x-mark
0040: 64 6f 77 6e 0a 50 20 33 32 30 61 62 31 32 65 64  down.P 320ab12ed
0050: 37 61 30 61 63 66 38 36 32 39 65 63 37 61 62 38  7a0acf8629ec7ab8
0060: 61 63 37 35 38 33 63 65 62 66 35 65 36 33 30 64  ac7583cebf5e630d
0070: 39 33 65 61 65 37 30 63 35 62 64 35 30 61 64 37  93eae70c5bd50ad7
0080: 30 37 66 33 61 38 39 0a 55 20 64 72 68 0a 57 20  07f3a89.U drh.W 
0090: 32 39 36 38 0a 23 20 4e 6f 74 65 73 20 6f 6e 20  2968.# Notes on 
00a0: 68 6f 77 20 46 6f 73 73 69 6c 20 70 72 65 63 6f  how Fossil preco
00b0: 6d 70 69 6c 65 64 20 62 69 6e 61 72 69 65 73 20  mpiled binaries 
00c0: 61 72 65 20 62 75 69 6c 74 20 61 6e 64 20 75 70  are built and up
00d0: 6c 6f 61 64 65 64 0d 0a 0d 0a 23 23 20 44 6f 77  loaded....## Dow
00e0: 6e 6c 6f 61 64 20 50 61 67 65 0d 0a 0d 0a 20 20  nload Page....  
00f0: 2a 20 20 60 66 6f 73 73 69 6c 20 75 76 20 65 64  *  `fossil uv ed
0100: 69 74 20 64 6f 77 6e 6c 6f 61 64 2e 6a 73 60 0d  it download.js`.
0110: 0a 20 20 2a 20 20 45 64 69 74 20 74 68 65 20 22  .  *  Edit the "
0120: 72 65 6c 65 61 73 65 73 22 20 76 61 72 69 61 62  releases" variab
0130: 6c 65 20 69 6e 20 74 68 65 20 6a 61 76 61 73 63  le in the javasc
0140: 72 69 70 74 0d 0a 20 20 20 20 20 74 6f 20 61 64  ript..     to ad
0150: 64 20 74 68 65 20 6e 65 77 20 72 65 6c 65 61 73  d the new releas
0160: 65 20 6e 75 6d 62 65 72 20 61 6e 64 20 74 69 74  e number and tit
0170: 6c 65 20 61 6e 64 20 76 61 72 69 6f 75 73 0d 0a  le and various..
0180: 20 20 20 20 20 68 79 70 65 72 6c 69 6e 6b 73 2e       hyperlinks.
0190: 20 20 50 65 72 68 61 70 73 20 61 6c 73 6f 20 72    Perhaps also r
01a0: 65 6d 6f 76 65 20 6f 6c 64 65 72 20 72 65 6c 65  emove older rele
01b0: 61 73 65 73 2e 0d 0a 20 20 2a 20 20 52 65 6d 6f  ases...  *  Remo
01c0: 76 65 20 6f 62 73 6f 6c 65 74 65 20 62 75 69 6c  ve obsolete buil
01d0: 64 20 70 72 6f 64 75 63 74 73 3a 20 60 66 6f 73  d products: `fos
01e0: 73 69 6c 20 75 76 20 72 6d 20 24 46 49 4c 45 54  sil uv rm $FILET
01f0: 4f 44 45 4c 45 54 45 60 0d 0a 20 20 2a 20 20 60  ODELETE`..  *  `
0200: 66 6f 73 73 69 6c 20 75 76 20 73 79 6e 63 60 0d  fossil uv sync`.
0210: 0a 0d 0a 23 23 20 4c 69 6e 75 78 0d 0a 0d 0a 20  ...## Linux.... 
0220: 20 2a 20 20 60 2e 2f 63 6f 6e 66 69 67 75 72 65   *  `./configure
0230: 20 2d 2d 73 74 61 74 69 63 20 2d 2d 64 69 73 61   --static --disa
0240: 62 6c 65 2d 66 75 73 65 66 73 60 0d 0a 20 20 2a  ble-fusefs`..  *
0250: 20 20 45 64 69 74 20 74 68 65 20 4d 61 6b 65 66    Edit the Makef
0260: 69 6c 65 20 74 6f 20 6d 6f 76 65 20 2d 6c 64 6c  ile to move -ldl
0270: 20 74 6f 20 74 68 65 20 65 6e 64 0d 0a 20 20 2a   to the end..  *
0280: 20 20 60 43 46 4c 41 47 53 3d 22 2d 4f 73 22 20    `CFLAGS="-Os" 
0290: 6d 61 6b 65 20 2d 65 20 63 6c 65 61 6e 20 66 6f  make -e clean fo
02a0: 73 73 69 6c 60 0d 0a 20 20 2a 20 20 60 73 74 72  ssil`..  *  `str
02b0: 69 70 20 66 6f 73 73 69 6c 60 0d 0a 20 20 2a 20  ip fossil`..  * 
02c0: 20 60 74 61 72 20 63 7a 66 20 66 6f 73 73 69 6c   `tar czf fossil
02d0: 2d 6c 69 6e 75 78 2d 78 36 34 2d 24 56 45 52 53  -linux-x64-$VERS
02e0: 49 4f 4e 2e 74 61 72 2e 67 7a 20 66 6f 73 73 69  ION.tar.gz fossi
02f0: 6c 60 0d 0a 20 20 2a 20 20 60 66 6f 73 73 69 6c  l`..  *  `fossil
0300: 20 75 76 20 61 64 64 20 66 6f 73 73 69 6c 2d 6c   uv add fossil-l
0310: 69 6e 75 78 2d 78 36 34 2d 24 56 45 52 53 49 4f  inux-x64-$VERSIO
0320: 4e 2e 74 61 72 2e 67 7a 60 0d 0a 20 20 2a 20 20  N.tar.gz`..  *  
0330: 60 66 6f 73 73 69 6c 20 75 76 20 73 79 6e 63 60  `fossil uv sync`
0340: 0d 0a 0d 0a 23 23 20 4c 69 6e 75 78 20 28 61 6c  ....## Linux (al
0350: 74 65 72 6e 61 74 69 76 65 20 70 72 6f 63 65 64  ternative proced
0360: 75 72 65 73 29 0d 0a 0d 0a 20 20 2a 20 20 4c 6f  ures)....  *  Lo
0370: 67 20 69 6e 74 6f 20 77 77 77 2e 66 6f 73 73 69  g into www.fossi
0380: 6c 2d 73 63 6d 2e 6f 72 67 0d 0a 20 20 2a 20 20  l-scm.org..  *  
0390: 63 64 20 74 6f 20 2f 68 6f 6d 65 2f 77 77 77 2f  cd to /home/www/
03a0: 66 6f 73 73 69 6c 2f 62 31 0d 0a 20 20 2a 20 20  fossil/b1..  *  
03b0: 52 75 6e 20 74 68 65 20 73 63 72 69 70 74 20 2e  Run the script .
03c0: 2f 72 65 62 75 69 6c 64 2e 73 68 0d 0a 20 20 2a  /rebuild.sh..  *
03d0: 20 20 4c 6f 67 6f 75 74 0d 0a 20 20 2a 20 20 44    Logout..  *  D
03e0: 6f 77 6e 6c 6f 61 64 20 74 68 65 20 66 69 6c 65  ownload the file
03f0: 20 77 77 77 2e 66 6f 73 73 69 6c 2d 73 63 6d 2e   www.fossil-scm.
0400: 6f 72 67 3a 2f 68 6f 6d 65 2f 77 77 77 2f 75 73  org:/home/www/us
0410: 72 2f 6c 6f 63 61 6c 2f 66 6f 73 73 69 6c 0d 0a  r/local/fossil..
0420: 20 20 2a 20 20 60 73 74 72 69 70 20 66 6f 73 73    *  `strip foss
0430: 69 6c 60 0d 0a 20 20 2a 20 20 60 74 61 72 20 63  il`..  *  `tar c
0440: 7a 66 20 66 6f 73 73 69 6c 2d 6c 69 6e 75 78 2d  zf fossil-linux-
0450: 78 36 34 2d 24 56 45 52 53 49 4f 4e 2e 74 61 72  x64-$VERSION.tar
0460: 2e 67 7a 20 66 6f 73 73 69 6c 60 0d 0a 20 20 2a  .gz fossil`..  *
0470: 20 20 60 66 6f 73 73 69 6c 20 75 76 20 61 64 64    `fossil uv add
0480: 20 66 6f 73 73 69 6c 2d 6c 69 6e 75 78 2d 78 36   fossil-linux-x6
0490: 34 2d 24 56 45 52 53 49 4f 4e 2e 74 61 72 2e 67  4-$VERSION.tar.g
04a0: 7a 60 0d 0a 20 20 2a 20 20 60 66 6f 73 73 69 6c  z`..  *  `fossil
04b0: 20 75 76 20 73 79 6e 63 60 0d 0a 0d 0a 0d 0a 23   uv sync`......#
04c0: 23 20 57 69 6e 64 6f 77 73 20 33 32 2d 62 69 74  # Windows 32-bit
04d0: 0d 0a 0d 0a 0d 0a 20 20 2a 20 20 4f 6e 20 74 68  ......  *  On th
04e0: 65 20 57 69 6e 64 6f 77 73 20 31 30 20 6c 61 70  e Windows 10 lap
04f0: 74 6f 70 20 69 6e 20 61 20 4d 69 6e 47 57 20 73  top in a MinGW s
0500: 68 65 6c 6c 20 69 6e 20 7e 2f 66 6f 73 73 69 6c  hell in ~/fossil
0510: 2f 6d 31 0d 0a 20 20 2a 20 20 60 66 6f 73 73 69  /m1..  *  `fossi
0520: 6c 20 63 6c 65 61 6e 20 2d 78 60 0d 0a 20 20 2a  l clean -x`..  *
0530: 20 20 60 6d 61 6b 65 20 2d 66 20 77 69 6e 2f 6d    `make -f win/m
0540: 61 6b 65 66 69 6c 65 2e 6d 69 6e 67 77 20 46 4f  akefile.mingw FO
0550: 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 53 53 4c 3d  SSIL_ENABLE_SSL=
0560: 31 20 4f 50 45 4e 53 53 4c 44 49 52 3d 2e 2e 2f  1 OPENSSLDIR=../
0570: 2e 2e 2f 6f 70 65 6e 73 73 6c 2d 31 2e 30 2e 31  ../openssl-1.0.1
0580: 74 60 0d 0a 20 20 2a 20 20 2a 2a 4f 52 3a 2a 2a  t`..  *  **OR:**
0590: 20 60 74 63 6c 73 68 20 2e 2e 2f 6d 6b 66 6f 73   `tclsh ../mkfos
05a0: 73 69 6c 2e 74 63 6c 60 0d 0a 20 20 2a 20 20 60  sil.tcl`..  *  `
05b0: 7a 69 70 20 66 6f 73 73 69 6c 2d 77 33 32 2d 24  zip fossil-w32-$
05c0: 56 45 52 53 49 4f 4e 2e 7a 69 70 20 66 6f 73 73  VERSION.zip foss
05d0: 69 6c 2e 65 78 65 60 0d 0a 20 20 2a 20 20 60 66  il.exe`..  *  `f
05e0: 6f 73 73 69 6c 20 75 76 20 61 64 64 20 66 6f 73  ossil uv add fos
05f0: 73 69 6c 2d 77 33 32 2d 24 56 45 52 53 49 4f 4e  sil-w32-$VERSION
0600: 2e 7a 69 70 60 0d 0a 20 20 2a 20 20 60 66 6f 73  .zip`..  *  `fos
0610: 73 69 6c 20 75 76 20 73 79 6e 63 60 0d 0a 0d 0a  sil uv sync`....
0620: 23 23 20 57 69 6e 64 6f 77 73 20 36 34 2d 62 69  ## Windows 64-bi
0630: 74 0d 0a 0d 0a 20 20 2a 20 20 43 6f 6d 70 69 6c  t....  *  Compil
0640: 65 20 4f 70 65 6e 53 53 4c 2d 31 2e 31 2e 31 64  e OpenSSL-1.1.1d
0650: 2e 20 20 28 53 65 65 20 62 65 6c 6f 77 29 0d 0a  .  (See below)..
0660: 20 20 2a 20 20 47 65 74 20 61 20 22 78 36 34 20    *  Get a "x64 
0670: 4e 61 74 69 76 65 20 54 6f 6f 6c 73 20 43 6f 6d  Native Tools Com
0680: 6d 61 6e 64 20 50 72 6f 6d 70 74 22 20 77 69 6e  mand Prompt" win
0690: 64 6f 77 2e 0d 0a 20 20 2a 20 20 43 64 20 74 6f  dow...  *  Cd to
06a0: 20 74 68 65 20 77 69 6e 2f 20 73 75 62 66 6f 6c   the win/ subfol
06b0: 64 65 72 20 6f 66 20 74 68 65 20 46 6f 73 73 69  der of the Fossi
06c0: 6c 20 73 6f 75 72 63 65 20 74 72 65 65 2e 0d 0a  l source tree...
06d0: 20 20 2a 20 20 45 64 69 74 20 4d 61 6b 65 66 69    *  Edit Makefi
06e0: 6c 65 2e 6d 73 63 20 74 6f 20 6d 61 6b 65 20 53  le.msc to make S
06f0: 53 4c 44 49 52 20 70 6f 69 6e 74 20 74 6f 20 74  SLDIR point to t
0700: 68 65 20 74 6f 70 2d 6c 65 76 65 6c 20 64 69 72  he top-level dir
0710: 65 63 74 6f 72 79 0d 0a 20 20 20 20 20 66 6f 72  ectory..     for
0720: 20 74 68 65 20 4f 70 65 6e 53 53 4c 20 62 75 69   the OpenSSL bui
0730: 6c 64 2e 0d 0a 20 20 2a 20 20 60 6e 6d 61 6b 65  ld...  *  `nmake
0740: 20 2f 66 20 4d 61 6b 65 66 69 6c 65 2e 6d 73 63   /f Makefile.msc
0750: 20 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 53   FOSSIL_ENABLE_S
0760: 53 4c 3d 31 20 63 6c 65 61 6e 20 66 6f 73 73 69  SL=1 clean fossi
0770: 6c 2e 65 78 65 60 0d 0a 20 20 2a 20 20 60 7a 69  l.exe`..  *  `zi
0780: 70 20 66 6f 73 73 69 6c 2d 77 36 34 2d 24 56 45  p fossil-w64-$VE
0790: 52 53 49 4f 4e 2e 7a 69 70 20 66 6f 73 73 69 6c  RSION.zip fossil
07a0: 2e 65 78 65 60 0d 0a 20 20 2a 20 20 60 66 6f 73  .exe`..  *  `fos
07b0: 73 69 6c 20 75 76 20 61 64 64 20 66 6f 73 73 69  sil uv add fossi
07c0: 6c 2d 77 36 34 2d 24 56 45 52 53 49 4f 4e 2e 7a  l-w64-$VERSION.z
07d0: 69 70 60 0d 0a 20 20 2a 20 20 60 66 6f 73 73 69  ip`..  *  `fossi
07e0: 6c 20 75 76 20 73 79 6e 63 60 0d 0a 0d 0a 23 23  l uv sync`....##
07f0: 20 4d 61 63 0d 0a 0d 0a 20 20 2a 20 20 60 2e 2f   Mac....  *  `./
0800: 63 6f 6e 66 69 67 75 72 65 60 0d 0a 20 20 2a 20  configure`..  * 
0810: 20 45 64 69 74 20 74 68 65 20 4d 61 6b 65 66 69   Edit the Makefi
0820: 6c 65 20 74 6f 20 73 70 65 63 69 66 79 20 2f 75  le to specify /u
0830: 73 72 2f 6c 6f 63 61 6c 2f 6f 70 74 2f 6f 70 65  sr/local/opt/ope
0840: 6e 73 73 6c 2f 6c 69 62 2f 6c 69 62 63 72 79 70  nssl/lib/libcryp
0850: 74 6f 2e 61 20 0d 0a 20 20 20 20 20 61 6e 64 20  to.a ..     and 
0860: 2f 75 73 72 2f 6c 6f 63 61 6c 2f 6f 70 74 2f 6f  /usr/local/opt/o
0870: 70 65 6e 73 73 6c 2f 6c 69 62 2f 6c 69 62 73 73  penssl/lib/libss
0880: 6c 2e 61 20 69 6e 20 70 6c 61 63 65 20 6f 66 0d  l.a in place of.
0890: 0a 20 20 20 20 20 2d 6c 63 72 79 70 74 6f 20 61  .     -lcrypto a
08a0: 6e 64 20 2d 6c 73 73 6c 2c 20 61 6e 64 20 74 6f  nd -lssl, and to
08b0: 20 61 64 64 20 2d 6c 69 63 6f 6e 76 20 61 74 20   add -liconv at 
08c0: 74 68 65 20 65 6e 64 0d 0a 20 20 2a 20 20 60 43  the end..  *  `C
08d0: 46 4c 41 47 53 3d 22 2d 4f 73 22 20 6d 61 6b 65  FLAGS="-Os" make
08e0: 20 2d 65 20 63 6c 65 61 6e 20 66 6f 73 73 69 6c   -e clean fossil
08f0: 60 0d 0a 20 20 2a 20 20 56 65 72 69 66 79 20 6e  `..  *  Verify n
0900: 6f 20 73 68 61 72 65 64 20 6c 69 62 72 61 72 79  o shared library
0910: 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 75 73   dependencies us
0920: 69 6e 67 3a 20 20 60 6f 74 6f 6f 6c 20 2d 4c 20  ing:  `otool -L 
0930: 2e 2f 66 6f 73 73 69 6c 60 0d 0a 20 20 2a 20 20  ./fossil`..  *  
0940: 60 73 74 72 69 70 20 66 6f 73 73 69 6c 60 0d 0a  `strip fossil`..
0950: 20 20 2a 20 20 60 63 6f 64 65 73 69 67 6e 20 2d    *  `codesign -
0960: 73 20 64 72 68 40 73 71 6c 69 74 65 2e 6f 72 67  s drh@sqlite.org
0970: 20 66 6f 73 73 69 6c 60 0d 0a 20 20 2a 20 20 56   fossil`..  *  V
0980: 65 72 69 66 79 20 74 68 65 20 73 69 67 6e 61 74  erify the signat
0990: 75 72 65 20 75 73 69 6e 67 3a 20 60 63 6f 64 65  ure using: `code
09a0: 73 69 67 6e 20 2d 64 20 2d 76 20 66 6f 73 73 69  sign -d -v fossi
09b0: 6c 60 0d 0a 20 20 2a 20 20 60 74 61 72 20 63 7a  l`..  *  `tar cz
09c0: 66 20 66 6f 73 73 69 6c 2d 6d 61 63 6f 73 78 2d  f fossil-macosx-
09d0: 24 56 45 52 53 49 4f 4e 2e 74 61 72 2e 67 7a 20  $VERSION.tar.gz 
09e0: 66 6f 73 73 69 6c 60 0d 0a 20 20 2a 20 20 60 66  fossil`..  *  `f
09f0: 6f 73 73 69 6c 20 75 76 20 61 64 64 20 66 6f 73  ossil uv add fos
0a00: 73 69 6c 2d 6d 61 63 6f 73 78 2d 24 56 45 52 53  sil-macosx-$VERS
0a10: 49 4f 4e 2e 74 61 72 2e 67 7a 60 0d 0a 20 20 2a  ION.tar.gz`..  *
0a20: 20 20 60 66 6f 73 73 69 6c 20 75 76 20 73 79 6e    `fossil uv syn
0a30: 63 60 0d 0a 0d 0a 23 23 20 53 6f 75 72 63 65 20  c`....## Source 
0a40: 54 61 72 62 61 6c 6c 0d 0a 0d 0a 20 20 2a 20 20  Tarball....  *  
0a50: 60 66 6f 73 73 69 6c 20 74 61 72 62 61 6c 6c 20  `fossil tarball 
0a60: 2d 2d 6e 61 6d 65 20 66 6f 73 73 69 6c 2d 24 56  --name fossil-$V
0a70: 45 52 53 49 4f 4e 20 76 65 72 73 69 6f 6e 2d 24  ERSION version-$
0a80: 56 45 52 53 49 4f 4e 20 66 6f 73 73 69 6c 2d 73  VERSION fossil-s
0a90: 72 63 2d 24 56 45 52 53 49 4f 4e 2e 74 61 72 2e  rc-$VERSION.tar.
0aa0: 67 7a 60 0d 0a 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d  gz`....---------
0ab0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a 0d 0a  ------------....
0ac0: 23 23 20 42 75 69 6c 64 69 6e 67 20 4f 70 65 6e  ## Building Open
0ad0: 53 53 4c 20 31 2e 31 2e 31 20 4f 6e 20 57 69 6e  SSL 1.1.1 On Win
0ae0: 64 6f 77 73 20 36 34 2d 62 69 74 20 77 69 74 68  dows 64-bit with
0af0: 20 4d 53 56 43 0d 0a 0d 0a 20 20 2a 20 20 44 6f   MSVC....  *  Do
0b00: 77 6e 6c 6f 61 64 20 61 6e 64 20 75 6e 70 61 63  wnload and unpac
0b10: 6b 20 74 68 65 20 4f 70 65 6e 53 53 4c 20 73 6f  k the OpenSSL so
0b20: 75 72 63 65 20 74 61 72 62 61 6c 6c 0d 0a 20 20  urce tarball..  
0b30: 2a 20 20 49 6e 73 74 61 6c 6c 20 53 74 72 61 77  *  Install Straw
0b40: 62 65 72 72 79 20 70 65 72 6c 0d 0a 20 20 2a 20  berry perl..  * 
0b50: 20 47 65 74 20 61 20 22 78 36 34 20 4e 61 74 69   Get a "x64 Nati
0b60: 76 65 20 54 6f 6f 6c 73 20 43 6f 6d 6d 61 6e 64  ve Tools Command
0b70: 20 50 72 6f 6d 70 74 22 0d 0a 20 20 2a 20 20 43   Prompt"..  *  C
0b80: 44 20 74 6f 20 74 68 65 20 74 6f 70 20 6f 66 20  D to the top of 
0b90: 74 68 65 20 4f 70 65 6e 53 53 4c 20 73 6f 75 72  the OpenSSL sour
0ba0: 63 65 20 64 69 72 65 63 74 6f 72 79 0d 0a 20 20  ce directory..  
0bb0: 2a 20 20 60 63 3a 2f 73 74 72 61 77 62 65 72 72  *  `c:/strawberr
0bc0: 79 2f 70 65 72 6c 2f 62 69 6e 2f 70 65 72 6c 20  y/perl/bin/perl 
0bd0: 43 6f 6e 66 69 67 75 72 65 20 56 43 2d 57 49 4e  Configure VC-WIN
0be0: 36 34 41 20 6e 6f 2d 61 73 6d 20 6e 6f 2d 73 73  64A no-asm no-ss
0bf0: 6c 33 20 6e 6f 2d 77 65 61 6b 2d 73 73 6c 2d 63  l3 no-weak-ssl-c
0c00: 69 70 68 65 72 73 20 6e 6f 2d 73 68 61 72 65 64  iphers no-shared
0c10: 60 0d 0a 20 20 2a 20 20 60 6e 6d 61 6b 65 20 2f  `..  *  `nmake /
0c20: 66 20 6d 61 6b 65 66 69 6c 65 60 0d 0a 0a 5a 20  f makefile`...Z 
0c30: 32 65 35 34 61 62 38 32 38 37 37 38 62 63 61 39  2e54ab828778bca9
0c40: 64 30 34 30 39 30 65 32 61 38 39 38 66 33 65 30  d04090e2a898f3e0
0c50: 0a                                               .