diff options
author | Michael Stahl <mstahl@redhat.com> | 2013-04-14 13:52:56 +0200 |
---|---|---|
committer | Michael Stahl <mstahl@redhat.com> | 2013-04-15 15:26:32 +0200 |
commit | 4811c2dc9f94929b60e7e2e0077871aad14fdc3a (patch) | |
tree | 8754348c8dbdf9c4fb91e0d70346f96ee7455999 /python3 | |
parent | gbuild: add support for building against MSVC debug runtime (diff) | |
download | core-4811c2dc9f94929b60e7e2e0077871aad14fdc3a.tar.gz core-4811c2dc9f94929b60e7e2e0077871aad14fdc3a.zip |
adapt all externals to build against MSVC debug runtime
Add patches and/or tweaks to the following modules:
curl, cppunit, icu, lcms2, libxml2, libxslt, libxmlsec,
lpsolve, nss, openssl, python3
lcms2 has an inconsistency where the .lib and the .dll don't agree on
the .dll name.
openssl gets a honorable mention because apparently it's undocumented
custom build system can build with /MDd if one picks the right
configuration but i couldn't figure out how to do that in an hour of
trying, and just patched the release config instead.
Change-Id: I7854a0fc85247e398d561b4f513d09fe2d1ebb3c
Diffstat (limited to 'python3')
-rw-r--r-- | python3/ExternalPackage_python3.mk | 37 | ||||
-rw-r--r-- | python3/ExternalProject_python3.mk | 13 |
2 files changed, 29 insertions, 21 deletions
diff --git a/python3/ExternalPackage_python3.mk b/python3/ExternalPackage_python3.mk index 3dc4dfd6757f..16e270b33d27 100644 --- a/python3/ExternalPackage_python3.mk +++ b/python3/ExternalPackage_python3.mk @@ -15,27 +15,28 @@ ifeq ($(OS)-$(COM),WNT-MSC) ifeq ($(CPUNAME),X86_64) python_arch_subdir=amd64/ endif -$(eval $(call gb_ExternalPackage_add_file,python3,bin/python.exe,LO_lib/$(python_arch_subdir)python.exe)) +$(eval $(call gb_ExternalPackage_add_file,python3,bin/python.exe,LO_lib/$(python_arch_subdir)python$(if $(MSVC_USE_DEBUG_RUNTIME),_d).exe)) +$(eval $(call gb_ExternalPackage_add_file,python3,bin/python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)$(if $(MSVC_USE_DEBUG_RUNTIME),_d).dll,LO_lib/$(python_arch_subdir)python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)$(if $(MSVC_USE_DEBUG_RUNTIME),_d).dll)) +$(eval $(call gb_ExternalPackage_add_file,python3,lib/python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)$(if $(MSVC_USE_DEBUG_RUNTIME),_d).lib,LO_lib/$(python_arch_subdir)python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)$(if $(MSVC_USE_DEBUG_RUNTIME),_d).lib)) +ifeq ($(MSVC_USE_DEBUG_RUNTIME),) $(eval $(call gb_ExternalPackage_add_file,python3,bin/python$(PYTHON_VERSION_MAJOR).dll,LO_lib/$(python_arch_subdir)python$(PYTHON_VERSION_MAJOR).dll)) -$(eval $(call gb_ExternalPackage_add_file,python3,bin/python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR).dll,LO_lib/$(python_arch_subdir)python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR).dll)) $(eval $(call gb_ExternalPackage_add_file,python3,lib/python$(PYTHON_VERSION_MAJOR).lib,LO_lib/$(python_arch_subdir)python$(PYTHON_VERSION_MAJOR).lib)) -$(eval $(call gb_ExternalPackage_add_file,python3,lib/python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR).lib,LO_lib/$(python_arch_subdir)python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR).lib)) +endif $(eval $(call gb_ExternalPackage_add_files,python3,lib/python,\ - LO_lib/$(python_arch_subdir)_ctypes.pyd \ - LO_lib/$(python_arch_subdir)_ctypes_test.pyd \ - LO_lib/$(python_arch_subdir)_decimal.pyd \ - LO_lib/$(python_arch_subdir)_elementtree.pyd \ - LO_lib/$(python_arch_subdir)_msi.pyd \ - LO_lib/$(python_arch_subdir)_multiprocessing.pyd \ - LO_lib/$(python_arch_subdir)_socket.pyd \ - LO_lib/$(python_arch_subdir)_ssl.pyd \ - LO_lib/$(python_arch_subdir)_testbuffer.pyd \ - LO_lib/$(python_arch_subdir)_testcapi.pyd \ - LO_lib/$(python_arch_subdir)pyexpat.pyd \ - LO_lib/$(python_arch_subdir)select.pyd \ - LO_lib/$(python_arch_subdir)unicodedata.pyd \ - LO_lib/$(python_arch_subdir)winsound.pyd \ - LO_lib/$(python_arch_subdir)xxlimited.pyd \ + LO_lib/$(python_arch_subdir)_ctypes$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_ctypes_test$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_decimal$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_elementtree$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_msi$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_multiprocessing$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_socket$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_ssl$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_testbuffer$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_testcapi$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)pyexpat$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)select$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)unicodedata$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)winsound$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ )) else ifeq ($(OS),WNT) # MinGW # TODO how are C modules called on this platform? diff --git a/python3/ExternalProject_python3.mk b/python3/ExternalProject_python3.mk index 22a952c7a6d0..9759623bd52c 100644 --- a/python3/ExternalProject_python3.mk +++ b/python3/ExternalProject_python3.mk @@ -29,19 +29,26 @@ ifeq ($(OS)$(COM),WNTMSC) $(call gb_ExternalProject_get_state_target,python3,build) : ifeq ($(VCVER),110) $(call gb_ExternalProject_run,build,\ - MAKEFLAGS= MSBuild.exe pcbuild.sln /t:Build /p:Configuration=Release /p:Platform=$(if $(filter INTEL,$(CPUNAME)),Win32,x64) /p:PlatformToolset=v110 /p:VisualStudioVersion=11.0 \ + MAKEFLAGS= MSBuild.exe pcbuild.sln /t:Build \ + /p:Configuration=$(if $(MSVC_USE_DEBUG_RUNTIME),Debug,Release) \ + /p:Platform=$(if $(filter INTEL,$(CPUNAME)),Win32,x64) \ + /p:PlatformToolset=v110 /p:VisualStudioVersion=11.0 \ && cd $(EXTERNAL_WORKDIR) \ && ln -s PCbuild LO_lib \ ,PCBuild) else ifeq ($(VCVER),100) $(call gb_ExternalProject_run,build,\ - MAKEFLAGS= MSBuild.exe pcbuild.sln /t:Build /p:Configuration=Release /p:Platform=$(if $(filter INTEL,$(CPUNAME)),Win32,x64) /ToolsVersion:4.0 \ + MAKEFLAGS= MSBuild.exe pcbuild.sln /t:Build \ + /p:Configuration=$(if $(MSVC_USE_DEBUG_RUNTIME),Debug,Release) \ + /p:Platform=$(if $(filter INTEL,$(CPUNAME)),Win32,x64) \ + /ToolsVersion:4.0 \ && cd $(EXTERNAL_WORKDIR) \ && ln -s PCbuild LO_lib \ ,PCBuild) else ifeq ($(VCVER),90) $(call gb_ExternalProject_run,build,\ - MAKEFLAGS= $(COMPATH)/vcpackages/vcbuild.exe pcbuild.sln "Release|$(if $(filter INTEL,$(CPUNAME)),Win32,x64)" \ + MAKEFLAGS= $(COMPATH)/vcpackages/vcbuild.exe pcbuild.sln \ + "$(if $(MSVC_USE_DEBUG_RUNTIME),Debug,Release)|$(if $(filter INTEL,$(CPUNAME)),Win32,x64)" \ && cd $(EXTERNAL_WORKDIR) \ && ln -s PC/VS9.0 LO_lib \ ,PC/VS9.0) |