summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorNirbheek Chauhan <nirbheek@centricular.com>2018-03-08 19:03:18 +0530
committerNirbheek Chauhan <nirbheek@centricular.com>2018-03-09 02:21:13 +0530
commit3e16c681785c762c1c126be2047411bb83ab0d1c (patch)
tree97eaf4c5477674dcb279f88cc35f7b01fd7e8cd2 /config
parent4897ee63e02f6efe4c4e7c03d7c743f99cc81666 (diff)
openssl.recipe: New recipe needed by the dtls plugin
This commit also installs a new Perl in its own prefix in bootstrap. OpenSSL needs Perl 5.10.0, and removing that dependency is too much work. Unfortunately, we cannot use Strawberry Perl because that operates on back-slashes instead of unix-style forward-slashes so OpenSSL's Configure rejects it. We also can't use this MinGW-Perl as a replacement for MSYS's Perl because it can't find any MSYS tools (like m4), which causes perl scripts like autom4te which call `system m4` to fail. As a result, this Perl is *only* used by openssl.recipe and only when building natively on Windows.
Diffstat (limited to 'config')
-rw-r--r--config/ios.config4
-rw-r--r--config/windows.config12
2 files changed, 10 insertions, 6 deletions
diff --git a/config/ios.config b/config/ios.config
index 3af36897..403e1791 100644
--- a/config/ios.config
+++ b/config/ios.config
@@ -25,7 +25,7 @@ else:
ios_platform = 'iPhoneOS'
iphone_platform = '/Applications/Xcode.app/Contents/Developer/Platforms/%s.platform/Developer' % ios_platform
-_toolchain_root = '%s/usr/bin' % iphone_platform
+toolchain_path = '%s/usr/bin' % iphone_platform
# Find the installed SDK
_sdk_version = None
@@ -90,7 +90,7 @@ os.environ['CC']= 'clang'
os.environ['CXX']= 'clang++'
extra_cflags += ' -Wno-error=format-nonliteral -Wno-error=implicit-function-declaration '
-os.environ['PATH'] = '%s:%s' % (_toolchain_root, os.environ['PATH'])
+os.environ['PATH'] = '%s:%s' % (toolchain_path, os.environ['PATH'])
os.environ['OBJC'] = os.environ['CC']
os.environ['CPP']= "%s -E" % os.environ['CC']
os.environ['CXXPP']= os.environ['CPP']
diff --git a/config/windows.config b/config/windows.config
index fe6cd5d3..8da98c06 100644
--- a/config/windows.config
+++ b/config/windows.config
@@ -32,6 +32,8 @@ target = host
if not toolchain_prefix:
toolchain_prefix = os.path.join(home_dir, 'mingw', _path)
+if not mingw_perl_prefix:
+ mingw_perl_prefix = os.path.join(home_dir, 'mingw', 'perl')
def cmd(command):
return '%s-%s' % (host, command)
@@ -59,15 +61,17 @@ os.environ['STRIP']= cmd('strip')
os.environ['WINDRES']= cmd('windres')
os.environ['RC']= cmd('windres')
os.environ['DLLTOOL']= cmd('dlltool')
+os.environ['PERL'] = 'perl'
# PATH
-if platform == Platform.WINDOWS:
- toolchainhostbin = os.path.join(toolchain_prefix, host, 'bin')
- if os.path.isdir(toolchainhostbin) and not toolchainhostbin in os.environ['PATH']:
- os.environ['PATH'] = '%s%s%s' % (toolchainhostbin, separator, os.environ['PATH'])
toolchainbin = os.path.join(toolchain_prefix, 'bin')
if os.path.isdir(toolchainbin) and not toolchainbin in os.environ['PATH']:
os.environ['PATH'] = '%s%s%s' % (toolchainbin, separator, os.environ['PATH'])
+# This perl is only used by openssl; we can't use it everywhere else because it
+# is incapable of detecting msys tools, and so perl scripts like autom4te fail
+# to detect msys tools like m4. Lucky for us, openssl doesn't use those.
+os.environ['CERBERO_OPENSSL_PERL_PATH'] = os.path.join(mingw_perl_prefix, 'bin')
+
os.environ['ne_cv_libsfor_socket'] = '-lws2_32'
os.environ['ne_cv_libsfor_gethostbyname'] = '-lws2_32'
os.environ['ac_cv_func_malloc_0_nonnull'] ='yes'