-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Retooled entire CMakeLists (still works!) #1853
base: dev
Are you sure you want to change the base?
Conversation
Wow windows sucks, it doesn't like the OpenSSL improved method, checking that out. |
de23d1f
to
c74d9d0
Compare
Now builds again on Windows with CUDA10.0, CPU, and OpenCL->GTX970 all working Check out the Did not test "old" CMake below 3.8 the legacy methods are probably very broken now. |
bd6f85f
to
0576032
Compare
87ed0cd
to
9e188fb
Compare
4159ed3
to
ee009f4
Compare
@Spudz76 It doesn't work on OS X.
|
Also, Clang might be AppleClang, not just Clang.
You might find this useful as well:
UPDATE: Ran into more issues:
On the dev brach of xmr-stak:
|
Thanks @blitss - I had been wondering how bad it broke for OSX |
@Spudz76 I managed to make it compile after couple of workarounds (like remove -lrt flag) but Cuda backend doesn't work. It says that Cuda Arch is not supported in this build, but it's not true. |
ONLY TESTED CPU on Linux (further testing ongoing)
This PR is mostly for commentary and feedback until the final retool is perfect and can be merged.
Was working on the ICC-18 patch rework, but then it turned into this giant refactor
Makes the CMakeLists.txt less of a huge mess, does things in better order, easier to maintain
Includes ICC-18 support repaired properly.
Also added a cool hack to compile the versioning parts during configuration, to suck out the actual version-long (of the code being prepared) into the build environment. Not sure how that's useful other than to see it in build logs, but it was good CMake exercise. Also eliminated the basic call to 'git' since when its not in your path that part doesn't work, so I pasted in a Git-locator routine and that made it work well.
Cut the libmicrohttpd section in preference of external module I found somewhere, which also as usual didn't work right, so now it's more like the FindOpenSSL.cmake which comes with the CMake core. Will be moving the libhwloc section into its own inclusion file as well.
Might leave the backends in main file but sort of rather split them out too. Easier to trace build bugs when the entirety of creation is NOT in one long file, and when the compiler setup is not spread among everywhere. Now it's fenced off into sections, all compiler related tricks shall happen up in the compiler probe section and no where else. Much easier to work with.
The order of output has been improved immensely, and it's less garbage filled too. Note compiler junk first including threads, then lib junk, then local app (backends etc).