Commit Graph

23 Commits

Author SHA1 Message Date
Saleem Abdulrasool
fca0cd3913 build: build SourceKit-LSP with static linking
This adjusts the sourcekit-lsp build to use static linking for the
internal libraries.  It is not currently possible to build
SourceKitLSP.dll as that requires re-exporting the interfaces from the
consumed modules.  However, this allows us to reduce the overall size of
the distribution of SourceKit-LSP by ~1 MiB and reduces the
distributed file set.  The values here assume partial static linking of
swift-package-manager, which helps reduce the total size.

Before:

   228,352 BuildServerProtocol.dll
 1,773,056 LanguageServerProtocol.dll
   114,688 LanguageServerProtocolJSONRPC.dll
    49,152 LSPLogging.dll
   262,656 SKCore.dll
    54,784 SKSupport.dll
    80,896 SKSwiftPMWorkspace.dll
   150,528 SourceKitD.dll
   645,632 SourceKitLSP.dll

    70,144 sourcekit-lsp.exe

 3,429,888 bytes

After:

 2,416,640 sourcekit-lsp.exe

 2,416,640 bytes
2022-03-02 08:43:06 -08:00
Saleem Abdulrasool
54d5324613 build: add CMake build system 2019-12-04 16:47:34 -08:00
Ben Langmuir
ab4a25d581 [BSP] Use URI instead of URL
Similar to LSP, BSP also uses URI. We were handling this correctly
everywhere except one test that was using a string with no scheme.
2019-11-20 09:41:48 -08:00
Alex Hoppen
5c839f8640 Add support for non-URL URIs
According to the LSP specification, arbitrary URIs can be used as
document identifiers. Instead of internally assuming that all URIs are
URLs, use a DocumentURI enum to represent URIs. These can either be file
URLs or other URIs whose value as treated as an opaque string.
2019-11-20 09:41:48 -08:00
Richard Howell
130d81c96f make event kind optional 2019-10-21 11:24:07 -07:00
Richard Howell
4c59633e2d add test case 2019-10-21 10:39:22 -07:00
Richard Howell
1d7858e023 call delegate on build targets change 2019-10-21 10:39:22 -07:00
Richard Howell
ec9681023e add BuildTargetChangedNotification 2019-10-21 10:39:22 -07:00
Richard Howell
0f6f260701 add interface for fetching output paths 2019-10-04 14:51:26 -07:00
Richard Howell
ca63a2e69d add request for build target output paths 2019-10-04 14:50:48 -07:00
Richard Howell
1158e1178a add target sources request 2019-10-04 14:49:52 -07:00
Richard Howell
c04e760ed9 use Language and structs for tags 2019-09-30 16:21:26 -07:00
Richard Howell
81c50db7e1 add the workspace/buildTargets request 2019-09-25 14:16:30 -07:00
Richard Howell
2e861f72d7 add buildTargets request and model 2019-09-25 14:10:24 -07:00
Richard Howell
d9b57b57bb use SourceKitOptionsResult for options update 2019-09-24 15:35:40 -07:00
Richard Howell
6313416977 add requests for file watching in the bsp 2019-09-13 15:07:08 -07:00
Richard Howell
1b254949f1 add file options request 2019-09-10 10:40:14 -07:00
Richard Howell
7b842235be add build server lifecycle notifications 2019-08-29 10:04:18 -07:00
Richard Howell
0c44eeb4a6 use LSPAny for data payload 2019-08-28 19:44:48 -07:00
Richard Howell
58a42b08b3 use Language instead of String 2019-08-28 19:43:10 -07:00
Richard Howell
fb9feeb8aa use VoidResponse type 2019-08-28 15:17:18 -07:00
Richard Howell
89f62f8229 add copyright headers 2019-08-28 15:15:59 -07:00
Richard Howell
366f7d930d Add initial BuildServerBuildSystem based on BSP 2019-08-27 15:47:40 -07:00