From aae84babc3bea130735796fa9c3d9e1fcf03c4e8 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Sun, 6 Oct 2019 12:37:37 +0800 Subject: [PATCH 01/43] Support Swift Package Manager --- .gitignore | 6 +++++- Package.swift | 28 ++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 Package.swift diff --git a/.gitignore b/.gitignore index dc2d49d..db64352 100644 --- a/.gitignore +++ b/.gitignore @@ -63,4 +63,8 @@ fastlane/test_output # After new code Injection tools there's a generated folder /iOSInjectionProject # https://github.com/johnno1962/injectionforxcode -iOSInjectionProject/ \ No newline at end of file +iOSInjectionProject/ + +# SwiftPM +.build +.swiftpm \ No newline at end of file diff --git a/Package.swift b/Package.swift new file mode 100644 index 0000000..649bb0a --- /dev/null +++ b/Package.swift @@ -0,0 +1,28 @@ +// swift-tools-version:5.0 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "libwebp", + products: [ + // Products define the executables and libraries produced by a package, and make them visible to other packages. + .library( + name: "libwebp", + targets: ["libwebp"]), + ], + dependencies: [ + // Dependencies declare other packages that this package depends on. + // .package(url: /* package url */, from: "1.0.0"), + ], + targets: [ + // Targets are the basic building blocks of a package. A target can define a module or a test suite. + // Targets can depend on other targets in this package, and on products in packages which this package depends on. + .target( + name: "libwebp", + dependencies: [], + path: "libwebp/src", + publicHeadersPath: "webp", + cSettings: [.headerSearchPath("../")]) + ] +) From 067fb2ddb3ab7e5b96f8524669d3194709b32e34 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Sun, 6 Oct 2019 12:54:08 +0800 Subject: [PATCH 02/43] Update the readme about Swift Package Manager --- README.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/README.md b/README.md index 1cf03b9..544b82a 100644 --- a/README.md +++ b/README.md @@ -2,9 +2,11 @@ A wrapper for [libwebp](https://github.com/webmproject/libwebp) + Xcode project. This enables Carthage support +This also contains the Swift Package Manager support [![CI Status](http://img.shields.io/travis/SDWebImage/libwebp-Xcode.svg?style=flat)](https://travis-ci.org/SDWebImage/libwebp-Xcode) [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/SDWebImage/libwebp-Xcode) +[![SwiftPM compatible](https://img.shields.io/badge/SwiftPM-compatible-brightgreen.svg)](https://swift.org/package-manager/) ## Requirements @@ -15,16 +17,47 @@ This enables Carthage support ## Installation +### Carthage + libwebp is (via this repo) available through [Carthage](https://github.com/Carthage/Carthage). ``` github "SDWebImage/libwebp-Xcode" ``` +### SwiftPM + +Libwebp is available through [Swift Package Manager](https://img.shields.io/badge/SwiftPM-compatible-brightgreen.svg). + +``` +let package = Package( + dependencies: [ + .package(url: "https://github.com/SDWebImage/libwebp-Xcode", from: "1.0.4") + ], + // ... +) +``` + ## Usage Use libwebp as you would normally, this is just a repo that adds an Xcode proj. +For Swift Package Manager user, use the modular import instead of C headers. + ++ Objective-C + +```objective-c +@import libwebp; +``` + ++ Swift + +```swift +import libwebp +``` + ## License libwebp is available under the BSD-3 license. See [the LICENSE file](https://github.com/webmproject/libwebp/blob/master/COPYING) for more info. + + From aaed6f8f7bd14759da59f9faf6dd90fe37dbc289 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Fri, 27 Dec 2019 11:31:40 +0800 Subject: [PATCH 03/43] Update to v1.1.0-rc2 --- libwebp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libwebp b/libwebp index 0fe1a89..d7844e9 160000 --- a/libwebp +++ b/libwebp @@ -1 +1 @@ -Subproject commit 0fe1a89dbf1930fc2554dbe76adad5d962054ead +Subproject commit d7844e9762b61c9638c263657bd49e1690184832 From cad41dc4f84bbf13bfe2f3acf85c58d1cb316ea0 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Fri, 27 Dec 2019 11:34:55 +0800 Subject: [PATCH 04/43] Bumped version to 1.1.0-rc2 --- README.md | 2 +- Xcode/Info.plist | 4 ++-- libwebp.podspec | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 544b82a..48d3d20 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,7 @@ Libwebp is available through [Swift Package Manager](https://img.shields.io/badg ``` let package = Package( dependencies: [ - .package(url: "https://github.com/SDWebImage/libwebp-Xcode", from: "1.0.4") + .package(url: "https://github.com/SDWebImage/libwebp-Xcode", from: "1.1.0") ], // ... ) diff --git a/Xcode/Info.plist b/Xcode/Info.plist index 23393ce..fd290c2 100644 --- a/Xcode/Info.plist +++ b/Xcode/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.0.3 + 1.1.0-rc2 CFBundleVersion - 1.0.3 + 1.1.0-rc2 NSPrincipalClass diff --git a/libwebp.podspec b/libwebp.podspec index 3c3f13a..ee64441 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'libwebp' - s.version = '1.0.3' + s.version = '1.1.0-rc2' s.summary = 'Library to encode and decode images in WebP format.' s.homepage = 'https://developers.google.com/speed/webp/' s.authors = 'Google Inc.' From fb91d2990bebc3c915d0eab1f4a497bb49a4928f Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Fri, 27 Dec 2019 12:14:32 +0800 Subject: [PATCH 05/43] Fix the Travic-CI script because of rubygem version bump, update the readme --- .travis.yml | 2 +- README.md | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 9594213..c6cea0a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,7 +13,7 @@ notifications: before_install: - env - locale - - gem install xcpretty --no-rdoc --no-ri --no-document --quiet + - gem install xcpretty --no-document --quiet - xcpretty --version - xcodebuild -version - xcodebuild -showsdks diff --git a/README.md b/README.md index 48d3d20..d3ab7e2 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,14 @@ This also contains the Swift Package Manager support ## Installation +#### CocoaPods + +libwebp is available through [CocoaPods](http://cocoapods.org). To install it, simply add the following line to your Podfile: + +```ruby +pod 'libwebp' +``` + ### Carthage libwebp is (via this repo) available through [Carthage](https://github.com/Carthage/Carthage). @@ -29,7 +37,7 @@ github "SDWebImage/libwebp-Xcode" Libwebp is available through [Swift Package Manager](https://img.shields.io/badge/SwiftPM-compatible-brightgreen.svg). -``` +```swift let package = Package( dependencies: [ .package(url: "https://github.com/SDWebImage/libwebp-Xcode", from: "1.1.0") From cd9955c5b6cf176c13b3bf66f96387cedaec2006 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Fri, 27 Dec 2019 16:14:21 +0800 Subject: [PATCH 06/43] Fix the libwebp SwiftPM include issue. Now using the same strcture to generate public header search path, which make the user easy to use like `` --- Package.swift | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Package.swift b/Package.swift index 649bb0a..e85ed1d 100644 --- a/Package.swift +++ b/Package.swift @@ -21,8 +21,9 @@ let package = Package( .target( name: "libwebp", dependencies: [], - path: "libwebp/src", - publicHeadersPath: "webp", - cSettings: [.headerSearchPath("../")]) + path: "libwebp", + sources: ["src"], + publicHeadersPath: "src", + cSettings: [.headerSearchPath(".")]) ] ) From e04c3d78a2d6048c7aac1badeff9db3e3046eacd Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Fri, 27 Dec 2019 19:07:12 +0800 Subject: [PATCH 07/43] Change to use the symbol link to the webp folder, fix the SwiftPM --- Package.swift | 8 ++++---- include/webp/decode.h | 1 + include/webp/demux.h | 1 + include/webp/encode.h | 1 + include/webp/format_constants.h | 1 + include/webp/mux.h | 1 + include/webp/mux_types.h | 1 + include/webp/types.h | 1 + 8 files changed, 11 insertions(+), 4 deletions(-) create mode 120000 include/webp/decode.h create mode 120000 include/webp/demux.h create mode 120000 include/webp/encode.h create mode 120000 include/webp/format_constants.h create mode 120000 include/webp/mux.h create mode 120000 include/webp/mux_types.h create mode 120000 include/webp/types.h diff --git a/Package.swift b/Package.swift index e85ed1d..070f17d 100644 --- a/Package.swift +++ b/Package.swift @@ -21,9 +21,9 @@ let package = Package( .target( name: "libwebp", dependencies: [], - path: "libwebp", - sources: ["src"], - publicHeadersPath: "src", - cSettings: [.headerSearchPath(".")]) + path: ".", + sources: ["libwebp/src"], + publicHeadersPath: "include", + cSettings: [.headerSearchPath("libwebp")]) ] ) diff --git a/include/webp/decode.h b/include/webp/decode.h new file mode 120000 index 0000000..59b4508 --- /dev/null +++ b/include/webp/decode.h @@ -0,0 +1 @@ +../../libwebp/src/webp/decode.h \ No newline at end of file diff --git a/include/webp/demux.h b/include/webp/demux.h new file mode 120000 index 0000000..62c2188 --- /dev/null +++ b/include/webp/demux.h @@ -0,0 +1 @@ +../../libwebp/src/webp/demux.h \ No newline at end of file diff --git a/include/webp/encode.h b/include/webp/encode.h new file mode 120000 index 0000000..e069c1c --- /dev/null +++ b/include/webp/encode.h @@ -0,0 +1 @@ +../../libwebp/src/webp/encode.h \ No newline at end of file diff --git a/include/webp/format_constants.h b/include/webp/format_constants.h new file mode 120000 index 0000000..39b92b8 --- /dev/null +++ b/include/webp/format_constants.h @@ -0,0 +1 @@ +../../libwebp/src/webp/format_constants.h \ No newline at end of file diff --git a/include/webp/mux.h b/include/webp/mux.h new file mode 120000 index 0000000..8430074 --- /dev/null +++ b/include/webp/mux.h @@ -0,0 +1 @@ +../../libwebp/src/webp/mux.h \ No newline at end of file diff --git a/include/webp/mux_types.h b/include/webp/mux_types.h new file mode 120000 index 0000000..e29b71a --- /dev/null +++ b/include/webp/mux_types.h @@ -0,0 +1 @@ +../../libwebp/src/webp/mux_types.h \ No newline at end of file diff --git a/include/webp/types.h b/include/webp/types.h new file mode 120000 index 0000000..c35bbfb --- /dev/null +++ b/include/webp/types.h @@ -0,0 +1 @@ +../../libwebp/src/webp/types.h \ No newline at end of file From 86c1b5d567ed548da861486b54e1f8f068a3cef7 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Tue, 7 Jan 2020 16:25:25 +0800 Subject: [PATCH 08/43] Bumped version to 1.1.0 --- README.md | 5 ++++- Xcode/Info.plist | 4 ++-- libwebp.podspec | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index d3ab7e2..0eda1e8 100644 --- a/README.md +++ b/README.md @@ -50,12 +50,15 @@ let package = Package( Use libwebp as you would normally, this is just a repo that adds an Xcode proj. -For Swift Package Manager user, use the modular import instead of C headers. +For Swift Package Manager user, it's recommended to use the modular import instead of C headers. + Objective-C ```objective-c @import libwebp; +// or if you don't use module +#import +#import ``` + Swift diff --git a/Xcode/Info.plist b/Xcode/Info.plist index fd290c2..c732565 100644 --- a/Xcode/Info.plist +++ b/Xcode/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.1.0-rc2 + 1.1.0 CFBundleVersion - 1.1.0-rc2 + 1.1.0 NSPrincipalClass diff --git a/libwebp.podspec b/libwebp.podspec index ee64441..1763c36 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'libwebp' - s.version = '1.1.0-rc2' + s.version = '1.1.0' s.summary = 'Library to encode and decode images in WebP format.' s.homepage = 'https://developers.google.com/speed/webp/' s.authors = 'Google Inc.' From e5b21b0330db1ad3822b0e50ac75b62286c0fafd Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 9 Sep 2020 15:52:47 +0800 Subject: [PATCH 09/43] Bump libwebp for Apple platform min deployment target version, to fix the Xcode 12 error --- Package.swift | 3 +++ README.md | 2 +- libwebp.podspec | 4 ++-- libwebp.xcodeproj/project.pbxproj | 4 ++-- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/Package.swift b/Package.swift index 070f17d..f1814d0 100644 --- a/Package.swift +++ b/Package.swift @@ -5,6 +5,9 @@ import PackageDescription let package = Package( name: "libwebp", + platforms: [ + .macOS(.v10_10), .iOS(.v8), .tvOS(.v9), .watchOS(.v2) + ], products: [ // Products define the executables and libraries produced by a package, and make them visible to other packages. .library( diff --git a/README.md b/README.md index 0eda1e8..0134450 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ This also contains the Swift Package Manager support ## Requirements + iOS 8 -+ macOS 10.6 ++ macOS 10.10 + tvOS 9.0 + watchOS 2.0 diff --git a/libwebp.podspec b/libwebp.podspec index 1763c36..ed55c7a 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -10,8 +10,8 @@ Pod::Spec.new do |s| s.compiler_flags = '-D_THREAD_SAFE' s.requires_arc = false - s.osx.deployment_target = '10.8' - s.ios.deployment_target = '6.0' + s.osx.deployment_target = '10.10' + s.ios.deployment_target = '8.0' s.tvos.deployment_target = '9.0' s.watchos.deployment_target = '2.0' diff --git a/libwebp.xcodeproj/project.pbxproj b/libwebp.xcodeproj/project.pbxproj index 5120016..134782f 100644 --- a/libwebp.xcodeproj/project.pbxproj +++ b/libwebp.xcodeproj/project.pbxproj @@ -983,7 +983,7 @@ GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = libwebp; IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MACOSX_DEPLOYMENT_TARGET = 10.6; + MACOSX_DEPLOYMENT_TARGET = 10.10; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -1057,7 +1057,7 @@ GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = libwebp; IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MACOSX_DEPLOYMENT_TARGET = 10.6; + MACOSX_DEPLOYMENT_TARGET = 10.10; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SUPPORTED_PLATFORMS = "macosx iphonesimulator iphoneos appletvos appletvsimulator watchos watchsimulator"; From 20763f6bcfd595aa9410b3deac136b58b56791a6 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Fri, 19 Feb 2021 15:04:31 +0800 Subject: [PATCH 10/43] Update to v1.2.0 --- libwebp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libwebp b/libwebp index d7844e9..fedac6c 160000 --- a/libwebp +++ b/libwebp @@ -1 +1 @@ -Subproject commit d7844e9762b61c9638c263657bd49e1690184832 +Subproject commit fedac6cc69cda3e9e04b780d324cf03921fb3ff4 From 289862b9466243cdec407997d4cb8ba529359a99 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Fri, 19 Feb 2021 15:21:30 +0800 Subject: [PATCH 11/43] Bumped version to 1.2.0 --- Xcode/Info.plist | 4 ++-- libwebp.podspec | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Xcode/Info.plist b/Xcode/Info.plist index c732565..fd7f41c 100644 --- a/Xcode/Info.plist +++ b/Xcode/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.1.0 + 1.2.0 CFBundleVersion - 1.1.0 + 1.2.0 NSPrincipalClass diff --git a/libwebp.podspec b/libwebp.podspec index ed55c7a..093db0e 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'libwebp' - s.version = '1.1.0' + s.version = '1.2.0' s.summary = 'Library to encode and decode images in WebP format.' s.homepage = 'https://developers.google.com/speed/webp/' s.authors = 'Google Inc.' From 6b12581da89d4b60d6f187f7d2d5299b1483a625 Mon Sep 17 00:00:00 2001 From: WonJo Date: Fri, 6 Aug 2021 11:53:33 +0900 Subject: [PATCH 12/43] Update Package.swift --- Package.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Package.swift b/Package.swift index f1814d0..0bbd2b9 100644 --- a/Package.swift +++ b/Package.swift @@ -6,7 +6,7 @@ import PackageDescription let package = Package( name: "libwebp", platforms: [ - .macOS(.v10_10), .iOS(.v8), .tvOS(.v9), .watchOS(.v2) + .macOS(.v10_10), .iOS(.v9), .tvOS(.v9), .watchOS(.v2) ], products: [ // Products define the executables and libraries produced by a package, and make them visible to other packages. From 44908d127b476938077a453442c6659a57dfd754 Mon Sep 17 00:00:00 2001 From: WonJo Date: Fri, 6 Aug 2021 11:56:59 +0900 Subject: [PATCH 13/43] Update libwebp.podspec --- libwebp.podspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libwebp.podspec b/libwebp.podspec index 093db0e..a6f6b76 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.requires_arc = false s.osx.deployment_target = '10.10' - s.ios.deployment_target = '8.0' + s.ios.deployment_target = '9.0' s.tvos.deployment_target = '9.0' s.watchos.deployment_target = '2.0' From a999c8a73b223b8f656d576f3abdefcc8bbb86b3 Mon Sep 17 00:00:00 2001 From: lizhuoli Date: Thu, 30 Sep 2021 16:41:55 +0800 Subject: [PATCH 14/43] Bumped the Xcodeproj for Carthage to iOS 9+ --- libwebp.xcodeproj/project.pbxproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libwebp.xcodeproj/project.pbxproj b/libwebp.xcodeproj/project.pbxproj index 134782f..627fffb 100644 --- a/libwebp.xcodeproj/project.pbxproj +++ b/libwebp.xcodeproj/project.pbxproj @@ -982,7 +982,7 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = libwebp; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; MACOSX_DEPLOYMENT_TARGET = 10.10; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; @@ -1056,7 +1056,7 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = libwebp; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; MACOSX_DEPLOYMENT_TARGET = 10.10; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; From aee4b3f5d07357ddabb630ab965f1937065e261f Mon Sep 17 00:00:00 2001 From: lizhuoli Date: Thu, 30 Sep 2021 16:44:45 +0800 Subject: [PATCH 15/43] Update to v1.2.1 --- libwebp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libwebp b/libwebp index fedac6c..9ce5843 160000 --- a/libwebp +++ b/libwebp @@ -1 +1 @@ -Subproject commit fedac6cc69cda3e9e04b780d324cf03921fb3ff4 +Subproject commit 9ce5843dbabcfd3f7c39ec7ceba9cbeb213cbfdf From 5c18ff535dac86d96c7bded00a7a8afc41c979e9 Mon Sep 17 00:00:00 2001 From: lizhuoli Date: Thu, 30 Sep 2021 16:45:17 +0800 Subject: [PATCH 16/43] Bumped version to 1.2.1 --- Xcode/Info.plist | 4 ++-- libwebp.podspec | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Xcode/Info.plist b/Xcode/Info.plist index fd7f41c..c4602d1 100644 --- a/Xcode/Info.plist +++ b/Xcode/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.2.0 + 1.2.1 CFBundleVersion - 1.2.0 + 1.2.1 NSPrincipalClass diff --git a/libwebp.podspec b/libwebp.podspec index a6f6b76..54405c5 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'libwebp' - s.version = '1.2.0' + s.version = '1.2.1' s.summary = 'Library to encode and decode images in WebP format.' s.homepage = 'https://developers.google.com/speed/webp/' s.authors = 'Google Inc.' From 2b3b43faaef54d1b897482428428357b7f7cd08b Mon Sep 17 00:00:00 2001 From: lizhuoli Date: Thu, 30 Sep 2021 16:47:33 +0800 Subject: [PATCH 17/43] Change CocoaPods git url to the GitHub mirror instead of Google Source. Match the SwiftPM and Carthage --- libwebp.podspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libwebp.podspec b/libwebp.podspec index 54405c5..4d5d297 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -5,7 +5,7 @@ Pod::Spec.new do |s| s.homepage = 'https://developers.google.com/speed/webp/' s.authors = 'Google Inc.' s.license = { :type => 'BSD', :file => 'COPYING' } - s.source = { :git => 'https://chromium.googlesource.com/webm/libwebp', :tag => 'v' + s.version.to_s } + s.source = { :git => 'https://github.com/webmproject/libwebp.git', :tag => 'v' + s.version.to_s } s.compiler_flags = '-D_THREAD_SAFE' s.requires_arc = false From 2c97422c951ba804e1e030b09fae26aef8fe560f Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 3 Aug 2022 01:07:21 +0800 Subject: [PATCH 18/43] Update to v1.2.2 --- libwebp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libwebp b/libwebp index 9ce5843..b0a8608 160000 --- a/libwebp +++ b/libwebp @@ -1 +1 @@ -Subproject commit 9ce5843dbabcfd3f7c39ec7ceba9cbeb213cbfdf +Subproject commit b0a860891dcd4c0c2d7c6149e5cccb6eb881cc21 From e19508a8556837d5c0cb7b9bc0545457bab0933c Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 3 Aug 2022 01:08:24 +0800 Subject: [PATCH 19/43] Bumped version to 1.2.2 --- Xcode/Info.plist | 4 ++-- libwebp.podspec | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Xcode/Info.plist b/Xcode/Info.plist index c4602d1..b77d753 100644 --- a/Xcode/Info.plist +++ b/Xcode/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.2.1 + 1.2.2 CFBundleVersion - 1.2.1 + 1.2.2 NSPrincipalClass diff --git a/libwebp.podspec b/libwebp.podspec index 4d5d297..a18e62a 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'libwebp' - s.version = '1.2.1' + s.version = '1.2.2' s.summary = 'Library to encode and decode images in WebP format.' s.homepage = 'https://developers.google.com/speed/webp/' s.authors = 'Google Inc.' From b0308a7b3945a9b4f5c52ee333be91d5b188ebe9 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 3 Aug 2022 01:34:14 +0800 Subject: [PATCH 20/43] Update to v1.2.3 vendored sharpyuv is also available from CocoaPods --- Package.swift | 2 +- libwebp | 2 +- libwebp.podspec | 11 +++++-- libwebp.xcodeproj/project.pbxproj | 48 +++++++++++++++++++++++++++++++ 4 files changed, 59 insertions(+), 4 deletions(-) diff --git a/Package.swift b/Package.swift index 0bbd2b9..1cc307c 100644 --- a/Package.swift +++ b/Package.swift @@ -25,7 +25,7 @@ let package = Package( name: "libwebp", dependencies: [], path: ".", - sources: ["libwebp/src"], + sources: ["libwebp/src", "libwebp/sharpyuv"], publicHeadersPath: "include", cSettings: [.headerSearchPath("libwebp")]) ] diff --git a/libwebp b/libwebp index b0a8608..3c4a0fb 160000 --- a/libwebp +++ b/libwebp @@ -1 +1 @@ -Subproject commit b0a860891dcd4c0c2d7c6149e5cccb6eb881cc21 +Subproject commit 3c4a0fbfbcc606193f7e943b7e50af4077ce1a6c diff --git a/libwebp.podspec b/libwebp.podspec index a18e62a..e5a3539 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -18,11 +18,12 @@ Pod::Spec.new do |s| s.pod_target_xcconfig = { 'USER_HEADER_SEARCH_PATHS' => '$(inherited) ${PODS_ROOT}/libwebp/ ${PODS_TARGET_SRCROOT}/' } - s.preserve_path = 'src' - s.default_subspecs = 'webp', 'demux', 'mux' + s.preserve_paths = 'src', 'sharpyuv' + s.default_subspecs = 'webp', 'demux', 'mux', 'sharpyuv' # webp decoding && encoding s.subspec 'webp' do |ss| + ss.dependency 'libwebp/sharpyuv' ss.source_files = 'src/webp/decode.h', 'src/webp/encode.h', 'src/webp/types.h', 'src/webp/mux_types.h', 'src/webp/format_constants.h', 'src/utils/*.{h,c}', 'src/dsp/*.{h,c}', 'src/dec/*.{h,c}', 'src/enc/*.{h,c}' ss.public_header_files = 'src/webp/decode.h', 'src/webp/encode.h', 'src/webp/types.h', 'src/webp/mux_types.h', 'src/webp/format_constants.h' end @@ -41,6 +42,12 @@ Pod::Spec.new do |s| ss.public_header_files = 'src/webp/mux.h' end + # sharpyuv converter + s.subspec 'sharpyuv' do |ss| + ss.source_files = 'sharpyuv/*.{h,c}' + ss.public_header_files = 'sharpyuv/*.h' + end + # fix #include cause 'Include of non-modular header inside framework module error' s.prepare_command = <<-CMD sed -i.bak 's///g' './src/webp/types.h' diff --git a/libwebp.xcodeproj/project.pbxproj b/libwebp.xcodeproj/project.pbxproj index 627fffb..b83902f 100644 --- a/libwebp.xcodeproj/project.pbxproj +++ b/libwebp.xcodeproj/project.pbxproj @@ -7,6 +7,16 @@ objects = { /* Begin PBXBuildFile section */ + 3236021C2899930C00C844E7 /* sharpyuv_gamma.c in Sources */ = {isa = PBXBuildFile; fileRef = 323602112899930B00C844E7 /* sharpyuv_gamma.c */; }; + 3236021D2899930C00C844E7 /* sharpyuv_sse2.c in Sources */ = {isa = PBXBuildFile; fileRef = 323602122899930B00C844E7 /* sharpyuv_sse2.c */; }; + 3236021E2899930C00C844E7 /* sharpyuv.c in Sources */ = {isa = PBXBuildFile; fileRef = 323602132899930B00C844E7 /* sharpyuv.c */; }; + 3236021F2899930C00C844E7 /* sharpyuv_csp.h in Headers */ = {isa = PBXBuildFile; fileRef = 323602142899930B00C844E7 /* sharpyuv_csp.h */; }; + 323602202899930C00C844E7 /* sharpyuv_neon.c in Sources */ = {isa = PBXBuildFile; fileRef = 323602152899930B00C844E7 /* sharpyuv_neon.c */; }; + 323602212899930C00C844E7 /* sharpyuv_dsp.h in Headers */ = {isa = PBXBuildFile; fileRef = 323602162899930B00C844E7 /* sharpyuv_dsp.h */; }; + 323602232899930C00C844E7 /* sharpyuv_gamma.h in Headers */ = {isa = PBXBuildFile; fileRef = 323602182899930B00C844E7 /* sharpyuv_gamma.h */; }; + 323602242899930C00C844E7 /* sharpyuv.h in Headers */ = {isa = PBXBuildFile; fileRef = 323602192899930B00C844E7 /* sharpyuv.h */; }; + 323602252899930C00C844E7 /* sharpyuv_csp.c in Sources */ = {isa = PBXBuildFile; fileRef = 3236021A2899930B00C844E7 /* sharpyuv_csp.c */; }; + 323602262899930C00C844E7 /* sharpyuv_dsp.c in Sources */ = {isa = PBXBuildFile; fileRef = 3236021B2899930B00C844E7 /* sharpyuv_dsp.c */; }; 3258CB9E228BEAFE00C85E93 /* cost_neon.c in Sources */ = {isa = PBXBuildFile; fileRef = 3258CB9D228BEAFE00C85E93 /* cost_neon.c */; }; 3258CBA0228BEB3800C85E93 /* quant.h in Headers */ = {isa = PBXBuildFile; fileRef = 3258CB9F228BEB3800C85E93 /* quant.h */; }; 804BDE09213568F500BA3395 /* libwebp.h in Headers */ = {isa = PBXBuildFile; fileRef = 804BDE07213568F500BA3395 /* libwebp.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -181,6 +191,16 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 323602112899930B00C844E7 /* sharpyuv_gamma.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sharpyuv_gamma.c; sourceTree = ""; }; + 323602122899930B00C844E7 /* sharpyuv_sse2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sharpyuv_sse2.c; sourceTree = ""; }; + 323602132899930B00C844E7 /* sharpyuv.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sharpyuv.c; sourceTree = ""; }; + 323602142899930B00C844E7 /* sharpyuv_csp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharpyuv_csp.h; sourceTree = ""; }; + 323602152899930B00C844E7 /* sharpyuv_neon.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sharpyuv_neon.c; sourceTree = ""; }; + 323602162899930B00C844E7 /* sharpyuv_dsp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharpyuv_dsp.h; sourceTree = ""; }; + 323602182899930B00C844E7 /* sharpyuv_gamma.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharpyuv_gamma.h; sourceTree = ""; }; + 323602192899930B00C844E7 /* sharpyuv.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharpyuv.h; sourceTree = ""; }; + 3236021A2899930B00C844E7 /* sharpyuv_csp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sharpyuv_csp.c; sourceTree = ""; }; + 3236021B2899930B00C844E7 /* sharpyuv_dsp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sharpyuv_dsp.c; sourceTree = ""; }; 3258CB9D228BEAFE00C85E93 /* cost_neon.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = cost_neon.c; sourceTree = ""; }; 3258CB9F228BEB3800C85E93 /* quant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = quant.h; sourceTree = ""; }; 804BDE04213568F500BA3395 /* libwebp.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = libwebp.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -366,6 +386,23 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 323602102899930B00C844E7 /* sharpyuv */ = { + isa = PBXGroup; + children = ( + 323602112899930B00C844E7 /* sharpyuv_gamma.c */, + 323602122899930B00C844E7 /* sharpyuv_sse2.c */, + 323602132899930B00C844E7 /* sharpyuv.c */, + 323602142899930B00C844E7 /* sharpyuv_csp.h */, + 323602152899930B00C844E7 /* sharpyuv_neon.c */, + 323602162899930B00C844E7 /* sharpyuv_dsp.h */, + 323602182899930B00C844E7 /* sharpyuv_gamma.h */, + 323602192899930B00C844E7 /* sharpyuv.h */, + 3236021A2899930B00C844E7 /* sharpyuv_csp.c */, + 3236021B2899930B00C844E7 /* sharpyuv_dsp.c */, + ); + path = sharpyuv; + sourceTree = ""; + }; 804BDDFA213568F500BA3395 = { isa = PBXGroup; children = ( @@ -399,6 +436,7 @@ 804BDE1021356AEB00BA3395 /* libwebp */ = { isa = PBXGroup; children = ( + 323602102899930B00C844E7 /* sharpyuv */, 804BDE1221356B2D00BA3395 /* src */, ); path = libwebp; @@ -650,11 +688,14 @@ 80C1D53D2135871B007974F5 /* common_sse41.h in Headers */, 804BDE09213568F500BA3395 /* libwebp.h in Headers */, 804BDF9321356BC100BA3395 /* color_cache_utils.h in Headers */, + 3236021F2899930C00C844E7 /* sharpyuv_csp.h in Headers */, 804BE0A121356C2600BA3395 /* vp8i_dec.h in Headers */, 804BE07F21356C0A00BA3395 /* common_sse2.h in Headers */, 804BDF9521356BC100BA3395 /* endian_inl_utils.h in Headers */, 804BDFAE21356BCC00BA3395 /* mux.h in Headers */, + 323602212899930C00C844E7 /* sharpyuv_dsp.h in Headers */, 804BDFAB21356BCC00BA3395 /* types.h in Headers */, + 323602232899930C00C844E7 /* sharpyuv_gamma.h in Headers */, 804BDFA221356BC100BA3395 /* utils.h in Headers */, 804BDFB821356BDB00BA3395 /* animi.h in Headers */, 804BE04021356C0A00BA3395 /* mips_macro.h in Headers */, @@ -675,6 +716,7 @@ 804BDFBA21356BDB00BA3395 /* muxi.h in Headers */, 804BDFA321356BC100BA3395 /* quant_levels_dec_utils.h in Headers */, 804BDFED21356BEC00BA3395 /* backward_references_enc.h in Headers */, + 323602242899930C00C844E7 /* sharpyuv.h in Headers */, 804BDF9C21356BC100BA3395 /* quant_levels_utils.h in Headers */, 804BE04A21356C0A00BA3395 /* neon.h in Headers */, 804BE04721356C0A00BA3395 /* lossless.h in Headers */, @@ -804,6 +846,7 @@ 804BDF9E21356BC100BA3395 /* random_utils.c in Sources */, 804BE08721356C1B00BA3395 /* demux.c in Sources */, 804BE07121356C0A00BA3395 /* lossless_sse2.c in Sources */, + 323602252899930C00C844E7 /* sharpyuv_csp.c in Sources */, 804BDFF021356BEC00BA3395 /* backward_references_cost_enc.c in Sources */, 804BDFBC21356BDB00BA3395 /* anim_encode.c in Sources */, 804BE05221356C0A00BA3395 /* alpha_processing_sse2.c in Sources */, @@ -824,6 +867,7 @@ 804BE0A421356C2600BA3395 /* quant_dec.c in Sources */, 804BE05621356C0A00BA3395 /* filters_neon.c in Sources */, 804BE07D21356C0A00BA3395 /* dec_msa.c in Sources */, + 323602202899930C00C844E7 /* sharpyuv_neon.c in Sources */, 804BDF9B21356BC100BA3395 /* huffman_encode_utils.c in Sources */, 804BDF9721356BC100BA3395 /* utils.c in Sources */, 804BDF9621356BC100BA3395 /* thread_utils.c in Sources */, @@ -836,6 +880,7 @@ 3258CB9E228BEAFE00C85E93 /* cost_neon.c in Sources */, 804BE0A621356C2600BA3395 /* frame_dec.c in Sources */, 804BE06221356C0A00BA3395 /* lossless_neon.c in Sources */, + 3236021C2899930C00C844E7 /* sharpyuv_gamma.c in Sources */, 804BE07821356C0A00BA3395 /* rescaler_mips32.c in Sources */, 804BE04421356C0A00BA3395 /* upsampling_mips_dsp_r2.c in Sources */, 804BDF9221356BC100BA3395 /* huffman_utils.c in Sources */, @@ -851,17 +896,20 @@ 804BE04321356C0A00BA3395 /* lossless_msa.c in Sources */, 804BE07221356C0A00BA3395 /* rescaler_sse2.c in Sources */, 804BE05021356C0A00BA3395 /* enc_mips_dsp_r2.c in Sources */, + 323602262899930C00C844E7 /* sharpyuv_dsp.c in Sources */, 804BE0A021356C2600BA3395 /* tree_dec.c in Sources */, 804BDFE121356BEC00BA3395 /* filter_enc.c in Sources */, 804BE04621356C0A00BA3395 /* enc_neon.c in Sources */, 804BE03F21356C0A00BA3395 /* lossless_enc_mips32.c in Sources */, 804BDF9421356BC100BA3395 /* rescaler_utils.c in Sources */, + 3236021D2899930C00C844E7 /* sharpyuv_sse2.c in Sources */, 804BE05D21356C0A00BA3395 /* lossless_enc_msa.c in Sources */, 804BDFE321356BEC00BA3395 /* vp8l_enc.c in Sources */, 804BE05F21356C0A00BA3395 /* lossless_enc_sse2.c in Sources */, 804BE09B21356C2600BA3395 /* idec_dec.c in Sources */, 804BDFE521356BEC00BA3395 /* cost_enc.c in Sources */, 804BE07721356C0A00BA3395 /* lossless_enc_sse41.c in Sources */, + 3236021E2899930C00C844E7 /* sharpyuv.c in Sources */, 804BE09E21356C2600BA3395 /* buffer_dec.c in Sources */, 804BE07921356C0A00BA3395 /* upsampling_msa.c in Sources */, 804BDFF221356BEC00BA3395 /* webp_enc.c in Sources */, From 1a4ea0e987656180b94539cb47343c37ff26922e Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 3 Aug 2022 01:36:08 +0800 Subject: [PATCH 21/43] Bumped version to 1.2.3 --- Xcode/Info.plist | 4 ++-- libwebp.podspec | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Xcode/Info.plist b/Xcode/Info.plist index b77d753..3c7e385 100644 --- a/Xcode/Info.plist +++ b/Xcode/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.2.2 + 1.2.3 CFBundleVersion - 1.2.2 + 1.2.3 NSPrincipalClass diff --git a/libwebp.podspec b/libwebp.podspec index e5a3539..035c734 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'libwebp' - s.version = '1.2.2' + s.version = '1.2.3' s.summary = 'Library to encode and decode images in WebP format.' s.homepage = 'https://developers.google.com/speed/webp/' s.authors = 'Google Inc.' From 0f3bdb28a1edc5e8e43876d3835d20c601ef331f Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 3 Aug 2022 01:40:18 +0800 Subject: [PATCH 22/43] Revert sharpyuv as standalone subspec because it depends webp as well --- libwebp.podspec | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/libwebp.podspec b/libwebp.podspec index 035c734..49ed3b1 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -19,12 +19,11 @@ Pod::Spec.new do |s| 'USER_HEADER_SEARCH_PATHS' => '$(inherited) ${PODS_ROOT}/libwebp/ ${PODS_TARGET_SRCROOT}/' } s.preserve_paths = 'src', 'sharpyuv' - s.default_subspecs = 'webp', 'demux', 'mux', 'sharpyuv' + s.default_subspecs = 'webp', 'demux', 'mux' # webp decoding && encoding s.subspec 'webp' do |ss| - ss.dependency 'libwebp/sharpyuv' - ss.source_files = 'src/webp/decode.h', 'src/webp/encode.h', 'src/webp/types.h', 'src/webp/mux_types.h', 'src/webp/format_constants.h', 'src/utils/*.{h,c}', 'src/dsp/*.{h,c}', 'src/dec/*.{h,c}', 'src/enc/*.{h,c}' + ss.source_files = 'src/webp/decode.h', 'src/webp/encode.h', 'src/webp/types.h', 'src/webp/mux_types.h', 'src/webp/format_constants.h', 'src/utils/*.{h,c}', 'src/dsp/*.{h,c}', 'src/dec/*.{h,c}', 'src/enc/*.{h,c}', 'sharpyuv/*.{h,c}' ss.public_header_files = 'src/webp/decode.h', 'src/webp/encode.h', 'src/webp/types.h', 'src/webp/mux_types.h', 'src/webp/format_constants.h' end @@ -42,12 +41,6 @@ Pod::Spec.new do |s| ss.public_header_files = 'src/webp/mux.h' end - # sharpyuv converter - s.subspec 'sharpyuv' do |ss| - ss.source_files = 'sharpyuv/*.{h,c}' - ss.public_header_files = 'sharpyuv/*.h' - end - # fix #include cause 'Include of non-modular header inside framework module error' s.prepare_command = <<-CMD sed -i.bak 's///g' './src/webp/types.h' From 4a11f0fc734783cfda9aea7f029697ce89241b32 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 9 Nov 2022 18:43:13 +0800 Subject: [PATCH 23/43] Update to v1.2.4 --- libwebp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libwebp b/libwebp index 3c4a0fb..0d1f125 160000 --- a/libwebp +++ b/libwebp @@ -1 +1 @@ -Subproject commit 3c4a0fbfbcc606193f7e943b7e50af4077ce1a6c +Subproject commit 0d1f12546bd803099a60c070517a552483f3790e From 4f52fc9b29600a03de6e05af16df0d694cb44301 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 9 Nov 2022 18:44:51 +0800 Subject: [PATCH 24/43] Bumped version to 1.2.4 --- Xcode/Info.plist | 4 ++-- libwebp.podspec | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Xcode/Info.plist b/Xcode/Info.plist index 3c7e385..7860204 100644 --- a/Xcode/Info.plist +++ b/Xcode/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.2.3 + 1.2.4 CFBundleVersion - 1.2.3 + 1.2.4 NSPrincipalClass diff --git a/libwebp.podspec b/libwebp.podspec index 49ed3b1..0fd5ac9 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'libwebp' - s.version = '1.2.3' + s.version = '1.2.4' s.summary = 'Library to encode and decode images in WebP format.' s.homepage = 'https://developers.google.com/speed/webp/' s.authors = 'Google Inc.' From 58e7e6e2ad8e51c197bbe2501efa12c2c2c3db9a Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 26 Jul 2023 15:43:28 +0800 Subject: [PATCH 25/43] Update to v1.3.0 --- libwebp | 2 +- libwebp.xcodeproj/project.pbxproj | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/libwebp b/libwebp index 0d1f125..b557776 160000 --- a/libwebp +++ b/libwebp @@ -1 +1 @@ -Subproject commit 0d1f12546bd803099a60c070517a552483f3790e +Subproject commit b557776962a3dcc985d83bd4ed94e1e2e50d0fa2 diff --git a/libwebp.xcodeproj/project.pbxproj b/libwebp.xcodeproj/project.pbxproj index b83902f..becae15 100644 --- a/libwebp.xcodeproj/project.pbxproj +++ b/libwebp.xcodeproj/project.pbxproj @@ -14,11 +14,13 @@ 323602202899930C00C844E7 /* sharpyuv_neon.c in Sources */ = {isa = PBXBuildFile; fileRef = 323602152899930B00C844E7 /* sharpyuv_neon.c */; }; 323602212899930C00C844E7 /* sharpyuv_dsp.h in Headers */ = {isa = PBXBuildFile; fileRef = 323602162899930B00C844E7 /* sharpyuv_dsp.h */; }; 323602232899930C00C844E7 /* sharpyuv_gamma.h in Headers */ = {isa = PBXBuildFile; fileRef = 323602182899930B00C844E7 /* sharpyuv_gamma.h */; }; - 323602242899930C00C844E7 /* sharpyuv.h in Headers */ = {isa = PBXBuildFile; fileRef = 323602192899930B00C844E7 /* sharpyuv.h */; }; + 323602242899930C00C844E7 /* sharpyuv.h in Headers */ = {isa = PBXBuildFile; fileRef = 323602192899930B00C844E7 /* sharpyuv.h */; settings = {ATTRIBUTES = (Public, ); }; }; 323602252899930C00C844E7 /* sharpyuv_csp.c in Sources */ = {isa = PBXBuildFile; fileRef = 3236021A2899930B00C844E7 /* sharpyuv_csp.c */; }; 323602262899930C00C844E7 /* sharpyuv_dsp.c in Sources */ = {isa = PBXBuildFile; fileRef = 3236021B2899930B00C844E7 /* sharpyuv_dsp.c */; }; 3258CB9E228BEAFE00C85E93 /* cost_neon.c in Sources */ = {isa = PBXBuildFile; fileRef = 3258CB9D228BEAFE00C85E93 /* cost_neon.c */; }; 3258CBA0228BEB3800C85E93 /* quant.h in Headers */ = {isa = PBXBuildFile; fileRef = 3258CB9F228BEB3800C85E93 /* quant.h */; }; + 329409832A7105C700F6BA45 /* sharpyuv_cpu.h in Headers */ = {isa = PBXBuildFile; fileRef = 329409812A7105C700F6BA45 /* sharpyuv_cpu.h */; }; + 329409842A7105C700F6BA45 /* sharpyuv_cpu.c in Sources */ = {isa = PBXBuildFile; fileRef = 329409822A7105C700F6BA45 /* sharpyuv_cpu.c */; }; 804BDE09213568F500BA3395 /* libwebp.h in Headers */ = {isa = PBXBuildFile; fileRef = 804BDE07213568F500BA3395 /* libwebp.h */; settings = {ATTRIBUTES = (Public, ); }; }; 804BDF8A21356BC100BA3395 /* bit_reader_inl_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 804BDF7021356BC000BA3395 /* bit_reader_inl_utils.h */; }; 804BDF8B21356BC100BA3395 /* bit_reader_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 804BDF7121356BC000BA3395 /* bit_reader_utils.h */; }; @@ -203,6 +205,8 @@ 3236021B2899930B00C844E7 /* sharpyuv_dsp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sharpyuv_dsp.c; sourceTree = ""; }; 3258CB9D228BEAFE00C85E93 /* cost_neon.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = cost_neon.c; sourceTree = ""; }; 3258CB9F228BEB3800C85E93 /* quant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = quant.h; sourceTree = ""; }; + 329409812A7105C700F6BA45 /* sharpyuv_cpu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharpyuv_cpu.h; sourceTree = ""; }; + 329409822A7105C700F6BA45 /* sharpyuv_cpu.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sharpyuv_cpu.c; sourceTree = ""; }; 804BDE04213568F500BA3395 /* libwebp.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = libwebp.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 804BDE07213568F500BA3395 /* libwebp.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = libwebp.h; sourceTree = ""; }; 804BDE08213568F500BA3395 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; @@ -399,6 +403,8 @@ 323602192899930B00C844E7 /* sharpyuv.h */, 3236021A2899930B00C844E7 /* sharpyuv_csp.c */, 3236021B2899930B00C844E7 /* sharpyuv_dsp.c */, + 329409822A7105C700F6BA45 /* sharpyuv_cpu.c */, + 329409812A7105C700F6BA45 /* sharpyuv_cpu.h */, ); path = sharpyuv; sourceTree = ""; @@ -696,6 +702,7 @@ 323602212899930C00C844E7 /* sharpyuv_dsp.h in Headers */, 804BDFAB21356BCC00BA3395 /* types.h in Headers */, 323602232899930C00C844E7 /* sharpyuv_gamma.h in Headers */, + 329409832A7105C700F6BA45 /* sharpyuv_cpu.h in Headers */, 804BDFA221356BC100BA3395 /* utils.h in Headers */, 804BDFB821356BDB00BA3395 /* animi.h in Headers */, 804BE04021356C0A00BA3395 /* mips_macro.h in Headers */, @@ -942,6 +949,7 @@ 804BE04D21356C0A00BA3395 /* dec_mips_dsp_r2.c in Sources */, 804BDFDF21356BEC00BA3395 /* backward_references_enc.c in Sources */, 804BDFEA21356BEC00BA3395 /* token_enc.c in Sources */, + 329409842A7105C700F6BA45 /* sharpyuv_cpu.c in Sources */, 804BDFF921356BEC00BA3395 /* iterator_enc.c in Sources */, 804BDFE921356BEC00BA3395 /* predictor_enc.c in Sources */, 804BE05B21356C0A00BA3395 /* lossless.c in Sources */, From d17f9e458ae4faed9f4ec40694d0ba147c91d26b Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 26 Jul 2023 16:05:24 +0800 Subject: [PATCH 26/43] Remark the sharpyuv to public header and public include folder Currently it belong to libwebp, may separate to host different target in the future --- Xcode/Info.plist | 4 ++-- include/sharpyuv/sharpyuv.h | 1 + libwebp.podspec | 13 ++++++++++--- 3 files changed, 13 insertions(+), 5 deletions(-) create mode 120000 include/sharpyuv/sharpyuv.h diff --git a/Xcode/Info.plist b/Xcode/Info.plist index 7860204..2d546c8 100644 --- a/Xcode/Info.plist +++ b/Xcode/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.2.4 + 1.3.0 CFBundleVersion - 1.2.4 + 1.3.0 NSPrincipalClass diff --git a/include/sharpyuv/sharpyuv.h b/include/sharpyuv/sharpyuv.h new file mode 120000 index 0000000..40f3cc7 --- /dev/null +++ b/include/sharpyuv/sharpyuv.h @@ -0,0 +1 @@ +../../libwebp/sharpyuv/sharpyuv.h \ No newline at end of file diff --git a/libwebp.podspec b/libwebp.podspec index 0fd5ac9..be6450e 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'libwebp' - s.version = '1.2.4' + s.version = '1.3.0' s.summary = 'Library to encode and decode images in WebP format.' s.homepage = 'https://developers.google.com/speed/webp/' s.authors = 'Google Inc.' @@ -19,11 +19,18 @@ Pod::Spec.new do |s| 'USER_HEADER_SEARCH_PATHS' => '$(inherited) ${PODS_ROOT}/libwebp/ ${PODS_TARGET_SRCROOT}/' } s.preserve_paths = 'src', 'sharpyuv' - s.default_subspecs = 'webp', 'demux', 'mux' + s.default_subspecs = 'sharpyuv', 'webp', 'demux', 'mux' + + # sharpyuv converter + s.subspec 'sharpyuv' do |ss| + ss.source_files = 'sharpyuv/*.{h,c}' + ss.public_header_files = 'sharpyuv/sharpyuv.h' + end # webp decoding && encoding s.subspec 'webp' do |ss| - ss.source_files = 'src/webp/decode.h', 'src/webp/encode.h', 'src/webp/types.h', 'src/webp/mux_types.h', 'src/webp/format_constants.h', 'src/utils/*.{h,c}', 'src/dsp/*.{h,c}', 'src/dec/*.{h,c}', 'src/enc/*.{h,c}', 'sharpyuv/*.{h,c}' + ss.dependency 'libwebp/sharpyuv' + ss.source_files = 'src/webp/decode.h', 'src/webp/encode.h', 'src/webp/types.h', 'src/webp/mux_types.h', 'src/webp/format_constants.h', 'src/utils/*.{h,c}', 'src/dsp/*.{h,c}', 'src/dec/*.{h,c}', 'src/enc/*.{h,c}' ss.public_header_files = 'src/webp/decode.h', 'src/webp/encode.h', 'src/webp/types.h', 'src/webp/mux_types.h', 'src/webp/format_constants.h' end From 279004f6b436b28e358b82545b48f308260e235c Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 26 Jul 2023 16:10:50 +0800 Subject: [PATCH 27/43] Update readme about how current sharpyuv integrated with Apple platform package managers... --- README.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/README.md b/README.md index 0134450..0625d38 100644 --- a/README.md +++ b/README.md @@ -67,6 +67,20 @@ For Swift Package Manager user, it's recommended to use the modular import inste import libwebp ``` +## About sharpyuv + +From libwebp v1.2.3, Google separate some function into a new standalone lib called `sharpyuv`. However, it use source code from libwebp repo's `src` + +For now, we only expose the sharpyuv public headers, but not a standalone CocoaPods/SPM/Carthage Target. In the future we may. + +If you want to use sharpyuv functions, do something like this: + ++ Objective-C +``` +// This does not supports module include, means no Swift support +#import +``` + ## License libwebp is available under the BSD-3 license. See [the LICENSE file](https://github.com/webmproject/libwebp/blob/master/COPYING) for more info. From d347ea9f528dd88522444d78fa114b06d632c704 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 26 Jul 2023 16:18:18 +0800 Subject: [PATCH 28/43] Bumped version to 1.3.0 --- README.md | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 0625d38..47f777c 100644 --- a/README.md +++ b/README.md @@ -69,16 +69,33 @@ import libwebp ## About sharpyuv -From libwebp v1.2.3, Google separate some function into a new standalone lib called `sharpyuv`. However, it use source code from libwebp repo's `src` +From libwebp v1.2.3, Google separate some functions into a new standalone lib called `sharpyuv`. However, it dependeny source code from libwebp repo's `src` as implementation. Like llvm-project monorepo, one repo host multiple targets. -For now, we only expose the sharpyuv public headers, but not a standalone CocoaPods/SPM/Carthage Target. In the future we may. +Before v1.3.0, we hide these headers as internal headers. + +From v1.3.0, we expose the sharpyuv public headers, but not a standalone CocoaPods/SPM/Carthage Target. (In the future we may consider separate targets) If you want to use sharpyuv functions, do something like this: + Objective-C + ``` -// This does not supports module include, means no Swift support +// This does not supports module include +#if __has_include() #import +#else +#import // bundled in libwebp's modulemap +#endif +``` + ++ Swift + +```swift +#if canImport(sharpyuv) +import sharpyuv +#else +import libwebp // bundled in libwebp's modulemap +#endif ``` ## License From 5b9e37aa3db3f3926e43e8beba772b2f9a2bc16f Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 26 Jul 2023 17:41:55 +0800 Subject: [PATCH 29/43] Fix CocoaPods podspec again See: CocoaPods/issues/12011 --- libwebp.podspec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libwebp.podspec b/libwebp.podspec index be6450e..2c79f76 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -18,11 +18,12 @@ Pod::Spec.new do |s| s.pod_target_xcconfig = { 'USER_HEADER_SEARCH_PATHS' => '$(inherited) ${PODS_ROOT}/libwebp/ ${PODS_TARGET_SRCROOT}/' } - s.preserve_paths = 'src', 'sharpyuv' s.default_subspecs = 'sharpyuv', 'webp', 'demux', 'mux' + s.preserve_path = 'src' # sharpyuv converter s.subspec 'sharpyuv' do |ss| + ss.preserve_paths = 'src', 'sharpyuv' ss.source_files = 'sharpyuv/*.{h,c}' ss.public_header_files = 'sharpyuv/sharpyuv.h' end From 6fbe7190560ee44432976e718225fd700c3f0701 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 26 Jul 2023 17:44:08 +0800 Subject: [PATCH 30/43] Fix umbrella header for Carthage build --- Xcode/libwebp.h | 1 + 1 file changed, 1 insertion(+) diff --git a/Xcode/libwebp.h b/Xcode/libwebp.h index 2ffcfbd..c26038b 100644 --- a/Xcode/libwebp.h +++ b/Xcode/libwebp.h @@ -23,3 +23,4 @@ FOUNDATION_EXPORT const unsigned char libwebpVersionString[]; #import #import #import +#import From 3dc92b7ea302be37e1bbfa7b0853b85325eb7a70 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 26 Jul 2023 17:48:10 +0800 Subject: [PATCH 31/43] Update to v1.3.1 --- libwebp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libwebp b/libwebp index b557776..fd7bb21 160000 --- a/libwebp +++ b/libwebp @@ -1 +1 @@ -Subproject commit b557776962a3dcc985d83bd4ed94e1e2e50d0fa2 +Subproject commit fd7bb21c0cb56e8a82e9bfa376164b842f433f3b From 1cdddb80ccef6d30e869c4abe1f9f3d3871a25b5 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Wed, 26 Jul 2023 17:48:51 +0800 Subject: [PATCH 32/43] Bumped version to 1.3.1 --- Xcode/Info.plist | 4 ++-- libwebp.podspec | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Xcode/Info.plist b/Xcode/Info.plist index 2d546c8..0acdba8 100644 --- a/Xcode/Info.plist +++ b/Xcode/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.3.0 + 1.3.1 CFBundleVersion - 1.3.0 + 1.3.1 NSPrincipalClass diff --git a/libwebp.podspec b/libwebp.podspec index 2c79f76..a3ca062 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'libwebp' - s.version = '1.3.0' + s.version = '1.3.1' s.summary = 'Library to encode and decode images in WebP format.' s.homepage = 'https://developers.google.com/speed/webp/' s.authors = 'Google Inc.' From 5d45121fc5141a710dc20572af5f28ab27c07bea Mon Sep 17 00:00:00 2001 From: 1Conan Date: Thu, 14 Sep 2023 16:55:59 +0800 Subject: [PATCH 33/43] bump libwebp --- libwebp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libwebp b/libwebp index fd7bb21..ca33220 160000 --- a/libwebp +++ b/libwebp @@ -1 +1 @@ -Subproject commit fd7bb21c0cb56e8a82e9bfa376164b842f433f3b +Subproject commit ca332209cb5567c9b249c86788cb2dbf8847e760 From b2b1d20a90b14d11f6ef4241da6b81c1d3f171e4 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Fri, 15 Sep 2023 11:44:52 +0800 Subject: [PATCH 34/43] Bumped version to 1.3.2 --- Xcode/Info.plist | 4 ++-- libwebp.podspec | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Xcode/Info.plist b/Xcode/Info.plist index 0acdba8..2d92fab 100644 --- a/Xcode/Info.plist +++ b/Xcode/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.3.1 + 1.3.2 CFBundleVersion - 1.3.1 + 1.3.2 NSPrincipalClass diff --git a/libwebp.podspec b/libwebp.podspec index a3ca062..be52d39 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'libwebp' - s.version = '1.3.1' + s.version = '1.3.2' s.summary = 'Library to encode and decode images in WebP format.' s.homepage = 'https://developers.google.com/speed/webp/' s.authors = 'Google Inc.' From e107f440b23e5a98c5eed27766e9da636fd195ca Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Tue, 13 Feb 2024 10:52:23 +0800 Subject: [PATCH 35/43] Added CocoaPods support for visionOS --- libwebp.podspec | 1 + 1 file changed, 1 insertion(+) diff --git a/libwebp.podspec b/libwebp.podspec index be52d39..aa54c4d 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -14,6 +14,7 @@ Pod::Spec.new do |s| s.ios.deployment_target = '9.0' s.tvos.deployment_target = '9.0' s.watchos.deployment_target = '2.0' + s.visionos.deployment_target = '1.0' s.pod_target_xcconfig = { 'USER_HEADER_SEARCH_PATHS' => '$(inherited) ${PODS_ROOT}/libwebp/ ${PODS_TARGET_SRCROOT}/' From 5c56ef8d87ded100d46f60d5c23522c5f33f54cc Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Tue, 13 Feb 2024 14:09:49 +0800 Subject: [PATCH 36/43] Bump the min deployment target on macOS to 10.11 This avoid the libarclite.a issue during linking --- README.md | 2 +- libwebp.podspec | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 47f777c..7745acc 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ This also contains the Swift Package Manager support ## Requirements + iOS 8 -+ macOS 10.10 ++ macOS 10.11 + tvOS 9.0 + watchOS 2.0 diff --git a/libwebp.podspec b/libwebp.podspec index aa54c4d..412d65d 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -10,7 +10,7 @@ Pod::Spec.new do |s| s.compiler_flags = '-D_THREAD_SAFE' s.requires_arc = false - s.osx.deployment_target = '10.10' + s.osx.deployment_target = '10.11' s.ios.deployment_target = '9.0' s.tvos.deployment_target = '9.0' s.watchos.deployment_target = '2.0' From 77b88487d10cbe125aa487f754881040e08b9a1d Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Sat, 8 Feb 2025 14:59:49 +0800 Subject: [PATCH 37/43] Update upstream to v1.4.0 --- libwebp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libwebp b/libwebp index ca33220..845d547 160000 --- a/libwebp +++ b/libwebp @@ -1 +1 @@ -Subproject commit ca332209cb5567c9b249c86788cb2dbf8847e760 +Subproject commit 845d5476a866141ba35ac133f856fa62f0b7445f From 1b6d96cd6c4a689819082a079135cdf7780369e0 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Sat, 8 Feb 2025 15:03:27 +0800 Subject: [PATCH 38/43] Update the Xcode project for v1.4.0 --- libwebp.xcodeproj/project.pbxproj | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/libwebp.xcodeproj/project.pbxproj b/libwebp.xcodeproj/project.pbxproj index becae15..0e6adeb 100644 --- a/libwebp.xcodeproj/project.pbxproj +++ b/libwebp.xcodeproj/project.pbxproj @@ -17,6 +17,8 @@ 323602242899930C00C844E7 /* sharpyuv.h in Headers */ = {isa = PBXBuildFile; fileRef = 323602192899930B00C844E7 /* sharpyuv.h */; settings = {ATTRIBUTES = (Public, ); }; }; 323602252899930C00C844E7 /* sharpyuv_csp.c in Sources */ = {isa = PBXBuildFile; fileRef = 3236021A2899930B00C844E7 /* sharpyuv_csp.c */; }; 323602262899930C00C844E7 /* sharpyuv_dsp.c in Sources */ = {isa = PBXBuildFile; fileRef = 3236021B2899930B00C844E7 /* sharpyuv_dsp.c */; }; + 323AEC702D5738AC0046537A /* palette.c in Sources */ = {isa = PBXBuildFile; fileRef = 323AEC6F2D5738AC0046537A /* palette.c */; }; + 323AEC712D5738AC0046537A /* palette.h in Headers */ = {isa = PBXBuildFile; fileRef = 323AEC6E2D5738AC0046537A /* palette.h */; }; 3258CB9E228BEAFE00C85E93 /* cost_neon.c in Sources */ = {isa = PBXBuildFile; fileRef = 3258CB9D228BEAFE00C85E93 /* cost_neon.c */; }; 3258CBA0228BEB3800C85E93 /* quant.h in Headers */ = {isa = PBXBuildFile; fileRef = 3258CB9F228BEB3800C85E93 /* quant.h */; }; 329409832A7105C700F6BA45 /* sharpyuv_cpu.h in Headers */ = {isa = PBXBuildFile; fileRef = 329409812A7105C700F6BA45 /* sharpyuv_cpu.h */; }; @@ -203,6 +205,8 @@ 323602192899930B00C844E7 /* sharpyuv.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharpyuv.h; sourceTree = ""; }; 3236021A2899930B00C844E7 /* sharpyuv_csp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sharpyuv_csp.c; sourceTree = ""; }; 3236021B2899930B00C844E7 /* sharpyuv_dsp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sharpyuv_dsp.c; sourceTree = ""; }; + 323AEC6E2D5738AC0046537A /* palette.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = palette.h; sourceTree = ""; }; + 323AEC6F2D5738AC0046537A /* palette.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = palette.c; sourceTree = ""; }; 3258CB9D228BEAFE00C85E93 /* cost_neon.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = cost_neon.c; sourceTree = ""; }; 3258CB9F228BEB3800C85E93 /* quant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = quant.h; sourceTree = ""; }; 329409812A7105C700F6BA45 /* sharpyuv_cpu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharpyuv_cpu.h; sourceTree = ""; }; @@ -492,6 +496,8 @@ 804BDF8521356BC100BA3395 /* huffman_encode_utils.h */, 804BDF7821356BC000BA3395 /* huffman_utils.c */, 804BDF7E21356BC000BA3395 /* huffman_utils.h */, + 323AEC6E2D5738AC0046537A /* palette.h */, + 323AEC6F2D5738AC0046537A /* palette.c */, 804BDF8721356BC100BA3395 /* quant_levels_dec_utils.c */, 804BDF8921356BC100BA3395 /* quant_levels_dec_utils.h */, 804BDF8021356BC000BA3395 /* quant_levels_utils.c */, @@ -732,6 +738,7 @@ 804BDF9021356BC100BA3395 /* filters_utils.h in Headers */, 804BDF9F21356BC100BA3395 /* huffman_encode_utils.h in Headers */, 804BDF9821356BC100BA3395 /* huffman_utils.h in Headers */, + 323AEC712D5738AC0046537A /* palette.h in Headers */, 804BDFEF21356BEC00BA3395 /* vp8li_enc.h in Headers */, 804BDFAF21356BCC00BA3395 /* decode.h in Headers */, 804BE0A221356C2600BA3395 /* vp8_dec.h in Headers */, @@ -951,6 +958,7 @@ 804BDFEA21356BEC00BA3395 /* token_enc.c in Sources */, 329409842A7105C700F6BA45 /* sharpyuv_cpu.c in Sources */, 804BDFF921356BEC00BA3395 /* iterator_enc.c in Sources */, + 323AEC702D5738AC0046537A /* palette.c in Sources */, 804BDFE921356BEC00BA3395 /* predictor_enc.c in Sources */, 804BE05B21356C0A00BA3395 /* lossless.c in Sources */, ); From 5700fe45e50128242a2ec635ac8740465f3303e2 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Sat, 8 Feb 2025 15:04:20 +0800 Subject: [PATCH 39/43] Bumped version to 1.4.0 --- Xcode/Info.plist | 4 ++-- libwebp.podspec | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Xcode/Info.plist b/Xcode/Info.plist index 2d92fab..9c0d358 100644 --- a/Xcode/Info.plist +++ b/Xcode/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.3.2 + 1.4.0 CFBundleVersion - 1.3.2 + 1.4.0 NSPrincipalClass diff --git a/libwebp.podspec b/libwebp.podspec index 412d65d..ef22966 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'libwebp' - s.version = '1.3.2' + s.version = '1.4.0' s.summary = 'Library to encode and decode images in WebP format.' s.homepage = 'https://developers.google.com/speed/webp/' s.authors = 'Google Inc.' From 38cb3b79ee564ec68f834c9bc676c805a63c8385 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Sat, 8 Feb 2025 15:12:35 +0800 Subject: [PATCH 40/43] Update upstream to v1.5.0 --- libwebp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libwebp b/libwebp index 845d547..a4d7a71 160000 --- a/libwebp +++ b/libwebp @@ -1 +1 @@ -Subproject commit 845d5476a866141ba35ac133f856fa62f0b7445f +Subproject commit a4d7a715337ded4451fec90ff8ce79728e04126c From 7b9238176d02d57233bdadabc58f61fd4ebf03a4 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Sat, 8 Feb 2025 15:13:17 +0800 Subject: [PATCH 41/43] Update the Xcode project for v1.5.0 Fix the SSE-41 on Xcodebuild --- libwebp.xcodeproj/project.pbxproj | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/libwebp.xcodeproj/project.pbxproj b/libwebp.xcodeproj/project.pbxproj index 0e6adeb..1c40ff5 100644 --- a/libwebp.xcodeproj/project.pbxproj +++ b/libwebp.xcodeproj/project.pbxproj @@ -19,6 +19,8 @@ 323602262899930C00C844E7 /* sharpyuv_dsp.c in Sources */ = {isa = PBXBuildFile; fileRef = 3236021B2899930B00C844E7 /* sharpyuv_dsp.c */; }; 323AEC702D5738AC0046537A /* palette.c in Sources */ = {isa = PBXBuildFile; fileRef = 323AEC6F2D5738AC0046537A /* palette.c */; }; 323AEC712D5738AC0046537A /* palette.h in Headers */ = {isa = PBXBuildFile; fileRef = 323AEC6E2D5738AC0046537A /* palette.h */; }; + 323AEC752D573A900046537A /* cpu.h in Headers */ = {isa = PBXBuildFile; fileRef = 323AEC742D573A900046537A /* cpu.h */; }; + 323AEC8E2D573AD50046537A /* lossless_sse41.c in Sources */ = {isa = PBXBuildFile; fileRef = 323AEC842D573AD50046537A /* lossless_sse41.c */; }; 3258CB9E228BEAFE00C85E93 /* cost_neon.c in Sources */ = {isa = PBXBuildFile; fileRef = 3258CB9D228BEAFE00C85E93 /* cost_neon.c */; }; 3258CBA0228BEB3800C85E93 /* quant.h in Headers */ = {isa = PBXBuildFile; fileRef = 3258CB9F228BEB3800C85E93 /* quant.h */; }; 329409832A7105C700F6BA45 /* sharpyuv_cpu.h in Headers */ = {isa = PBXBuildFile; fileRef = 329409812A7105C700F6BA45 /* sharpyuv_cpu.h */; }; @@ -207,6 +209,8 @@ 3236021B2899930B00C844E7 /* sharpyuv_dsp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sharpyuv_dsp.c; sourceTree = ""; }; 323AEC6E2D5738AC0046537A /* palette.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = palette.h; sourceTree = ""; }; 323AEC6F2D5738AC0046537A /* palette.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = palette.c; sourceTree = ""; }; + 323AEC742D573A900046537A /* cpu.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = cpu.h; sourceTree = ""; }; + 323AEC842D573AD50046537A /* lossless_sse41.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = lossless_sse41.c; sourceTree = ""; }; 3258CB9D228BEAFE00C85E93 /* cost_neon.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = cost_neon.c; sourceTree = ""; }; 3258CB9F228BEB3800C85E93 /* quant.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = quant.h; sourceTree = ""; }; 329409812A7105C700F6BA45 /* sharpyuv_cpu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharpyuv_cpu.h; sourceTree = ""; }; @@ -610,6 +614,7 @@ 3258CB9D228BEAFE00C85E93 /* cost_neon.c */, 804BE01421356C0600BA3395 /* cost_sse2.c */, 804BDFFD21356C0400BA3395 /* cost.c */, + 323AEC742D573A900046537A /* cpu.h */, 804BE02521356C0700BA3395 /* cpu.c */, 804BE01521356C0600BA3395 /* dec_clip_tables.c */, 804BE00821356C0500BA3395 /* dec_mips_dsp_r2.c */, @@ -644,6 +649,7 @@ 804BDFFE21356C0400BA3395 /* lossless_msa.c */, 804BE01D21356C0700BA3395 /* lossless_neon.c */, 804BE02C21356C0800BA3395 /* lossless_sse2.c */, + 323AEC842D573AD50046537A /* lossless_sse41.c */, 804BE01621356C0600BA3395 /* lossless.c */, 804BE00221356C0500BA3395 /* lossless.h */, 804BDFFB21356C0400BA3395 /* mips_macro.h */, @@ -720,6 +726,7 @@ 804BDFE221356BEC00BA3395 /* vp8i_enc.h in Headers */, 804BDF9121356BC100BA3395 /* bit_writer_utils.h in Headers */, 804BDFAC21356BCC00BA3395 /* format_constants.h in Headers */, + 323AEC752D573A900046537A /* cpu.h in Headers */, 804BE09F21356C2600BA3395 /* vp8li_dec.h in Headers */, 804BDF9921356BC100BA3395 /* thread_utils.h in Headers */, 804BE09C21356C2600BA3395 /* alphai_dec.h in Headers */, @@ -919,6 +926,7 @@ 3236021D2899930C00C844E7 /* sharpyuv_sse2.c in Sources */, 804BE05D21356C0A00BA3395 /* lossless_enc_msa.c in Sources */, 804BDFE321356BEC00BA3395 /* vp8l_enc.c in Sources */, + 323AEC8E2D573AD50046537A /* lossless_sse41.c in Sources */, 804BE05F21356C0A00BA3395 /* lossless_enc_sse2.c in Sources */, 804BE09B21356C2600BA3395 /* idec_dec.c in Sources */, 804BDFE521356BEC00BA3395 /* cost_enc.c in Sources */, From 0d60654eeefd5d7d2bef3835804892c40225e8b2 Mon Sep 17 00:00:00 2001 From: DreamPiggy Date: Sat, 8 Feb 2025 15:14:56 +0800 Subject: [PATCH 42/43] Bumped version to 1.5.0 --- Xcode/Info.plist | 4 ++-- libwebp.podspec | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Xcode/Info.plist b/Xcode/Info.plist index 9c0d358..c50f67d 100644 --- a/Xcode/Info.plist +++ b/Xcode/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.4.0 + 1.5.0 CFBundleVersion - 1.4.0 + 1.5.0 NSPrincipalClass diff --git a/libwebp.podspec b/libwebp.podspec index ef22966..53af396 100644 --- a/libwebp.podspec +++ b/libwebp.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'libwebp' - s.version = '1.4.0' + s.version = '1.5.0' s.summary = 'Library to encode and decode images in WebP format.' s.homepage = 'https://developers.google.com/speed/webp/' s.authors = 'Google Inc.' From 0aabc4366edad9743579d5abaa229eb79d768292 Mon Sep 17 00:00:00 2001 From: Christian Beer Date: Wed, 12 Feb 2025 11:42:40 +0100 Subject: [PATCH 43/43] Create LICENSE --- LICENSE | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 LICENSE diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..83e4e6f --- /dev/null +++ b/LICENSE @@ -0,0 +1,29 @@ +Copyright (c) 2010, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + * Neither the name of Google nor the names of its contributors may + be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.