Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@gmail.com>2017-08-15 16:47:48 +0300
committerBrecht Van Lommel <brechtvanlommel@gmail.com>2017-08-15 18:40:27 +0300
commit535e83687d3efc6431a47d259c94131029c1edf3 (patch)
treec2d85ce326bca0c591564c741c3ef2260de470f0 /build_files
parent477ee3a9de7995b2b870d5462948cb80c4be5ec2 (diff)
macOS build: simplify python install for new 10.9 libraries.
We stop using the .zip file and just have all files now in lib/darwin/python/lib, along with numpy, numpy headers and requests. This makes it consistent with Linux and simplifies code. For old libraries the .zip stays, code for that gets removed when we fully switch to new libraries.
Diffstat (limited to 'build_files')
-rw-r--r--build_files/build_environment/cmake/harvest.cmake16
-rw-r--r--build_files/build_environment/cmake/numpy.cmake4
-rw-r--r--build_files/build_environment/cmake/python.cmake8
-rw-r--r--build_files/build_environment/cmake/requests.cmake10
-rw-r--r--build_files/cmake/platform/platform_apple.cmake9
5 files changed, 23 insertions, 24 deletions
diff --git a/build_files/build_environment/cmake/harvest.cmake b/build_files/build_environment/cmake/harvest.cmake
index dfdfe50ab49..fbc9f8687f9 100644
--- a/build_files/build_environment/cmake/harvest.cmake
+++ b/build_files/build_environment/cmake/harvest.cmake
@@ -208,7 +208,9 @@ function(harvest from to)
FILES_MATCHING PATTERN ${pattern}
PATTERN "pkgconfig" EXCLUDE
PATTERN "cmake" EXCLUDE
- PATTERN "clang" EXCLUDE)
+ PATTERN "clang" EXCLUDE
+ PATTERN "__pycache__" EXCLUDE
+ PATTERN "tests" EXCLUDE)
endif()
endfunction()
@@ -267,17 +269,7 @@ harvest(png/include png/include "*.h")
harvest(png/lib png/lib "*.a")
harvest(python/bin python/bin "python${PYTHON_SHORT_VERSION}m")
harvest(python/include python/include "*h")
-if(UNIX AND NOT APPLE)
- harvest(python/lib/libpython${PYTHON_SHORT_VERSION}m.a python/lib/libpython${PYTHON_SHORT_VERSION}m.a)
- harvest(python/lib/python${PYTHON_SHORT_VERSION} python/lib/python${PYTHON_SHORT_VERSION} "*")
- harvest(requests python/lib/python${PYTHON_SHORT_VERSION}/site-packages/requests "*")
- harvest(numpy python/lib/python${PYTHON_SHORT_VERSION}/site-packages/numpy "*")
-else()
- harvest(python/lib/libpython${PYTHON_SHORT_VERSION}m.a python/lib/python${PYTHON_SHORT_VERSION}/libpython${PYTHON_SHORT_VERSION}m.a)
- harvest(python/release release "*")
- harvest(requests release/site-packages/requests "*")
- harvest(numpy release/site-packages/numpy "*")
-endif()
+harvest(python/lib python/lib "*")
harvest(schroedinger/lib/libschroedinger-1.0.a ffmpeg/lib/libschroedinger.a)
harvest(sdl/include/SDL2 sdl/include "*.h")
harvest(sdl/lib sdl/lib "libSDL2.a")
diff --git a/build_files/build_environment/cmake/numpy.cmake b/build_files/build_environment/cmake/numpy.cmake
index ab196dc5eec..b1bf1691a28 100644
--- a/build_files/build_environment/cmake/numpy.cmake
+++ b/build_files/build_environment/cmake/numpy.cmake
@@ -37,9 +37,7 @@ if(WIN32)
${CMAKE_COMMAND} -E tar "cfvz" "${LIBDIR}/python35_numpy_${NUMPY_SHORT_VERSION}${NUMPY_ARCHIVE_POSTFIX}.tar.gz" "."
)
else()
- set(NUMPY_INSTALL
- ${CMAKE_COMMAND} -E copy_directory "${BUILD_DIR}/numpy/src/external_numpy/build/lib.${PYTHON_ARCH2}-3.5/numpy/" "${LIBDIR}/numpy/"
- )
+ set(NUMPY_INSTALL echo .)
endif()
ExternalProject_Add(external_numpy
diff --git a/build_files/build_environment/cmake/python.cmake b/build_files/build_environment/cmake/python.cmake
index a24bbbb6aea..c1c7bf7001c 100644
--- a/build_files/build_environment/cmake/python.cmake
+++ b/build_files/build_environment/cmake/python.cmake
@@ -82,13 +82,7 @@ else()
INSTALL_COMMAND ${PYTHON_CONFIGURE_ENV} && cd ${BUILD_DIR}/python/src/external_python/ && make install
INSTALL_DIR ${LIBDIR}/python)
- add_custom_command(
- OUTPUT ${LIBDIR}/python/release/python_x86_64.zip
- WORKING_DIRECTORY ${LIBDIR}/python
- COMMAND mkdir -p release
- COMMAND zip -r release/python_x86_64.zip lib/python${PYTHON_SHORT_VERSION} lib/pkgconfig --exclude *__pycache__*)
- add_custom_target(Package_Python ALL DEPENDS external_python ${LIBDIR}/python/release/python_x86_64.zip)
- add_custom_target(Make_Python_Environment ALL DEPENDS Package_Python)
+ add_custom_target(Make_Python_Environment ALL DEPENDS external_python)
endif()
if(MSVC)
diff --git a/build_files/build_environment/cmake/requests.cmake b/build_files/build_environment/cmake/requests.cmake
index 399bfe4009f..f5aa26b0615 100644
--- a/build_files/build_environment/cmake/requests.cmake
+++ b/build_files/build_environment/cmake/requests.cmake
@@ -17,6 +17,12 @@
# ***** END GPL LICENSE BLOCK *****
if(BUILD_MODE STREQUAL Release)
+ if(WIN32)
+ set(REQUESTS_INSTALL_DIR ${LIBDIR}/requests)
+ else()
+ set(REQUESTS_INSTALL_DIR ${LIBDIR}/python/lib/python${PYTHON_SHORT_VERSION}/site-packages/requests)
+ endif()
+
ExternalProject_Add(external_requests
URL ${REQUESTS_URI}
DOWNLOAD_DIR ${DOWNLOAD_DIR}
@@ -24,6 +30,8 @@ if(BUILD_MODE STREQUAL Release)
PREFIX ${BUILD_DIR}/requests
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
- INSTALL_COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/requests/src/external_requests/requests ${LIBDIR}/requests
+ INSTALL_COMMAND ${CMAKE_COMMAND} -E copy_directory ${BUILD_DIR}/requests/src/external_requests/requests ${REQUESTS_INSTALL_DIR}
)
+
+ add_dependencies(external_requests Make_Python_Environment)
endif(BUILD_MODE STREQUAL Release)
diff --git a/build_files/cmake/platform/platform_apple.cmake b/build_files/cmake/platform/platform_apple.cmake
index 6105f2e04de..00c5772e11c 100644
--- a/build_files/cmake/platform/platform_apple.cmake
+++ b/build_files/cmake/platform/platform_apple.cmake
@@ -93,7 +93,11 @@ if(WITH_PYTHON)
# normally cached but not since we include them with blender
set(PYTHON_INCLUDE_DIR "${LIBDIR}/python/include/python${PYTHON_VERSION}m")
set(PYTHON_EXECUTABLE "${LIBDIR}/python/bin/python${PYTHON_VERSION}m")
- set(PYTHON_LIBRARY python${PYTHON_VERSION}m)
+ if(WITH_CXX11)
+ set(PYTHON_LIBRARY ${LIBDIR}/python/lib/libpython${PYTHON_VERSION}m.a)
+ else()
+ set(PYTHON_LIBRARY python${PYTHON_VERSION}m)
+ endif()
set(PYTHON_LIBPATH "${LIBDIR}/python/lib/python${PYTHON_VERSION}")
# set(PYTHON_LINKFLAGS "-u _PyMac_Error") # won't build with this enabled
else()
@@ -113,6 +117,9 @@ if(WITH_PYTHON)
set(PYTHON_INCLUDE_DIRS "${PYTHON_INCLUDE_DIR}")
set(PYTHON_LIBRARIES "${PYTHON_LIBRARY}")
+ # needed for Audaspace, numpy is installed into python site-packages
+ set(NUMPY_INCLUDE_DIRS "${PYTHON_LIBPATH}/site-packages/numpy/core/include")
+
if(NOT EXISTS "${PYTHON_EXECUTABLE}")
message(FATAL_ERROR "Python executable missing: ${PYTHON_EXECUTABLE}")
endif()