Skip to content

Conversation

bcc32
Copy link
Collaborator

@bcc32 bcc32 commented Jul 6, 2024

This PR switches from CMake and custom make rules to using
makem.sh, as suggested in #423.

It also includes a small tweak to just disable ledger-mode/test-001 (which
requires running Emacs interactively) when makem.sh runs tests, since it does
not provide a custom ERT selector. That change can be removed once #431 is
merged.
#431 was merged, so that change was removed upon rebase.

Fix #423.

@bcc32 bcc32 requested a review from purcell July 6, 2024 20:10
@bcc32 bcc32 marked this pull request as draft July 8, 2024 18:37
@bcc32
Copy link
Collaborator Author

bcc32 commented Jul 8, 2024

Discovered some issues on macos, opening alphapapa/makem.sh#49

@bcc32 bcc32 force-pushed the makem branch 3 times, most recently from 8b57f20 to 1d05017 Compare July 14, 2024 16:05
@bcc32
Copy link
Collaborator Author

bcc32 commented Jul 14, 2024

Updated makem.sh to include the macOS fix.

@bcc32 bcc32 marked this pull request as ready for review July 14, 2024 16:06
@purcell
Copy link
Member

purcell commented Oct 7, 2024

I'd be generally in favour of this, because I'm not sure if any of the more active maintainers have any specific love for cmake, and it would be good to include more linting etc. in the CI.

bcc32 added 5 commits March 13, 2025 00:29
Also use makem.sh's support for checkdoc, since the previously-used
checkdoc-batch URL is broken.
Currently, we need the --compile-batch option because compiling the files
individually fails on Emacs 25 (I think due to subr-x macros not being loaded at
startup).
We just sprinkle some eval-when-compiles around for older Emacs.  We can remove
them when the CI no longer supports Emacs 25.1.
@Thaodan
Copy link

Thaodan commented Aug 7, 2025

Isn't this just replacing one big blob (well a shell script isn't technically a blob but this one is very big) with another?
Compared to that a Makefile is much shorter.

If this adapted I would recommend a submodule instead copying the file into the repository to make it easier to track the script.

@purcell
Copy link
Member

purcell commented Aug 7, 2025

Isn't this just replacing one big blob (well a shell script isn't technically a blob but this one is very big) with another? Compared to that a Makefile is much shorter.

I'm a big Makefile fan, but the setup here is pretty overbuilt for current needs, misses common elisp build steps like linting, and none of the maintainers here are likely to want to add it. Meanwhile makem is fairly well used and actively supported, which is why I'm broadly in favour of the change. No other maintainers have expressed a preference either way.

If this adapted I would recommend a submodule instead copying the file into the repository to make it easier to track the script.

That would be fine too, though I don't know if the script has to end up in the root of the repo to work properly.

@Thaodan
Copy link

Thaodan commented Aug 8, 2025 via email

@purcell
Copy link
Member

purcell commented Aug 9, 2025

Personally I hope that the classical make; make install still works.

Seems very reasonable!

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.

CI checkdoc step is just a no-op
3 participants