Return-Path: X-Original-To: apmail-subversion-commits-archive@minotaur.apache.org Delivered-To: apmail-subversion-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 7CFA610C9E for ; Tue, 19 Nov 2013 14:40:16 +0000 (UTC) Received: (qmail 96583 invoked by uid 500); 19 Nov 2013 14:40:15 -0000 Delivered-To: apmail-subversion-commits-archive@subversion.apache.org Received: (qmail 96576 invoked by uid 500); 19 Nov 2013 14:40:15 -0000 Mailing-List: contact commits-help@subversion.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@subversion.apache.org Delivered-To: mailing list commits@subversion.apache.org Received: (qmail 96569 invoked by uid 99); 19 Nov 2013 14:40:15 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 19 Nov 2013 14:40:15 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 19 Nov 2013 14:40:14 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 0F0F52388A68; Tue, 19 Nov 2013 14:39:54 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1543442 - in /subversion/branches/1.7.x-serf-1.3.x-Windows: ./ build/generator/gen_win.py Date: Tue, 19 Nov 2013 14:39:53 -0000 To: commits@subversion.apache.org From: rhuijben@apache.org X-Mailer: svnmailer-1.0.9 Message-Id: <20131119143954.0F0F52388A68@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: rhuijben Date: Tue Nov 19 14:39:53 2013 New Revision: 1543442 URL: http://svn.apache.org/r1543442 Log: Merge the two relevant patches that we used to make 1.8.x work against recent serf versions. $ svn merge ^/subversion/branches/1.8.x-serf-1.3+-windows@1517123 -c 1517123 $ svn merge ^/subversion/branches/1.8.x-openssl-dirs@1535139 -c 1535139 * . * build/generator/gen_win.py Merge r1517123 and r1535139. Modified: subversion/branches/1.7.x-serf-1.3.x-Windows/ (props changed) subversion/branches/1.7.x-serf-1.3.x-Windows/build/generator/gen_win.py Propchange: subversion/branches/1.7.x-serf-1.3.x-Windows/ ------------------------------------------------------------------------------ Merged /subversion/branches/1.8.x-openssl-dirs:r1535139 Merged /subversion/branches/1.8.x-serf-1.3+-windows:r1517123 Modified: subversion/branches/1.7.x-serf-1.3.x-Windows/build/generator/gen_win.py URL: http://svn.apache.org/viewvc/subversion/branches/1.7.x-serf-1.3.x-Windows/build/generator/gen_win.py?rev=1543442&r1=1543441&r2=1543442&view=diff ============================================================================== --- subversion/branches/1.7.x-serf-1.3.x-Windows/build/generator/gen_win.py (original) +++ subversion/branches/1.7.x-serf-1.3.x-Windows/build/generator/gen_win.py Tue Nov 19 14:39:53 2013 @@ -382,14 +382,21 @@ class WinGeneratorBase(GeneratorBase): install_targets = [x for x in install_targets if not (isinstance(x, gen_base.TargetExe) and x.install == 'bdb-test')] + # Don't build serf when we don't have it or for 1.3+ + if not self.serf_lib or (self.serf_ver_maj, self.serf_ver_min) >= (1, 3): + install_targets = [x for x in install_targets if x.name != 'serf'] + # Drop the serf target if we don't have both serf and openssl if not self.serf_lib: - install_targets = [x for x in install_targets if x.name != 'serf'] install_targets = [x for x in install_targets if x.name != 'libsvn_ra_serf'] if self.without_neon: install_targets = [x for x in install_targets if x.name != 'neon'] install_targets = [x for x in install_targets if x.name != 'libsvn_ra_neon'] + # Don't build zlib if we have an already compiled serf + if self.serf_lib and (self.serf_ver_maj, self.serf_ver_min) >= (1, 3): + install_targets = [x for x in install_targets if x.name != 'zlib'] + # Drop the swig targets if we don't have swig if not self.swig_path and not self.swig_libdir: install_targets = [x for x in install_targets @@ -942,6 +949,9 @@ class WinGeneratorBase(GeneratorBase): if self.serf_lib: fakeincludes.append(self.apath(self.serf_path)) + + if self.openssl_path and self.openssl_inc_dir: + fakeincludes.append(self.apath(self.openssl_inc_dir)) if self.swig_libdir \ and (isinstance(target, gen_base.TargetSWIG) @@ -993,7 +1003,13 @@ class WinGeneratorBase(GeneratorBase): if self.sasl_path: fakelibdirs.append(self.apath(self.sasl_path, "lib")) if self.serf_lib: - fakelibdirs.append(self.apath(msvc_path_join(self.serf_path, cfg))) + if (self.serf_ver_maj, self.serf_ver_min) >= (1, 3): + fakelibdirs.append(self.apath(self.serf_path)) + + if self.openssl_path and self.openssl_lib_dir: + fakelibdirs.append(self.apath(self.openssl_lib_dir)) + else: + fakelibdirs.append(self.apath(msvc_path_join(self.serf_path, cfg))) fakelibdirs.append(self.apath(self.apr_path, cfg)) fakelibdirs.append(self.apath(self.apr_util_path, cfg)) @@ -1033,7 +1049,14 @@ class WinGeneratorBase(GeneratorBase): else: serflib = 'serf.lib' - zlib = (cfg == 'Debug' and 'zlibstatD.lib' or 'zlibstat.lib') + if self.serf_lib and (self.serf_ver_maj, self.serf_ver_min) >= (1, 3): + # We don't build zlib ourselves, so use the standard name + # (zdll.lib would link to zlib.dll) + zlib = 'zlib.lib' + else: + # We compile zlib ourselves to these explicit (non-standard) names + zlib = (cfg == 'Debug' and 'zlibstatD.lib' or 'zlibstat.lib') + sasllib = None if self.sasl_path: sasllib = 'libsasl.lib' @@ -1080,6 +1103,9 @@ class WinGeneratorBase(GeneratorBase): if self.serf_lib and dep.external_lib == '$(SVN_SERF_LIBS)': nondeplibs.append(serflib) + if (self.serf_ver_maj, self.serf_ver_min) >= (1, 3): + nondeplibs.append('ssleay32.lib') + nondeplibs.append('libeay32.lib') if dep.external_lib == '$(SVN_SASL_LIBS)': nondeplibs.append(sasllib) @@ -1487,6 +1513,24 @@ class WinGeneratorBase(GeneratorBase): "Check if serf and its dependencies are available" minimal_serf_version = (0, 3, 0) + + if self.openssl_path and os.path.exists(self.openssl_path): + version_path = os.path.join(self.openssl_path, 'inc32/openssl/opensslv.h') + if os.path.isfile(version_path): + # We have an OpenSSL Source location (legacy handling) + self.openssl_inc_dir = os.path.join(self.openssl_path, 'inc32') + if self.static_openssl: + self.openssl_lib_dir = os.path.join(self.openssl_path, 'out32') + else: + self.openssl_lib_dir = os.path.join(self.openssl_path, 'out32dll') + elif os.path.isfile(os.path.join(self.openssl_path, + 'include/openssl/opensslv.h')): + self.openssl_inc_dir = os.path.join(self.openssl_path, 'include') + self.openssl_lib_dir = os.path.join(self.openssl_path, 'lib') + else: + print('WARNING: \'opensslv.h\' not found') + self.openssl_path = None + self.serf_lib = None if self.serf_path and os.path.exists(self.serf_path): if self.openssl_path and os.path.exists(self.openssl_path):