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

cmake #272

Closed
rapgro opened this issue Mar 1, 2015 · 15 comments
Closed

cmake #272

rapgro opened this issue Mar 1, 2015 · 15 comments

Comments

@rapgro
Copy link

rapgro commented Mar 1, 2015

Please provide support for cmake. Attached a sample CMakeLists.txt as used currently in Fedora.

cmake_minimum_required (VERSION 2.6)
project (Stockfish)

set(EXE stockfish)

include_directories(${PROJECT_SOURCE_DIR}/syzygy)

aux_source_directory(. SOURCES)

add_executable(${EXE} ${SOURCES} syzygy/tbprobe.cpp)

target_link_libraries(${EXE} -lpthread)
@mcostalba
Copy link

Not an issue. Closed.

@jubalh
Copy link

jubalh commented Sep 2, 2015

@rapgro What would be the gains of switching to cmake from the existing make?

@rapgro
Copy link
Author

rapgro commented Dec 20, 2015

@jubalh Please compare complexity of my proposed CMakeLists.txt file above and the internals of a manually written Makefile. CMake does generate Makefiles and cares about automated configuration.

niklasf pushed a commit to niklasf/Stockfish that referenced this issue Mar 17, 2017
Tweak knight piece-square table for racing kings
@tristntran
Copy link

Sorry for the post necromancy, but I think that we should reconsider cmakes. It seems like cmake has become the new standard for builders and software like CLion heavily favors it for debugging as makefile does not play nice with their gdb and runtime configurations. In order to grow and pass knowledge onto more contemporary programmers, we should consider updating our tools as well.

@bftjoe
Copy link
Contributor

bftjoe commented Mar 5, 2022

Considering the maintainers didn't even want to commit to integrating cmake support when someone was willing to and did do all the work, good luck with that.

#3012

@ppigazzini
Copy link
Contributor

ppigazzini commented Mar 5, 2022

Considering the maintainers didn't even want to commit to integrating cmake support when someone was willing to and did do all the work, good luck with that.
#3012

My opinion after reading that thread:

  • the maintainers were interested to cmake:
    Port to using CMake. #3012 (comment)
  • that PR mixed 2 things: adding cmake and making a static library
  • the contributor never completed the work on the PR

@bftjoe
Copy link
Contributor

bftjoe commented Mar 5, 2022 via email

@ppigazzini
Copy link
Contributor

You are free to suppose whatever you want.

That PR is "unfinished" because:

  • the first post has a list of open point to be implemented
  • the contributor never completed the work

The maintainers seems to be interested to switch to cmake so, if you are a cmake expert and you are sure that that code is ready, please open a PR.

@bftjoe
Copy link
Contributor

bftjoe commented Mar 5, 2022 via email

@ppigazzini
Copy link
Contributor

Please stop hand waving and write here the technical open points to have cmake in Stockfish, just to be sure that you understand that PR and the topic.

@bftjoe
Copy link
Contributor

bftjoe commented Mar 5, 2022

"I never got a clear answer on if people were really interested enough in this. I can update it easy enough since there are no changes to the code itself, but keeping on top of the frequent updates to Stockfish requires some effort.

If the devs are willing and ready to accept a switch to CMake, I will update this. If not, I'll leave this fork up in case someone wants to use it as a reference someday."

Also, note that even when CMake was actually being used for travis CI, the maintainers were still unwilling to commit an actual cmake file and used an auto generated one from a script instead. Please show me any maintainers showing any interest whatsoever in cmake.

@vondele
Copy link
Member

vondele commented Mar 5, 2022

#3012 (comment)

as said, it would be important that the current functionality is available. I.e. passes our CI, and works for the various crosses I regularly test. Once we have such a working example, we can judge if it makes the maintenance of the code base easier.

@bftjoe
Copy link
Contributor

bftjoe commented Mar 5, 2022 via email

@vondele
Copy link
Member

vondele commented Mar 5, 2022

you mean having multiple build systems is a good idea? I disagree with that, would rather prefer to have one build system, to maintain, extend, debug, etc... and yes, we can't support every tool chain/IDE out there.

@ppigazzini
Copy link
Contributor

ppigazzini commented Mar 5, 2022

And please, remember that the switch to cmake can be done only after updating fishtest too.

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

No branches or pull requests

7 participants