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

Abseil support? #17

Open
fcooper8472 opened this issue May 20, 2018 · 2 comments
Open

Abseil support? #17

fcooper8472 opened this issue May 20, 2018 · 2 comments

Comments

@fcooper8472
Copy link
Member

@martinjrobins what are your thoughts on Abseil support?

Would be different than other libraries such as Eigen and Boost they strongly recommend building it from your project tree.

We could add it as a submodule, and then simply

add_subdirectory(abseil-cpp)

and the abseil internals sort everything else out nicely.

I would be in favour of adding it. Besides a number of really cool features and utilities, it pre-supports a number of newer C++ features which is good from a "best practices" point of view.

The downside is that having a submodule is a little annoying in terms of keeping the project as simple as possible, and does (marginally) increase the compile time of the project, so would be happy to leave it out if you're not keen.

@martinjrobins
Copy link
Contributor

one issue is that it would be good to keep the template project simple. I think it is important to make the statement that following C++ best practices is easy and (relatively) straightforward, at least to start with.

If we want to add a whole bunch of third-party libraries, is it better doing this, for example, in a separate branch to keep the master branch as the "minimal" C++ best practice project?

@fcooper8472
Copy link
Member Author

I have added a function to the library, with some associated tests.

Todo:

  • Work out how to pull in the submodule from Travis and Appveyor
  • Turn off warning: 'enable_if' is a clang extension [-Wgcc-compat] when building with Clang
  • Consider reducing warning level -Wpedantic: warning: ISO C++ does not support ‘__int128’

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

2 participants