66f815034eb5b1f44eb7a4d340a3ded55a897104
[blender.git] / build_files / build_environment / cmake / openjpeg.cmake
1 # ***** BEGIN GPL LICENSE BLOCK *****
2 #
3 # This program is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU General Public License
5 # as published by the Free Software Foundation; either version 2
6 # of the License, or (at your option) any later version.
7 #
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11 # GNU General Public License for more details.
12 #
13 # You should have received a copy of the GNU General Public License
14 # along with this program; if not, write to the Free Software Foundation,
15 # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
16 #
17 # ***** END GPL LICENSE BLOCK *****
18
19 # Note the encoder/decoder may use png/tiff/lcms system libraries, but the
20 # library itself does not depend on them, so should give no problems.
21
22 set(OPENJPEG_EXTRA_ARGS -DBUILD_SHARED_LIBS=OFF)
23
24 if(WIN32)
25         set(OPENJPEG_EXTRA_ARGS -G "MSYS Makefiles")
26 else()
27         set(OPENJPEG_EXTRA_ARGS ${DEFAULT_CMAKE_FLAGS})
28 endif()
29
30 ExternalProject_Add(external_openjpeg
31         URL ${OPENJPEG_URI}
32         DOWNLOAD_DIR ${DOWNLOAD_DIR}
33         URL_HASH SHA256=${OPENJPEG_HASH}
34         PREFIX ${BUILD_DIR}/openjpeg
35         CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build && ${CMAKE_COMMAND} ${OPENJPEG_EXTRA_ARGS} -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openjpeg -DBUILD_SHARED_LIBS=Off -DBUILD_THIRDPARTY=OFF ${BUILD_DIR}/openjpeg/src/external_openjpeg
36         BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build/ && make -j${MAKE_THREADS}
37         INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build/ && make install
38         INSTALL_DIR ${LIBDIR}/openjpeg
39 )
40
41 if(MSVC)
42         set_target_properties(external_openjpeg PROPERTIES FOLDER Mingw)
43 endif(MSVC)