darwin build script

This commit is contained in:
Jeffrey Morgan 2023-07-28 12:38:48 -04:00
parent 227da16909
commit ed832ce3b7
3 changed files with 20 additions and 18 deletions

View file

@ -1,7 +0,0 @@
#!/bin/bash
mkdir -p dist
CGO_ENABLED=1 GOARCH=arm64 go build -o dist/ollama_arm64
CGO_ENABLED=1 GOARCH=amd64 go build -o dist/ollama_amd64
lipo -create -output dist/ollama dist/ollama_arm64 dist/ollama_amd64
npm run --prefix app make:sign

18
scripts/build_darwin.sh Executable file
View file

@ -0,0 +1,18 @@
#!/bin/bash
mkdir -p dist
# build and sign the universal binary
CGO_ENABLED=1 GOARCH=arm64 go build -o dist/ollama_arm64
CGO_ENABLED=1 GOARCH=amd64 go build -o dist/ollama_amd64
lipo -create -output dist/ollama dist/ollama_arm64 dist/ollama_amd64
rm dist/ollama_amd64 dist/ollama_arm64
codesign --deep --force --options=runtime --sign "$APPLE_IDENTITY" --timestamp ./dist/ollama
xcrun altool --notarize-app --username="$APPLE_ID" --password "$APPLE_PASSWORD" --file ./dist/ollama
# build and sign the mac app
npm run --prefix app make:sign
cp app/out/make/zip/darwin/universal/Ollama-darwin-universal-${VERSION:-0.0.0}.zip dist/Ollama-darwin.zip
# rename the cli after its been packaged
mv dist/ollama dist/ollama-darwin

View file

@ -8,9 +8,8 @@ if [[ -z "${VERSION}" ]]; then
fi fi
OS=$(go env GOOS) OS=$(go env GOOS)
ARCH=$(go env GOARCH)
./script/build.sh ./script/build_${OS}.sh
# Create a new tag if it doesn't exist. # Create a new tag if it doesn't exist.
if ! git rev-parse v$VERSION >/dev/null 2>&1; then if ! git rev-parse v$VERSION >/dev/null 2>&1; then
@ -19,16 +18,8 @@ fi
git push origin v$VERSION git push origin v$VERSION
mkdir -p dist
cp app/out/make/zip/${OS}/${ARCH}/Ollama-${OS}-${ARCH}-${VERSION}.zip dist/Ollama-${OS}-${ARCH}.zip
cp ./ollama dist/ollama-${OS}-${ARCH}
# Create a new release. # Create a new release.
gh release create -p v$VERSION -t v$VERSION gh release create -p v$VERSION -t v$VERSION
# Upload the zip file. # Upload the zip file.
gh release upload v$VERSION ./dist/Ollama-${OS}-${ARCH}.zip --clobber gh release upload v$VERSION ./dist/* --clobber
# Upload the binary.
gh release upload v$VERSION ./dist/ollama-${OS}-${ARCH} --clobber