Skip to content

Doxygen generated file#345

Open
theNerd247 wants to merge 5 commits intojbeder:masterfrom
theNerd247:doxygen
Open

Doxygen generated file#345
theNerd247 wants to merge 5 commits intojbeder:masterfrom
theNerd247:doxygen

Conversation

@theNerd247
Copy link
Copy Markdown

Added support for documentation generation using doxygen.

Should fix #155 (or at least add a bit of resolution).

@jbeder
Copy link
Copy Markdown
Owner

jbeder commented Nov 27, 2015

Can you squash these commits and rebase?

@theNerd247
Copy link
Copy Markdown
Author

Sure thing! Do you see any changes that needs to be made first?

On November 27, 2015, at 12:12 PM, Jesse Beder notifications@github.com wrote:

Can you squash these commits and rebase?


Reply to this email directly or view it on GitHub.

@theNerd247
Copy link
Copy Markdown
Author

Alrighty! I made a few more changes and have squashed and rebased.

@Qix-
Copy link
Copy Markdown

Qix- commented Nov 28, 2015

Err there are still three commits showing up for me. Could you squash them into a single commit and then git push --force ... them up to your PR branch? 👍

@theNerd247
Copy link
Copy Markdown
Author

Oh dear. I know what happened. I debased against the wrong branch. I'll fix it.

  * Doxyfile is generated using cmake
  * doxygen support option (USE_DOXYGEN) added
  * doxygen is generated through `make doc`
  * doxygen is installed when using `make install`
  * Updated README to work with doxygen and to document UI with cmake
    and doxygen
@theNerd247
Copy link
Copy Markdown
Author

Ok. It should be fixed!

@jbeder
Copy link
Copy Markdown
Owner

jbeder commented Jan 10, 2016

OK, I finally got a chance to try this out (sorry about the delay).

I think this is a good change overall, but a couple questions:

  1. If you don't run make doc, then you get an error
CMake Error at cmake_install.cmake:47 (file):
  file INSTALL cannot find
  "/some/path/make/doc".


make: *** [install] Error 1

Can you make this just a warning, not an error? It's nice, e.g., that if you don't have doxygen installed, it just says

-- Could NOT find Doxygen (missing:  DOXYGEN_EXECUTABLE) 

and then keeps on going.

  1. Can you set it up to ignore the gtest/gmock code? I don't see a reason to generate documentation for that. (Although if you disagree, please let me know.)

@theNerd247
Copy link
Copy Markdown
Author

  1. This should definitely be fixed, I'll get on it.
  2. I can add them to the ignore list. If the developer wants the docs they can just comment it out. I'll add this to the docs.

Should I make an effort to have it automatically generate the doxygen if it's installed when make install is executed?

@theNerd247
Copy link
Copy Markdown
Author

Did you want all of the test code excluded from doxygen or just the source code in gmock-1.7.0 ?

@jbeder
Copy link
Copy Markdown
Owner

jbeder commented Jan 11, 2016

Should I make an effort to have it automatically generate the doxygen if it's installed when make install is executed?

Yes, that would be nice.

Did you want all of the test code excluded from doxygen or just the source code in gmock-1.7.0 ?

Just the gtest/gmock code.

@paulnovo
Copy link
Copy Markdown
Contributor

@jbeder FYI, you could use CodeDocs.xyz (disclaimer, I am the creater). It will generate the doxygen docs and host them. It will rerun every push, similar to to Travis-ci. I enabled it for my fork of yaml-cpp, and you can see the generated doxygen docs here.

All you need are these changes, and login to CodeDocs.xyz to enable the service. I can create a PR if you want.

@jbeder
Copy link
Copy Markdown
Owner

jbeder commented May 12, 2016

@paulnovo that's pretty sweet. Happy to accept a PR. Two questions about the service:

  1. does it run on PRs, like travis?
  2. can you manually run locally to test your doc changes?

@paulnovo
Copy link
Copy Markdown
Contributor

@jbeder ok, I created PR #375. To answer your questions:

  1. No, it won't run automatically on PRs like travis, unfortunately.
  2. Hmm, you are right, this is important, but isn't currently straight forward. CodeDocs uses a subset of the Doxygen settings and sets some defaults. Probably the best way to do this currently, is create a separate Doxygen config file with all your configuration plus these defaults CodeDocs overwrites:

INPUT = .
RECURSIVE = YES

Then in your .codedocs file just put this:

DOXYFILE = [relative location of Doxygen config file]

Then you could run Doxygen on your Doxygen config file, and it should give similar output as CodeDocs.

This isn't great, and needs to be improved. For this, or any other suggestions, please add an issue here.

@jbeder
Copy link
Copy Markdown
Owner

jbeder commented May 13, 2016

@paulnovo Thanks, I filed a couple issues in CodeDocs for these.

I'll leave this PR open in case @theNerd247 updates it, which would make it easy to run locally.

theNerd247 added 2 commits May 14, 2016 17:55
  * fixed bug mentioned in jbeder#345 about `make install` giving an error
    when `make doc` isn't called previously
@theNerd247
Copy link
Copy Markdown
Author

theNerd247 commented May 14, 2016

@jbeder Fixed the bug about the installation. Sorry for the wait. Classes took most of my time this semester. Let me know if you want me to squash and rebase or fix anything else.

@theNerd247
Copy link
Copy Markdown
Author

Is this PR still necessary with #375 being merged in?

@Qix-
Copy link
Copy Markdown

Qix- commented Jul 7, 2016

@theNerd247 yes. The codedocs config is just for that site. This is perfect for those that don't like being connected to the internet 24/7.

@theNerd247
Copy link
Copy Markdown
Author

Makes sense. Not to sound impatient but is there a reason this hasn't been merged yet?

@jbeder
Copy link
Copy Markdown
Owner

jbeder commented Jul 7, 2016

Sorry, I haven't had time. Should get an opportunity within a few weeks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Thoroughly Document usage of the API

5 participants