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 osx build on Travis CI #39

Merged
merged 2 commits into from
Feb 4, 2018
Merged

add osx build on Travis CI #39

merged 2 commits into from
Feb 4, 2018

Conversation

livibetter
Copy link
Contributor

After reading #16, even I don't have OS X, I tried to add osx build to see, and apparently, CMatrix builds natively with the default OS X environment that Travis CI provides, so I decided to create this PR.

The current CMake build script in 93fd357 hit a small problem, fixed with the second commit 5aeb8c2. I am not very familiar with CMake, there might be a cleaner way to do it, I opted not to use configure_file as config.h is -DEXCLUDE_CONFIG_H it would require me to go through more codes.


@abishekvashok do we really need to support two build systems? (a new issue to discuss if you deem necessary) /cc @hoijui

CMake builds failed on basically 93fd357 [1] on OS X since termio.h
isn't present.

[1]: https://travis-ci.org/livibetter/cmatrix/builds/337114240

cmatrix.c do not need to include both termios.h and termio.h, the latter
is a wrapper on Linux, on POSIX, the former would do.

CMake should check the header files, not defining blindly, although it's
not needed as now cmatrix.c only includes one of the headers, however,
it's a good practice, but it should also halt the build process if
neither is found.
@abishekvashok abishekvashok merged commit d4d9881 into abishekvashok:master Feb 4, 2018
@hoijui
Copy link
Contributor

hoijui commented Feb 4, 2018

nice! :-)
looks all perfect to me.

i am unfamiliar to autotools (never used it as a dev, only as a user). therefore, to me, it looks very complicated and... i could not say why we need it, but i would also not feel equipped to discuss this. i can just say, that i would of course like to deal only with cmake, for any future changes i would potentially add (though i have none planned).

@livibetter
Copy link
Contributor Author

@hoijui I am okay with anything, but just one, because using two systems means we must maintain both, why do we want to torture ourselves?

The only thing I don't like CMake is it doesn't come with uninstall target (there is some snippet somewhere for that), which I found really strange. It's fine if the project can be run from build directory, but few just couldn't, like those have to use system path or hard-coded paths, you must install, risking leaving leftover files.

As for autotools, I think there are lots of reasons (rants) on the Internet.

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.

3 participants