gem5-dev@gem5.org

The gem5 Developer List

View all threads

[XS] Change in gem5/gem5[develop]: scons: Add -rdynamic when building python embed binary

YW
Yu-hsin Wang (Gerrit)
Thu, Jul 6, 2023 2:27 AM

Yu-hsin Wang has submitted this change. (
https://gem5-review.googlesource.com/c/public/gem5/+/72040?usp=email )

(

2 is the latest approved patch-set.
No files were changed between the latest approved patch-set and the
submitted one.
)Change subject: scons: Add -rdynamic when building python embed binary
......................................................................

scons: Add -rdynamic when building python embed binary

When you build Python from scratch, the modules would be separated
shared libraries. They would be dlopen when doing module import. To make
the separated shared libraries can share the symbol in the binary, we
should add -rdynamic when compliing.

Change-Id: I26bf9fd7ea5068fd2d08c8f059b37ff34073e8c2
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/72040
Reviewed-by: Jason Lowe-Power power.jg@gmail.com
Tested-by: kokoro noreply+kokoro@google.com
Maintainer: Jason Lowe-Power power.jg@gmail.com

M src/SConscript
1 file changed, 2 insertions(+), 0 deletions(-)

Approvals:
kokoro: Regressions pass
Jason Lowe-Power: Looks good to me, approved; Looks good to me, approved

diff --git a/src/SConscript b/src/SConscript
index 1b44303..f54a881 100644
--- a/src/SConscript
+++ b/src/SConscript
@@ -626,6 +626,7 @@
gem5py_m5_env = gem5py_env.Clone()
gem5py_env.Append(CPPPATH=env['CPPPATH'])
gem5py_env.Append(LIBS='z')
+gem5py_env.Append(LINKFLAGS='-rdynamic')
gem5py_env.Program(gem5py, 'python/gem5py.cc')[0]
m5_module_source =
Source.all.with_all_tags(env, 'm5_module', 'gem5 lib')
@@ -647,6 +648,7 @@

env['SHOBJSUFFIX'] = '${OBJSUFFIX}s'
+env.Append(LINKFLAGS='-rdynamic')

envs = {
'debug': env.Clone(ENV_LABEL='debug', OBJSUFFIX='.do'),

--
To view, visit
https://gem5-review.googlesource.com/c/public/gem5/+/72040?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gem5-review.googlesource.com/settings?usp=email

Gerrit-MessageType: merged
Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I26bf9fd7ea5068fd2d08c8f059b37ff34073e8c2
Gerrit-Change-Number: 72040
Gerrit-PatchSet: 4
Gerrit-Owner: Yu-hsin Wang yuhsingw@google.com
Gerrit-Reviewer: Gabe Black gabe.black@gmail.com
Gerrit-Reviewer: Jason Lowe-Power jason@lowepower.com
Gerrit-Reviewer: Jason Lowe-Power power.jg@gmail.com
Gerrit-Reviewer: Yu-hsin Wang yuhsingw@google.com
Gerrit-Reviewer: kokoro noreply+kokoro@google.com
Gerrit-CC: Earl Ou shunhsingou@google.com
Gerrit-CC: Roger Chang rogerycchang@google.com
Gerrit-CC: kokoro noreply+kokoro@google.com

Yu-hsin Wang has submitted this change. ( https://gem5-review.googlesource.com/c/public/gem5/+/72040?usp=email ) ( 2 is the latest approved patch-set. No files were changed between the latest approved patch-set and the submitted one. )Change subject: scons: Add -rdynamic when building python embed binary ...................................................................... scons: Add -rdynamic when building python embed binary When you build Python from scratch, the modules would be separated shared libraries. They would be dlopen when doing module import. To make the separated shared libraries can share the symbol in the binary, we should add -rdynamic when compliing. Change-Id: I26bf9fd7ea5068fd2d08c8f059b37ff34073e8c2 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/72040 Reviewed-by: Jason Lowe-Power <power.jg@gmail.com> Tested-by: kokoro <noreply+kokoro@google.com> Maintainer: Jason Lowe-Power <power.jg@gmail.com> --- M src/SConscript 1 file changed, 2 insertions(+), 0 deletions(-) Approvals: kokoro: Regressions pass Jason Lowe-Power: Looks good to me, approved; Looks good to me, approved diff --git a/src/SConscript b/src/SConscript index 1b44303..f54a881 100644 --- a/src/SConscript +++ b/src/SConscript @@ -626,6 +626,7 @@ gem5py_m5_env = gem5py_env.Clone() gem5py_env.Append(CPPPATH=env['CPPPATH']) gem5py_env.Append(LIBS='z') +gem5py_env.Append(LINKFLAGS='-rdynamic') gem5py_env.Program(gem5py, 'python/gem5py.cc')[0] m5_module_source = \ Source.all.with_all_tags(env, 'm5_module', 'gem5 lib') @@ -647,6 +648,7 @@ # env['SHOBJSUFFIX'] = '${OBJSUFFIX}s' +env.Append(LINKFLAGS='-rdynamic') envs = { 'debug': env.Clone(ENV_LABEL='debug', OBJSUFFIX='.do'), -- To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/72040?usp=email To unsubscribe, or for help writing mail filters, visit https://gem5-review.googlesource.com/settings?usp=email Gerrit-MessageType: merged Gerrit-Project: public/gem5 Gerrit-Branch: develop Gerrit-Change-Id: I26bf9fd7ea5068fd2d08c8f059b37ff34073e8c2 Gerrit-Change-Number: 72040 Gerrit-PatchSet: 4 Gerrit-Owner: Yu-hsin Wang <yuhsingw@google.com> Gerrit-Reviewer: Gabe Black <gabe.black@gmail.com> Gerrit-Reviewer: Jason Lowe-Power <jason@lowepower.com> Gerrit-Reviewer: Jason Lowe-Power <power.jg@gmail.com> Gerrit-Reviewer: Yu-hsin Wang <yuhsingw@google.com> Gerrit-Reviewer: kokoro <noreply+kokoro@google.com> Gerrit-CC: Earl Ou <shunhsingou@google.com> Gerrit-CC: Roger Chang <rogerycchang@google.com> Gerrit-CC: kokoro <noreply+kokoro@google.com>