Kaydet (Commit) cf029192 authored tarafından Tor Lillqvist's avatar Tor Lillqvist

Add --with-prebuilt-openssl

Don't ask.

Oh well, if you want to know: For some people, like me, Cygwin and its
Perl run into horrible trouble with the fork() emulation when building
OpenSSL. (But my Cygwin works fine for all else in the build. Go
figure.)

So I came up with a way to use prebuilt OpenSSL binaries. Not to be
used for release builds, of course (and the configury checks for
that), as long as our policy is to build all we can from sources.

Change-Id: Ic303bdf0c620c5122aca3d646fa1f0587221e70f
üst 9ad6f07e
......@@ -193,6 +193,7 @@ $(WORKDIR)/download: $(BUILDDIR)/config_host.mk $(SRCDIR)/download.lst $(SRCDIR)
$(call fetch_Optional,PAGEMAKER,PAGEMAKER_TARBALL) \
$(call fetch_Optional,POPPLER,POPPLER_TARBALL) \
$(call fetch_Optional,POSTGRESQL,POSTGRESQL_TARBALL) \
$(call fetch_Optional,PREBUILT_OPENSSL,PREBUILT_OPENSSL_TARBALL) \
$(call fetch_Optional,PYTHON,PYTHON_TARBALL) \
$(call fetch_Optional,REDLAND,RAPTOR_TARBALL) \
$(call fetch_Optional,REDLAND,RASQAL_TARBALL) \
......
......@@ -1473,6 +1473,11 @@ AC_ARG_ENABLE(openssl,
use only if you are hacking on it.]),
,enable_openssl=yes)
AC_ARG_WITH(prebuilt-openssl,
AS_HELP_STRING([--with-prebuilt-openssl],
[Don't build OpenSSL but use prebuilt binaries. Only for use on Windows, when you can't build it,
thanks to the Cygwin fork() problem when running the Perl disaster in OpenSSL's build system.]))
AC_ARG_ENABLE(library-bin-tar,
AS_HELP_STRING([--enable-library-bin-tar],
[Enable the building and reused of tarball of binary build for some 'external' libraries.
......@@ -8943,6 +8948,10 @@ if test "$with_system_nss" = "yes"; then
libo_MINGW_CHECK_DLL([ssl3])
fi
if test $_os = WINNT -a -z "$ENABLE_RELEASE_BUILD" -a "$with_prebuilt_openssl" = yes; then
BUILD_TYPE="$BUILD_TYPE PREBUILT_OPENSSL"
fi
dnl ===================================================================
dnl Check for system mozilla headers
dnl ===================================================================
......
......@@ -126,6 +126,8 @@ export PNG_TARBALL := libpng-1.6.19.tar.gz
export POPPLER_MD5SUM := 35c0660065d023365e9854c13e289d12
export POPPLER_TARBALL := poppler-0.26.4.tar.gz
export POSTGRESQL_TARBALL := c0b4799ea9850eae3ead14f0a60e9418-postgresql-9.2.1.tar.bz2
export PREBUILT_OPENSSL_MD5SUM=b91f5c21ab18e8ad993b94092479c39a
export PREBUILT_OPENSSL_TARBALL=prebuilt-openssl.tar.bz2
ifeq ($(PYTHON_VERSION_MINOR),3)
export PYTHON_MD5SUM := 803a75927f8f241ca78633890c798021
......
......@@ -60,6 +60,8 @@ OPENSSL_PLATFORM := \
ifeq ($(COM),MSC)
$(call gb_ExternalProject_get_state_target,openssl,build):
$(if $(filter PREBUILT_OPENSSL,$(BUILD_TYPE)),\
cd $(BUILDDIR) && $(GNUTAR) -x -f $(gb_UnpackedTarget_TARFILE_LOCATION)/$(PREBUILT_OPENSSL_TARBALL),\
$(call gb_ExternalProject_run,build,\
export CC="$(shell cygpath -w $(filter-out -%,$(CC))) $(filter -%,$(CC))" \
&& export PERL="$(shell cygpath -w $(PERL))" \
......@@ -68,7 +70,7 @@ $(call gb_ExternalProject_get_state_target,openssl,build):
&& cmd /c "ms\do_ms.bat $(PERL) $(OPENSSL_PLATFORM)" \
&& unset MAKEFLAGS \
&& nmake -f "ms\ntdll.mak" \
)
))
else
$(call gb_ExternalProject_get_state_target,openssl,build):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment