pkgsrc/www/serf/patches/patch-SConstruct
2017-10-04 11:53:10 +00:00

74 lines
3 KiB
Text

$NetBSD: patch-SConstruct,v 1.9 2017/10/04 11:53:10 wiz Exp $
Hack: Use OPENSSL variable as final shared library path; fixes lib id on Darwin.
Don't append -O2 compiler flag.
Don't special case sunos5 in naming shlibs
Fix build with scons-3.x.
--- SConstruct.orig 2015-09-17 12:46:24.000000000 +0000
+++ SConstruct
@@ -111,6 +111,7 @@ opts.AddVariables(
RawListVariable('CC', "Command name or path of the C compiler", None),
RawListVariable('CFLAGS', "Extra flags for the C compiler (space-separated)",
None),
+ RawListVariable('LDFLAGS', "Extra linker flags from pkgsrc", None),
RawListVariable('LIBS', "Extra libraries passed to the linker, "
"e.g. \"-l<library1> -l<library2>\" (space separated)", None),
RawListVariable('LINKFLAGS', "Extra flags for the linker (space-separated)",
@@ -152,7 +153,7 @@ if sys.platform == 'win32':
True),
)
-env = Environment(variables=opts,
+env = Environment(variables=opts, ENV=os.environ,
tools=('default', 'textfile',),
CPPPATH=['.', ],
)
@@ -183,7 +184,7 @@ CALLOUT_OKAY = not (env.GetOption('clean
unknown = opts.UnknownVariables()
if unknown:
- print 'Warning: Used unknown variables:', ', '.join(unknown.keys())
+ print ('Warning: Used unknown variables:', ', '.join(unknown.keys()))
apr = str(env['APR'])
apu = str(env['APU'])
@@ -215,8 +216,7 @@ incdir = '$PREFIX/include/serf-$MAJOR'
# Unfortunately we can't set the .dylib compatibility_version option separately
# from current_version, so don't use the PATCH level to avoid that build and
# runtime patch levels have to be identical.
-if sys.platform != 'sunos5':
- env['SHLIBVERSION'] = '%d.%d.%d' % (MAJOR, MINOR, 0)
+env['SHLIBVERSION'] = '%d.%d.%d' % (MAJOR, MINOR, 0)
LIBNAME = 'libserf-%d' % (MAJOR,)
if sys.platform != 'win32':
@@ -257,7 +257,6 @@ if sys.platform != 'win32':
env.Append(CCFLAGS=['-g'])
env.Append(CPPDEFINES=['DEBUG', '_DEBUG'])
else:
- env.Append(CCFLAGS=['-O2'])
env.Append(CPPDEFINES=['NDEBUG'])
### works for Mac OS. probably needs to change
@@ -391,6 +390,11 @@ if sys.platform == 'win32':
for d in env['LIBPATH']:
env.Append(RPATH=':'+d)
+for l in env['LDFLAGS']:
+ if l.startswith('-l'):
+ env.Append(LINKFLAGS=l)
+ env.Append(GSSAPI_LIBS=l)
+
# Set up the construction of serf-*.pc
pkgconfig = env.Textfile('serf-%d.pc' % (MAJOR,),
env.File('build/serf.pc.in'),
@@ -429,7 +433,7 @@ if sys.platform == 'darwin':
# make applications depend on the exact major.minor.patch version of serf.
install_shared_path = install_shared[0].abspath
- target_install_shared_path = os.path.join(libdir, '%s.dylib' % LIBNAME)
+ target_install_shared_path = os.path.join('$OPENSSL', '%s.dylib' % LIBNAME)
env.AddPostAction(install_shared, ('install_name_tool -id %s %s'
% (target_install_shared_path,
install_shared_path)))