Warning, /graphics/krita/3rdparty/ext_python/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 SET(PREFIX_ext_python "${EXTPREFIX}" )
0002 if (UNIX)
0003     if (APPLE)
0004         set(ENV{PATH} "${PREFIX_ext_python}/lib/Python.framework/Versions/Current/bin:$ENV{PATH}")
0005         ExternalProject_Add( ext_python
0006             DOWNLOAD_DIR ${EXTERNALS_DOWNLOAD_DIR}
0007             URL https://www.python.org/ftp/python/3.9.12/Python-3.9.12.tar.xz
0008             URL_MD5 4b5fda03e3fbfceca833c997d501bcca
0009 
0010             PATCH_COMMAND ${PATCH_COMMAND} -p1 -i ${CMAKE_CURRENT_SOURCE_DIR}/osx_fixappinstall.diff
0011 
0012             # Setuptools needs OpenSSL 1.1, the stock libssl isn't enough
0013             CONFIGURE_COMMAND <SOURCE_DIR>/configure MACOSX_DEPLOYMENT_TARGET=10.13 --prefix=${PREFIX_ext_python} ${GLOBAL_AUTOMAKE_PROFILE} --with-openssl=${PREFIX_ext_python}
0014                 --enable-framework=${PREFIX_ext_python}/lib --enable-optimizations --without-sufix
0015 
0016             # force single-threaded installation to avoid race conditions
0017             INSTALL_COMMAND make -j1 install
0018                 COMMAND ${CMAKE_COMMAND} -E copy ${PREFIX_ext_python}/bin/python3 ${PREFIX_ext_python}/bin/python
0019                 COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/sitecustomize.py ${PREFIX_ext_python}/lib/Python.framework/Versions/Current/lib/python${PYTHON_VERSION}/
0020                 COMMAND ${CMAKE_COMMAND} -E create_symlink ${PREFIX_ext_python}/lib/Python.framework/Versions/Current/lib/python${PYTHON_VERSION} ${PREFIX_ext_python}/lib/python${PYTHON_VERSION}
0021                 COMMAND ${CMAKE_COMMAND} -E create_symlink ${PREFIX_ext_python}/lib/Python.framework/Versions/Current/include/python${PYTHON_VERSION} ${PREFIX_ext_python}/include/python${PYTHON_VERSION}
0022                 COMMAND ${CMAKE_COMMAND} -E create_symlink ./lib/python${PYTHON_VERSION}/site-packages ${PREFIX_ext_python}/lib/Python.framework/Versions/Current/site-packages
0023                 # CMake FindPythonLib can't find framework libraries, lack of maintainer for Python
0024                 COMMAND find ${PREFIX_ext_python}/lib/Python.framework/Versions/Current/lib -type l -d 1
0025                 | grep -o "[^/]*$"
0026                 | xargs -I FILE ${CMAKE_COMMAND} -E create_symlink ./Python.framework/Python ${PREFIX_ext_python}/lib/FILE
0027 
0028             UPDATE_COMMAND ""
0029 
0030             DEPENDS ext_openssl
0031         )
0032 
0033         ExternalProject_Add_Step( ext_python update_sip
0034             COMMENT "Updating pip"
0035             COMMAND COMMAND ${PREFIX_ext_python}/bin/python3 -m pip install --upgrade pip
0036             DEPENDEES install
0037         )
0038 
0039     else()
0040 
0041     ExternalProject_Add( ext_python
0042             DOWNLOAD_DIR ${EXTERNALS_DOWNLOAD_DIR}
0043         URL https://www.python.org/ftp/python/3.8.1/Python-3.8.1.tar.xz
0044         URL_MD5 b3fb85fd479c0bf950c626ef80cacb57
0045         
0046         CONFIGURE_COMMAND <SOURCE_DIR>/configure --prefix=${PREFIX_ext_python} ${GLOBAL_AUTOMAKE_PROFILE} --enable-shared
0047 
0048         INSTALL_COMMAND make install
0049                         COMMAND ${CMAKE_COMMAND} -E copy ${PREFIX_ext_python}/bin/python3 ${PREFIX_ext_python}/bin/python
0050 
0051         UPDATE_COMMAND ""
0052             ALWAYS 0
0053     )
0054     endif()
0055 elseif(WIN32)
0056     if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
0057         ExternalProject_Add( ext_python
0058             DOWNLOAD_DIR ${EXTERNALS_DOWNLOAD_DIR}
0059             URL https://www.python.org/ftp/python/3.8.1/python-3.8.1-embed-amd64.zip
0060             URL_MD5 4d091857a2153d9406bb5c522b211061
0061 
0062             INSTALL_DIR ${PREFIX_ext_python}
0063             CONFIGURE_COMMAND ""
0064             BUILD_COMMAND ${CMAKE_COMMAND} -E echo deploying python3 64-bit binary
0065             INSTALL_COMMAND ${CMAKE_COMMAND} -E copy_directory <SOURCE_DIR>/ ${PREFIX_ext_python}/python
0066                     COMMAND ${CMAKE_COMMAND} -E copy <SOURCE_DIR>/python3.dll ${PREFIX_ext_python}/bin
0067                     COMMAND ${CMAKE_COMMAND} -E copy <SOURCE_DIR>/python38.dll ${PREFIX_ext_python}/bin
0068                     COMMAND ${CMAKE_COMMAND} -E copy <SOURCE_DIR>/vcruntime140.dll ${PREFIX_ext_python}/bin
0069                     COMMAND ${CMAKE_COMMAND} -E make_directory ${PREFIX_ext_python}/lib/site-packages/
0070                     COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/sitecustomize.py ${PREFIX_ext_python}/lib/site-packages/
0071             UPDATE_COMMAND ""
0072         )
0073     else("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
0074         ExternalProject_Add( ext_python
0075             DOWNLOAD_DIR ${EXTERNALS_DOWNLOAD_DIR}
0076             URL https://www.python.org/ftp/python/3.8.1/python-3.8.1-embed-win32.zip
0077             URL_MD5 980d5745a7e525be5abf4b443a00f734
0078 
0079             INSTALL_DIR ${PREFIX_ext_python}
0080             CONFIGURE_COMMAND ""
0081             BUILD_COMMAND ${CMAKE_COMMAND} -E echo deploying python3 32-bit binary
0082             INSTALL_COMMAND ${CMAKE_COMMAND} -E copy_directory <SOURCE_DIR>/ ${PREFIX_ext_python}/python
0083                     COMMAND ${CMAKE_COMMAND} -E copy <SOURCE_DIR>/python3.dll ${PREFIX_ext_python}/bin
0084                     COMMAND ${CMAKE_COMMAND} -E copy <SOURCE_DIR>/python38.dll ${PREFIX_ext_python}/bin
0085                     COMMAND ${CMAKE_COMMAND} -E copy <SOURCE_DIR>/vcruntime140.dll ${PREFIX_ext_python}/bin
0086                     COMMAND ${CMAKE_COMMAND} -E make_directory ${PREFIX_ext_python}/lib/site-packages/
0087                     COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/sitecustomize.py ${PREFIX_ext_python}/lib/site-packages/
0088             UPDATE_COMMAND ""
0089         )
0090     endif("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
0091 
0092 endif()