-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Patches to get cmake to work with Solaris; continuation of #842 and #844 #851
Conversation
Also some cleanliness changes to .gitignore for cmake that aren't specific to Solaris
Yeah... the OS detection should probably go earlier... but the rest.. now so good as is. I'm not entirely sure I get what is going on with the sendfile stuff. Since I'm the one who added it, but got it from elsewhere I'd like to know more. I assume the sendfile detection just doesn't work on solaris? |
My bad. I put my original response in the wrong spot. Moving here... You should undo all the changes to .gitignore. The files you added are needed by other distros. It does not hurt anything to have those files lying around. Did you make the changes to the cmake modules yourself, or did you get them from some other source? We need to accomplish what you are trying to do within the CmakeList.txt files, or adding additional modules (or replacing them entirely is ok), as long are they come from a reputable source that has tested the modules. For example, does your system have access to a Solaris version of FindPolkit.cmake module? We could check for Solaris in CMakeLists.txt and then call that module instead of the one already there .....Or, if we can verify the canned module is cross-platform then we could use that. |
@connortechnology I actually added the OS detection stuff to CMake, which follows what you had previously done in autotools. Thanks to @whorfin for discovering that it matters where we put it inside the CmakeFile. |
@connortechnology - The sendfile .cmake rules had two problems. First, "-lsendfile" is needed I pass in @knnniggett - just trying to help with the .gitignore; most of this has nothing to do with Solaris, these are mostly emphemeral or generated files being generated by cmake. As such, should they not be ignored by git? It is the same spirit as ignoring .o and .a - seems like good practice. As for the cmake files, OK. It seemed more helpful to correct the modules then to hack around them in the master CMakeLists.txt - I did not realize you were trying to reference previously existing cmake modules. That seems a bit dangerous as they are constantly evolving and quite installation specific; the openssl module just broke recently with the OpenSSL security fixes, for example. |
I am leaving for vacation for two weeks and plan to pick back up on this after return. What I plan to do is figure out the best way to incorporate the proposed changes without modifying the existing modules under the cmake modules folder. If a newer module is ever released, we need to be able to easily drop it into the module folder, without having to worry about merging custom changes to it. It is disappointing that something called Cross-Platform Make is not so cross-platform after all. Anyway, I need to do some research on this. |
That makes sense
|
Continuation of #842 and #844
Also some cleanliness changes to .gitignore for cmake that aren't
specific to Solaris.
Most of the time was spent beating my head against cmake until i realized the OS definitions
were happening AFTER the custom cmake modules were being loaded.
D'oh!
This is by no means fully tested as I've spent all my time trying to get clean builds with the new cmake system.
...which i like and much prefer, so not complaining, but man...
Thanks again to @knnniggett
Cheers