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

Merge with upstream version 2017-07-13 08:48 #12

Merged
merged 35 commits into from
Mar 7, 2020

Conversation

meyerj
Copy link
Member

@meyerj meyerj commented Oct 26, 2017

Changelog since the last merge (#3):

2017-07-13 08:48  sanchouss_
      * bug 146; 
      * bug 147 - Being prepared for Removing Deprecated Exception Specifications from C++17

2016-11-11 18:48  sanchouss_
      * Numerous fixes;
      * Added .target property for the ConsoleAppender to allow printing to STDERR 
      * Added method Category::shutdownForced(). It releases more memory than shutdown() by deleting all appenders. 
      Category::shutdownForced() may be invoked several times, not only at the end of program.

See full Changelog.

meyerj and others added 30 commits December 17, 2015 20:32
…t version to 2.9.0

This patch allows to install the patched version of log4cpp alongside the original log4cpp
package without potential conflicts and without the need to increase the version number to 6.0.0
as a criteria to detect the patched log4cpp library in ocl.

rtt and ocl needs a minimal patch to change the library name and to remove the version 6.0.0 check.

Signed-off-by: Johannes Meyer <johannes@intermodalics.eu>
… issues

OS X 10.11 with System Integrity Protection (SIP) [1] turned on (which is
the default), purges all DYLD_xxx env. var's before executing a program.
This means that dynamic libraries can not be found via DYLD_xxx paths, and
so all dynamic library dependencies must have a full path specified.

Without this property set, dependent libraries/executables that dynamically
link with log4cpp end up without the path information, and thus fail to
load in 10.11 w/ SIP enabled. Even if CMake provides a full path to the
log4cpp library, the output dependent dynamic library has a log4cpp
entry like

    liblog4cpp.6.0.dylib (compatibility version 6.0.0, current version 6.0.0)

but with this property set in log4cpp (and no changes in the dependent
package), then the resulting log4cpp entry in the dependent library is

    /opt/orocos/lib/liblog4cpp.6.0.dylib (compatibility version 6.0.0, current version 6.0.0)

Not entirely sure why this entry fixes the problem, but it does.

[1] https://support.apple.com/en-us/HT204899
Support OS X 10.11 with system integrity protection enabled
mem leak: code cleanup

Memory leak checks: added separate project Runnable for facilitating memleak checking

log4cppRunnable.vcxproj itself
Avoids the following error (OS X 10.11, SIP enabled, CMake 3.6)

-- Configuring done
CMake Warning (dev):
  Policy CMP0042 is not set: MACOSX_RPATH is enabled by default.  Run "cmake
  --help-policy CMP0042" for policy details.  Use the cmake_policy command to
  set the policy and suppress this warning.

  MACOSX_RPATH is not specified for the following targets:

   log4cpp

This warning is for project developers.  Use -Wno-dev to suppress it.

-- Generating done
cmake: Correctly set RPATH accounting for OS X and CMake versions
@meyerj meyerj added this to the 2.9 milestone Oct 26, 2017
meyerj added a commit to meyerj/log4cpp that referenced this pull request Oct 26, 2017
…pick

Merge with upstream version 2017-07-13 08:48
@meyerj
Copy link
Member Author

meyerj commented Oct 31, 2017

We have to review the changes in the Appender class and eventually revert it.

@francisco-miguel-almeida

We have to review the changes in the Appender class and eventually revert it.

Could this be related to #13?

@meyerj
Copy link
Member Author

meyerj commented Apr 16, 2019

Could this be related to #13?

No. This low priority patch is not merged into toolchain-2.9 or master yet.

@meyerj meyerj modified the milestones: 2.9, 2.10 Apr 16, 2019
@meyerj meyerj changed the base branch from toolchain-2.9 to toolchain-2.10 June 21, 2019 11:08
@medenes
Copy link

medenes commented Mar 6, 2020

Hi. Is here any blocking issue that not allow to merge this PR into master? bug 147 is the most wanted for me.

@snrkiwi
Copy link
Contributor

snrkiwi commented Mar 7, 2020

WFM. We should try to keep up ... probably need to do another sync at some point soon also ...

@meyerj
Copy link
Member Author

meyerj commented Mar 7, 2020

We have to review the changes in the Appender class and eventually revert it.

I personally did not run any tests so far to check whether the update breaks real-time logging in OCL Logging. From looking at the diff I do not see a problem, but also did not go over all patches in detail.

If someone could confirm that the patch does not break OCL, we can merge and consider it for a toolchain-2.10 release.

WFM. We should try to keep up ... probably need to do another sync at some point soon also ...

The branch merged here is still the latest from the upstream repo at https://sourceforge.net/p/log4cpp/codegit/ci/master/tree/.

@snrkiwi
Copy link
Contributor

snrkiwi commented Mar 7, 2020

I think that the Appender related changes are ok, though why they needed the complexity related to the Appenders Map is not evident. Shrug ... I don't see any changes that might effect real-time

@meyerj meyerj changed the base branch from toolchain-2.10 to master March 7, 2020 20:28
@meyerj meyerj merged commit a920aca into orocos-toolchain:master Mar 7, 2020
@meyerj meyerj deleted the master-merged-with-upstream branch March 7, 2020 20:28
@meyerj
Copy link
Member Author

meyerj commented Mar 7, 2020

Also merged into toolchain-2.10 in 4c6df4a.

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

Successfully merging this pull request may close these issues.

4 participants