/ Hex Artifact Content
Login

Artifact 9627b915d2bfd736c768f3707fbd583733799f60:


0000: 23 21 2f 62 69 6e 2f 73 68 0a 23 0a 23 20 54 68  #!/bin/sh.#.# Th
0010: 69 73 20 73 63 72 69 70 74 20 69 73 20 75 73 65  is script is use
0020: 64 20 74 6f 20 63 6f 6d 70 69 6c 65 20 53 51 4c  d to compile SQL
0030: 69 74 65 20 61 6e 64 20 70 61 63 6b 61 67 65 20  ite and package 
0040: 65 76 65 72 79 74 68 69 6e 67 20 75 70 0a 23 20  everything up.# 
0050: 73 6f 20 74 68 61 74 20 69 74 20 69 73 20 72 65  so that it is re
0060: 61 64 79 20 74 6f 20 6d 6f 76 65 20 74 6f 20 74  ady to move to t
0070: 68 65 20 53 51 4c 69 74 65 20 77 65 62 73 69 74  he SQLite websit
0080: 65 2e 0a 23 0a 0a 23 20 53 65 74 20 73 72 63 64  e..#..# Set srcd
0090: 69 72 20 74 6f 20 74 68 65 20 6e 61 6d 65 20 6f  ir to the name o
00a0: 66 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 20  f the directory 
00b0: 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 20 74 68  that contains th
00c0: 65 20 70 75 62 6c 69 73 68 2e 73 68 0a 23 20 73  e publish.sh.# s
00d0: 63 72 69 70 74 2e 0a 23 0a 73 72 63 64 69 72 3d  cript..#.srcdir=
00e0: 60 65 63 68 6f 20 22 24 30 22 20 7c 20 73 65 64  `echo "$0" | sed
00f0: 20 27 73 25 5c 28 5e 2e 2a 5c 29 2f 5b 5e 2f 5d   's%\(^.*\)/[^/]
0100: 5b 5e 2f 5d 2a 24 25 5c 31 25 27 60 0a 0a 23 20  [^/]*$%\1%'`..# 
0110: 47 65 74 20 74 68 65 20 6d 61 6b 65 66 69 6c 65  Get the makefile
0120: 2e 0a 23 0a 63 70 20 24 73 72 63 64 69 72 2f 4d  ..#.cp $srcdir/M
0130: 61 6b 65 66 69 6c 65 2e 6c 69 6e 75 78 2d 67 63  akefile.linux-gc
0140: 63 20 2e 2f 4d 61 6b 65 66 69 6c 65 0a 63 68 6d  c ./Makefile.chm
0150: 6f 64 20 2b 78 20 24 73 72 63 64 69 72 2f 69 6e  od +x $srcdir/in
0160: 73 74 61 6c 6c 2d 73 68 0a 0a 23 20 47 65 74 20  stall-sh..# Get 
0170: 74 68 65 20 63 75 72 72 65 6e 74 20 76 65 72 73  the current vers
0180: 69 6f 6e 20 6e 75 6d 62 65 72 20 2d 20 6e 65 65  ion number - nee
0190: 64 65 64 20 74 6f 20 68 65 6c 70 20 62 75 69 6c  ded to help buil
01a0: 64 20 66 69 6c 65 6e 61 6d 65 73 0a 23 0a 56 45  d filenames.#.VE
01b0: 52 53 3d 60 63 61 74 20 24 73 72 63 64 69 72 2f  RS=`cat $srcdir/
01c0: 56 45 52 53 49 4f 4e 60 0a 56 45 52 53 57 3d 60  VERSION`.VERSW=`
01d0: 73 65 64 20 27 73 2f 5c 2e 2f 5f 2f 67 27 20 24  sed 's/\./_/g' $
01e0: 73 72 63 64 69 72 2f 56 45 52 53 49 4f 4e 60 0a  srcdir/VERSION`.
01f0: 65 63 68 6f 20 22 56 45 52 53 49 4f 4e 53 3a 20  echo "VERSIONS: 
0200: 24 56 45 52 53 20 24 56 45 52 53 57 22 0a 0a 23  $VERS $VERSW"..#
0210: 20 53 74 61 72 74 20 62 79 20 62 75 69 6c 64 69   Start by buildi
0220: 6e 67 20 61 6e 20 73 71 6c 69 74 65 20 73 68 65  ng an sqlite she
0230: 6c 6c 20 66 6f 72 20 6c 69 6e 75 78 2e 0a 23 0a  ll for linux..#.
0240: 6d 61 6b 65 20 63 6c 65 61 6e 0a 6d 61 6b 65 20  make clean.make 
0250: 73 71 6c 69 74 65 33 2e 63 0a 43 46 4c 41 47 53  sqlite3.c.CFLAGS
0260: 3d 22 2d 4f 73 20 2d 44 53 51 4c 49 54 45 5f 45  ="-Os -DSQLITE_E
0270: 4e 41 42 4c 45 5f 46 54 53 33 3d 30 20 2d 44 53  NABLE_FTS3=0 -DS
0280: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 52 54 52  QLITE_ENABLE_RTR
0290: 45 45 3d 30 22 0a 43 46 4c 41 47 53 3d 22 24 43  EE=0".CFLAGS="$C
02a0: 46 4c 41 47 53 20 2d 44 53 51 4c 49 54 45 5f 54  FLAGS -DSQLITE_T
02b0: 48 52 45 41 44 53 41 46 45 3d 30 22 0a 65 63 68  HREADSAFE=0".ech
02c0: 6f 20 27 2a 2a 2a 2a 2a 20 27 22 43 4f 4d 50 49  o '***** '"COMPI
02d0: 4c 49 4e 47 20 73 71 6c 69 74 65 33 2d 24 56 45  LING sqlite3-$VE
02e0: 52 53 2e 62 69 6e 2e 2e 2e 22 0a 67 63 63 20 24  RS.bin...".gcc $
02f0: 43 46 4c 41 47 53 20 2d 49 74 73 72 63 20 73 71  CFLAGS -Itsrc sq
0300: 6c 69 74 65 33 2e 63 20 74 73 72 63 2f 73 68 65  lite3.c tsrc/she
0310: 6c 6c 2e 63 20 2d 6f 20 73 71 6c 69 74 65 33 20  ll.c -o sqlite3 
0320: 2d 6c 64 6c 0a 73 74 72 69 70 20 73 71 6c 69 74  -ldl.strip sqlit
0330: 65 33 0a 6d 76 20 73 71 6c 69 74 65 33 20 73 71  e3.mv sqlite3 sq
0340: 6c 69 74 65 33 2d 24 56 45 52 53 2e 62 69 6e 0a  lite3-$VERS.bin.
0350: 67 7a 69 70 20 73 71 6c 69 74 65 33 2d 24 56 45  gzip sqlite3-$VE
0360: 52 53 2e 62 69 6e 0a 63 68 6d 6f 64 20 36 34 34  RS.bin.chmod 644
0370: 20 73 71 6c 69 74 65 33 2d 24 56 45 52 53 2e 62   sqlite3-$VERS.b
0380: 69 6e 2e 67 7a 0a 6d 76 20 73 71 6c 69 74 65 33  in.gz.mv sqlite3
0390: 2d 24 56 45 52 53 2e 62 69 6e 2e 67 7a 20 64 6f  -$VERS.bin.gz do
03a0: 63 0a 0a 23 20 42 75 69 6c 64 20 61 20 73 6f 75  c..# Build a sou
03b0: 72 63 65 20 61 72 63 68 69 76 65 20 75 73 65 66  rce archive usef
03c0: 75 6c 20 66 6f 72 20 77 69 6e 64 6f 77 73 2e 0a  ul for windows..
03d0: 23 0a 6d 61 6b 65 20 74 61 72 67 65 74 5f 73 6f  #.make target_so
03e0: 75 72 63 65 0a 63 64 20 74 73 72 63 0a 65 63 68  urce.cd tsrc.ech
03f0: 6f 20 27 2a 2a 2a 2a 2a 20 42 55 49 4c 44 49 4e  o '***** BUILDIN
0400: 47 20 70 72 65 70 72 6f 63 65 73 73 65 64 20 73  G preprocessed s
0410: 6f 75 72 63 65 20 61 72 63 68 69 76 65 73 27 0a  ource archives'.
0420: 72 6d 20 66 74 73 5b 31 32 5d 2a 20 69 63 75 2a  rm fts[12]* icu*
0430: 0a 72 6d 20 2d 66 20 2e 2e 2f 64 6f 63 2f 73 71  .rm -f ../doc/sq
0440: 6c 69 74 65 2d 73 6f 75 72 63 65 2d 24 56 45 52  lite-source-$VER
0450: 53 57 2e 7a 69 70 0a 7a 69 70 20 2e 2e 2f 64 6f  SW.zip.zip ../do
0460: 63 2f 73 71 6c 69 74 65 2d 73 6f 75 72 63 65 2d  c/sqlite-source-
0470: 24 56 45 52 53 57 2e 7a 69 70 20 2a 0a 63 64 20  $VERSW.zip *.cd 
0480: 2e 2e 0a 63 70 20 74 73 72 63 2f 73 71 6c 69 74  ...cp tsrc/sqlit
0490: 65 33 2e 68 20 74 73 72 63 2f 73 71 6c 69 74 65  e3.h tsrc/sqlite
04a0: 33 65 78 74 2e 68 20 2e 0a 70 77 64 0a 7a 69 70  3ext.h ..pwd.zip
04b0: 20 64 6f 63 2f 73 71 6c 69 74 65 2d 61 6d 61 6c   doc/sqlite-amal
04c0: 67 61 6d 61 74 69 6f 6e 2d 24 56 45 52 53 57 2e  gamation-$VERSW.
04d0: 7a 69 70 20 73 71 6c 69 74 65 33 2e 63 20 73 71  zip sqlite3.c sq
04e0: 6c 69 74 65 33 2e 68 20 73 71 6c 69 74 65 33 65  lite3.h sqlite3e
04f0: 78 74 2e 68 0a 0a 23 20 42 75 69 6c 64 20 74 68  xt.h..# Build th
0500: 65 20 73 71 6c 69 74 65 2e 73 6f 20 61 6e 64 20  e sqlite.so and 
0510: 74 63 6c 73 71 6c 69 74 65 2e 73 6f 20 73 68 61  tclsqlite.so sha
0520: 72 65 64 20 6c 69 62 72 61 72 69 65 73 0a 23 20  red libraries.# 
0530: 75 6e 64 65 72 20 4c 69 6e 75 78 0a 23 0a 54 43  under Linux.#.TC
0540: 4c 44 49 52 3d 2f 68 6f 6d 65 2f 64 72 68 2f 74  LDIR=/home/drh/t
0550: 63 6c 74 6b 2f 38 34 36 2f 6c 69 6e 75 78 2f 38  cltk/846/linux/8
0560: 34 36 6c 69 6e 75 78 0a 54 43 4c 53 54 55 42 4c  46linux.TCLSTUBL
0570: 49 42 3d 24 54 43 4c 44 49 52 2f 6c 69 62 74 63  IB=$TCLDIR/libtc
0580: 6c 73 74 75 62 38 2e 34 67 2e 61 0a 43 46 4c 41  lstub8.4g.a.CFLA
0590: 47 53 3d 22 2d 4f 73 20 2d 44 53 51 4c 49 54 45  GS="-Os -DSQLITE
05a0: 5f 45 4e 41 42 4c 45 5f 46 54 53 33 3d 33 20 2d  _ENABLE_FTS3=3 -
05b0: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 52  DSQLITE_ENABLE_R
05c0: 54 52 45 45 3d 31 22 0a 43 46 4c 41 47 53 3d 22  TREE=1".CFLAGS="
05d0: 24 43 46 4c 41 47 53 20 2d 44 48 41 56 45 5f 4c  $CFLAGS -DHAVE_L
05e0: 4f 43 41 4c 54 49 4d 45 5f 52 3d 31 20 2d 44 48  OCALTIME_R=1 -DH
05f0: 41 56 45 5f 47 4d 54 49 4d 45 5f 52 3d 31 22 0a  AVE_GMTIME_R=1".
0600: 43 46 4c 41 47 53 3d 22 24 43 46 4c 41 47 53 20  CFLAGS="$CFLAGS 
0610: 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  -DSQLITE_ENABLE_
0620: 43 4f 4c 55 4d 4e 5f 4d 45 54 41 44 41 54 41 3d  COLUMN_METADATA=
0630: 31 22 0a 65 63 68 6f 20 27 2a 2a 2a 2a 2a 20 42  1".echo '***** B
0640: 55 49 4c 44 49 4e 47 20 73 68 61 72 65 64 20 6c  UILDING shared l
0650: 69 62 72 61 72 69 65 73 20 66 6f 72 20 6c 69 6e  ibraries for lin
0660: 75 78 27 0a 67 63 63 20 24 43 46 4c 41 47 53 20  ux'.gcc $CFLAGS 
0670: 2d 73 68 61 72 65 64 20 74 63 6c 73 71 6c 69 74  -shared tclsqlit
0680: 65 33 2e 63 20 24 54 43 4c 53 54 55 42 4c 49 42  e3.c $TCLSTUBLIB
0690: 20 2d 6f 20 74 63 6c 73 71 6c 69 74 65 33 2e 73   -o tclsqlite3.s
06a0: 6f 20 2d 6c 70 74 68 72 65 61 64 0a 73 74 72 69  o -lpthread.stri
06b0: 70 20 74 63 6c 73 71 6c 69 74 65 33 2e 73 6f 0a  p tclsqlite3.so.
06c0: 63 68 6d 6f 64 20 36 34 34 20 74 63 6c 73 71 6c  chmod 644 tclsql
06d0: 69 74 65 33 2e 73 6f 0a 6d 76 20 74 63 6c 73 71  ite3.so.mv tclsq
06e0: 6c 69 74 65 33 2e 73 6f 20 74 63 6c 73 71 6c 69  lite3.so tclsqli
06f0: 74 65 2d 24 56 45 52 53 2e 73 6f 0a 67 7a 69 70  te-$VERS.so.gzip
0700: 20 74 63 6c 73 71 6c 69 74 65 2d 24 56 45 52 53   tclsqlite-$VERS
0710: 2e 73 6f 0a 6d 76 20 74 63 6c 73 71 6c 69 74 65  .so.mv tclsqlite
0720: 2d 24 56 45 52 53 2e 73 6f 2e 67 7a 20 64 6f 63  -$VERS.so.gz doc
0730: 0a 67 63 63 20 24 43 46 4c 41 47 53 20 2d 73 68  .gcc $CFLAGS -sh
0740: 61 72 65 64 20 73 71 6c 69 74 65 33 2e 63 20 2d  ared sqlite3.c -
0750: 6f 20 73 71 6c 69 74 65 33 2e 73 6f 20 2d 6c 70  o sqlite3.so -lp
0760: 74 68 72 65 61 64 0a 73 74 72 69 70 20 73 71 6c  thread.strip sql
0770: 69 74 65 33 2e 73 6f 0a 63 68 6d 6f 64 20 36 34  ite3.so.chmod 64
0780: 34 20 73 71 6c 69 74 65 33 2e 73 6f 0a 6d 76 20  4 sqlite3.so.mv 
0790: 73 71 6c 69 74 65 33 2e 73 6f 20 73 71 6c 69 74  sqlite3.so sqlit
07a0: 65 2d 24 56 45 52 53 2e 73 6f 0a 67 7a 69 70 20  e-$VERS.so.gzip 
07b0: 73 71 6c 69 74 65 2d 24 56 45 52 53 2e 73 6f 0a  sqlite-$VERS.so.
07c0: 6d 76 20 73 71 6c 69 74 65 2d 24 56 45 52 53 2e  mv sqlite-$VERS.
07d0: 73 6f 2e 67 7a 20 64 6f 63 0a 0a 0a 23 20 42 75  so.gz doc...# Bu
07e0: 69 6c 64 20 74 68 65 20 74 63 6c 73 71 6c 69 74  ild the tclsqlit
07f0: 65 33 2e 64 6c 6c 20 61 6e 64 20 73 71 6c 69 74  e3.dll and sqlit
0800: 65 33 2e 64 6c 6c 20 73 68 61 72 65 64 20 6c 69  e3.dll shared li
0810: 62 72 61 72 69 65 73 2e 0a 23 0a 2e 20 24 73 72  braries..#.. $sr
0820: 63 64 69 72 2f 6d 6b 64 6c 6c 2e 73 68 0a 65 63  cdir/mkdll.sh.ec
0830: 68 6f 20 27 2a 2a 2a 2a 2a 20 50 41 43 4b 41 47  ho '***** PACKAG
0840: 49 4e 47 20 73 68 61 72 65 64 20 6c 69 62 72 61  ING shared libra
0850: 72 69 65 73 20 66 6f 72 20 77 69 6e 64 6f 77 73  ries for windows
0860: 27 0a 65 63 68 6f 20 7a 69 70 20 64 6f 63 2f 74  '.echo zip doc/t
0870: 63 6c 73 71 6c 69 74 65 2d 24 56 45 52 53 57 2e  clsqlite-$VERSW.
0880: 7a 69 70 20 74 63 6c 73 71 6c 69 74 65 33 2e 64  zip tclsqlite3.d
0890: 6c 6c 0a 7a 69 70 20 64 6f 63 2f 74 63 6c 73 71  ll.zip doc/tclsq
08a0: 6c 69 74 65 2d 24 56 45 52 53 57 2e 7a 69 70 20  lite-$VERSW.zip 
08b0: 74 63 6c 73 71 6c 69 74 65 33 2e 64 6c 6c 0a 65  tclsqlite3.dll.e
08c0: 63 68 6f 20 7a 69 70 20 64 6f 63 2f 73 71 6c 69  cho zip doc/sqli
08d0: 74 65 64 6c 6c 2d 24 56 45 52 53 57 2e 7a 69 70  tedll-$VERSW.zip
08e0: 20 73 71 6c 69 74 65 33 2e 64 6c 6c 20 73 71 6c   sqlite3.dll sql
08f0: 69 74 65 33 2e 64 65 66 0a 7a 69 70 20 64 6f 63  ite3.def.zip doc
0900: 2f 73 71 6c 69 74 65 64 6c 6c 2d 24 56 45 52 53  /sqlitedll-$VERS
0910: 57 2e 7a 69 70 20 73 71 6c 69 74 65 33 2e 64 6c  W.zip sqlite3.dl
0920: 6c 20 73 71 6c 69 74 65 33 2e 64 65 66 0a 0a 23  l sqlite3.def..#
0930: 20 42 75 69 6c 64 20 74 68 65 20 73 71 6c 69 74   Build the sqlit
0940: 65 2e 65 78 65 20 65 78 65 63 75 74 61 62 6c 65  e.exe executable
0950: 20 66 6f 72 20 77 69 6e 64 6f 77 73 2e 0a 23 0a   for windows..#.
0960: 4f 50 54 53 3d 27 2d 44 53 54 41 54 49 43 5f 42  OPTS='-DSTATIC_B
0970: 55 49 4c 44 3d 31 20 2d 44 4e 44 45 42 55 47 3d  UILD=1 -DNDEBUG=
0980: 31 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41  1 -DSQLITE_THREA
0990: 44 53 41 46 45 3d 30 27 0a 4f 50 54 53 3d 22 24  DSAFE=0'.OPTS="$
09a0: 4f 50 54 53 20 2d 44 53 51 4c 49 54 45 5f 45 4e  OPTS -DSQLITE_EN
09b0: 41 42 4c 45 5f 46 54 53 33 3d 31 20 2d 44 53 51  ABLE_FTS3=1 -DSQ
09c0: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 52 54 52 45  LITE_ENABLE_RTRE
09d0: 45 3d 31 22 0a 69 33 38 36 2d 6d 69 6e 67 77 33  E=1".i386-mingw3
09e0: 32 6d 73 76 63 2d 67 63 63 20 2d 4f 73 20 24 4f  2msvc-gcc -Os $O
09f0: 50 54 53 20 2d 49 74 73 72 63 20 2d 49 24 54 43  PTS -Itsrc -I$TC
0a00: 4c 44 49 52 20 73 71 6c 69 74 65 33 2e 63 20 74  LDIR sqlite3.c t
0a10: 73 72 63 2f 73 68 65 6c 6c 2e 63 20 5c 0a 20 20  src/shell.c \.  
0a20: 20 20 20 20 2d 6f 20 73 71 6c 69 74 65 33 2e 65      -o sqlite3.e
0a30: 78 65 0a 7a 69 70 20 64 6f 63 2f 73 71 6c 69 74  xe.zip doc/sqlit
0a40: 65 2d 24 56 45 52 53 57 2e 7a 69 70 20 73 71 6c  e-$VERSW.zip sql
0a50: 69 74 65 33 2e 65 78 65 0a 0a 23 20 43 6f 6e 73  ite3.exe..# Cons
0a60: 74 72 75 63 74 20 61 20 74 61 72 62 61 6c 6c 20  truct a tarball 
0a70: 6f 66 20 74 68 65 20 73 6f 75 72 63 65 20 74 72  of the source tr
0a80: 65 65 0a 23 0a 65 63 68 6f 20 27 2a 2a 2a 2a 2a  ee.#.echo '*****
0a90: 20 42 55 49 4c 44 49 4e 47 20 73 6f 75 72 63 65   BUILDING source
0aa0: 20 61 72 63 68 69 76 65 27 0a 4f 52 49 47 49 4e   archive'.ORIGIN
0ab0: 3d 60 70 77 64 60 0a 63 64 20 24 73 72 63 64 69  =`pwd`.cd $srcdi
0ac0: 72 0a 63 64 20 2e 2e 0a 6d 76 20 73 71 6c 69 74  r.cd ...mv sqlit
0ad0: 65 20 73 71 6c 69 74 65 2d 24 56 45 52 53 0a 45  e sqlite-$VERS.E
0ae0: 58 43 4c 55 44 45 3d 60 66 69 6e 64 20 73 71 6c  XCLUDE=`find sql
0af0: 69 74 65 2d 24 56 45 52 53 20 2d 70 72 69 6e 74  ite-$VERS -print
0b00: 20 7c 20 65 67 72 65 70 20 28 43 56 53 7c 77 77   | egrep (CVS|ww
0b10: 77 2f 7c 61 72 74 2f 7c 64 6f 63 2f 7c 63 6f 6e  w/|art/|doc/|con
0b20: 74 72 69 62 2f 29 20 7c 20 73 65 64 20 27 73 2c  trib/) | sed 's,
0b30: 5e 2c 20 2d 2d 65 78 63 6c 75 64 65 20 2c 27 60  ^, --exclude ,'`
0b40: 0a 74 61 72 20 63 7a 66 20 24 4f 52 49 47 49 4e  .tar czf $ORIGIN
0b50: 2f 64 6f 63 2f 73 71 6c 69 74 65 2d 24 56 45 52  /doc/sqlite-$VER
0b60: 53 2e 74 61 72 2e 67 7a 20 24 45 58 43 4c 55 44  S.tar.gz $EXCLUD
0b70: 45 20 73 71 6c 69 74 65 2d 24 56 45 52 53 0a 6d  E sqlite-$VERS.m
0b80: 76 20 73 71 6c 69 74 65 2d 24 56 45 52 53 20 73  v sqlite-$VERS s
0b90: 71 6c 69 74 65 0a 63 64 20 24 4f 52 49 47 49 4e  qlite.cd $ORIGIN
0ba0: 0a 0a 23 0a 23 20 42 75 69 6c 64 20 52 50 4d 53  ..#.# Build RPMS
0bb0: 20 28 62 69 6e 61 72 79 29 20 61 6e 64 20 53 6f   (binary) and So
0bc0: 75 72 63 65 20 52 50 4d 0a 23 0a 0a 23 20 4d 61  urce RPM.#..# Ma
0bd0: 6b 65 20 73 75 72 65 20 77 65 20 61 72 65 20 70  ke sure we are p
0be0: 72 6f 70 65 72 6c 79 20 73 65 74 75 70 20 74 6f  roperly setup to
0bf0: 20 62 75 69 6c 64 20 52 50 4d 73 0a 23 0a 65 63   build RPMs.#.ec
0c00: 68 6f 20 22 25 48 4f 4d 45 20 25 7b 65 78 70 61  ho "%HOME %{expa
0c10: 6e 64 3a 25 25 28 63 64 3b 20 70 77 64 29 7d 22  nd:%%(cd; pwd)}"
0c20: 20 3e 20 24 48 4f 4d 45 2f 2e 72 70 6d 6d 61 63   > $HOME/.rpmmac
0c30: 72 6f 73 0a 65 63 68 6f 20 22 25 5f 74 6f 70 64  ros.echo "%_topd
0c40: 69 72 20 25 7b 48 4f 4d 45 7d 2f 72 70 6d 22 20  ir %{HOME}/rpm" 
0c50: 3e 3e 20 24 48 4f 4d 45 2f 2e 72 70 6d 6d 61 63  >> $HOME/.rpmmac
0c60: 72 6f 73 0a 6d 6b 64 69 72 20 24 48 4f 4d 45 2f  ros.mkdir $HOME/
0c70: 72 70 6d 0a 6d 6b 64 69 72 20 24 48 4f 4d 45 2f  rpm.mkdir $HOME/
0c80: 72 70 6d 2f 42 55 49 4c 44 0a 6d 6b 64 69 72 20  rpm/BUILD.mkdir 
0c90: 24 48 4f 4d 45 2f 72 70 6d 2f 53 4f 55 52 43 45  $HOME/rpm/SOURCE
0ca0: 53 0a 6d 6b 64 69 72 20 24 48 4f 4d 45 2f 72 70  S.mkdir $HOME/rp
0cb0: 6d 2f 52 50 4d 53 0a 6d 6b 64 69 72 20 24 48 4f  m/RPMS.mkdir $HO
0cc0: 4d 45 2f 72 70 6d 2f 53 52 50 4d 53 0a 6d 6b 64  ME/rpm/SRPMS.mkd
0cd0: 69 72 20 24 48 4f 4d 45 2f 72 70 6d 2f 53 50 45  ir $HOME/rpm/SPE
0ce0: 43 53 0a 0a 23 20 63 72 65 61 74 65 20 74 68 65  CS..# create the
0cf0: 20 73 70 65 63 20 66 69 6c 65 20 66 72 6f 6d 20   spec file from 
0d00: 74 68 65 20 74 65 6d 70 6c 61 74 65 0a 73 65 64  the template.sed
0d10: 20 73 2f 53 51 4c 49 54 45 5f 56 45 52 53 49 4f   s/SQLITE_VERSIO
0d20: 4e 2f 24 56 45 52 53 2f 67 20 24 73 72 63 64 69  N/$VERS/g $srcdi
0d30: 72 2f 73 70 65 63 2e 74 65 6d 70 6c 61 74 65 20  r/spec.template 
0d40: 3e 20 24 48 4f 4d 45 2f 72 70 6d 2f 53 50 45 43  > $HOME/rpm/SPEC
0d50: 53 2f 73 71 6c 69 74 65 2e 73 70 65 63 0a 0a 23  S/sqlite.spec..#
0d60: 20 63 6f 70 79 20 74 68 65 20 73 6f 75 72 63 65   copy the source
0d70: 20 74 61 72 62 61 6c 6c 20 74 6f 20 74 68 65 20   tarball to the 
0d80: 72 70 6d 20 64 69 72 65 63 74 6f 72 79 0a 63 70  rpm directory.cp
0d90: 20 64 6f 63 2f 73 71 6c 69 74 65 2d 24 56 45 52   doc/sqlite-$VER
0da0: 53 2e 74 61 72 2e 67 7a 20 24 48 4f 4d 45 2f 72  S.tar.gz $HOME/r
0db0: 70 6d 2f 53 4f 55 52 43 45 53 2f 2e 0a 0a 23 20  pm/SOURCES/...# 
0dc0: 62 75 69 6c 64 20 61 6c 6c 20 74 68 65 20 72 70  build all the rp
0dd0: 6d 73 0a 72 70 6d 20 2d 62 61 20 24 48 4f 4d 45  ms.rpm -ba $HOME
0de0: 2f 72 70 6d 2f 53 50 45 43 53 2f 73 71 6c 69 74  /rpm/SPECS/sqlit
0df0: 65 2e 73 70 65 63 20 3e 26 20 72 70 6d 2d 24 76  e.spec >& rpm-$v
0e00: 65 72 73 2e 6c 6f 67 0a 0a 23 20 63 6f 70 79 20  ers.log..# copy 
0e10: 74 68 65 20 52 50 4d 73 20 69 6e 74 6f 20 74 68  the RPMs into th
0e20: 65 20 62 75 69 6c 64 20 64 69 72 65 63 74 6f 72  e build director
0e30: 79 2e 0a 6d 76 20 24 48 4f 4d 45 2f 72 70 6d 2f  y..mv $HOME/rpm/
0e40: 52 50 4d 53 2f 69 33 38 36 2f 73 71 6c 69 74 65  RPMS/i386/sqlite
0e50: 2a 2d 24 76 65 72 73 2a 2e 72 70 6d 20 64 6f 63  *-$vers*.rpm doc
0e60: 0a 6d 76 20 24 48 4f 4d 45 2f 72 70 6d 2f 53 52  .mv $HOME/rpm/SR
0e70: 50 4d 53 2f 73 71 6c 69 74 65 2d 24 76 65 72 73  PMS/sqlite-$vers
0e80: 2a 2e 72 70 6d 20 64 6f 63 0a 0a 23 20 42 75 69  *.rpm doc..# Bui
0e90: 6c 64 20 74 68 65 20 77 65 62 73 69 74 65 0a 23  ld the website.#
0ea0: 0a 23 63 70 20 24 73 72 63 64 69 72 2f 2e 2e 2f  .#cp $srcdir/../
0eb0: 68 69 73 74 6f 72 69 63 61 6c 2f 2a 20 64 6f 63  historical/* doc
0ec0: 0a 23 6d 61 6b 65 20 64 6f 63 0a 23 63 64 20 64  .#make doc.#cd d
0ed0: 6f 63 0a 23 63 68 6d 6f 64 20 36 34 34 20 2a 2e  oc.#chmod 644 *.
0ee0: 67 7a 0a                                         gz.