summaryrefslogtreecommitdiff
path: root/python3
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2013-04-14 13:52:56 +0200
committerMichael Stahl <mstahl@redhat.com>2013-04-15 15:26:32 +0200
commit4811c2dc9f94929b60e7e2e0077871aad14fdc3a (patch)
tree8754348c8dbdf9c4fb91e0d70346f96ee7455999 /python3
parent3b65852f37f1c8daf8c5c0af1d810c68cc71d8e3 (diff)
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.mk37
-rw-r--r--python3/ExternalProject_python3.mk13
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)