From 391b36472ae14d581ff560a0dd840007b346c42c Mon Sep 17 00:00:00 2001 From: mistachkin Date: Tue, 31 Jul 2012 00:43:31 +0000 Subject: [PATCH] Modify metadata for the VSIX package and add tooling support for PDBs. FossilOrigin-Name: 12cbf6a9343ffb24065f77f679e50b67bc2e43f9 --- manifest | 18 ++++---- manifest.uuid | 2 +- tool/build-all-msvc.bat | 16 ++++++- tool/mkvsix.tcl | 98 +++++++++++++++++++++++++++++++--------- tool/win/sqlite.vsix | Bin 34247 -> 32783 bytes 5 files changed, 101 insertions(+), 33 deletions(-) diff --git a/manifest b/manifest index 6d26290011..9181eaf941 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Replace\sa\sfew\ssqlite3_malloc()+memset()\ssequences\swith\scalls\sto\ssqlite3MallocZero(). -D 2012-07-30T14:53:54.464 +C Modify\smetadata\sfor\sthe\sVSIX\spackage\sand\sadd\stooling\ssupport\sfor\sPDBs. +D 2012-07-31T00:43:31.954 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in abd5c10d21d1395f140d9e50ea999df8fa4d6376 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -966,7 +966,7 @@ F test/wherelimit.test 5e9fd41e79bb2b2d588ed999d641d9c965619b31 F test/win32lock.test b2a539e85ae6b2d78475e016a9636b4451dc7fb9 F test/zeroblob.test caaecfb4f908f7bc086ed238668049f96774d688 F test/zerodamage.test 0de750389990b1078bab203c712dc3fefd1d8b82 -F tool/build-all-msvc.bat f8e272fc74c48e7697f4744aacce1ee4df5edb20 x +F tool/build-all-msvc.bat 1a18aa39983ae7354d834bc55a850a54fc007576 x F tool/build-shell.sh b64a481901fc9ffe5ca8812a2a9255b6cfb77381 F tool/diffdb.c 7524b1b5df217c20cd0431f6789851a4e0cb191b F tool/extract.c 054069d81b095fbdc189a6f5d4466e40380505e2 @@ -983,7 +983,7 @@ F tool/mksqlite3c-noext.tcl 8bce31074e4cbe631bb7676526a048335f4c9f02 F tool/mksqlite3c.tcl 589c7f44e990be1b8443cfe4808dce392b0327fa F tool/mksqlite3h.tcl 78013ad79a5e492e5f764f3c7a8ef834255061f8 F tool/mksqlite3internalh.tcl 3dca7bb5374cee003379b8cbac73714f610ef795 -F tool/mkvsix.tcl 75fb1b601d69ead76340fa15bf9813874fed240b +F tool/mkvsix.tcl ce2ad5da880752426e2597382f3bf1279d5646b3 F tool/offsets.c fe4262fdfa378e8f5499a42136d17bf3b98f6091 F tool/omittest.tcl 4665982e95a6e5c1bd806cf7bc3dea95be422d77 F tool/opcodeDoc.awk b3a2a3d5d3075b8bd90b7afe24283efdd586659c @@ -1007,8 +1007,8 @@ F tool/tostr.awk e75472c2f98dd76e06b8c9c1367f4ab07e122d06 F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 -F tool/win/sqlite.vsix 84163b633f01f35cb47495c05dd2b640159677ff -P e71f2de2cc7c4ef5ee31da81b6615886f6e601e7 -R a7495b0145c88ec6647f7c425289b3e1 -U dan -Z 82b9855bd1443e957263d9bd8f18cf53 +F tool/win/sqlite.vsix a8778c835bbfe8d9d2066c144542c245a29ac525 +P 305b6667265353b858b79bfea1745e64ff3bb7d3 +R bd2d8408dc9dbcc7a27c7ffc1e947c79 +U mistachkin +Z 91e5f70404ea58b1f716b323c3d5addd diff --git a/manifest.uuid b/manifest.uuid index eeb9e4e8c7..eda8eaf007 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -305b6667265353b858b79bfea1745e64ff3bb7d3 \ No newline at end of file +12cbf6a9343ffb24065f77f679e50b67bc2e43f9 \ No newline at end of file diff --git a/tool/build-all-msvc.bat b/tool/build-all-msvc.bat index bc6dbf2ad8..a2d7dae3a3 100755 --- a/tool/build-all-msvc.bat +++ b/tool/build-all-msvc.bat @@ -253,7 +253,7 @@ FOR %%P IN (%PLATFORMS%) DO ( REM to remove the build output for the files we are specifically REM wanting to build for each platform. REM - %__ECHO% DEL /Q sqlite3.dll sqlite3.lib + %__ECHO% DEL /Q sqlite3.dll sqlite3.lib sqlite3.pdb ) REM @@ -291,6 +291,20 @@ FOR %%P IN (%PLATFORMS%) DO ( ECHO Failed to copy "sqlite3.lib" to "%BINARYDIRECTORY%\%%D\". GOTO errors ) + + REM + REM NOTE: Copy the "sqlite3.pdb" file to the platform-specific directory + REM beneath the binary directory unless we are prevented from doing + REM so. + REM + IF NOT DEFINED NOSYMBOLS ( + %__ECHO% XCOPY sqlite3.pdb "%BINARYDIRECTORY%\%%D\" %FFLAGS% %DFLAGS% + + IF ERRORLEVEL 1 ( + ECHO Failed to copy "sqlite3.pdb" to "%BINARYDIRECTORY%\%%D\". + GOTO errors + ) + ) ) ) diff --git a/tool/mkvsix.tcl b/tool/mkvsix.tcl index a5a569d475..3a570b650a 100644 --- a/tool/mkvsix.tcl +++ b/tool/mkvsix.tcl @@ -147,6 +147,19 @@ if {![file exists $sourceDirectory] || \ ############################################################################### +# +# NOTE: Evaluate the user-specific customizations file, if it exists. +# +set userFile [file join $path [appendArgs \ + $rootName . $tcl_platform(user) .tcl]] + +if {[file exists $userFile] && \ + [file isfile $userFile]} then { + source $userFile +} + +############################################################################### + set templateFile [file join $path win sqlite.vsix] if {![file exists $templateFile] || \ @@ -220,7 +233,7 @@ if {![info exists unzip]} then { # in the source directory. This script assumes that the header file has # already been generated by the build process. # -set pattern {^#define\s+?SQLITE_VERSION\s+?"(.*?)"$} +set pattern {^#define\s+SQLITE_VERSION\s+"(.*)"$} set data [readFile [file join $sourceDirectory sqlite3.h]] if {![regexp -line -- $pattern $data dummy version]} then { @@ -233,32 +246,62 @@ if {![regexp -line -- $pattern $data dummy version]} then { # # NOTE: Setup the master file list data, including the necessary flags. # -set fileNames(source) [list "" "" "" \ - [file join $sourceDirectory sqlite3.h] \ - [file join $binaryDirectory sqlite3.lib] \ - [file join $binaryDirectory sqlite3.dll]] +if {![info exists fileNames(source)]} then { + set fileNames(source) [list "" "" "" \ + [file join $sourceDirectory sqlite3.h] \ + [file join $binaryDirectory sqlite3.lib] \ + [file join $binaryDirectory sqlite3.dll]] -set fileNames(destination) [list \ - [file join $stagingDirectory extension.vsixmanifest] \ - [file join $stagingDirectory SDKManifest.xml] \ - [file join $stagingDirectory DesignTime CommonConfiguration \ - SQLite.WinRT.props] \ - [file join $stagingDirectory DesignTime CommonConfiguration \ - sqlite3.h] \ - [file join $stagingDirectory DesignTime CommonConfiguration \ - sqlite3.lib] \ - [file join $stagingDirectory Redist CommonConfiguration \ - sqlite3.dll]] + if {![info exists no(symbols)]} then { + lappend fileNames(source) \ + [file join $binaryDirectory sqlite3.pdb] + } +} -set fileNames(neutral) [list 1 1 1 1 0 0] -set fileNames(subst) [list 1 1 1 0 0 0] +if {![info exists fileNames(destination)]} then { + set fileNames(destination) [list \ + [file join $stagingDirectory extension.vsixmanifest] \ + [file join $stagingDirectory SDKManifest.xml] \ + [file join $stagingDirectory DesignTime CommonConfiguration \ + SQLite.WinRT.props] \ + [file join $stagingDirectory DesignTime CommonConfiguration \ + sqlite3.h] \ + [file join $stagingDirectory DesignTime CommonConfiguration \ + sqlite3.lib] \ + [file join $stagingDirectory Redist CommonConfiguration \ + sqlite3.dll]] + + if {![info exists no(symbols)]} then { + lappend fileNames(destination) \ + [file join $stagingDirectory Redist CommonConfiguration \ + sqlite3.pdb] + } +} + +if {![info exists fileNames(neutral)]} then { + set fileNames(neutral) [list 1 1 1 1 0 0] + + if {![info exists no(symbols)]} then { + lappend fileNames(neutral) 0 + } +} + +if {![info exists fileNames(subst)]} then { + set fileNames(subst) [list 1 1 1 0 0 0] + + if {![info exists no(symbols)]} then { + lappend fileNames(subst) 0 + } +} ############################################################################### # # NOTE: Setup the list of platforms supported by this script. # -set platformNames [list ARM x64 x86] +if {![info exists platformNames]} then { + set platformNames [list ARM x64 x86] +} ############################################################################### @@ -302,15 +345,26 @@ foreach sourceFileName $fileNames(source) \ # platform will be processed for it individually. # foreach platformName [expr {$isNeutral ? [list neutral] : $platformNames}] { + # + # NOTE: Use the actual platform name in the destination file name. + # + set newDestinationFileName [replacePlatform $destinationFileName \ + $platformName] + # # NOTE: Does the source file need to be copied to the destination file? # if {[string length $sourceFileName] > 0} then { # - # NOTE: Copy the source file to the destination file verbatim. + # NOTE: First, make sure the destination directory exists. + # + file mkdir [file dirname $newDestinationFileName] + + # + # NOTE: Then, copy the source file to the destination file verbatim. # file copy [replacePlatform $sourceFileName $platformName] \ - [replacePlatform $destinationFileName $platformName] + $newDestinationFileName } # @@ -322,7 +376,7 @@ foreach sourceFileName $fileNames(source) \ # NOTE: Perform any dynamic replacements contained in the destination # file and then re-write it in-place. # - substFile [replacePlatform $destinationFileName $platformName] + substFile $newDestinationFileName } } } diff --git a/tool/win/sqlite.vsix b/tool/win/sqlite.vsix index 16f7b57cd03cf43fd1c77761a25b98929305eb39..57830edeac907e93d95a82e0207b120b1de03cba 100644 GIT binary patch delta 435 zcmX@!&D7t(G@)VR!FP1DtbW2>zh(!4 z*7vi&$eLBJUC@~+6`kXeEiC+Dxk*K@!IsH7*00|v{rILAdNJj$TbEbv|xAg^?D*RLYIqp$L;BJ%hmP0lMNTd*erCqAdmZ#%yZ^> z*ESk*9elU2ybF!-nGd;Zd%gGl$B+U`}{tfjq8!`Z;Q<4*|<4# zwTu+2y?U<7`@w3TPxi|3nN?RQ5W*&V_c+PXjX=R@uQZ)O$|1}0#D z%-yV2`;?JUeX>Bk!DPJ#j>&uL{TNqIY*YeroF+##sxf6TO>SyTV|u|d`Bh^Cqv~Ym zrWmHzVv`p(nQGWGU<*|S27U$=VEBT70ub-3oGjid%XWUFx#-5c$yTj4O!uoMSF}3v RaWQZ)h_Em)Jgo*P1pt7nvNHex delta 1344 zcmeBgU^?E-G@*e}d19jyvty9&##BxwaV`cB5cK=u0A@f5kP`U{GZXy)Z)O(UN?0l^ z%=9;BF-4TSLKJz&p_;=EG%qMMC9}8$$s{i{MbdCZ69e_R$fq@?=8tmfjo0ylGmRek*SCN|&I`M86 zlc7NCd+yqHfvU{wVqOzpg}Df_yzTGW+c!H>_JrEYlx?eZYrm(3udbLrbIzQfMa!<= z7j>&)WGyk9`u*fwkp$!A7xRK5i|TGqTvY$RruM4z;zmujefxxxS`JEYtq){fQuNWz zm2IN6kbK5-@0%J5DJ}CBzxHf&)DVn0H&sc1?fQ}o{fgBQ2@iQi5_V2(IGJyp9=VY9 zZkMU61GD0mBjyuUzc0EoWl7fWX$e7QE7s^u5iFc>q3dcCYe)P|m;NP=Rm#gx_Z(m4 zP~14Le$K}9zJ#RW>8Erz*Jo{Cy~^v*@|B@|W^dh0E((fN*8kjB>h?>ms+$F-O;r7r9o~9FQZ9I5@(H;$eCsck zwMp)@x}9P==aJQ%Oh0DvrQiD`zBFvoEt(T1)DrT}s$byl-N(-52J=r=U3~lB_xL0J z&G)N5FfuAnzEESJ42p9u1_fXoFfcGONH9Fu`$S_;=2=D&N&8$e8#+X!7J*jmg_=|(7Z&(