diff options
Diffstat (limited to 'lib/libsqlite3/tool/split-sqlite3c.tcl')
-rw-r--r-- | lib/libsqlite3/tool/split-sqlite3c.tcl | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/lib/libsqlite3/tool/split-sqlite3c.tcl b/lib/libsqlite3/tool/split-sqlite3c.tcl deleted file mode 100644 index 287b752828f..00000000000 --- a/lib/libsqlite3/tool/split-sqlite3c.tcl +++ /dev/null @@ -1,82 +0,0 @@ -#!/usr/bin/tclsh -# -# This script splits the sqlite3.c amalgamated source code files into -# several smaller files such that no single files is more than a fixed -# number of lines in length (32k or 64k). Each of the split out files -# is #include-ed by the master file. -# -# Splitting files up this way allows them to be used with older compilers -# that cannot handle really long source files. -# -set MAX 32768 ;# Maximum number of lines per file. - -set BEGIN {^/\*+ Begin file ([a-zA-Z0-9_.]+) \*+/} -set END {^/\*+ End of %s \*+/} - -set in [open sqlite3.c] -set out1 [open sqlite3-all.c w] - -# Copy the header from sqlite3.c into sqlite3-all.c -# -while {[gets $in line]} { - if {[regexp $BEGIN $line]} break - puts $out1 $line -} - -# Gather the complete content of a file into memory. Store the -# content in $bufout. Store the number of lines is $nout -# -proc gather_one_file {firstline bufout nout} { - regexp $::BEGIN $firstline all filename - set end [format $::END $filename] - upvar $bufout buf $nout n - set buf $firstline\n - global in - set n 0 - while {[gets $in line]>=0} { - incr n - append buf $line\n - if {[regexp $end $line]} break - } -} - -# Write a big chunk of text in to an auxiliary file "sqlite3-NNN.c". -# Also add an appropriate #include to sqlite3-all.c -# -set filecnt 0 -proc write_one_file {content} { - global filecnt - incr filecnt - set out [open sqlite3-$filecnt.c w] - puts -nonewline $out $content - close $out - puts $::out1 "#include \"sqlite3-$filecnt.c\"" -} - -# Continue reading input. Store chunks in separate files and add -# the #includes to the main sqlite3-all.c file as necessary to reference -# the extra chunks. -# -set all {} -set N 0 -while {[regexp $BEGIN $line]} { - set buf {} - set n 0 - gather_one_file $line buf n - if {$n+$N>=$MAX} { - write_one_file $all - set all {} - set N 0 - } - append all $buf - incr N $n - while {[gets $in line]>=0} { - if {[regexp $BEGIN $line]} break - puts $out1 $line - } -} -if {$N>0} { - write_one_file $all -} -close $out1 -close $in |