Add Package.swift with three products: GCDWebServer (core),
GCDWebUploader, and GCDWebDAVServer.
Public headers live across Core/Requests/Responses subdirectories, which
SPM cannot expose directly. To support SPM without moving any files
(keeping the Xcode project and CocoaPods builds intact), public headers
are surfaced through symlinks in include/ directories with a hand-written
umbrella-directory module map; the private GCDWebServerPrivate.h is left
unlinked so it stays out of the public module.
GCDWebUploader.bundle is shipped as a .copy resource and located at
runtime via SWIFTPM_MODULE_BUNDLE under a #if SWIFT_PACKAGE branch.
Verified: swift build (all targets), Swift module imports, Xcode
framework build, and the XCTest suite all pass.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The previous code won't compile in Swift, it had a missing ')' and the 'println' statement is deprecated, replaced by 'print'.
The bridging-headers syntax was wrong, couldn't compile.
Swift still requires an 'import GCDWebServers' statement to use the API
the version number should not have quotes, with the quotes carthage errors:
Parse error: unexpected trailing characters in line: github "swisspol/GCDWebServer" ~> "3.2.5"