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

Conan build compatibility #61

Open
KockaAdmiralac opened this issue Apr 7, 2019 · 12 comments
Open

Conan build compatibility #61

KockaAdmiralac opened this issue Apr 7, 2019 · 12 comments
Labels
conan Anything regarding the Conan build linux Issues specifically on Linux macos Issues specifically on macOS

Comments

@KockaAdmiralac
Copy link
Collaborator

Currently, the macOS and Linux builds do not support building through Conan like the Windows build should be supporting. One of the major issues is the Ruby requirement, as mentioned in #59.

@KockaAdmiralac KockaAdmiralac added conan Anything regarding the Conan build linux Issues specifically on Linux macos Issues specifically on macOS labels Apr 7, 2019
@queengooborg
Copy link
Collaborator

After many years of silence, due to a combination of factors (other responsibilities, and everyone's favorite pandemic), I am now working on fixing the Conan builds to work on macOS and Linux, whilst learning how Conan functions. I hope to have a working copy ready for macOS and Linux (whilst keeping Windows working too), and along with it, allow for cross-compilation of ARM for both newer Macs and Linux systems like the Raspberry Pi!

@queengooborg
Copy link
Collaborator

Alright, Conan compilation has now become the default for macOS, and in theory it should be all set for Linux. I will give the Linux build a test the next chance I get and tweak it as needed!

@melody-rs
Copy link
Collaborator

melody-rs commented May 5, 2022

After many years of silence, due to a combination of factors (other responsibilities, and everyone's favorite pandemic), I am now working on fixing the Conan builds to work on macOS and Linux, whilst learning how Conan functions. I hope to have a working copy ready for macOS and Linux (whilst keeping Windows working too), and along with it, allow for cross-compilation of ARM for both newer Macs and Linux systems like the Raspberry Pi!

If you want, I have a compile setup that works flawlessly without conan. I wouldn't mind pull requesting it over.
The biggest problem with conan is bitrot, at the moment the links mentioned in the readme could go down at any time because they're hosted on jfrog by @rkevin-arch. Jfrog will pull down the conan remote at any time if it doesn't get enough use, or in the future they could move to something else entirely.
Ironically, this has already happened before. Originally the conan remotes were on bincrafters, (also related to jfrog) but jfrog decided to pull bincrafters down at some point, invalidating the original remotes.

@queengooborg
Copy link
Collaborator

Thank you, I would love to take a look and see what you've got! I've enjoyed Conan less and less the more I've worked with it, and combined with the JFrog Artifactory account thing out with the lack of use...yeah, it's pretty annoying. 😛 I'm curious to know how you're handling the dependency management too (that was what convinced me to switch since Homebrew only offers specifically compiled versions)!

@melody-rs
Copy link
Collaborator

Alrighty!
Take a look at ModShot and mkxp-z.
I have no idea how you'd get ModShot's setup.sh working on MacOS since MacOS lacks a package manager. (although brew could work...?)

@queengooborg
Copy link
Collaborator

Thank you for linking me! Unfortunately though, it looks like the script heavily relies on the Linux distribution's package manager, so it doesn't seem like it'll work the way I'd like it to for macOS.

Basically, Homebrew (brew) pre-compiles packages for each macOS version on each architecture type, and there isn't really a way to specify another version or architecture (if there is, it'd most likely break my other projects and dependencies). This is a big reason why the macOS port had so many compatibility issues with older macOS versions, and why I bit the bullet on adapting to Conan. Now that I use an M1 MacBook Pro, I need to ensure further control over all the dependencies, such as ensuring they're all compiled for x86 rather than ARM (preferably for both in the future). It sucks, but I'm not certain of an alternative that allows for an easy setup upon switching computers, for example.

@melody-rs
Copy link
Collaborator

melody-rs commented May 5, 2022

You could try doing what mkxp-z does and compile all the dependencies in a makefile. ModShot does that for a couple of dependencies, but to save time, doesn't do it for everything. (Take a look at windows/Makefile and Linux/Makefile)
It should give you finer control over everything, which is what you're after.

Now that I think about it, mkxp-z has a greater focus on Mac support, so you could pull from there too.

@queengooborg
Copy link
Collaborator

A makefile sounds like a pretty simple and straightforward solution! I'd happily welcome a PR that introduces this, but unfortunately I don't have the time anymore to work on big changes like that myself...

@melody-rs
Copy link
Collaborator

I'd be down to make a pull request for that, but I wouldn't have a Mac to test it on. I can at least PR over something like that for Windows and Linux, though.

@queengooborg
Copy link
Collaborator

Generally speaking, the efforts towards Linux would translate very well for macOS as well, so if you'd like to work on a Linux-tailored version, I'd be happy to add the macOS tweaks!

Would you be down for coordinating this over direct messages? I recall we had spoken briefly over Twitter, and would be down to exchange other contact info through there!

@melody-rs
Copy link
Collaborator

Sure! You'll have to send the messages to @Astrabit4 since I don't use my old twitter account anymore.

@queengooborg
Copy link
Collaborator

It looks like your Twitter settings disallow DMs from those you don't follow, but sent a small tweet your way!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
conan Anything regarding the Conan build linux Issues specifically on Linux macos Issues specifically on macOS
Projects
None yet
Development

No branches or pull requests

3 participants