Skip to content

Conversation

@ggerganov
Copy link
Member

@ggerganov ggerganov commented Apr 2, 2025

  • Update the version numbers to the new version
  • Do not squash-merge this commit to avoid appending the (1234) suffix to the commit title

After that, we'll create a release from the Github UI, selecting this commit and creating a tag v1.7.5.

@ggerganov ggerganov requested a review from danbev April 2, 2025 13:34
@ggerganov ggerganov merged commit 51c6961 into master Apr 2, 2025
47 checks passed
@ggerganov ggerganov deleted the release-v1.7.5 branch April 2, 2025 13:39
@itsthisjustin
Copy link

Are there instructions for building the swift package? i added the repo but noticed the framework isn't listed when i go to add it to the target

@danbev
Copy link
Member

danbev commented Apr 2, 2025

@itsthisjustin The Package.swift file was removed in favor of using the xcframework. For a swift project the xcframework can be used like this:

// swift-tools-version: 5.10
// The swift-tools-version declares the minimum version of Swift required to build this package.

import PackageDescription

let package = Package(
    name: "Whisper",
    targets: [
        .executableTarget(
            name: "Whisper",
            dependencies: [
                "WhisperFramework"
            ]),
        .binaryTarget(
            name: "WhisperFramework",
            url: "https://github.com/ggerganov/whisper.cpp/releases/download/v1.7.5/whisper-v1.7.5-xcframework.zip",
            checksum: "c7faeb328620d6012e130f3d705c51a6ea6c995605f2df50f6e1ad68c59c6c4a"
        )
    ]
)

I'll make sure we document this somewhere as I don't think we have. Perhaps this should also be included in the release notes moving forward, providing the correct checksum as well.

@itsthisjustin
Copy link

@itsthisjustin The Package.swift file was removed in favor of using the xcframework. For a swift project the xcframework can be used like this:

// swift-tools-version: 5.10
// The swift-tools-version declares the minimum version of Swift required to build this package.

import PackageDescription

let package = Package(
    name: "Whisper",
    targets: [
        .executableTarget(
            name: "Whisper",
            dependencies: [
                "WhisperFramework"
            ]),
        .binaryTarget(
            name: "WhisperFramework",
            url: "https://github.com/ggerganov/whisper.cpp/releases/download/v1.7.5/whisper-v1.7.5-xcframework.zip",
            checksum: "c7faeb328620d6012e130f3d705c51a6ea6c995605f2df50f6e1ad68c59c6c4a"
        )
    ]
)

I'll make sure we document this somewhere as I don't think we have. Perhaps this should also be included in the release notes moving forward, providing the correct checksum as well.

This is super helpful. I'd say a little guide for us Swift folks could be super useful. This isn't a "standard" way to use a package like this so it's slightly outside of my existing knowledge compared to how it used to work.

@itsthisjustin
Copy link

Also not sure if unique to me but i couldn't build the script with xros as the visionOS command. I had to change it visionos and then it build the binaries.

@n374
Copy link

n374 commented Apr 5, 2025

Also not sure if unique to me but i couldn't build the script with xros as the visionOS command. I had to change it visionos and then it build the binaries.

Same here, got a unknown platform: xros error when running ./build-xcframework.sh directly, works after replace xros with visionos in line 347

  • Xcode: Version 16.3 (16E140)
  • macOS: 15.3.2 (24D81)
  • Chip: Apple M4
  • Machine: Mac mini 2024

@danbev
Copy link
Member

danbev commented Apr 6, 2025

@itsthisjustin @n374 Thanks for reporting this. I'll take a closer look.

danbev added a commit to danbev/whisper.cpp that referenced this pull request Apr 9, 2025
This commit adds a check for the visionos build version used with vtool
in build-xcframework.sh. The script now checks the Xcode version and
determines whether to use "xros" or "visionos" for the build version.

This commit also uses xcrun for the vtool so that the version of vtool
in xcode command line tools is used instead of the one in the system
path.

Refs: ggml-org#2994 (comment)
danbev added a commit that referenced this pull request Apr 9, 2025
This commit adds a check for the visionos build version used with vtool
in build-xcframework.sh. The script now checks the Xcode version and
determines whether to use "xros" or "visionos" for the build version.

This commit also uses xcrun for the vtool so that the version of vtool
in xcode command line tools is used instead of the one in the system
path.

Refs: #2994 (comment)
danbev added a commit to danbev/llama.cpp that referenced this pull request Apr 9, 2025
This commit adds a check for the visionos build version used with vtool
in build-xcframework.sh. The script now checks the Xcode version and
determines whether to use "xros" or "visionos" for the build version.

This commit also uses xcrun for the vtool so that the version of vtool
in xcode command line tools is used instead of the one in the system
path.

Refs: ggml-org/whisper.cpp#2994 (comment)
danbev added a commit to ggml-org/llama.cpp that referenced this pull request Apr 11, 2025
This commit adds a check for the visionos build version used with vtool
in build-xcframework.sh. The script now checks the Xcode version and
determines whether to use "xros" or "visionos" for the build version.

This commit also uses xcrun for the vtool so that the version of vtool
in xcode command line tools is used instead of the one in the system
path.

Refs: ggml-org/whisper.cpp#2994 (comment)
colout pushed a commit to colout/llama.cpp that referenced this pull request Apr 21, 2025
This commit adds a check for the visionos build version used with vtool
in build-xcframework.sh. The script now checks the Xcode version and
determines whether to use "xros" or "visionos" for the build version.

This commit also uses xcrun for the vtool so that the version of vtool
in xcode command line tools is used instead of the one in the system
path.

Refs: ggml-org/whisper.cpp#2994 (comment)
justinryan-0923 pushed a commit to justinryan-0923/llama.cpp that referenced this pull request May 30, 2025
This commit adds a check for the visionos build version used with vtool
in build-xcframework.sh. The script now checks the Xcode version and
determines whether to use "xros" or "visionos" for the build version.

This commit also uses xcrun for the vtool so that the version of vtool
in xcode command line tools is used instead of the one in the system
path.

Refs: ggml-org/whisper.cpp#2994 (comment)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants