-
Notifications
You must be signed in to change notification settings - Fork 90
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
Cmake cleanup #187
base: master
Are you sure you want to change the base?
Cmake cleanup #187
Conversation
376b02f
to
3aa19db
Compare
7f73193
to
1811b0b
Compare
build matrix clang warning fixes
1811b0b
to
d284be1
Compare
Current build can be found here Only build issues with this PR are related to dbus-cplusplus and clang. SDL and GTK can both be factored out using GLFW3. If this repo is active I'll consider doing the refactor work. |
I took a quick look, and can't tell if this is being built with the m3-toolchain, or not? I will have to test it out, but I know the Mazda 3 CMU is pretty outdated library wise, which may give us some trouble? All the libraries on it are from around 2012, and I doubt we can update them without the factory software getting very upset with us :) |
I will add m3 build to the pipeline matrix. |
I was doing some playing with this, and I think our toolchain needs both libunwind, and protobuf libraries installed. And this is what I did to your cmake files to make them work for the toolchain https://github.com/silverchris/headunit/tree/cmake |
@silverchris cool I'll keep your changes in mind |
e12da77
to
d9b675d
Compare
@silverchris there are quite a few more missing dependencies. List is below. For Mazda build it's currently failing to find SDL2. I think the proper way is to have the headunit app as an external project. This would allow building all the dependencies correctly. In theory quite a bit of the binaries are not needed to cross compile for Mazda. They should be built as a dependency of headunit. The X11 and GTK3 dependency can be factored out with some minor re-work. find_package(Threads REQUIRED) find_package(PkgConfig REQUIRED)
endif() |
@jwinarske Ya, we do not need SDL2, X11 or GTK on the Mazda build. They are only used for running on Ubuntu.
The rest are only needed when compiling for Ubuntu. We are somewhat limited on what libraries we can use for the Mazda build, as it shipped with glibc 2.11.1, which is rather dated now. Our toolchain also features a nice and ancient version of gcc at 4.9.1. On an unrelated note, I have been trying to get glibc 2.11.1 to compile with a newer GCC, so I can try to build aasdk for the Mazda, as our dated GCC doesn't have proper support for C++14! |
Adds CMake support.
Builds on x86_64 host for both, as well as cross compiling with AGL SDK 10.0.0 aarch64.
dbus-cplusplus dispatcher .h changes are from this.
Only able to test on Ubuntu 20 Desktop with an Android 11 device. I don't own the Mazda in question. Connectivity with device was not dead solid, but I can get it to work 👍