[Xorp-hackers] [PATCH 3/9] xorp: Sconstruct: Create subdirectories to hold symlinks to command and module bins in $BUILDDIR
igorm at etf.rs
igorm at etf.rs
Mon Feb 6 09:00:31 PST 2012
From: Igor Maravic <igorm at etf.rs>
If env['rtld_origin'] is set to TRUE, creates /bin and /sbin directories in $BUILDDIR/lib/xorp to hold symlinks for
command and module bins, respectivly.
We need that, so we coud run xorpsh from $BUILDDIR. Also this commit makes running of xorp_rtrmngr from $BUILDDIR easier.
Signed-off-by: Igor Maravic <igorm at etf.rs>
---
xorp/SConstruct | 23 ++++++++++++++++++++++-
1 files changed, 22 insertions(+), 1 deletions(-)
diff --git a/xorp/SConstruct b/xorp/SConstruct
index c311e59..ef1387d 100644
--- a/xorp/SConstruct
+++ b/xorp/SConstruct
@@ -1008,7 +1008,28 @@ if env.has_key('SHAREDLIBS'):
env['xorp_module_rpath'] = os.path.join('\\$$ORIGIN',
os.path.relpath(env.Dir('$xorp_libdir').abspath,
env.Dir('$xorp_moduledir').abspath))
-
+
+if env['rtld_origin']:
+ #
+ # Build a subdirectories for holding symlinks to modules and command binaries,
+ # so that xorpsh and rtrmngr, about to be built, can be run from inside the BUILDDIR.
+ #
+ # $BUILDIR/lib/bin will contain symlinks to command bins
+ # $BUILDIR/lib/sbin will contain symlinks to module bins
+ #
+ xorp_alias_moduledir = os.path.join(xorp_alias_subdir, 'sbin')
+ xorp_alias_tooldir = os.path.join(xorp_alias_subdir, 'bin')
+ try:
+ Execute(Mkdir(xorp_alias_moduledir))
+ except:
+ pass
+ env['xorp_alias_moduledir'] = xorp_alias_moduledir
+ try:
+ Execute(Mkdir(xorp_alias_tooldir))
+ except:
+ pass
+ env['xorp_alias_tooldir'] = xorp_alias_tooldir
+
if not fnmatch.fnmatch(host_os, 'mingw32*'):
# Export global symbols as dynamic in executables for runtime backtraces
--
1.7.5.4
More information about the Xorp-hackers
mailing list