Multiple of our libraries would pull in system libraries that we have static versions of. These where libxml2 and libz and also libzstd. I also noticed that the script that was supposed to check on this was not really usable to check for these kinds of things so I updated it. Now you can run it with `python3.11 tools/check_blender_release/check_release.py -- ../build_linux_release/bin/` and it will check all binaries and libraries that we ship for any system libraries that we don't expect to be linked. The libraries I'm aware of that pulled in system libs were: boost mesa osl llvm (The removed cmake flags for osl was because these were unused and cmake printed warnings) Pull Request: https://projects.blender.org/blender/blender/pulls/130236
71 lines
2.1 KiB
CMake
71 lines
2.1 KiB
CMake
# SPDX-FileCopyrightText: 2002-2023 Blender Authors
|
|
#
|
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
if(MSVC)
|
|
set(ZLIB_PATCH_COMMAND
|
|
${PATCH_CMD} -p 1 -d
|
|
${BUILD_DIR}/zlib/src/external_zlib <
|
|
${PATCH_DIR}/zlib.diff
|
|
)
|
|
else()
|
|
set(ZLIB_PATCH_COMMAND echo .)
|
|
endif()
|
|
|
|
ExternalProject_Add(external_zlib
|
|
URL file://${PACKAGE_DIR}/${ZLIB_FILE}
|
|
URL_HASH ${ZLIB_HASH_TYPE}=${ZLIB_HASH}
|
|
PREFIX ${BUILD_DIR}/zlib
|
|
PATCH_COMMAND ${ZLIB_PATCH_COMMAND}
|
|
|
|
CMAKE_ARGS
|
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
|
-DCMAKE_INSTALL_PREFIX=${LIBDIR}/zlib
|
|
${DEFAULT_CMAKE_FLAGS}
|
|
|
|
INSTALL_DIR ${LIBDIR}/zlib
|
|
)
|
|
|
|
if(WIN32)
|
|
if(BUILD_MODE STREQUAL Release)
|
|
ExternalProject_Add_Step(external_zlib after_install
|
|
COMMAND ${CMAKE_COMMAND} -E copy
|
|
${LIBDIR}/zlib/lib/zlibstatic${LIBEXT}
|
|
${HARVEST_TARGET}/zlib/lib/libz_st${LIBEXT}
|
|
COMMAND ${CMAKE_COMMAND} -E copy_directory
|
|
${LIBDIR}/zlib/include/
|
|
${HARVEST_TARGET}/zlib/include/
|
|
COMMAND ${CMAKE_COMMAND} -E rm -f ${LIBDIR}/zlib/bin/zlib.dll
|
|
COMMAND ${CMAKE_COMMAND} -E rm -f ${LIBDIR}/zlib/lib/zlib.lib
|
|
COMMAND ${CMAKE_COMMAND} -E copy
|
|
${LIBDIR}/zlib/lib/zlibstatic${LIBEXT}
|
|
${LIBDIR}/zlib/lib/zlib${LIBEXT}
|
|
DEPENDEES install
|
|
)
|
|
endif()
|
|
if(BUILD_MODE STREQUAL Debug)
|
|
ExternalProject_Add_Step(external_zlib after_install
|
|
COMMAND ${CMAKE_COMMAND} -E copy
|
|
${LIBDIR}/zlib/lib/zlibstaticd${LIBEXT}
|
|
${HARVEST_TARGET}/zlib/lib/libz_st_d${LIBEXT}
|
|
COMMAND ${CMAKE_COMMAND} -E rm -f ${LIBDIR}/zlib/bin/zlib.dll
|
|
COMMAND ${CMAKE_COMMAND} -E rm -f ${LIBDIR}/zlib/lib/zlib.lib
|
|
DEPENDEES install
|
|
)
|
|
endif()
|
|
else()
|
|
ExternalProject_Add_Step(external_zlib after_install
|
|
COMMAND ${CMAKE_COMMAND} -E copy
|
|
${LIBDIR}/zlib/lib/libz.a
|
|
${LIBDIR}/zlib/lib/libz_pic.a
|
|
# Make sure that our libraries do not pick up the shared libraries by mistake
|
|
COMMAND sh -c "rm -f ${LIBDIR}/zlib/lib/*.so*"
|
|
DEPENDEES install
|
|
)
|
|
endif()
|
|
|
|
if(UNIX AND NOT APPLE)
|
|
harvest(external_zlib zlib/include zlib/include "*.h")
|
|
harvest(external_zlib zlib/lib zlib/lib "*.a")
|
|
endif()
|