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

Add autoconf build system for bundled C sources #35

Merged
merged 14 commits into from
Mar 5, 2024

Conversation

hasufell
Copy link
Collaborator

@hasufell hasufell commented Dec 9, 2023

Fixes #33

@hasufell hasufell requested a review from vmchale December 9, 2023 11:47
Setup.hs Outdated Show resolved Hide resolved
@hasufell
Copy link
Collaborator Author

hasufell commented Dec 9, 2023

@vmchale is the symbol clash resolved in the new libarchive version? In that case we may not need this. But it's an alternative approach that may be more resilient, but incurs additional maintenance cost.

configure.ac Outdated
@@ -0,0 +1,383 @@
m4_define([LIBARCHIVE_VERSION_S],[3.7.2])
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file is a partial rip-off of the upstream configure.ac... so it might diverge in the future (just like config.h).

@hasufell
Copy link
Collaborator Author

We could also split out into two packages similar to:

@hasufell hasufell marked this pull request as draft December 10, 2023 09:44
@hasufell hasufell force-pushed the autoconf branch 2 times, most recently from 4529725 to 7cb9c16 Compare December 10, 2023 15:58
@hasufell
Copy link
Collaborator Author

It seems splitting packages is actually problematic, because libarchive itself needs the headers archive.h and archive_entry.h. I'm not sure cabal has a way of installing headers for a package and having another use them.

@hasufell
Copy link
Collaborator Author

It seems splitting packages is actually problematic, because libarchive itself needs the headers archive.h and archive_entry.h. I'm not sure cabal has a way of installing headers for a package and having another use them.

It actually works with install-includes.

@hasufell hasufell marked this pull request as ready for review December 11, 2023 10:58
Copy link
Owner

@vmchale vmchale left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wonderful, thanks!

Maybe mention the autoreconf -fi step in a README.md somewhere? I had to look at the CI script to figure out how to run/test locally.

@hasufell
Copy link
Collaborator Author

Maybe mention the autoreconf -fi step in a README.md somewhere? I had to look at the CI script to figure out how to run/test locally.

Done

@hasufell
Copy link
Collaborator Author

hasufell commented Jan 6, 2024

Nothing left here I think

@hasufell
Copy link
Collaborator Author

@vmchale this is good to go

@hasufell
Copy link
Collaborator Author

@vmchale if you make me proper maintainer (including the hackage package, my handle there is @maerwald), then I can finalize this myself.

@vmchale vmchale merged commit a7b1ff4 into vmchale:master Mar 5, 2024
10 checks passed
@vmchale
Copy link
Owner

vmchale commented Mar 5, 2024

Ah sorry! I hope you were able to merge at least? I've added you on Hackage as well!

Thanks again!

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.

glibc2.36 adds arc4random_buf, causing compile error
2 participants