@@ -71,6 +71,81 @@ set(test_system_gdal [[
7171 set(extra_cxxflags "-Wno-strict-overflow -Wno-null-dereference -Wno-old-style-cast" PARENT_SCOPE)
7272]])
7373
74+ set (libjpeg_patch [[
75+ --- a/configure
76+ +++ b/configure
77+ @@ -1247,6 +1247,7 @@
78+ CXXCPP
79+ PKG_CONFIG
80+ bashcompdir
81+ +LIBJPEG_SUFFIX
82+ PQ_CFLAGS
83+ PQ_LIBS
84+ OGDI_CFLAGS
85+ @@ -30093,13 +30093,13 @@
86+
87+ elif test "$with_jpeg" = "yes" -o "$with_jpeg" = "" ; then
88+
89+ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for jpeg_read_scanlines in -ljpeg" >&5
90+ -$as_echo_n "checking for jpeg_read_scanlines in -ljpeg... " >&6; }
91+ + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for jpeg_read_scanlines in -ljpeg${LIBJPEG_SUFFIX}" >&5
92+ +$as_echo_n "checking for jpeg_read_scanlines in -ljpeg${LIBJPEG_SUFFIX}... " >&6; }
93+ if ${ac_cv_lib_jpeg_jpeg_read_scanlines+:} false; then :
94+ $as_echo_n "(cached) " >&6
95+ else
96+ ac_check_lib_save_LIBS=$LIBS
97+ -LIBS="-ljpeg $LIBS"
98+ +LIBS="-ljpeg${LIBJPEG_SUFFIX} $LIBS"
99+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
100+ /* end confdefs.h. */
101+
102+ @@ -30172,7 +30172,7 @@
103+ fi
104+
105+ if test "$JPEG_SETTING" = "external" ; then
106+ - LIBS="-ljpeg $LIBS"
107+ + LIBS="-ljpeg${LIBJPEG_SUFFIX} $LIBS"
108+ echo "using pre-installed libjpeg."
109+ else
110+ echo "using internal jpeg code."
111+ @@ -30187,7 +30187,7 @@
112+ else
113+
114+ JPEG_SETTING=external
115+ - LIBS="-L$with_jpeg -L$with_jpeg/lib -ljpeg $LIBS"
116+ + LIBS="-L$with_jpeg -L$with_jpeg/lib -ljpeg${LIBJPEG_SUFFIX} $LIBS"
117+ EXTRA_INCLUDES="-I$with_jpeg -I$with_jpeg/include $EXTRA_INCLUDES"
118+
119+ echo "using libjpeg from $with_jpeg."
120+ @@ -31550,7 +31550,7 @@
121+ $as_echo_n "(cached) " >&6
122+ else
123+ ac_check_lib_save_LIBS=$LIBS
124+ -LIBS="-lmfhdfalt -ldfalt -ljpeg -lz $LIBS"
125+ +LIBS="-lmfhdfalt -ldfalt -ljpeg${LIBJPEG_SUFFIX} -lz $LIBS"
126+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
127+ /* end confdefs.h. */
128+
129+ @@ -31596,7 +31596,7 @@
130+ $as_echo_n "(cached) " >&6
131+ else
132+ ac_check_lib_save_LIBS=$LIBS
133+ -LIBS="-lmfhdfalt -ldfalt -lsz -ljpeg -lz $LIBS"
134+ +LIBS="-lmfhdfalt -ldfalt -lsz -ljpeg${LIBJPEG_SUFFIX} -lz $LIBS"
135+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
136+ /* end confdefs.h. */
137+
138+ @@ -40801,7 +40801,7 @@
139+ PDFIUM_LIB="-L$with_pdfium/lib -lpdfium"
140+ fi
141+
142+ - PDFIUM_LIB="$PDFIUM_LIB -ljpeg -lpng -lz -llcms2 -lpthread -lm -lstdc++"
143+ + PDFIUM_LIB="$PDFIUM_LIB -ljpeg${LIBJPEG_SUFFIX} -lpng -lz -llcms2 -lpthread -lm -lstdc++"
144+
145+ if test ! -z "`uname | grep Darwin`" ; then
146+ PDFIUM_LIB="-stdlib=libstdc++ $PDFIUM_LIB"
147+ ]])
148+
74149superbuild_package(
75150 NAME gdal-patches
76151 VERSION ${patch_version}
@@ -103,13 +178,17 @@ superbuild_package(
103178 tiff
104179 zlib
105180
181+ SOURCE_WRITE
182+ libjpeg.patch libjpeg_patch
106183 SOURCE
107184 URL ${base_url} gdal_${version} .orig.tar.xz
108185 URL_HASH ${download_hash}
109186 PATCH_COMMAND
110187 "${CMAKE_COMMAND} "
111188 -Dpackage=gdal-patches-${patch_version}
112189 -P "${APPLY_PATCHES_SERIES} "
190+ COMMAND
191+ patch -p1 < libjpeg.patch
113192
114193 USING USE_SYSTEM_GDAL patch_version extra_cflags extra_cxxflags
115194 BUILD_CONDITION ${test_system_gdal}
@@ -120,6 +199,9 @@ superbuild_package(
120199 COMMAND
121200 "${CMAKE_COMMAND}" -E copy_directory "${SOURCE_DIR}" "${BINARY_DIR}"
122201 COMMAND
202+ $<$<BOOL:@ANDROID@>:
203+ "${CMAKE_COMMAND}" -E env LIBJPEG_SUFFIX=-turbo # needs libjpeg patch
204+ >
123205 "${BINARY_DIR}/configure"
124206 "--prefix=${CMAKE_INSTALL_PREFIX}"
125207 $<$<BOOL:@CMAKE_CROSSCOMPILING@>:
0 commit comments