Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

emacs: mark meta.broken if cross #225123

Merged
merged 1 commit into from Apr 8, 2023
Merged

emacs: mark meta.broken if cross #225123

merged 1 commit into from Apr 8, 2023

Conversation

ghost
Copy link

@ghost ghost commented Apr 7, 2023

No description provided.

@ghost ghost requested a review from adisbladis as a code owner April 7, 2023 07:53
@ghost ghost mentioned this pull request Apr 7, 2023
@adisbladis
Copy link
Member

What aspect of cross compilation is broken?
If it's related to native compilation we should just disable that by default on cross.

@ofborg ofborg bot added 6.topic: cross-compilation Building packages on a different platform than they will be used on 10.rebuild-darwin: 0 10.rebuild-linux: 0 labels Apr 7, 2023
@ghost
Copy link
Author

ghost commented Apr 7, 2023

What aspect of cross compilation is broken?
If it's related to native compilation we should just disable that by default on cross.

Unfortunately it isn't just nativeComp.

As far as I can tell, nobody has ever been able to make emacs cross-compile without extremely invasive wizardry which would be a maintenance burden for nixpkgs. The biggest stumbling block is emacs' "dumper", which fundamentally requires executing hostPlatform code in order to create the dump image.

Because of this obstacle there are a large number of other cross-compilation bugs in emacs that nobody is motivated to fix. They are small ones, but because of the dumper problem nobody bothers to work on them.

It's a somewhat depressing situation :(

@adisbladis
Copy link
Member

The biggest stumbling block is emacs' "dumper", which fundamentally requires executing hostPlatform code in order to create the dump image.

Right, I didn't think about that.
Marking it as broken is the right call.

@adisbladis adisbladis merged commit 427dfae into NixOS:master Apr 8, 2023
@ghost ghost deleted the pr/emacs/cross-is-broken-cross branch April 8, 2023 05:19
@ghost
Copy link
Author

ghost commented Apr 8, 2023

The biggest stumbling block is emacs' "dumper", which fundamentally requires executing hostPlatform code in order to create the dump image.

In case anybody's curious: gentoo comes closest to cross-compiling emacs, but it still requires the user to run a "finish up the build process" script (which generates the dump) on the hostPlatform:

https://gitweb.gentoo.org/repo/gentoo.git/tree/app-editors/emacs/emacs-30.0.9999.ebuild#n532

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
6.topic: cross-compilation Building packages on a different platform than they will be used on 6.topic: emacs 10.rebuild-darwin: 0 10.rebuild-linux: 0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant