[SCM] Samba Shared Repository - branch master updated
Matthieu Patou
mat at samba.org
Tue Dec 7 16:33:02 MST 2010
The branch, master has been updated
via 994bcf3 build: fix hpux build pb
from a52a587 docs: clarify the idmap_rid manpage (bug #7788)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 994bcf35d2c547edc7f567a0f1b6e4db73a3ee73
Author: Matthieu Patou <mat at matws.net>
Date: Tue Dec 7 23:42:15 2010 +0300
build: fix hpux build pb
Pair-Programmed-With: Thomas Nagy <tnagy2pow10 at gmail.com>
Fix the library extension from .so to .sl
Add full path to library when linking this is needed due to a strange
behavior of HP-UX:
This command: gcc demo demo.c -L dir1/dir2/ -lsomelib
will give a binary with a hard coded lib like dir1/dir2/libsomelib.sl.
Somehow like a partial rpath, it has the first impact of fooling waf
detection of wether the plateform support libraries or not (leading to
being unable to compile samba on HPUX) and the impact of having non
functionnal binaries.
Autobuild-User: Matthieu Patou <mat at samba.org>
Autobuild-Date: Wed Dec 8 00:32:50 CET 2010 on sn-devel-104
-----------------------------------------------------------------------
Summary of changes:
buildtools/wafsamba/hpuxcc.py | 56 +++++++++++++++++++++++++++++++++++++++
buildtools/wafsamba/wafsamba.py | 1 +
2 files changed, 57 insertions(+), 0 deletions(-)
create mode 100644 buildtools/wafsamba/hpuxcc.py
Changeset truncated at 500 lines:
diff --git a/buildtools/wafsamba/hpuxcc.py b/buildtools/wafsamba/hpuxcc.py
new file mode 100644
index 0000000..abdf2a8
--- /dev/null
+++ b/buildtools/wafsamba/hpuxcc.py
@@ -0,0 +1,56 @@
+# compiler definition for HPUX
+# based on suncc.py from waf
+
+import os, optparse, sys
+import Utils, Options, Configure
+import ccroot, ar
+from Configure import conftest
+import gcc
+
+
+ at conftest
+def gcc_modifier_hpux(conf):
+ v=conf.env
+ v['CCFLAGS_DEBUG']=['-g']
+ v['CCFLAGS_RELEASE']=['-O2']
+ v['CC_SRC_F']=''
+ v['CC_TGT_F']=['-c','-o','']
+ v['CPPPATH_ST']='-I%s'
+ if not v['LINK_CC']:v['LINK_CC']=v['CC']
+ v['CCLNK_SRC_F']=''
+ v['CCLNK_TGT_F']=['-o','']
+ v['LIB_ST']='-l%s'
+ v['LIBPATH_ST']='-L%s'
+ v['STATICLIB_ST']='-l%s'
+ v['STATICLIBPATH_ST']='-L%s'
+ v['RPATH_ST']='-Wl,-rpath,%s'
+ v['CCDEFINES_ST']='-D%s'
+ v['SONAME_ST']='-Wl,-h,%s'
+ v['SHLIB_MARKER']=['-Wl,-Bdynamic']
+# v['STATICLIB_MARKER']='-Wl,-Bstatic'
+ v['FULLSTATIC_MARKER']='-static'
+ v['program_PATTERN']='%s'
+ v['shlib_CCFLAGS']=['-fPIC','-DPIC']
+ v['shlib_LINKFLAGS']=['-shared']
+ v['shlib_PATTERN']='lib%s.sl'
+# v['staticlib_LINKFLAGS']=['-Wl,-Bstatic']
+ v['staticlib_PATTERN']='lib%s.a'
+
+gcc.gcc_modifier_hpux = gcc_modifier_hpux
+
+from TaskGen import feature, after
+ at feature('cprogram', 'cshlib')
+ at after('apply_link', 'apply_lib_vars', 'apply_obj_vars')
+def hpux_addfullpath(self):
+ if sys.platform == 'hp-ux11':
+ link = getattr(self, 'link_task', None)
+ if link:
+ lst = link.env.LINKFLAGS
+ buf = []
+ for x in lst:
+ if x.startswith('-L'):
+ p2 = x[2:]
+ if not os.path.isabs(p2):
+ x = x[:2] + self.bld.srcnode.abspath(link.env) + "/../" + x[2:].lstrip('.')
+ buf.append(x)
+ link.env.LINKFLAGS = buf
diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py
index 5d13fa1..1d3ced1 100644
--- a/buildtools/wafsamba/wafsamba.py
+++ b/buildtools/wafsamba/wafsamba.py
@@ -23,6 +23,7 @@ import samba_conftests
import samba_abi
import tru64cc
import irixcc
+import hpuxcc
import generic_cc
import samba_dist
import samba_wildcard
--
Samba Shared Repository
More information about the samba-cvs
mailing list