/ Hex Artifact Content
Login

Artifact caaf6ccc7300fd43353318b44524853e222557d5:


0000: 23 21 2f 62 69 6e 2f 73 68 0a 23 0a 23 20 52 75  #!/bin/sh.#.# Ru
0010: 6e 20 74 68 69 73 20 73 63 72 69 70 74 20 69 6e  n this script in
0020: 20 61 20 64 69 72 65 63 74 6f 72 79 20 74 68 61   a directory tha
0030: 74 20 63 6f 6e 74 61 69 6e 73 20 61 20 76 61 6c  t contains a val
0040: 69 64 20 53 51 4c 69 74 65 20 6d 61 6b 65 66 69  id SQLite makefi
0050: 6c 65 20 69 6e 0a 23 20 6f 72 64 65 72 20 74 6f  le in.# order to
0060: 20 76 65 72 69 66 79 20 74 68 61 74 20 75 6e 69   verify that uni
0070: 6e 74 65 6e 74 69 6f 6e 61 6c 6c 79 20 65 78 70  ntentionally exp
0080: 6f 72 74 65 64 20 73 79 6d 62 6f 6c 73 2e 0a 23  orted symbols..#
0090: 0a 6d 61 6b 65 20 73 71 6c 69 74 65 33 2e 63 0a  .make sqlite3.c.
00a0: 0a 65 63 68 6f 20 27 2a 2a 2a 2a 2a 2a 20 45 78  .echo '****** Ex
00b0: 70 6f 72 74 65 64 20 73 79 6d 62 6f 6c 73 20 66  ported symbols f
00c0: 72 6f 6d 20 61 20 62 75 69 6c 64 20 69 6e 63 6c  rom a build incl
00d0: 75 64 69 6e 67 20 52 54 52 45 45 2c 20 46 54 53  uding RTREE, FTS
00e0: 34 20 26 20 49 43 55 20 2a 2a 2a 2a 2a 2a 27 0a  4 & ICU ******'.
00f0: 67 63 63 20 2d 63 20 2d 44 53 51 4c 49 54 45 5f  gcc -c -DSQLITE_
0100: 45 4e 41 42 4c 45 5f 46 54 53 33 20 2d 44 53 51  ENABLE_FTS3 -DSQ
0110: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 52 54 52 45  LITE_ENABLE_RTRE
0120: 45 20 5c 0a 20 20 2d 44 53 51 4c 49 54 45 5f 45  E \.  -DSQLITE_E
0130: 4e 41 42 4c 45 5f 4d 45 4d 4f 52 59 5f 4d 41 4e  NABLE_MEMORY_MAN
0140: 41 47 45 4d 45 4e 54 20 2d 44 53 51 4c 49 54 45  AGEMENT -DSQLITE
0150: 5f 45 4e 41 42 4c 45 5f 53 54 41 54 32 20 5c 0a  _ENABLE_STAT2 \.
0160: 20 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c    -DSQLITE_ENABL
0170: 45 5f 4d 45 4d 53 59 53 35 20 2d 44 53 51 4c 49  E_MEMSYS5 -DSQLI
0180: 54 45 5f 45 4e 41 42 4c 45 5f 55 4e 4c 4f 43 4b  TE_ENABLE_UNLOCK
0190: 5f 4e 4f 54 49 46 59 20 5c 0a 20 20 2d 44 53 51  _NOTIFY \.  -DSQ
01a0: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 43 4f 4c 55  LITE_ENABLE_COLU
01b0: 4d 4e 5f 4d 45 54 41 44 41 54 41 20 2d 44 53 51  MN_METADATA -DSQ
01c0: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 41 54 4f 4d  LITE_ENABLE_ATOM
01d0: 49 43 5f 57 52 49 54 45 20 5c 0a 20 20 2d 44 53  IC_WRITE \.  -DS
01e0: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 43 55  QLITE_ENABLE_ICU
01f0: 20 5c 0a 20 20 73 71 6c 69 74 65 33 2e 63 0a 6e   \.  sqlite3.c.n
0200: 6d 20 73 71 6c 69 74 65 33 2e 6f 20 7c 20 67 72  m sqlite3.o | gr
0210: 65 70 20 27 20 5b 54 44 5d 20 27 20 7c 20 73 6f  ep ' [TD] ' | so
0220: 72 74 20 2d 6b 20 33 0a 0a 65 63 68 6f 20 27 2a  rt -k 3..echo '*
0230: 2a 2a 2a 2a 2a 20 53 75 72 70 6c 75 73 20 73 79  ***** Surplus sy
0240: 6d 62 6f 6c 73 20 66 72 6f 6d 20 61 20 62 75 69  mbols from a bui
0250: 6c 64 20 69 6e 63 6c 75 64 69 6e 67 20 52 54 52  ld including RTR
0260: 45 45 2c 20 46 54 53 34 20 26 20 49 43 55 20 2a  EE, FTS4 & ICU *
0270: 2a 2a 2a 2a 2a 27 0a 6e 6d 20 73 71 6c 69 74 65  *****'.nm sqlite
0280: 33 2e 6f 20 7c 20 67 72 65 70 20 27 20 5b 54 44  3.o | grep ' [TD
0290: 5d 20 27 20 7c 20 67 72 65 70 20 2d 76 20 27 20  ] ' | grep -v ' 
02a0: 2e 2a 73 71 6c 69 74 65 33 5f 27 0a 0a 65 63 68  .*sqlite3_'..ech
02b0: 6f 20 27 2a 2a 2a 2a 2a 2a 20 44 65 70 65 6e 64  o '****** Depend
02c0: 65 6e 63 69 65 73 20 6f 66 20 74 68 65 20 63 6f  encies of the co
02d0: 72 65 2e 20 4e 6f 20 65 78 74 65 6e 73 69 6f 6e  re. No extension
02e0: 73 2e 20 4e 6f 20 4f 53 20 69 6e 74 65 72 66 61  s. No OS interfa
02f0: 63 65 20 2a 2a 2a 2a 2a 2a 2a 27 0a 67 63 63 20  ce *******'.gcc 
0300: 2d 63 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  -c -DSQLITE_ENAB
0310: 4c 45 5f 4d 45 4d 4f 52 59 5f 4d 41 4e 41 47 45  LE_MEMORY_MANAGE
0320: 4d 45 4e 54 20 2d 44 53 51 4c 49 54 45 5f 45 4e  MENT -DSQLITE_EN
0330: 41 42 4c 45 5f 53 54 41 54 32 20 5c 0a 20 20 2d  ABLE_STAT2 \.  -
0340: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 4d  DSQLITE_ENABLE_M
0350: 45 4d 53 59 53 35 20 2d 44 53 51 4c 49 54 45 5f  EMSYS5 -DSQLITE_
0360: 45 4e 41 42 4c 45 5f 55 4e 4c 4f 43 4b 5f 4e 4f  ENABLE_UNLOCK_NO
0370: 54 49 46 59 20 5c 0a 20 20 2d 44 53 51 4c 49 54  TIFY \.  -DSQLIT
0380: 45 5f 45 4e 41 42 4c 45 5f 43 4f 4c 55 4d 4e 5f  E_ENABLE_COLUMN_
0390: 4d 45 54 41 44 41 54 41 20 2d 44 53 51 4c 49 54  METADATA -DSQLIT
03a0: 45 5f 45 4e 41 42 4c 45 5f 41 54 4f 4d 49 43 5f  E_ENABLE_ATOMIC_
03b0: 57 52 49 54 45 20 5c 0a 20 20 2d 44 53 51 4c 49  WRITE \.  -DSQLI
03c0: 54 45 5f 4f 53 5f 4f 54 48 45 52 20 2d 44 53 51  TE_OS_OTHER -DSQ
03d0: 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d  LITE_THREADSAFE=
03e0: 30 20 5c 0a 20 20 73 71 6c 69 74 65 33 2e 63 0a  0 \.  sqlite3.c.
03f0: 6e 6d 20 73 71 6c 69 74 65 33 2e 6f 20 7c 20 67  nm sqlite3.o | g
0400: 72 65 70 20 27 20 55 20 27 20 7c 20 73 6f 72 74  rep ' U ' | sort
0410: 20 2d 6b 20 33 0a 0a 65 63 68 6f 20 27 2a 2a 2a   -k 3..echo '***
0420: 2a 2a 2a 20 44 65 70 65 6e 64 65 6e 63 69 65 73  *** Dependencies
0430: 20 69 6e 63 6c 75 64 69 6e 67 20 52 54 52 45 45   including RTREE
0440: 20 26 20 46 54 53 34 20 2a 2a 2a 2a 2a 2a 2a 27   & FTS4 *******'
0450: 0a 67 63 63 20 2d 63 20 2d 44 53 51 4c 49 54 45  .gcc -c -DSQLITE
0460: 5f 45 4e 41 42 4c 45 5f 46 54 53 33 20 2d 44 53  _ENABLE_FTS3 -DS
0470: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 52 54 52  QLITE_ENABLE_RTR
0480: 45 45 20 5c 0a 20 20 2d 44 53 51 4c 49 54 45 5f  EE \.  -DSQLITE_
0490: 45 4e 41 42 4c 45 5f 4d 45 4d 4f 52 59 5f 4d 41  ENABLE_MEMORY_MA
04a0: 4e 41 47 45 4d 45 4e 54 20 2d 44 53 51 4c 49 54  NAGEMENT -DSQLIT
04b0: 45 5f 45 4e 41 42 4c 45 5f 53 54 41 54 32 20 5c  E_ENABLE_STAT2 \
04c0: 0a 20 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  .  -DSQLITE_ENAB
04d0: 4c 45 5f 4d 45 4d 53 59 53 35 20 2d 44 53 51 4c  LE_MEMSYS5 -DSQL
04e0: 49 54 45 5f 45 4e 41 42 4c 45 5f 55 4e 4c 4f 43  ITE_ENABLE_UNLOC
04f0: 4b 5f 4e 4f 54 49 46 59 20 5c 0a 20 20 2d 44 53  K_NOTIFY \.  -DS
0500: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 43 4f 4c  QLITE_ENABLE_COL
0510: 55 4d 4e 5f 4d 45 54 41 44 41 54 41 20 2d 44 53  UMN_METADATA -DS
0520: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 41 54 4f  QLITE_ENABLE_ATO
0530: 4d 49 43 5f 57 52 49 54 45 20 5c 0a 20 20 73 71  MIC_WRITE \.  sq
0540: 6c 69 74 65 33 2e 63 0a 6e 6d 20 73 71 6c 69 74  lite3.c.nm sqlit
0550: 65 33 2e 6f 20 7c 20 67 72 65 70 20 27 20 55 20  e3.o | grep ' U 
0560: 27 20 7c 20 73 6f 72 74 20 2d 6b 20 33 0a        ' | sort -k 3.