OK, so you've all probably been wondering what happened to the "this weekend" part of this email thread.

During my attempts to compile 1.9.0RC on all my build environments, I ran into a few minor problems.

Then F33 was released and I figured, well, I can test compiling there too before bundling things up (no issues there).

Then, during some profiling, I noticed we had no default implementation for SWLog::logTimedInformation which included the "Timed" aspect of that method...

Then I realized we should have a way to compile out debug and information logging for optimization.

These have now all been added, and despite the number of lines changed, are very minor.

But, I'd like to ask anyone who has a chance to pull the latest HEAD and let me know if you have any issues compiling.

There are 3 new compile defines and if you don't define these, you should get the behavior you would have gotten 2 weeks ago. These are:

USECXX11TIME - if defined, will included a default implementation of SWLog::logTimedInformation using c++11 facilities.

STRIPLOGD - if defined will noop all library calls to SWLog::logDebug (which have been changed to use a new SWLOGD macro).  This should only affect calls from the engine (and anyone who chooses to use the new SWLOGD macro instead of calling SWLog::logDebug directly) and should not affect calls from test programs or utilities in the source.

STRIPLOGI - same as STRIPLOGD, but for SWLog::logInformation and SWLog::logTimedInformation

Again, if you don't define these, you'll get the same behavor as before, but I wanted to get these options in before pushing out a major release where we will try to keep binary compatibility for a while.

Corresponding options have been added to the autotools build and can be seen by the lines in the recommended usrinst.sh script:

OPTIONS="--with-cxx11time $OPTIONS"
#OPTIONS="--disable-logdebug $OPTIONS"
#OPTIONS="--disable-loginfo $OPTIONS"

As you can see, we recommend building --with-cxx11time and without --disable-logdebug and --disable-loginfo

Not sure what needs to be done for CMake or if just having the defines available (USECXX11TIME, STRIPLOGD, STRIPLOGI) is enough.

My apologies for this unplanned delay.  I am happy to release now, if no one screams that I broke their build.

Happy election day!  Breath.  Think happy thoughts.  Remember that all men and women are image bearers of God.  May civil discourse once again become unexpendable.

:)

Troy


On 10/24/20 1:37 PM, Troy A. Griffitts wrote:
Well, we've had a pretty quiet week after the flurry of emails last weekend (thank you for those email, everyone!)  I have committed a few very small updates for the items mentioned in those emails, and also a doxygen update to improve our API documentation a bit-- mostly regarding deprecated methods.  The new API reference has been generated to:

http://crosswire.org/sword/apiref/

I plan to bundle 1.9.0 up and push it out the door, unless anyone sends a showstopper in the next hours.

Hope everyone is enjoying their weekend and staying safe,

Troy


_______________________________________________
sword-devel mailing list: sword-devel@crosswire.org
http://crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page
_______________________________________________
sword-devel mailing list: sword-devel@crosswire.org
http://crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page

Reply via email to