Compare commits

...

23 Commits

Author SHA1 Message Date
adc48a6492 chore(deps): update build-emacs-for-macos to 0.6.35
Fixes build issues caused by a incompatibility with the libgccjit v12.x
homebrew formula.
2022-08-10 16:49:48 +01:00
14575aa77c chore(deps): update build-emacs-for-macos to 0.6.34 2022-07-27 23:26:51 +01:00
3e3347dbec Merge pull request #23 from jimeh/macos-11
fix(ci): switch to macos-11 (Big Sur) runner
2022-07-27 21:51:19 +01:00
4f2d35c1ac fix(ci): switch to macos-11 (Big Sur) runner
The macos-10.15 runner is now deprecated and no longer usable. Hence all
GitHub Actions workflows using a macOS runner need to upgraded to
macos-11.

As far as I know, this will have a knock-on effect of causing Emacs
builds to require macOS 11.x (Big Sur) or later from now on.
2022-07-27 19:54:01 +01:00
2e80b79110 chore(deps): update build-emacs-for-macos to 0.6.33 2022-04-30 19:45:08 +01:00
88bfa2e603 chore(build): run "brew update" before installing brew deps 2022-04-30 19:45:08 +01:00
9934f47937 docs(readme): minor tweak to stable homebrew cask description 2022-04-07 00:28:26 +01:00
Alec
13e8c9cc9e docs(readme): emacs-app now includes native-comp 2022-04-06 07:44:06 -04:00
4204855346 chore(deps): update build-emacs-for-macos to 0.6.31 2022-02-25 10:35:14 +00:00
11b4492488 chore(deps): update build-emacs-for-macos to 0.6.30 2022-02-08 03:08:35 +00:00
a39895e8f6 docs(readme): add details about pretest builds 2022-02-07 23:17:46 +00:00
27b104d7b7 chore(deps): update build-emacs-for-macos to 0.6.29 2022-02-07 23:17:25 +00:00
0af73aaee1 chore(deps): update build-emacs-for-macos to 0.6.28 2022-01-15 23:21:36 +00:00
16087a80d0 chore(deps): update build-emacs-for-macos to 0.6.27 2021-12-05 13:09:44 +00:00
5835cd9712 docs(readme): update requirements list after gcc fix, minor tweaks 2021-11-30 23:15:36 +00:00
fe10ed4c34 chore(build): remove --no-relink-eln-files option from manual build workflow 2021-11-27 05:07:00 +00:00
9615ab20a6 chore(deps): update build-emacs-for-macos to 0.6.25
Relinking *.eln files has also been fixed, so there's no need to disable
that anymore.
2021-11-27 05:04:46 +00:00
cad73f3555 fix(release): dmg artifact output result check 2021-11-27 03:16:15 +00:00
30f92f734d fix(release): improve handling of no new commit since last build 2021-11-27 01:37:02 +00:00
83b08dc596 feat(build): allow customizing --relink-eln-files arg on custom builds 2021-11-26 02:10:30 +00:00
f3213d9f5a chore(deps): update build-emacs-for-macos to 0.6.25 2021-11-25 23:40:30 +00:00
b40f9e29c8 update build-emacs-for-macos to 0.6.24 2021-11-24 21:54:44 +00:00
e552de3cac fix(builds): use correct path for emacs source tarball artifact upload 2021-11-24 21:54:13 +00:00
7 changed files with 41 additions and 30 deletions

View File

@@ -125,6 +125,8 @@ jobs:
echo "::set-output name=result::$RESULT" echo "::set-output name=result::$RESULT"
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- run: echo 'Planned release already seems to exist.'
if: ${{ steps.check.outputs.result == 'fail' }}
build: build:
runs-on: ${{ inputs.os }} runs-on: ${{ inputs.os }}
@@ -141,6 +143,8 @@ jobs:
- uses: ruby/setup-ruby@v1 - uses: ruby/setup-ruby@v1
with: with:
ruby-version: 2.7 ruby-version: 2.7
- name: Update homebrew
run: brew update
- name: Install dependencies - name: Install dependencies
run: make bootstrap-ci run: make bootstrap-ci
working-directory: builder working-directory: builder
@@ -152,7 +156,7 @@ jobs:
- name: Build Emacs - name: Build Emacs
run: >- run: >-
./builder/build-emacs-for-macos --plan build-plan.yml ./builder/build-emacs-for-macos --plan build-plan.yml
--no-relink-eln-files --native-full-aot --native-full-aot
${{ inputs.build_args }} ${{ inputs.build_args }}
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -166,7 +170,7 @@ jobs:
uses: actions/upload-artifact@v2 uses: actions/upload-artifact@v2
with: with:
name: ${{ inputs.artifact_prefix }}emacs-source name: ${{ inputs.artifact_prefix }}emacs-source
path: tarballs/*.tgz path: builder/tarballs/*.tgz
package: package:
runs-on: ${{ inputs.os }} runs-on: ${{ inputs.os }}

View File

@@ -7,7 +7,7 @@ on:
description: Git ref to checkout of build-emacs-for-macos description: Git ref to checkout of build-emacs-for-macos
required: false required: false
type: string type: string
default: "v0.6.23" default: "v0.6.35"
secrets: secrets:
TAP_REPO_TOKEN: TAP_REPO_TOKEN:
description: Personal Access Token for Homebrew Tap repo description: Personal Access Token for Homebrew Tap repo
@@ -17,7 +17,7 @@ jobs:
emacs-builder: emacs-builder:
# Use oldest version of macOS to ensure emacs-bulder binary is compatible # Use oldest version of macOS to ensure emacs-bulder binary is compatible
# with later versions of macOS. # with later versions of macOS.
runs-on: macos-10.15 runs-on: macos-11
steps: steps:
- name: Checkout build-emacs-for-macos repo - name: Checkout build-emacs-for-macos repo
uses: actions/checkout@v2 uses: actions/checkout@v2

View File

@@ -34,19 +34,24 @@ jobs:
name: ${{ inputs.plan_artifact }} name: ${{ inputs.plan_artifact }}
path: ./ path: ./
- name: Download disk image artifacts - name: Download disk image artifacts
id: dmg
continue-on-error: true
uses: actions/download-artifact@v2 uses: actions/download-artifact@v2
with: with:
name: ${{ inputs.dmg_artifact }} name: ${{ inputs.dmg_artifact }}
path: builds path: builds
- name: Publish disk images to a GitHub Release - name: Publish disk images to a GitHub Release
if: ${{ steps.dmg.outputs.result != 'fail' }}
run: >- run: >-
bin/emacs-builder -l debug release --plan build-plan.yml publish bin/emacs-builder -l debug release --plan build-plan.yml publish
$(find builds -name '*.dmg' -or -name '*.sha256') $(find builds -name '*.dmg' -or -name '*.sha256')
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Trigger update casks workflow in homebrew tap - name: Trigger update casks workflow in homebrew tap
if: ${{ inputs.testBuildName == '' }} if: ${{ steps.dmg.outputs.result != 'fail' && inputs.testBuildName == '' }}
run: >- run: >-
gh workflow run --repo jimeh/homebrew-emacs-builds update-casks.yml gh workflow run --repo jimeh/homebrew-emacs-builds update-casks.yml
env: env:
GITHUB_TOKEN: ${{ secrets.TAP_REPO_TOKEN }} GITHUB_TOKEN: ${{ secrets.TAP_REPO_TOKEN }}
- run: echo 'No DMG artifact available, was there a new commit to build?'
if: ${{ steps.dmg.outputs.result == 'fail' }}

View File

@@ -19,9 +19,9 @@ on:
required: false required: false
default: "" default: ""
os: os:
description: 'Runner OS ("macos-10.15" or "macos-11")' description: 'Runner OS ("macos-11", "macos-12", or "macos-latest")'
required: true required: true
default: "macos-10.15" default: "macos-11"
test_build_name: test_build_name:
description: "Test build name" description: "Test build name"
required: false required: false
@@ -45,7 +45,7 @@ jobs:
needs: [prepare] needs: [prepare]
uses: jimeh/emacs-builds/.github/workflows/_build.yml@main uses: jimeh/emacs-builds/.github/workflows/_build.yml@main
with: with:
os: macos-10.15 os: ${{ github.event.inputs.os }}
git_ref: ${{ github.event.inputs.git_ref }} git_ref: ${{ github.event.inputs.git_ref }}
git_sha: ${{ github.event.inputs.git_sha }} git_sha: ${{ github.event.inputs.git_sha }}
build_args: ${{ github.event.inputs.builder_args }} build_args: ${{ github.event.inputs.builder_args }}

View File

@@ -21,7 +21,7 @@ jobs:
needs: [prepare] needs: [prepare]
uses: jimeh/emacs-builds/.github/workflows/_build.yml@main uses: jimeh/emacs-builds/.github/workflows/_build.yml@main
with: with:
os: macos-10.15 os: macos-11
git_ref: emacs-28 git_ref: emacs-28
git_sha: ${{ github.event.inputs.git_sha }} git_sha: ${{ github.event.inputs.git_sha }}
secrets: secrets:

View File

@@ -21,7 +21,7 @@ jobs:
needs: [prepare] needs: [prepare]
uses: jimeh/emacs-builds/.github/workflows/_build.yml@main uses: jimeh/emacs-builds/.github/workflows/_build.yml@main
with: with:
os: macos-10.15 os: macos-11
git_ref: master git_ref: master
git_sha: ${{ github.event.inputs.git_sha }} git_sha: ${{ github.event.inputs.git_sha }}
secrets: secrets:

View File

@@ -8,11 +8,10 @@
<p align="center"> <p align="center">
<a href="https://github.com/jimeh/emacs-builds/releases/latest"><img alt="GitHub release (stable)" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Fhomebrew-emacs-builds%2Fmeta%2FCasks%2Femacs-app%2Fshield.json"></a> <a href="https://github.com/jimeh/emacs-builds/releases/latest"><img alt="GitHub release (stable)" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Fhomebrew-emacs-builds%2Fmeta%2FCasks%2Femacs-app%2Fshield.json"></a>
<a href="https://github.com/jimeh/emacs-builds/releases?q=emacs-28&expanded=true"><img alt="GitHub release (nightly@emacs-28)" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Fhomebrew-emacs-builds%2Fmeta%2FCasks%2Femacs-app-nightly-28%2Fshield.json"></a> <a href="https://github.com/jimeh/emacs-builds/releases?q=pretest&expanded=true"><img alt="GitHub release (pretest)" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Fhomebrew-emacs-builds%2Fmeta%2FCasks%2Femacs-app-pretest%2Fshield.json"></a>
<br />
<a href="https://github.com/jimeh/emacs-builds/releases?q=master&expanded=true"><img alt="GitHub release (nightly)" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Fhomebrew-emacs-builds%2Fmeta%2FCasks%2Femacs-app-nightly%2Fshield.json"></a> <a href="https://github.com/jimeh/emacs-builds/releases?q=master&expanded=true"><img alt="GitHub release (nightly)" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Fhomebrew-emacs-builds%2Fmeta%2FCasks%2Femacs-app-nightly%2Fshield.json"></a>
<a href="https://github.com/jimeh/emacs-builds/releases?q=emacs-28&expanded=true"><img alt="GitHub release (nightly@emacs-28)" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Fhomebrew-emacs-builds%2Fmeta%2FCasks%2Femacs-app-nightly-28%2Fshield.json"></a>
<a href="https://github.com/jimeh/emacs-builds/issues/7"><img alt="GitHub release (known good nightly)" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Fhomebrew-emacs-builds%2Fmeta%2FCasks%2Femacs-app-good%2Fshield.json"></a> <a href="https://github.com/jimeh/emacs-builds/issues/7"><img alt="GitHub release (known good nightly)" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Fhomebrew-emacs-builds%2Fmeta%2FCasks%2Femacs-app-good%2Fshield.json"></a>
<br />
<a href="https://github.com/jimeh/emacs-builds/issues"><img alt="GitHub issues" src="https://img.shields.io/github/issues-raw/jimeh/emacs-builds?style=flat&logo=github&logoColor=white"></a> <a href="https://github.com/jimeh/emacs-builds/issues"><img alt="GitHub issues" src="https://img.shields.io/github/issues-raw/jimeh/emacs-builds?style=flat&logo=github&logoColor=white"></a>
<a href="https://github.com/jimeh/emacs-builds/pulls"><img alt="GitHub pull requests" src="https://img.shields.io/github/issues-pr-raw/jimeh/emacs-builds?style=flat&logo=github&logoColor=white"></a> <a href="https://github.com/jimeh/emacs-builds/pulls"><img alt="GitHub pull requests" src="https://img.shields.io/github/issues-pr-raw/jimeh/emacs-builds?style=flat&logo=github&logoColor=white"></a>
<a href="https://github.com/jimeh/emacs-builds/releases"><img alt="GitHub all releases" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Femacs-builds%2Fmeta%2Ftotal-downloads%2Fshield.json"></a> <a href="https://github.com/jimeh/emacs-builds/releases"><img alt="GitHub all releases" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Femacs-builds%2Fmeta%2Ftotal-downloads%2Fshield.json"></a>
@@ -20,15 +19,14 @@
<p align="center"> <p align="center">
<strong> <strong>
Self-contained Emacs.app builds for macOS, with native-compilation support Self-contained Emacs.app builds for macOS, with native-compilation support.
in nightly builds.
</strong> </strong>
</p> </p>
## Features ## Features
- Self-contained Emacs.app application bundle, with no external dependencies. - Self-contained Emacs.app application bundle, with no external dependencies.
- Native-compilation ([gccemacs][]), nightly builds only. - Native compilation ([gccemacs][]), only in Emacs 28.x and later builds.
- Native JSON parsing via libjansson. - Native JSON parsing via libjansson.
- SVG rendering via librsvg. - SVG rendering via librsvg.
- Various image formats are supported via macOS native image APIs. - Various image formats are supported via macOS native image APIs.
@@ -56,9 +54,8 @@
## System Requirements ## System Requirements
- macOS 10.15.x or later (uses Rosetta2 on M1-based macs). - macOS 11.x (Big Sur) or later (uses Rosetta2 on Apple Silicon machines).
- Homebrew `gcc` formula (nightly builds only). - Xcode Command Line Tools for native compilation (Emacs 28.x and later).
- Xcode Command Line Tools (nightly builds only).
## Installation ## Installation
@@ -67,10 +64,10 @@
See the [Releases][] page to download latest builds, or [here](latest) for the See the [Releases][] page to download latest builds, or [here](latest) for the
latest stable release. latest stable release.
Nightly builds of Emacs are for the part just fine, but if you don't like living Nightly builds of Emacs are for the most part just fine, but if you don't like
too close to the edge, see issue [#7 Known Good Nightly Builds][7] for a list of living too close to the edge, see issue [#7 Known Good Nightly Builds][7] for a
recent nightly builds which have been actively used by a living being without list of recent nightly builds which have been actively used by a living being
any issues. for a day or two without any obvious issues.
[releases]: https://github.com/jimeh/emacs-builds/releases [releases]: https://github.com/jimeh/emacs-builds/releases
[latest]: https://github.com/jimeh/emacs-builds/releases/latest [latest]: https://github.com/jimeh/emacs-builds/releases/latest
@@ -85,6 +82,15 @@ any issues.
brew tap jimeh/emacs-builds brew tap jimeh/emacs-builds
``` ```
2. Install one of the available casks: 2. Install one of the available casks:
- `emacs-app` for the latest stable release of Emacs (includes native-comp
since v28.1):
```
brew install --cask emacs-app
```
- `emacs-app-pretest` for the latest pretest build from Emacs:
```
brew install --cask emacs-app-pretest
```
- `emacs-app-nightly` for the latest nightly build from Emacs' `master` - `emacs-app-nightly` for the latest nightly build from Emacs' `master`
branch: branch:
``` ```
@@ -99,11 +105,6 @@ any issues.
``` ```
brew install --cask emacs-app-nightly-28 brew install --cask emacs-app-nightly-28
``` ```
- `emacs-app` for the latest stable release of Emacs (does not include
native-comp at time of writing):
```
brew install --cask emacs-app
```
[7]: https://github.com/jimeh/emacs-builds/issues/7 [7]: https://github.com/jimeh/emacs-builds/issues/7
@@ -146,8 +147,8 @@ use the alias from the above example.
## Build Process ## Build Process
Building Emacs is done using the [jimeh/build-emacs-for-macos][] build script, Building Emacs is done using the [jimeh/build-emacs-for-macos][] build script,
executed within a GitHub Actions [workflow][]. This is why macOS 10.15.x or executed within a GitHub Actions [workflow][]. This is why macOS 11.x (Big Sur)
later is required, as it's the oldest version of macOS available in GitHub or later is required, as it's the oldest version of macOS available in GitHub
Actions. Actions.
[jimeh/build-emacs-for-macos]: https://github.com/jimeh/build-emacs-for-macos [jimeh/build-emacs-for-macos]: https://github.com/jimeh/build-emacs-for-macos
@@ -155,6 +156,7 @@ Actions.
https://github.com/jimeh/emacs-builds/blob/main/.github/workflows/build.yml https://github.com/jimeh/emacs-builds/blob/main/.github/workflows/build.yml
Full history for all builds is available on GitHub Actions [here][actions]. Full history for all builds is available on GitHub Actions [here][actions].
Build logs are only retained by GitHub for 90 days though.
[actions]: https://github.com/jimeh/emacs-builds/actions [actions]: https://github.com/jimeh/emacs-builds/actions