Index: SQLite.NET.2008.sln ================================================================== --- SQLite.NET.2008.sln +++ SQLite.NET.2008.sln @@ -1,7 +1,12 @@ Microsoft Visual Studio Solution File, Format Version 10.00 # Visual Studio 2008 +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{39A3B743-1EBD-4CC0-8E37-ACE3DD38B1C0}" + ProjectSection(SolutionItems) = preProject + readme.htm = readme.htm + EndProjectSection +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.SQLite.2008", "System.Data.SQLite\System.Data.SQLite.2008.csproj", "{AC139952-261A-4463-B6FA-AEBC25283A66}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.SQLite.Module.2008", "System.Data.SQLite\System.Data.SQLite.Module.2008.csproj", "{AC139952-261A-4463-B6FA-AEBC25284A66}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.SQLite.Compact.2008", "System.Data.SQLite\System.Data.SQLite.Compact.2008.csproj", "{AC139951-261A-4463-B6FA-AEBC25283A66}" Index: SQLite.NET.2010.sln ================================================================== --- SQLite.NET.2010.sln +++ SQLite.NET.2010.sln @@ -1,7 +1,12 @@ Microsoft Visual Studio Solution File, Format Version 11.00 # Visual Studio 2010 +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{39A3B743-1EBD-4CC0-8E37-ACE3DD38B1C0}" + ProjectSection(SolutionItems) = preProject + readme.htm = readme.htm + EndProjectSection +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.SQLite.2010", "System.Data.SQLite\System.Data.SQLite.2010.csproj", "{AC139952-261A-4463-B6FA-AEBC25283A66}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.SQLite.Module.2010", "System.Data.SQLite\System.Data.SQLite.Module.2010.csproj", "{AC139952-261A-4463-B6FA-AEBC25284A66}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "test.2010", "test\test.2010.csproj", "{E27B1B1E-19C0-45E8-AA74-B6E1C041A130}" Index: Setup/SQLite.iss ================================================================== --- Setup/SQLite.iss +++ Setup/SQLite.iss @@ -226,25 +226,30 @@ [Components] Name: Application; Description: System.Data.SQLite components.; Types: custom compact full Name: Application\Core; Description: Core components.; Types: custom compact full Name: Application\Core\MSIL; Description: Core managed components.; Types: custom compact full Name: Application\Core\{#AppProcessor}; Description: Core native components.; Types: custom compact full +Name: Application\LINQ; Description: LINQ support components.; Types: custom compact full Name: Application\Symbols; Description: Debugging symbol components.; Types: custom compact full Name: Application\Documentation; Description: Documentation components.; Types: custom compact full Name: Application\Test; Description: Test components.; Types: custom compact full [Tasks] -Components: Application\Core\MSIL; Name: GAC; Description: Install the assemblies into the global assembly cache.; Flags: unchecked; Check: CheckIsNetFx2Setup() or CheckIsNetFx4Setup() -Components: Application\Core\MSIL; Name: NGEN; Description: Generate native images for the assemblies and install the images in the native image cache.; Check: CheckIsNetFx2Setup() or CheckIsNetFx4Setup() +Components: Application\Core\MSIL Or Application\LINQ; Name: GAC; Description: Install the assemblies into the global assembly cache.; Flags: unchecked; Check: CheckIsNetFx2Setup() or CheckIsNetFx4Setup() +Components: Application\Core\MSIL Or Application\LINQ; Name: NGEN; Description: Generate native images for the assemblies and install the images in the native image cache.; Check: CheckIsNetFx2Setup() or CheckIsNetFx4Setup() [Run] Components: Application\Core\MSIL; Tasks: NGEN; Filename: {code:GetNetFx2InstallRoot|Ngen.exe}; Parameters: "install ""{app}\bin\System.Data.SQLite.dll"" /nologo"; Flags: skipifdoesntexist; Check: CheckIsNetFx2Setup() Components: Application\Core\MSIL; Tasks: NGEN; Filename: {code:GetNetFx4InstallRoot|Ngen.exe}; Parameters: "install ""{app}\bin\System.Data.SQLite.dll"" /nologo"; Flags: skipifdoesntexist; Check: CheckIsNetFx4Setup() +Components: Application\LINQ; Tasks: NGEN; Filename: {code:GetNetFx2InstallRoot|Ngen.exe}; Parameters: "install ""{app}\bin\System.Data.SQLite.Linq.dll"" /nologo"; Flags: skipifdoesntexist; Check: CheckIsNetFx2Setup() +Components: Application\LINQ; Tasks: NGEN; Filename: {code:GetNetFx4InstallRoot|Ngen.exe}; Parameters: "install ""{app}\bin\System.Data.SQLite.Linq.dll"" /nologo"; Flags: skipifdoesntexist; Check: CheckIsNetFx4Setup() [UninstallRun] Components: Application\Core\MSIL; Tasks: NGEN; Filename: {code:GetNetFx4InstallRoot|Ngen.exe}; Parameters: "uninstall ""{app}\bin\System.Data.SQLite.dll"" /nologo"; Flags: skipifdoesntexist; Check: CheckIsNetFx4Setup() Components: Application\Core\MSIL; Tasks: NGEN; Filename: {code:GetNetFx2InstallRoot|Ngen.exe}; Parameters: "uninstall ""{app}\bin\System.Data.SQLite.dll"" /nologo"; Flags: skipifdoesntexist; Check: CheckIsNetFx2Setup() +Components: Application\LINQ; Tasks: NGEN; Filename: {code:GetNetFx4InstallRoot|Ngen.exe}; Parameters: "uninstall ""{app}\bin\System.Data.SQLite.Linq.dll"" /nologo"; Flags: skipifdoesntexist; Check: CheckIsNetFx4Setup() +Components: Application\LINQ; Tasks: NGEN; Filename: {code:GetNetFx2InstallRoot|Ngen.exe}; Parameters: "uninstall ""{app}\bin\System.Data.SQLite.Linq.dll"" /nologo"; Flags: skipifdoesntexist; Check: CheckIsNetFx2Setup() [Dirs] Name: {app}\bin Name: {app}\doc Name: {app}\GAC @@ -253,16 +258,19 @@ Components: Application\Core\{#AppProcessor}; Source: ..\Externals\MSVCPP\vcredist_{#AppProcessor}_{#VcRuntime}_SP1.exe; DestDir: {tmp}; Flags: dontcopy Components: Application; Source: ..\readme.htm; DestDir: {app}; Flags: restartreplace uninsrestartdelete isreadme Components: Application\Core\MSIL; Tasks: GAC; Source: ..\bin\Release\bin\System.Data.SQLite.dll; DestDir: {app}\GAC; StrongAssemblyName: "System.Data.SQLite, Version={#AppVersion}, Culture=neutral, PublicKeyToken={#AppPublicKey}, ProcessorArchitecture=MSIL"; Flags: restartreplace uninsrestartdelete uninsnosharedfileprompt sharedfile gacinstall Components: Application\Core\MSIL; Source: ..\bin\Release\bin\System.Data.SQLite.dll; DestDir: {app}\bin; Flags: restartreplace uninsrestartdelete Components: Application\Core\MSIL and Application\Symbols; Source: ..\bin\Release\bin\System.Data.SQLite.pdb; DestDir: {app}\bin; Flags: restartreplace uninsrestartdelete +Components: Application\LINQ; Tasks: GAC; Source: ..\bin\Release\bin\System.Data.SQLite.Linq.dll; DestDir: {app}\GAC; StrongAssemblyName: "System.Data.SQLite.Linq, Version={#AppVersion}, Culture=neutral, PublicKeyToken={#AppPublicKey}, ProcessorArchitecture=MSIL"; Flags: restartreplace uninsrestartdelete uninsnosharedfileprompt sharedfile gacinstall +Components: Application\LINQ; Source: ..\bin\Release\bin\System.Data.SQLite.Linq.dll; DestDir: {app}\bin; Flags: restartreplace uninsrestartdelete +Components: Application\LINQ and Application\Symbols; Source: ..\bin\Release\bin\System.Data.SQLite.Linq.pdb; DestDir: {app}\bin; Flags: restartreplace uninsrestartdelete Components: Application\Core\{#AppProcessor}; Source: ..\bin\{#AppPlatform}\ReleaseNativeOnly\SQLite.Interop.dll; DestDir: {app}\bin; Flags: restartreplace uninsrestartdelete Components: Application\Core\{#AppProcessor} and Application\Symbols; Source: ..\bin\{#AppPlatform}\ReleaseNativeOnly\SQLite.Interop.pdb; DestDir: {app}\bin; Flags: restartreplace uninsrestartdelete Components: Application\Documentation; Source: ..\doc\SQLite.NET.chm; DestDir: {app}\doc; Flags: restartreplace uninsrestartdelete Components: Application\Test; Source: ..\bin\Release\bin\test.exe; DestDir: {app}\bin; Flags: restartreplace uninsrestartdelete Components: Application\Test and Application\Symbols; Source: ..\bin\Release\bin\test.pdb; DestDir: {app}\bin; Flags: restartreplace uninsrestartdelete Components: Application\Test; Source: ..\bin\Release\bin\test.exe.config; DestDir: {app}\bin; Flags: restartreplace uninsrestartdelete [Icons] -Name: {group}\Test Suite; Filename: {app}\bin\test.exe; WorkingDir: {app}\bin; IconFilename: {app}\bin\test.exe; Comment: Launch Test Suite; IconIndex: 0; Flags: createonlyiffileexists +Name: {group}\Test Application; Filename: {app}\bin\test.exe; WorkingDir: {app}\bin; IconFilename: {app}\bin\test.exe; Comment: Launch Test Application; IconIndex: 0; Flags: createonlyiffileexists Name: {group}\Class Library Documentation; Filename: {app}\doc\SQLite.NET.chm; WorkingDir: {app}\doc; Comment: Launch Class Library Documentation; Flags: createonlyiffileexists Name: {group}\README File; Filename: {app}\readme.htm; WorkingDir: {app}; Comment: View README File; Flags: createonlyiffileexists Index: Setup/bake.bat ================================================================== --- Setup/bake.bat +++ Setup/bake.bat @@ -9,13 +9,20 @@ :: Released to the public domain, use at your own risk! :: SETLOCAL +REM SET _ECHO=ECHO +IF NOT DEFINED _AECHO (SET _AECHO=REM) +IF NOT DEFINED _CECHO (SET _CECHO=REM) +IF NOT DEFINED _VECHO (SET _VECHO=REM) + +%_AECHO% Running %0 %* + SET PATH=%ProgramFiles%\Inno Setup 5;%PATH% -ISCC.exe SQLite.iss "/dAppId=%APPID%" "/dAppVersion=%VERSION%" "/dAppPublicKey=%PUBLICKEY%" "/dAppURL=%URL%" "/dIsNetFx2=%ISNETFX2%" "/dVcRuntime=%VCRUNTIME%" "/dAppPlatform=%PLATFORM%" "/dAppProcessor=%PROCESSOR%" +%_ECHO% ISCC.exe SQLite.iss "/dAppId=%APPID%" "/dAppVersion=%VERSION%" "/dAppPublicKey=%PUBLICKEY%" "/dAppURL=%URL%" "/dIsNetFx2=%ISNETFX2%" "/dVcRuntime=%VCRUNTIME%" "/dAppPlatform=%PLATFORM%" "/dAppProcessor=%PROCESSOR%" IF %ERRORLEVEL% NEQ 0 ( ECHO Failed to compile setup. GOTO errors ) @@ -32,17 +39,17 @@ :errors CALL :fn_SetErrorLevel ENDLOCAL ECHO. - ECHO Failure, errors were encountered. + ECHO Bake failure, errors were encountered. GOTO end_of_file :no_errors CALL :fn_ResetErrorLevel ENDLOCAL ECHO. - ECHO Success, no errors were encountered. + ECHO Bake success, no errors were encountered. GOTO end_of_file :end_of_file -EXIT /B %ERRORLEVEL% +%_ECHO% EXIT /B %ERRORLEVEL% Index: Setup/bake_all.bat ================================================================== --- Setup/bake_all.bat +++ Setup/bake_all.bat @@ -9,30 +9,51 @@ :: Released to the public domain, use at your own risk! :: SETLOCAL +REM SET _ECHO=ECHO +IF NOT DEFINED _AECHO (SET _AECHO=REM) +IF NOT DEFINED _CECHO (SET _CECHO=REM) +IF NOT DEFINED _VECHO (SET _VECHO=REM) + +%_AECHO% Running %0 %* + SET TOOLS=%~dp0 SET TOOLS=%TOOLS:~0,-1% -CALL "%TOOLS%\set_common.bat" +%_VECHO% Tools = '%TOOLS%' + +%_ECHO% CALL "%TOOLS%\set_common.bat" IF ERRORLEVEL 1 ( ECHO Could not set common variables. GOTO errors ) + +IF NOT DEFINED PROCESSORS ( + SET PROCESSORS=x86 +) + +%_VECHO% Processors = '%PROCESSORS%' + +IF NOT DEFINED YEARS ( + SET YEARS=2008 +) + +%_VECHO% Years = '%YEARS%' FOR %%P IN (%PROCESSORS%) DO ( FOR %%Y IN (%YEARS%) DO ( - CALL "%TOOLS%\set_%%P_%%Y.bat" + %_ECHO% CALL "%TOOLS%\set_%%P_%%Y.bat" IF ERRORLEVEL 1 ( ECHO Could not set variables for %%P/%%Y. GOTO errors ) - CALL "%TOOLS%\bake.bat" + %_ECHO% CALL "%TOOLS%\bake.bat" IF ERRORLEVEL 1 ( ECHO Could not bake setup for %%P/%%Y. GOTO errors ) @@ -62,6 +83,6 @@ ECHO. ECHO Success, no errors were encountered. GOTO end_of_file :end_of_file -EXIT /B %ERRORLEVEL% +%_ECHO% EXIT /B %ERRORLEVEL% ADDED Setup/build.bat Index: Setup/build.bat ================================================================== --- /dev/null +++ Setup/build.bat @@ -0,0 +1,231 @@ +@ECHO OFF + +:: +:: build.bat -- +:: +:: MSBuild Wrapper Tool +:: +:: Written by Joe Mistachkin. +:: Released to the public domain, use at your own risk! +:: + +SETLOCAL + +REM SET _ECHO=ECHO +IF NOT DEFINED _AECHO (SET _AECHO=REM) +IF NOT DEFINED _CECHO (SET _CECHO=REM) +IF NOT DEFINED _VECHO (SET _VECHO=REM) + +%_AECHO% Running %0 %* + +SET ROOT=%~dp0\.. +SET ROOT=%ROOT:\\=\% + +%_VECHO% Root = '%ROOT%' + +SET CONFIGURATION=%1 + +IF DEFINED CONFIGURATION ( + SET CONFIGURATION=%CONFIGURATION:"=% + REM " +) ELSE ( + %_AECHO% No configuration specified, using default... + SET CONFIGURATION=ReleaseNativeOnly +) + +%_VECHO% Configuration = '%CONFIGURATION%' + +SET PLATFORM=%2 + +IF DEFINED PLATFORM ( + SET PLATFORM=%PLATFORM:"=% + REM " +) ELSE ( + %_AECHO% No platform specified, using default... + SET PLATFORM=Win32 +) + +%_VECHO% Platform = '%PLATFORM%' + +SET TOOLS=%~dp0 +SET TOOLS=%TOOLS:\\=\% + +%_VECHO% Tools = '%TOOLS%' + +IF EXIST "%TOOLS%\set_%CONFIGURATION%_%PLATFORM%.bat" ( + %_AECHO% Running "%TOOLS%\set_%CONFIGURATION%_%PLATFORM%.bat"... + %_ECHO% CALL "%TOOLS%\set_%CONFIGURATION%_%PLATFORM%.bat" + + IF ERRORLEVEL 1 ( + ECHO File "%TOOLS%\set_%CONFIGURATION%_%PLATFORM%.bat" failed. + GOTO errors + ) +) + +IF DEFINED NETFX20ONLY ( + %_AECHO% Forcing the use of the .NET Framework 2.0... + SET YEAR=2005 + SET FRAMEWORKDIR=%windir%\Microsoft.NET\Framework\v2.0.50727 + GOTO skip_netFxCheck +) + +IF DEFINED NETFX35ONLY ( + %_AECHO% Forcing the use of the .NET Framework 3.5... + SET YEAR=2008 + SET FRAMEWORKDIR=%windir%\Microsoft.NET\Framework\v3.5 + GOTO skip_netFxCheck +) + +IF DEFINED NETFX40ONLY ( + %_AECHO% Forcing the use of the .NET Framework 4.0... + SET YEAR=2010 + SET FRAMEWORKDIR=%windir%\Microsoft.NET\Framework\v4.0.30319 + GOTO skip_netFxCheck +) + +IF NOT DEFINED FRAMEWORKDIR ( + %_AECHO% Checking for the .NET Framework 4.0... + SET YEAR=2010 + SET FRAMEWORKDIR=%windir%\Microsoft.NET\Framework\v4.0.30319 +) + +IF NOT EXIST "%FRAMEWORKDIR%" ( + %_AECHO% Checking for the .NET Framework 3.5... + SET YEAR=2008 + SET FRAMEWORKDIR=%windir%\Microsoft.NET\Framework\v3.5 +) + +IF NOT EXIST "%FRAMEWORKDIR%" ( + %_AECHO% Checking for the .NET Framework 2.0... + SET YEAR=2005 + SET FRAMEWORKDIR=%windir%\Microsoft.NET\Framework\v2.0.50727 +) + +:skip_netFxCheck + +IF NOT EXIST "%FRAMEWORKDIR%" ( + ECHO. + ECHO The .NET Framework directory "%FRAMEWORKDIR%" was not found. + ECHO. + ECHO Please install the .NET Framework or set the "FRAMEWORKDIR" + ECHO environment variable to the location where it is installed. + ECHO. + GOTO errors +) + +%_VECHO% Year = '%YEAR%' +%_VECHO% FrameworkDir = '%FRAMEWORKDIR%' + +CALL :fn_ResetErrorLevel + +%_ECHO% PUSHD "%ROOT%" + +IF ERRORLEVEL 1 ( + ECHO Could not change directory to "%ROOT%". + GOTO errors +) + +SET PATH=%FRAMEWORKDIR%;%PATH% + +%_VECHO% Path = '%PATH%' + +IF NOT DEFINED SOLUTION ( + %_AECHO% Building all projects... + SET SOLUTION=.\SQLite.NET.%YEAR%.sln +) + +%_VECHO% Solution = '%SOLUTION%' + +IF NOT DEFINED TARGET ( + SET TARGET=Rebuild +) + +%_VECHO% Target = '%TARGET%' + +IF NOT DEFINED TEMP ( + ECHO Temporary directory must be defined. + GOTO errors +) + +%_VECHO% Temp = '%TEMP%' + +IF NOT DEFINED LOGDIR ( + SET LOGDIR=%TEMP% +) + +%_VECHO% LogDir = '%LOGDIR%' + +IF NOT DEFINED LOGPREFIX ( + SET LOGPREFIX=System.Data.SQLite.Build +) + +%_VECHO% LogPrefix = '%LOGPREFIX%' + +IF NOT DEFINED LOGSUFFIX ( + SET LOGSUFFIX=Unknown +) + +%_VECHO% LogSuffix = '%LOGSUFFIX%' + +IF DEFINED LOGGING GOTO skip_setLogging +IF DEFINED NOLOG GOTO skip_setLogging + +SET LOGGING="/logger:FileLogger,Microsoft.Build.Engine;Logfile=%LOGDIR%\%LOGPREFIX%_%CONFIGURATION%_%PLATFORM%_%LOGSUFFIX%.log;Verbosity=diagnostic" + +:skip_setLogging + +%_VECHO% Logging = '%LOGGING%' + +%_ECHO% MSBuild.exe "%SOLUTION%" "/target:%TARGET%" "/property:Configuration=%CONFIGURATION%" "/property:Platform=%PLATFORM%" %LOGGING% + +IF ERRORLEVEL 1 ( + ECHO Build failed. + GOTO errors +) + +%_ECHO% POPD + +IF ERRORLEVEL 1 ( + ECHO Could not restore directory. + GOTO errors +) + +GOTO no_errors + +:fn_UnsetVariable + IF NOT "%1" == "" ( + SET %1= + CALL :fn_ResetErrorLevel + ) + GOTO :EOF + +:fn_ResetErrorLevel + VERIFY > NUL + GOTO :EOF + +:fn_SetErrorLevel + VERIFY MAYBE 2> NUL + GOTO :EOF + +:usage + ECHO. + ECHO Usage: %~nx0 [configuration] [platform] [...] + ECHO. + GOTO errors + +:errors + CALL :fn_SetErrorLevel + ENDLOCAL + ECHO. + ECHO Build failure, errors were encountered. + GOTO end_of_file + +:no_errors + CALL :fn_ResetErrorLevel + ENDLOCAL + ECHO. + ECHO Build success, no errors were encountered. + GOTO end_of_file + +:end_of_file +%_ECHO% EXIT /B %ERRORLEVEL% ADDED Setup/set_ReleaseNativeOnly.bat Index: Setup/set_ReleaseNativeOnly.bat ================================================================== --- /dev/null +++ Setup/set_ReleaseNativeOnly.bat @@ -0,0 +1,21 @@ +@ECHO OFF + +:: +:: set_ReleaseNativeOnly.bat -- +:: +:: Written by Joe Mistachkin. +:: Released to the public domain, use at your own risk! +:: + +REM +REM NOTE: Force usage of the Visual Studio 2008 (.NET Framework 3.5) build +REM system. This is very important because we want to ship binaries +REM that only rely upon the .NET Framework 2.0 which is very widely +REM deployed and because those binaries will also work with projects +REM using the .NET Framework 4.0. +REM +SET NETFX35ONLY=1 +SET YEAR=2008 +SET YEARS=%YEAR% + +ECHO WARNING: Forcing the use of the .NET Framework 3.5... ADDED Setup/set_ReleaseNativeOnly_Win32.bat Index: Setup/set_ReleaseNativeOnly_Win32.bat ================================================================== --- /dev/null +++ Setup/set_ReleaseNativeOnly_Win32.bat @@ -0,0 +1,10 @@ +@ECHO OFF + +:: +:: set_ReleaseNativeOnly_Win32.bat -- +:: +:: Written by Joe Mistachkin. +:: Released to the public domain, use at your own risk! +:: + +CALL "%~dp0\set_ReleaseNativeOnly.bat" ADDED Setup/set_ReleaseNativeOnly_x64.bat Index: Setup/set_ReleaseNativeOnly_x64.bat ================================================================== --- /dev/null +++ Setup/set_ReleaseNativeOnly_x64.bat @@ -0,0 +1,10 @@ +@ECHO OFF + +:: +:: set_ReleaseNativeOnly_x64.bat -- +:: +:: Written by Joe Mistachkin. +:: Released to the public domain, use at your own risk! +:: + +CALL "%~dp0\set_ReleaseNativeOnly.bat" Index: System.Data.SQLite.Linq/AssemblyInfo.cs ================================================================== --- System.Data.SQLite.Linq/AssemblyInfo.cs +++ System.Data.SQLite.Linq/AssemblyInfo.cs @@ -34,7 +34,7 @@ // Revision // // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.38.1")] -[assembly: AssemblyFileVersion("1.0.38.1")] +[assembly: AssemblyVersion("1.0.67.0")] +[assembly: AssemblyFileVersion("1.0.67.0")] Index: System.Data.SQLite/System.Data.SQLite.Compact.2008.csproj ================================================================== --- System.Data.SQLite/System.Data.SQLite.Compact.2008.csproj +++ System.Data.SQLite/System.Data.SQLite.Compact.2008.csproj @@ -56,11 +56,10 @@ off -