1# Checks for JPEG codec support
2#
3# Copyright © 2015 Open Microscopy Environment / University of Dundee
4# Copyright © 2021 Roger Leigh <rleigh@codelibre.net>
5# Written by Roger Leigh <rleigh@codelibre.net>
6#
7# Permission to use, copy, modify, distribute, and sell this software and
8# its documentation for any purpose is hereby granted without fee, provided
9# that (i) the above copyright notices and this permission notice appear in
10# all copies of the software and related documentation, and (ii) the names of
11# Sam Leffler and Silicon Graphics may not be used in any advertising or
12# publicity relating to the software without the specific, prior written
13# permission of Sam Leffler and Silicon Graphics.
14#
15# THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
16# EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
17# WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
18#
19# IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
20# ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
21# OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
22# WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
23# LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
24# OF THIS SOFTWARE.
25
26
27# JPEG
28set(JPEG_SUPPORT FALSE)
29if (FALSE) # XXX(kitware): hardcode settings
30find_package(JPEG)
31option(jpeg "use libjpeg (required for JPEG compression)" ${JPEG_FOUND})
32else ()
33set(jpeg 1)
34set(JPEG_FOUND 1) # VTK::jpeg
35endif ()
36if (jpeg AND JPEG_FOUND)
37    set(JPEG_SUPPORT TRUE)
38endif()
39
40# Old-jpeg
41set(OJPEG_SUPPORT FALSE)
42if (FALSE) # XXX(kitware): hardcode settings
43option(old-jpeg "support for Old JPEG compression (read-only)" ${JPEG_SUPPORT})
44else ()
45set(old-jpeg 1)
46endif ()
47if (old-jpeg AND JPEG_SUPPORT)
48    set(OJPEG_SUPPORT TRUE)
49endif()
50
51# 8/12-bit jpeg mode
52if (FALSE) # XXX(kitware): hardcode settings
53set(JPEG12_INCLUDE_DIR JPEG12_INCLUDE_DIR-NOTFOUND CACHE PATH "Include directory for 12-bit libjpeg")
54set(JPEG12_LIBRARY JPEG12_LIBRARY-NOTFOUND CACHE FILEPATH "12-bit libjpeg library")
55set(JPEG_DUAL_MODE_8_12 FALSE)
56if (JPEG12_INCLUDE_DIR AND JPEG12_LIBRARY)
57    set(JPEG12_LIBRARIES ${JPEG12_LIBRARY})
58    set(JPEG12_FOUND TRUE)
59else()
60    set(JPEG12_FOUND FALSE)
61endif()
62option(jpeg12 "enable libjpeg 8/12-bit dual mode (requires separate 12-bit libjpeg build)" ${JPEG12_FOUND})
63else ()
64set(jpeg12 0)
65endif ()
66if (jpeg12 AND JPEG12_FOUND)
67    set(JPEG_DUAL_MODE_8_12 TRUE)
68    set(LIBJPEG_12_PATH "${JPEG12_INCLUDE_DIR}/jpeglib.h")
69endif()
70