0005-Fix-configure.patch 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303
  1. diff --git a/configure.ac b/configure.ac
  2. index bd85e06..b88676a 100644
  3. --- a/configure.ac
  4. +++ b/configure.ac
  5. @@ -45,6 +45,8 @@ dnl Compute the canonical host-system (the system we are building for)
  6. dnl type variable $host
  7. AC_CANONICAL_HOST
  8. +PKG_PROG_PKG_CONFIG([0.21])
  9. +
  10. dnl Enable as much warnings as possible
  11. AX_CFLAGS_WARN_ALL(C_WFLAGS)
  12. AX_CXXFLAGS_WARN_ALL(CXX_WFLAGS)
  13. @@ -1274,12 +1276,15 @@ AC_MSG_CHECKING([for libtiff])
  14. if test "x${with_libtiff}" = "xyes" -o "x${with_libtiff}" = "x" ; then
  15. - dnl Only automatically pick up the external libtiff if it is >= 4.0.
  16. - AC_CHECK_LIB(tiff,TIFFScanlineSize64,TIFF_SETTING=external HAVE_BIGTIFF=yes,TIFF_SETTING=internal HAVE_BIGTIFF=yes,)
  17. + PKG_CHECK_MODULES([TIFF],[libtiff-4 > 4.0], [TIFF_SETTING=external], [TIFF_SETTING=internal HAVE_BIGTIFF=yes])
  18. if test "$TIFF_SETTING" = "external" ; then
  19. - LIBS="-ltiff $LIBS"
  20. AC_MSG_RESULT([using pre-installed libtiff.])
  21. + EXTRA_INCLUDES="$TIFF_CFLAGS $EXTRA_INCLUDES"
  22. + SAVED_LIBS="$LIBS"
  23. + LIBS="$TIFF_LIBS"
  24. + AC_SEARCH_LIBS(TIFFScanlineSize64,[],HAVE_BIGTIFF=yes,HAVE_BIGTIFF=no,)
  25. + LIBS="$TIFF_LIBS $SAVED_LIBS"
  26. else
  27. AC_MSG_RESULT([using internal TIFF code.])
  28. fi
  29. @@ -1333,22 +1338,28 @@ AC_ARG_WITH(curl,
  30. dnl Clear some cache variables
  31. unset ac_cv_path_LIBCURL
  32. +LIBCURL_MODVERSION=
  33. if test "`basename xx/$with_curl`" = "curl-config" ; then
  34. LIBCURL_CONFIG="$with_curl"
  35. elif test "$with_curl" = "no" ; then
  36. LIBCURL_CONFIG=no
  37. +elif test "$with_curl" = "yes" -o "$with_curl" = "" ; then
  38. + PKG_CHECK_EXISTS([libcurl], [LIBCURL_CONFIG="${PKG_CONFIG} libcurl"], [LIBCURL_CONFIG=false])
  39. + LIBCURL_MODVERSION=`$LIBCURL_CONFIG --modversion`
  40. else
  41. AC_PATH_PROG(LIBCURL_CONFIG, curl-config, no)
  42. fi
  43. if test "$LIBCURL_CONFIG" != "no" ; then
  44. - CURL_VERNUM=`$LIBCURL_CONFIG --vernum`
  45. - CURL_VER=`$LIBCURL_CONFIG --version | awk '{print $2}'`
  46. + CURL_VER="`$LIBCURL_CONFIG --version | awk '{print $2}'`$LIBCURL_MODVERSION"
  47. AC_MSG_RESULT([ found libcurl version $CURL_VER])
  48. - AC_CHECK_LIB(curl,curl_global_init,CURL_SETTING=yes,CURL_SETTING=no,`$LIBCURL_CONFIG --libs`)
  49. + SAVED_LIBS="$LIBS"
  50. + LIBS=`$LIBCURL_CONFIG --libs`
  51. + AC_SEARCH_LIBS(curl_global_init,[],CURL_SETTING=yes,CURL_SETTING=no,)
  52. + LIBS="$SAVED_LIBS"
  53. fi
  54. @@ -1362,7 +1373,9 @@ dnl Proj depends on it so it must appear before.
  55. dnl ---------------------------------------------------------------------------
  56. SQLITE3_REQ_VERSION="3.0.0"
  57. -AX_LIB_SQLITE3($SQLITE3_REQ_VERSION)
  58. +AC_CHECK_LIB(sqlite3,sqlite3_open,HAVE_SQLITE3=yes,AC_MSG_ERROR([vcpkg sqlite3 not found]),)
  59. +SQLITE3_CFLAGS=
  60. +SQLITE3_LDFLAGS=-lsqlite3
  61. if test "$HAVE_SQLITE3" = "yes"; then
  62. LIBS="$SQLITE3_LDFLAGS $LIBS"
  63. @@ -1570,6 +1583,19 @@ dnl ---------------------------------------------------------------------------
  64. AC_ARG_WITH(liblzma,[ --with-liblzma[=ARG] Include liblzma support (ARG=yes/no)],,)
  65. if test "$with_liblzma" = "yes" ; then
  66. + PKG_CHECK_MODULES([LIBLZMA],[liblzma],[HAVE_LIBLZMA_PC=yes],[HAVE_LIBLZMA_PC=no])
  67. + SAVED_LIBS="$LIBS"
  68. + LIBS="$LIBLZMA_LIBS"
  69. + AC_SEARCH_LIBS(lzma_code,[],LIBLZMA_SETTING=yes,LIBLZMA_SETTING=no,)
  70. + if test "$LIBLZMA_SETTING" = "yes" ; then
  71. + LIBS="$LIBLZMA_LIBS $SAVED_LIBS"
  72. + elif test "$HAVE_LIBLZMA_PC" = "yes" ; then
  73. + AC_MSG_ERROR([vcpkg liblzma broken])
  74. + else
  75. + LIBS="$SAVED_LIBS"
  76. + fi
  77. +
  78. +elif false; then
  79. AC_CHECK_LIB(lzma,lzma_code,LIBLZMA_SETTING=yes,LIBLZMA_SETTING=no,)
  80. AC_CHECK_HEADERS(lzma.h)
  81. @@ -1592,6 +1618,19 @@ dnl ---------------------------------------------------------------------------
  82. AC_ARG_WITH(zstd,[ --with-zstd[=ARG] Include zstd support (ARG=yes/no/installation_prefix)],,)
  83. if test "$with_zstd" = "" -o "$with_zstd" = "yes" ; then
  84. + PKG_CHECK_MODULES([ZSTD],[libzstd],[HAVE_LIBZSTD_PC=yes],[HAVE_LIBZSTD_PC=no])
  85. + SAVED_LIBS="$LIBS"
  86. + LIBS="$ZSTD_LIBS"
  87. + AC_SEARCH_LIBS(ZSTD_decompressStream,[],ZSTD_SETTING=yes,ZSTD_SETTING=no,)
  88. + if test "$ZSTD_SETTING" = "yes" ; then
  89. + LIBS="$ZSTD_LIBS $SAVED_LIBS"
  90. + elif test "$HAVE_LIBZSTD_PC" = "yes" ; then
  91. + AC_MSG_ERROR([vcpkg libzstd broken])
  92. + else
  93. + LIBS="$SAVED_LIBS"
  94. + fi
  95. +
  96. +elif false; then
  97. AC_CHECK_LIB(zstd,ZSTD_decompressStream,ZSTD_SETTING=yes,ZSTD_SETTING=no,)
  98. if test "$ZSTD_SETTING" = "yes" ; then
  99. @@ -1893,6 +1932,12 @@ else
  100. SAVED_LIBS="${LIBS}"
  101. LIBS="${PG_LIB}"
  102. AC_CHECK_LIB(pq,PQconnectdb,HAVE_PG=yes,HAVE_PG=no)
  103. + if test "${HAVE_PG}" = "no" ; then
  104. + unset ac_cv_lib_pq_PQconnectdb
  105. + PG_LIB="${PG_LIB} -lpgcommon -lpgport"
  106. + LIBS="${PG_LIB} ${SAVED_LIBS}"
  107. + AC_CHECK_LIB(pq,PQconnectdb,HAVE_PG=yes,HAVE_PG=no,[-lpgcommon -lpgport])
  108. + fi
  109. LIBS="${SAVED_LIBS}"
  110. if test "${HAVE_PG}" = "yes" ; then
  111. LIBS="${PG_LIB} ${LIBS}"
  112. @@ -2253,6 +2298,15 @@ AC_ARG_WITH(geotiff,[ --with-geotiff=ARG Libgeotiff library to use (ARG=inte
  113. if test "$with_geotiff" = "yes" -o "$with_geotiff" = "" ; then
  114. + AC_CHECK_LIB(geotiff,GTIFAttachPROJContext,GEOTIFF_SETTING=external,GEOTIFF_SETTING=internal)
  115. + if test $GEOTIFF_SETTING = "external" ; then
  116. + LIBS="-lgeotiff $LIBS"
  117. + else
  118. + AC_MSG_ERROR([vcpkg geotiff broken])
  119. + fi
  120. +
  121. +elif false; then
  122. +
  123. if test "$TIFF_SETTING" = "internal" ; then
  124. GEOTIFF_SETTING=internal
  125. else
  126. @@ -3002,7 +3056,7 @@ elif test "$with_hdf5" = "yes" -o "$with_hdf5" = "" ; then
  127. # Test that the package found is for the right architecture
  128. saved_LIBS="$LIBS"
  129. LIBS="$HDF5_LIBS"
  130. - AC_CHECK_LIB(hdf5,H5Fopen, [HAVE_HDF5=yes], [HAVE_HDF5=no])
  131. + AC_SEARCH_LIBS(H5Fopen,[],[HAVE_HDF5=yes],[HAVE_HDF5=no],)
  132. LIBS="$saved_LIBS"
  133. if test "$HAVE_HDF5" = "yes"; then
  134. @@ -3132,6 +3186,24 @@ if test "$with_netcdf" = "no" ; then
  135. echo "netCDF support disabled."
  136. +elif true ; then
  137. +
  138. + PKG_CHECK_MODULES([NETCDF],[netcdf],[HAVE_NETCDF_PC=yes],[HAVE_NETCDF_PC=no])
  139. + SAVED_LIBS="$LIBS"
  140. + LIBS="$NETCDF_LIBS"
  141. + AC_SEARCH_LIBS(nc_open,[],NETCDF_SETTING=yes,NETCDF_SETTING=no,)
  142. + if test "$NETCDF_SETTING" = "yes" ; then
  143. + LIBS="$NETCDF_LIBS $SAVED_LIBS"
  144. + EXTRA_INCLUDES="$NETCDF_CFLAGS $EXTRA_INCLUDES"
  145. + PKG_CHECK_VAR([NETCDF_ROOT],[netcdf],[prefix],,)
  146. + PKG_CHECK_VAR([NETCDF_INCLUDEDIR],[netcdf],[includedir],,)
  147. + NETCDF_NCCONFIG=
  148. + elif test "$HAVE_NETCDF_PC" = "yes" ; then
  149. + AC_MSG_ERROR([vcpkg netcdf-c broken])
  150. + else
  151. + LIBS="$SAVED_LIBS"
  152. + fi
  153. +
  154. else
  155. dnl find nc-config location
  156. @@ -3352,6 +3424,21 @@ if test "$with_openjpeg" = "no" ; then
  157. AC_MSG_NOTICE([OpenJPEG (JPEG2000) support disabled.])
  158. +elif true ; then
  159. +
  160. + PKG_CHECK_MODULES([OPENJPEG],[libopenjp2 >= 2.1.0],[HAVE_LIBOPENJP2_PC=yes],[HAVE_LIBOPENJP2_PC=no])
  161. + SAVED_LIBS="$LIBS"
  162. + LIBS="$OPENJPEG_LIBS"
  163. + AC_SEARCH_LIBS(opj_setup_decoder,[],HAVE_OPENJPEG=yes,HAVE_OPENJPEG=no,)
  164. + if test "$HAVE_OPENJPEG" = "yes" ; then
  165. + EXTRA_INCLUDES="$OPENJPEG_CFLAGS $EXTRA_INCLUDES"
  166. + LIBS="$OPENJPEG_LIBS $SAVED_LIBS"
  167. + elif test "$HAVE_LIBOPENJP2_PC" = "yes" ; then
  168. + AC_MSG_ERROR([vcpkg libopenjpeg broken])
  169. + else
  170. + LIBS="$SAVED_LIBS"
  171. + fi
  172. +
  173. else
  174. PKG_PROG_PKG_CONFIG([0.21])
  175. @@ -4043,7 +4130,9 @@ dnl ---------------------------------------------------------------------------
  176. dnl Expat 1.95.0 released in 2000-09-28
  177. EXPAT_REQ_VERSION="1.95.0"
  178. -AX_LIB_EXPAT($EXPAT_REQ_VERSION)
  179. +AC_CHECK_LIB(expat,XML_ParserCreate,HAVE_EXPAT=yes,AC_MSG_ERROR([vcpkg expat not found]))
  180. +EXPAT_LDFLAGS="-lexpat"
  181. +EXPAT_INCLUDE=""
  182. if test "$HAVE_EXPAT" = "yes"; then
  183. LIBS="$EXPAT_LDFLAGS $LIBS"
  184. @@ -4066,7 +4155,13 @@ dnl Check for Google libkml support.
  185. dnl ---------------------------------------------------------------------------
  186. LIBKML_REQ_VERSION="1.3.0"
  187. +if test "x${with_libkml}" = "xno"; then
  188. + echo "libkml support disabled."
  189. + HAVE_LIBKML="no"
  190. + LIBKML_CFLAGS=
  191. +else
  192. AX_LIB_LIBKML($LIBKML_REQ_VERSION)
  193. +fi
  194. if test "$HAVE_LIBKML" = "yes"; then
  195. LIBS="$LIBKML_LDFLAGS $LIBS"
  196. @@ -4244,8 +4339,8 @@ else
  197. dnl Add curl to LIBS; it might be local to DODS or generally installed
  198. if test -x $DODS_BIN/curl-config; then
  199. LIBS="$LIBS `$DODS_BIN/curl-config --libs`"
  200. - elif which curl-config > /dev/null 2>&1; then
  201. - LIBS="$LIBS `curl-config --libs`"
  202. + elif test "$CURL_SETTING" = "yes"; then
  203. + LIBS="$LIBS $CURL_LIB"
  204. else
  205. AC_MSG_ERROR([You gave a dods root, but I can't find curl!])
  206. fi
  207. @@ -4287,7 +4382,7 @@ if test "x$with_xml2" = "xyes" -o "x$with_xml2" = "x" ; then
  208. if test "${HAVE_LIBXML2}" = "yes"; then
  209. SAVED_LIBS="${LIBS}"
  210. LIBS="${LIBXML2_LIBS}"
  211. - AC_CHECK_LIB(xml2,xmlParseDoc,HAVE_LIBXML2=yes,HAVE_LIBXML2=no)
  212. + AC_SEARCH_LIBS(xmlParseDoc,[],HAVE_LIBXML2=yes,HAVE_LIBXML2=no,)
  213. LIBS="${SAVED_LIBS}"
  214. fi
  215. @@ -4536,6 +4631,22 @@ WEBP_SETTING=no
  216. if test "$with_webp" = "yes" -o "$with_webp" = "" ; then
  217. + PKG_CHECK_MODULES([WEBP],[libwebp],[HAVE_LIBWEBP_PC=yes],[HAVE_LIBWEBP_PC=no])
  218. + SAVED_LIBS="$LIBS"
  219. + LIBS="$WEBP_LIBS"
  220. + AC_SEARCH_LIBS(WebPDecodeRGB,[],WEBP_SETTING=yes,WEBP_SETTING=no,)
  221. +
  222. + if test "$WEBP_SETTING" = "yes" ; then
  223. + LIBS="$WEBP_LIBS $SAVED_LIBS"
  224. + elif test "$HAVE_LIBWEBP_PC" = "yes" ; then
  225. + AC_MSG_ERROR([vcpkg libwebp broken])
  226. + else
  227. + echo "libwebp not found - WEBP support disabled"
  228. + LIBS="$SAVED_LIBS"
  229. + fi
  230. +
  231. +elif false ; then
  232. +
  233. AC_CHECK_LIB(webp,WebPDecodeRGB,WEBP_SETTING=yes,WEBP_SETTING=no,)
  234. if test "$WEBP_SETTING" = "yes" ; then
  235. @@ -4567,7 +4678,7 @@ dnl ---------------------------------------------------------------------------
  236. dnl Check if geos library is available.
  237. dnl ---------------------------------------------------------------------------
  238. -GEOS_INIT(3.1.0)
  239. +PKG_CHECK_MODULES(GEOS,geos >= 3.1.0,HAVE_GEOS=yes,AC_MSG_ERROR([vcpkg geos not found]))
  240. HAVE_GEOS_RESULT="no"
  241. if test "${HAVE_GEOS}" = "yes" ; then
  242. @@ -4812,6 +4923,16 @@ dnl ---------------------------------------------------------------------------
  243. AC_ARG_WITH(libjson-c,[ --with-libjson-c[=ARG] Include libjson-c support (ARG=internal or libjson-c directory)],,)
  244. +PKG_CHECK_MODULES([JSONC],[json-c],[HAVE_JSONC=yes],[HAVE_JSONC=no])
  245. +SAVED_LIBS="$LIBS"
  246. +LIBS="$JSONC_LIBS"
  247. +AC_SEARCH_LIBS(json_object_set_serializer,[],LIBJSONC_SETTING=external,LIBJSONC_SETTING=,)
  248. +if test "$LIBJSONC_SETTING" = "external" ; then
  249. + LIBS="$JSONC_LIBS $SAVED_LIBS"
  250. + JSON_INCLUDE="$JSONC_CFLAGS"
  251. +else
  252. + LIBS="$SAVED_LIBS"
  253. +
  254. if test "$with_libjson_c" = "external" -o "$with_libjson_c" = "" -o "$with_libjson_c" = "yes" ; then
  255. AC_CHECK_LIB(json-c,json_object_set_serializer,LIBJSONC_SETTING=external,LIBJSONC_SETTING=internal,)
  256. elif test "$with_libjson_c" = "internal" ; then
  257. @@ -4840,6 +4961,8 @@ else
  258. AC_MSG_RESULT([using internal libjson-c code])
  259. fi
  260. +fi # json-c.pc
  261. +
  262. AC_SUBST(LIBJSONC_SETTING,$LIBJSONC_SETTING)
  263. AC_SUBST(JSON_INCLUDE,$JSON_INCLUDE)