Gumbo is, other than the soup and an album from Dr. John , also a HTML5 parsing C (C99) library.

Its self contained (has no external dependencies), is resilient to badly formed html, has a simple API and is reasonably fast.

I'm using it in a side project.

I'm currently trying to find a way to use CMake's ExternalProject and the new target usage requirements added in 3.0 (e.g. automatically add compilation flags required by a library we link to). A way that pleases me, that is.

While doing this, I found that gumbo had an issue compiling its benchmark target in mac osx (it was using clock_gettime with CLOCK_PROCESS_CPUTIME_ID).

I opened an issue, and later proposed a fix / pull request.

I used C++11's std::chrono::high_resolution_clock.

Not sure if it will be accepted, since my fix trades benchmark precision for code portability.

At least I got it compile clean in my fork, so I can move on ;)



Rui Pires

Working as a professional full time remote developer from the Azores since 2011.

Read More