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

Don’t set RUNPATH if it is the system search path - CMAKE_SKIP_RPATH #643

Open
heitbaum opened this issue Jan 13, 2022 · 0 comments
Open

Comments

@heitbaum
Copy link

The following encfs commit forces RPATH 31e302c on Linux.

encfs/CMakeLists.txt

Lines 322 to 323 in c444f9b

# Set RPATH to library install path.
set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}")

With the cleanup of RPATH/RUNPATH in - LibreELEC/LibreELEC.tv#6094 - we are cleaning up incorrect and unnecessary RPATH/RUNPATH, we have used the CMAKE_SKIP_RPATH build option but given that encfs and encfsctl are including the system search path - the RUNPATH is unnecessary.

reading:

Suggest that RUNPATH can still be used when installing, but only if it's not a system directory (as per the wiki) so that it is not necessary to use CMAKE_SKIP_RPATH

 # readelf --dynamic /usr/bin/encfs | grep '\['
 0x0000000000000001 (NEEDED)             Shared library: [libfuse.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libssl.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libcrypto.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libstdc++.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgcc_s.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/lib]

readelf --dynamic /usr/bin/encfsctl | grep '\['
 0x0000000000000001 (NEEDED)             Shared library: [libfuse.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libssl.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libcrypto.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libstdc++.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgcc_s.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/lib]

# LD_LIBRARY_PATH= LD_DEBUG=libs ldd -v encfs

hrunting pushed a commit to hrunting/encfs that referenced this issue Nov 11, 2022
…aca4..1dee28e51

1dee28e51 setting the version to 9.0.0
55716da04 Merge pull request #865 from JonasVautherin/fix-android-x86_64
41151ce21 Add defined(__ANDROID__) for fseeko defined and android-x86_64
4c7cc9d6e Merge pull request #862 from heitbaum/patch-1
0838dd11a meson.build: fix typo
329139033 update the docs
9c6752a64 setting the version to 8.1.0
cc2efbbd2 Merge pull request #861 from leethomason/modern-cmake-2
95b80f445 update readme
7d054695e update gitignore
212a53bb5 refresh visual studio project
be4eaaac8 remove bit rotted premake5, update readme
97739352a test new build links
efefbb85b Merge branch 'master' of https://github.com/modern-cmake/tinyxml2 into modern-cmake-master
f2db58e65 Merge pull request #859 from cugone/FixWrongQueryAssignment
5e7657389 Fix Query function results being assigned to int instead of XMLError
6376b3fbc Merge pull request #845 from dov/patch-1
7df6b3ff4 Overhaul CMake build
9d899a73c Update meson.build
d4514ad72 Merge pull request #837 from dcbaker/meson
91bfd4b7f Merge pull request #827 from ngc92/ClearError
4ec7320e5 Merge pull request #790 from offlinemark/mark/cmake-namespace
ee6684483 Merge pull request #831 from plekakis/master
a9ed6746d Merge pull request #838 from dfaure-kdab/Wundef
11376382f Merge pull request #840 from dota17/master
8e1af3a7f Merge pull request #841 from pazner/master
d3a82c5e4 Fix format string errors in sscanf
d59fd15db skip comment node before get text
c509d569c Add meson build system
b5d3b93e0 Add missing `defined`, detected by -Werror=undef
4001a468b cmake: Use a namespace for the tinyxml2 target in local export
c87bf8187 reverted the strong typed enum change
1aeb57d26 Merge pull request #823 from c72578/2020-06-17_Fix_pkgconfig_lib_postfix
a0ce5527a Merge pull request #789 from offlinemark/mark/cmake-clean
54e1d6b2f Merge pull request #820 from orudge/fix-symbol-export
6df0cae18 - Allowing TIXMLASERT to be defined before including the main header. - Fix for enum bitmask usage
2c6a41a92 removed overhead of clear error
2c5a6bfdd reorder
51d9f51d1 update readme link
463796533 add test case
d34d0ef5e Merge pull request #822 from ghost/queryattr
1e384d503 Fix debug postfix in pkgconfig file
5ee20feaf Add QueryAttribute for const char**
fc8967074 update the docs
2e6912bf8 Merge pull request #816 from a-lunkov/master
098eb3739 Merge branch 'master' of github.com:leethomason/tinyxml2
8812f197a make printer functions virtual
6b7effe54 Merge pull request #812 from amai2012/master
1578df3bf Merge pull request #811 from hyperair/fix-first-line-indentation
98ca9146b Merge branch 'netcan-master'
18468b8cc minor changes to hex parsing
c9c9d8cdf Merge branch 'master' of https://github.com/netcan/tinyxml2 into netcan-master
b341e66e3 cmake: Don't export symbols if building static library
a953b9565 Suppress UndefinedBehaviorSanitizer warnings
ba02706e6 Merge pull request vgough#1 from leethomason/master
eefc07a73 Rename action
064d90da1 Try to install
dcc28da4c Add macos-latest
e3abe1bd0 Remove distcheck
e120ee328 Add github action
bfbcc0333 Merge pull request #809 from a-lunkov/patch-1
99db0247d Merge pull request #807 from jsenn/sharpen-ftell-ifdef
6a514399c XMLPrinter: Fix first line indentation
63fb154ad Update tinyxml2.cpp
1fdee25d1 Sharpened check for 64-bit Unix when defining fseek/ftell macros.
bd5950bb0 Merge pull request #798 from DanRStevens/removeCleanBeforeTest
67271b1fd Merge pull request #787 from jsenn/feature/large-file-support
a9f29b74d Fixed warning caused by sloppy conversion between signed/unsigned types.
dfb45cb73 support IntText(),UnsignedText(),Int64Text() for hex value
bf15233ad Setting the version to 8.0.0
850419584 fix vs version
8db004b74 Merge pull request #802 from LilyWangL/vcpkg-instructions
3d6a5477a Merge pull request #797 from DanRStevens/gitIgnoreLinux
bbbb8c9a9 Merge branch 'master' of github.com:leethomason/tinyxml2
e44426810 add convenience methods
6ac05b2b9 Merge branch 'push' of https://github.com/ngc92/tinyxml2 into ngc92-push
655b15c07 Merge pull request #781 from daniel347x/patch-1
59b01033f Merge branch 'Alanscut-tinyxml2_addtestcase'
37ccc7100 fix some casting
3574d3e22 Merge branch 'tinyxml2_addtestcase' of https://github.com/Alanscut/tinyxml2 into Alanscut-tinyxml2_addtestcase
de62366e6 Merge branch 'master' of github.com:leethomason/tinyxml2
20f2d5eec Merge pull request #773 from Alanscut/fix_issue712
a9c28ce3e Merge pull request #768 from Alanscut/fix_wrong_symbol
2c642bf25 update to visstudio 2019
f4520c990 Merge pull request #762 from orbitcowboy/master
1eb8a3f76 Add vcpkg installation instructions
22e5db140 Remove `clean` before `test` or `check`
d09f879ad Add Makefile outputs to .gitignore
60e96163c cmake: Move TARGETS_EXPORT_NAME to top
588c6577d cmake: Clarify comment around exported cmake script
57cd52b04 cmake: Use TARGETS_EXPORT_NAME var throughout file
e86e947cb cmake: Use CMAKE_PROJECT_NAME instead of PROJECT_NAME
e62024504 PushNewChild* family of convenience functions
d58436c4b Fixed bug caused by type checking code in `LoadFile`.
bf59a2d4c Added support for files larger than ~2GB.
d7455034e Change constants used in 'ToBool' to support MSVC
7d9ca1e73 Supplementary test case
ad7bdf9ed fix issue#712
8916a3c58 fix wrong symbol
73f5409b6 Improved const correctness. There are no functional changes intended.
ff6165051 Merge branch 'master' of github.com:leethomason/tinyxml2
9c740e8d2 setting the version to 7.1.0
a9a0ea22f Merge pull request #761 from untereiner/master
50daa32fc minor fixes to test cases
f60928eaa Merge branch 'supplementary_test_case' of git://github.com/wangkirin/tinyxml2 into wangkirin-supplementary_test_case
4994f1cc5 Merge pull request #754 from wangkirin/reorg_file_path
5bf58f0d1 Merge pull request #753 from orbitcowboy/master
141d2117b Merge pull request #751 from wangkirin/fix_comment
87aaa2592 Merge pull request #750 from equalent/patch-1
c3601c62f Merge branch 'cugone-master'
effdf95f8 add test cases
c36d59f6b Merge branch 'master' of git://github.com/cugone/tinyxml2 into cugone-master
7fd646a8a support more bool options
1675bec2f Merge pull request #743 from deduktionstheorem/master
d39b13bbb Add COMPONENT support at cmake install stage
f12d7a241 Supplement test case in xmltest.cpp
e08c2d2e0 adjust path of testfile `bomtest.xml` to `resource/out`
38f7d65b4 Merge pull request vgough#1 from aaronkirkham/master
c341cea50 add missing uint64_t methods to XMLPrinter add missing XMLElement::Unsigned64Attribute body
710a3324f Fixed -Wold-style-cast warnings from g++.
4add958b4 fix comment in Programmatic DOM test case
eda7f81b1 Fixed typos
1dbfe3185 Missing uint64_t XMLElement::Unsigned64Text(uint64_t defaultValue) implementation
47e229e18 Forgot Text and XMLElement versions;
75a5acc6b UnsignedInt64 support
61a4c7d50 Merge branch 'master' of github.com:leethomason/tinyxml2
db39dbc0f add license and minor readme edit
eb2b8c47c Merge pull request #732 from orbitcowboy/master
bd5a1414d Merge pull request #731 from aarnchng/cmake_verspec
e1b301318 Issue 742: allow intermittent calls of XMLPrinter::ClearBuffer
0e7f28959 Improved const correctness of local variables. There are no functional changes intended.
f5641e547 CMakeList.txt: fix wrong version
8f4a9a8cc Merge pull request #721 from MortenMacFly/master
d944ef762 * removed merge artifact from Doxygen control file
de6d16482 fix export issue and cmake. version to 7.0.1
08da3d91c Merge pull request #720 from scpeters/patch-1
e06a24016 tinyxml2.pc.in: use exec_prefix for libdir
c3e09dabc tinyxml2.pc.in: restore prefix to lib/include dir
44ac39514 new docs
397f22581 setting the version to 7.0.0
dcedec857 Merge pull request #718 from bolry/patch-1
992e40538 Merge pull request #716 from Dmitry-Me/fixInt64Slicing
de6f6616c Merge pull request #715 from Dmitry-Me/checkLastChildBeforeInsertion
b894947c9 Merge pull request #714 from Masadow/pic
65c1b8658 Correct assigment interface for StrPair
ed3e9dc82 Fix slicing of int64_t
178149439 Check the element is the last child of the document
4be5bc805 Add support for position independant code compilation
7e8e24999 Merge pull request #707 from SwiftEngineering/issue_706
25b23b88e Merge pull request #703 from orbitcowboy/master
ade41cdfe Make resources folder for xml test relative to current source and binary directory
2cc8a4c71 Added explicit-keyword to constructors having 1 argument.
c07409b5c remove virtual call in destruction
3be5d2b74 Merge pull request #695 from leethomason/manydecs
92506ca69 Merge remote-tracking branch 'origin/master' into manydecs
baf8bc93a Merge pull request #690 from orbitcowboy/master
db13a82e6 fix huge number of declaration security issue
22b21ec9b Fixed typos in comments. There are no functional changes intended.
c483646db fix test cases
93a8fb18e Merge branch 'issue647'
92fc089e1 remove deprecated errors. next version will be major.
9f14aca07 Merge pull request vgough#645 from jasjuang/master
30d0c3d5f add assertion
2bdb13ae5 Merge pull request #686 from leethomason/issue647
233b2cb82 Merge pull request #685 from leethomason/deadcode
fc80df3b3 fix query return type
70d942e30 remove dead yet conflicting method
1cc174c2d Merge pull request #682 from lsolanka/pr.unify-cmake-build
1b029f2bd add target_compile_definitions
392ec1832 use configure_package_config_file()
b7c169ccb Replace absolute installation paths with relative
c0ff86950 Merge pull request #681 from johnb003/patch-1
d89d6d955 Updated CMakeLists.txt for relocatable installs
b54cf3cb4 Made CMakeLists.txt installation relocatable.
a1d462d33 Merge pull request vgough#670 from dquam/ProcessEntitiesBugWhenFalse
be69ae635 In PrintString, move the optimization under the if ( _processEntities ) block and retain the strlen Write in the new else block. Added a test case.
3cdaf8b15 update the readme
c1424ee4e setting the version to 6.2.0
b94eefc7a Merge pull request vgough#669 from leethomason/overflow
e2d02e162 and the same fix in the test case
befc3c3ae fix compiler inconsistency
f928c3518 clean up the depth tracking a bit
d946ddadc upgrade to vs2017. fix stack overflow attack.
65b5366a0 Merge pull request vgough#667 from Dmitry-Me/simplifyToUnknownTests
e59e3c346 Merge pull request vgough#668 from Dmitry-Me/improveDeclarationTestMessage
7dd295609 Merge pull request vgough#666 from Dmitry-Me/clarifyErrorNameTests
6a18a3105 Improve test message to avoid duplicate log output
f5af951f1 Simplify checks
95f687b1f Cleanup ErrorName() tests
074194158 Merge pull request vgough#662 from mschmieder/fix_testrun_windows
ecbc16ae4 add namespace for cmake export
00b74a40b Merge pull request vgough#657 from noloader/master
72407d205 Merge pull request vgough#663 from Dmitry-Me/clarifyHandlesTests
938560f9f Improve handles tests
3c9370561 fixed issue where CTest is executed in the wrong directory
0bb8767e3 Merge pull request vgough#656 from Gumichan01/master
51a1d1c93 Merge pull request vgough#653 from fcami/master
ff7543037 Fix typo in permissions
5dd529236 Add install and uninstall target to Makefile This PR closes some gaps in the makefile. It follows GNU coding standards and conventions at https://www.gnu.org/prep/standards/standards.html. It is not specific to GNU, and most of the world follows it.
0f1fa6d27 fix "dereference before null check" defect
59785ec38 fix installation path for *.cmake
cc1745b55 Merge pull request vgough#649 from PeterMatula/rename-DEBUG-define
dc75a362c Merge pull request vgough#648 from Dmitry-Me/removeUnneededConversions
50689919b rename DEBUG define to TINYXML2_DEBUG
63d8de627 Remove unneeded conversions
703f91e6b Merge pull request vgough#643 from leethomason/querystring
c8593733a Merge pull request vgough#641 from leethomason/error-str
588e4ef8a Merge pull request vgough#639 from zyndor/DEV_PremakeBuilds
f26a547fd sync the version
28f9a48d5 Merge branch 'master' into querystring
f6dc9be12 merge master
ff97dbb2c Merge branch 'master' into error-str
5b00e0662 add query string method
a36f7ac77 fix error string output when there is no formatting
bd197877c write the version number as a macro
c9e3b5274 Added premake5 build configuration with projects for Windows & Mac. - updated .gitignore with the .projects / .artifacts directories.
e1b50439c remove dead files
cf1006943 tweaking docs
71b12596e update the docs
8c8293ba8 setting the version to 6.0.0
2ab76dab6 Merge pull request vgough#632 from alabuzhev/size_t_to_int_warning
90e69c95e Suppress MSVC warning C4267: conversion from 'size_t' to 'int', possible loss of data
4155ac0c7 Merge pull request vgough#628 from leethomason/errorstr
d548b7e71 Merge branch 'master' into errorstr
eb2f51e63 removed unused variables
82e48435d Merge pull request vgough#629 from brad-anderson/memcpy-unformatted
85aac0217 Minor performance tweaks
b2e08e4bc XMLPrinter optimization
0c0f98bf8 merge from master
d556e6df9 Merge branch 'master' into errorstr
f49b9658b fix up error system issues
8b83b2387 make effc compilation optional
714ccfe29 fix line number tracker. error msg wip
7abfa6b1a Merge branch 'gccWeffc' of git://github.com/lelegard/tinyxml2 into lelegard-gccWeffc
dd4034c51 Merge pull request vgough#626 from Dmitry-Me/betterTestDeletionLoop
c59b17e5a Merge pull request vgough#625 from Dmitry-Me/checkAcceptResult
b41e24aa1 Better test deletion loop
f0f2e99cf Check result of Accept()
884852eb6 Merge pull request vgough#584 from DragonValley/patch-1
aa1883928 Error string re-work
3a37e6411 Merge pull request vgough#623 from Dmitry-Me/testErrorName
620cb1c55 Merge pull request vgough#624 from Dmitry-Me/fixCrashWhenInsertingAfterItself
e8f4a8b56 Fix crash when element is being inserted "after itself"
47845b699 Test ErrorName() returns valid string after SetError()
bdad8d73a Merge pull request vgough#620 from Dmitry-Me/clarifyComment
c8c4618f2 Merge pull request vgough#618 from Dmitry-Me/buildDebugToo
a9e75d1b2 Clarify comment
20166d2b4 Build and test Debug configuration too
7f0f754cb Code cleanup to pass gcc -Weffc++ warnings
dbf18add4 Merge pull request vgough#613 from Dmitry-Me/testResultOfSetError
da24c3b22 Merge pull request vgough#612 from Dmitry-Me/fixMisleadingComment
d3f6c6361 Test SetError() has effect
260433673 Fix misleading comment
4b173cbcf Merge pull request vgough#611 from Dmitry-Me/testClearResetErrorState
b0c421d9a Merge pull request vgough#610 from Dmitry-Me/reuseConversionCode
985ea1f78 Test Clear() clears the error
a28eb0763 Extract and reuse conversion code
d69e2c0d0 Merge pull request vgough#609 from JugglerShu/master
33883d6fe Merge pull request vgough#605 from Dmitry-Me/clarifyTestStrings
87cd4e058 Add 'const' on XMLDocument::DeepCopy. This make us copy const XMLDocument being copied to another document.
caed4ec7d Clarify what is being tested
4bbf74205 Merge pull request vgough#603 from Dmitry-Me/cleanupFopenTests
30dec7591 Merge pull request vgough#602 from Dmitry-Me/testWithStopwatchOff
cd453f86e Merge pull request vgough#596 from Dmitry-Me/useValidPointerForUserData
520009ef1 Cleanup fopen() tests
1ab85878b Stopwatch must be stopped before test check
82e20b183 Merge pull request vgough#601 from Dmitry-Me/testErrorIdAfterParse
e9945966c Merge pull request vgough#600 from Dmitry-Me/cleanupStreamModeTests
8d40f7a56 Test ErrorID after Parse()
c0fad2908 Cleanup stream mode tests
c11a7c5ca Merge pull request vgough#599 from Dmitry-Me/cleanupSomeChecks
68edbcee4 Merge pull request vgough#598 from Dmitry-Me/fallThroughComments
63fe21f4d Merge pull request vgough#597 from Dmitry-Me/betterTestQueryXText
30cdecada Merge pull request vgough#595 from Dmitry-Me/checkInsertionReturnValues
bc6920b68 Cleanup and simplify checks
3cc6f5c6f Annotate fall throughs with comments
43c019d44 Better tests for Query???Text()
7d8dfb9ee Use valid pointer for user data
8e0637019 Test return values from nodes insertion
02d2764fd Merge pull request vgough#593 from Dmitry-Me/testDeletionViaDocument
8d1bfbbf7 Merge pull request vgough#592 from Dmitry-Me/clarifyTestOutput
152958073 Merge pull request vgough#591 from Dmitry-Me/properIndentDirectives
48725fa8e Merge pull request vgough#590 from Dmitry-Me/betterVariableName
e5790dba9 Test nodes deletion via document
6f4c4e726 Clarify and simplify test output
de381df35 Indent directives consistently with surrounding code
effab6ff0 Better variable name
f0f506fe5 Update html5-printer.cpp
f3f9925f1 update docs
aca4fb16d new docs
528986ff2 update readme
757375631 add docs
646af8d21 Merge pull request vgough#582 from Dmitry-Me/distinctDefaultAndReplacement
057058017 Merge pull request vgough#581 from Dmitry-Me/testQueryingAttributesBetter
80379a331 Merge pull request vgough#580 from Dmitry-Me/checkLoadSaveResult
bf9b3a263 remove code that creates directory. add file in out directory so that git creates the directory
ef11c2f8e Update on html5-printer.cpp
3d20c5de6 Use distinct values as default and replacement values
2087a276c Test querying attributes thoroughly
46b70ce51 Check result of LoadFile()/SaveFile()
3a6e51a12 fix build issue
e4dc7218a fix an issue on windows
fc2a0017d Merge pull request vgough#578 from Dmitry-Me/checkReadingResults
cd3369992 Merge pull request vgough#577 from Dmitry-Me/checkParseResult
7096e779d Merge pull request vgough#573 from kbinny62/master
d1b82825f Check various stages of reading the XML file
68578f473 Check result of Parse() call
c1f1de724 Merge pull request vgough#575 from Dmitry-Me/extractDuplicatedString
5d1aec10f Extract duplicated text string
9720fbaf4 xmltest.cpp: path separator is '\\' under WIN32
bf29a1524 xmltest: create dir resources/out to avoid crashes

git-subtree-dir: vendor/github.com/leethomason/tinyxml2
git-subtree-split: 1dee28e51f9175a31955b9791c74c430fe13dc82
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

1 participant