Hex Artifact Content

Artifact c427692260e6a1baa2f3b77728e227e1cc770b5c:


0000: 23 21 20 2f 62 69 6e 2f 62 61 73 68 0a 0a 23 20  #! /bin/bash..# 
0010: 44 65 66 69 6e 65 20 70 61 72 61 6d 65 74 65 72  Define parameter
0020: 73 0a 56 45 52 53 3d 33 2e 37 2e 37 2e 31 0a 56  s.VERS=3.7.7.1.V
0030: 45 52 53 55 4e 44 45 52 3d 22 24 28 65 63 68 6f  ERSUNDER="$(echo
0040: 20 22 24 7b 56 45 52 53 7d 22 20 7c 20 73 65 64   "${VERS}" | sed
0050: 20 27 73 40 5c 2e 40 5f 40 67 27 29 22 0a 56 45   's@\.@_@g')".VE
0060: 52 53 5a 45 52 4f 53 3d 22 24 28 65 63 68 6f 20  RSZEROS="$(echo 
0070: 22 24 7b 56 45 52 53 7d 22 20 7c 20 73 65 64 20  "${VERS}" | sed 
0080: 27 73 40 5c 2e 5c 28 5b 30 2d 39 5d 5c 29 5c 2e  's@\.\([0-9]\)\.
0090: 40 2e 30 5c 31 2e 40 67 3b 73 40 5c 2e 5c 28 5b  @.0\1.@g;s@\.\([
00a0: 30 2d 39 5d 5c 29 5c 2e 40 2e 30 5c 31 2e 40 67  0-9]\)\.@.0\1.@g
00b0: 3b 73 40 5c 2e 5c 28 5b 30 2d 39 5d 5c 29 24 40  ;s@\.\([0-9]\)$@
00c0: 2e 30 5c 31 40 67 3b 73 40 5c 2e 40 40 67 27 29  .0\1@g;s@\.@@g')
00d0: 22 0a 53 52 43 3d 22 73 72 63 2f 73 71 6c 69 74  ".SRC="src/sqlit
00e0: 65 2d 24 7b 56 45 52 53 7d 2e 74 61 72 2e 67 7a  e-${VERS}.tar.gz
00f0: 22 0a 53 52 43 55 52 4c 3d 22 68 74 74 70 3a 2f  ".SRCURL="http:/
0100: 2f 77 77 77 2e 73 71 6c 69 74 65 2e 6f 72 67 2f  /www.sqlite.org/
0110: 73 71 6c 69 74 65 2d 61 75 74 6f 63 6f 6e 66 2d  sqlite-autoconf-
0120: 24 7b 56 45 52 53 5a 45 52 4f 53 7d 2e 74 61 72  ${VERSZEROS}.tar
0130: 2e 67 7a 22 0a 42 55 49 4c 44 44 49 52 3d 22 73  .gz".BUILDDIR="s
0140: 71 6c 69 74 65 2d 61 75 74 6f 63 6f 6e 66 2d 24  qlite-autoconf-$
0150: 7b 56 45 52 53 5a 45 52 4f 53 7d 22 0a 65 78 70  {VERSZEROS}".exp
0160: 6f 72 74 20 56 45 52 53 20 53 52 43 20 53 52 43  ort VERS SRC SRC
0170: 55 52 4c 20 42 55 49 4c 44 44 49 52 0a 0a 23 20  URL BUILDDIR..# 
0180: 4c 6f 61 64 20 63 6f 6d 6d 6f 6e 20 66 75 6e 63  Load common func
0190: 74 69 6f 6e 73 0a 73 6f 75 72 63 65 20 2e 2e 2f  tions.source ../
01a0: 63 6f 6d 6d 6f 6e 2e 73 68 0a 0a 23 20 44 6f 20  common.sh..# Do 
01b0: 6e 6f 74 20 62 75 69 6c 64 20 69 66 20 74 68 65  not build if the
01c0: 20 22 74 63 6c 22 20 70 6c 61 74 66 6f 72 6d 20   "tcl" platform 
01d0: 68 61 73 20 62 65 65 6e 20 72 65 71 75 65 73 74  has been request
01e0: 65 64 0a 6e 6f 74 5f 70 6c 61 74 66 6f 72 6d 73  ed.not_platforms
01f0: 20 27 74 63 6c 27 0a 0a 23 20 44 6f 77 6e 6c 6f   'tcl'..# Downlo
0200: 61 64 20 73 6f 75 72 63 65 0a 64 6f 77 6e 6c 6f  ad source.downlo
0210: 61 64 5f 73 72 63 0a 0a 28 0a 09 72 6d 20 2d 72  ad_src..(..rm -r
0220: 66 20 62 75 69 6c 64 0a 09 6d 6b 64 69 72 20 2d  f build..mkdir -
0230: 70 20 22 24 7b 50 4c 41 54 44 49 52 7d 22 20 3e  p "${PLATDIR}" >
0240: 2f 64 65 76 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76  /dev/null 2>/dev
0250: 2f 6e 75 6c 6c 0a 09 6d 6b 64 69 72 20 62 75 69  /null..mkdir bui
0260: 6c 64 0a 0a 09 63 64 20 62 75 69 6c 64 2f 20 7c  ld...cd build/ |
0270: 7c 20 65 78 69 74 20 31 0a 0a 09 67 7a 69 70 20  | exit 1...gzip 
0280: 2d 64 63 20 22 2e 2e 2f 24 7b 53 52 43 7d 22 20  -dc "../${SRC}" 
0290: 7c 20 74 61 72 20 2d 78 66 20 2d 0a 09 63 64 20  | tar -xf -..cd 
02a0: 22 24 7b 42 55 49 4c 44 44 49 52 7d 22 20 7c 7c  "${BUILDDIR}" ||
02b0: 20 65 78 69 74 20 31 0a 09 63 64 20 22 74 65 61   exit 1..cd "tea
02c0: 22 20 7c 7c 20 65 78 69 74 20 31 0a 0a 09 63 68  " || exit 1...ch
02d0: 6d 6f 64 20 2b 78 20 74 63 6c 63 6f 6e 66 69 67  mod +x tclconfig
02e0: 2f 69 6e 73 74 61 6c 6c 2d 73 68 0a 0a 09 23 20  /install-sh...# 
02f0: 45 6e 61 62 6c 65 20 46 54 53 33 0a 09 43 50 50  Enable FTS3..CPP
0300: 46 4c 41 47 53 3d 22 24 7b 43 50 50 46 4c 41 47  FLAGS="${CPPFLAG
0310: 53 7d 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  S} -DSQLITE_ENAB
0320: 4c 45 5f 46 54 53 33 20 2d 44 53 51 4c 49 54 45  LE_FTS3 -DSQLITE
0330: 5f 45 4e 41 42 4c 45 5f 46 54 53 33 5f 50 41 52  _ENABLE_FTS3_PAR
0340: 45 4e 54 48 45 53 49 53 22 0a 0a 09 23 20 45 6e  ENTHESIS"...# En
0350: 61 62 6c 65 20 52 54 72 65 65 0a 09 43 50 50 46  able RTree..CPPF
0360: 4c 41 47 53 3d 22 24 7b 43 50 50 46 4c 41 47 53  LAGS="${CPPFLAGS
0370: 7d 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  } -DSQLITE_ENABL
0380: 45 5f 52 54 52 45 45 3d 31 22 0a 09 65 78 70 6f  E_RTREE=1"..expo
0390: 72 74 20 43 50 50 46 4c 41 47 53 0a 0a 09 62 61  rt CPPFLAGS...ba
03a0: 73 68 20 2e 2f 63 6f 6e 66 69 67 75 72 65 20 2d  sh ./configure -
03b0: 2d 65 6e 61 62 6c 65 2d 73 68 61 72 65 64 20 2d  -enable-shared -
03c0: 2d 77 69 74 68 2d 74 63 6c 3d 22 24 7b 54 43 4c  -with-tcl="${TCL
03d0: 43 4f 4e 46 49 47 44 49 52 7d 22 20 2d 2d 70 72  CONFIGDIR}" --pr
03e0: 65 66 69 78 3d 22 24 7b 50 4c 41 54 44 49 52 7d  efix="${PLATDIR}
03f0: 22 20 2d 2d 6c 69 62 64 69 72 3d 22 24 7b 50 4c  " --libdir="${PL
0400: 41 54 44 49 52 7d 22 20 2d 2d 62 69 6e 64 69 72  ATDIR}" --bindir
0410: 3d 22 24 7b 50 4c 41 54 44 49 52 7d 22 20 24 7b  ="${PLATDIR}" ${
0420: 43 4f 4e 46 49 47 55 52 45 45 58 54 52 41 7d 0a  CONFIGUREEXTRA}.
0430: 0a 09 24 7b 4d 41 4b 45 3a 2d 6d 61 6b 65 7d 20  ..${MAKE:-make} 
0440: 7c 7c 20 65 78 69 74 20 31 0a 0a 09 24 7b 4d 41  || exit 1...${MA
0450: 4b 45 3a 2d 6d 61 6b 65 7d 20 69 6e 73 74 61 6c  KE:-make} instal
0460: 6c 2d 62 69 6e 61 72 69 65 73 20 50 4b 47 5f 44  l-binaries PKG_D
0470: 49 52 3d 27 27 20 7c 7c 20 65 78 69 74 20 31 0a  IR='' || exit 1.
0480: 0a 09 72 6d 20 2d 66 20 22 24 7b 50 4c 41 54 44  ..rm -f "${PLATD
0490: 49 52 7d 22 2f 2a 2e 61 0a 29 20 7c 7c 20 65 78  IR}"/*.a.) || ex
04a0: 69 74 20 31 0a 0a 2e 2e 2f 63 72 65 61 74 65 5f  it 1..../create_
04b0: 74 65 61 70 6f 74 20 22 24 7b 50 4c 41 54 44 49  teapot "${PLATDI
04c0: 52 7d 2f 74 65 61 70 6f 74 2e 74 78 74 22 20 22  R}/teapot.txt" "
04d0: 73 71 6c 69 74 65 33 22 20 22 24 7b 56 45 52 53  sqlite3" "${VERS
04e0: 7d 22 20 22 24 7b 53 52 43 55 52 4c 7d 22 20 22  }" "${SRCURL}" "
04f0: 24 7b 50 4c 41 54 46 4f 52 4d 7d 22 20 22 54 63  ${PLATFORM}" "Tc
0500: 6c 20 38 2e 34 22 20 22 53 51 4c 69 74 65 20 28  l 8.4" "SQLite (
0510: 77 69 74 68 20 46 54 53 33 29 22 0a 0a 65 78 69  with FTS3)"..exi
0520: 74 20 30 0a                                      t 0.