Date: Monday, January 15, 2018 @ 13:54:57 Author: eworm Revision: 282652
upgpkg: mysql-workbench 6.3.10-2 * update bundled mysql to version 5.7.21 * fix gdal build with json-c 0.13 * enable full RELRO build with our default flags Added: mysql-workbench/trunk/0007-gdal-json-c-0-13.patch Modified: mysql-workbench/trunk/PKGBUILD -----------------------------+ 0007-gdal-json-c-0-13.patch | 111 ++++++++++++++++++++++++++++++++++++++++++ PKGBUILD | 16 +++--- 2 files changed, 121 insertions(+), 6 deletions(-) Added: 0007-gdal-json-c-0-13.patch =================================================================== --- 0007-gdal-json-c-0-13.patch (rev 0) +++ 0007-gdal-json-c-0-13.patch 2018-01-15 13:54:57 UTC (rev 282652) @@ -0,0 +1,111 @@ +From 05a1fd773c8f418ee9765465fc4863c1d6472a4c Mon Sep 17 00:00:00 2001 +From: Even Rouault <even.roua...@mines-paris.org> +Date: Fri, 5 Jan 2018 18:08:49 +0000 +Subject: [PATCH] =?UTF-8?q?Add=20support=20for=20json-c=20v0.13=20(patch?= + =?UTF-8?q?=20by=20Bj=C3=B6rn=20Esser,=20fixes=20=E2=80=8Bhttps://github.c?= + =?UTF-8?q?om/OSGeo/gdal/pull/277,=20backport=20of=20r41043,=20fixes=20#71?= + =?UTF-8?q?95)?= +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +git-svn-id: https://svn.osgeo.org/gdal/branches/2.2@41200 f0d54148-0727-0410-94bb-9a71ac55c965 +--- + gdal/ogr/ogrsf_frmts/geojson/ogrgeojsonwriter.cpp | 30 +++++++++++++++++------ + 1 file changed, 22 insertions(+), 8 deletions(-) + +diff --git a/gdal/ogr/ogrsf_frmts/geojson/ogrgeojsonwriter.cpp b/gdal/ogr/ogrsf_frmts/geojson/ogrgeojsonwriter.cpp +index fdf4b77b459..f8937885c76 100644 +--- a/gdal/ogr/ogrsf_frmts/geojson/ogrgeojsonwriter.cpp ++++ b/gdal/ogr/ogrsf_frmts/geojson/ogrgeojsonwriter.cpp +@@ -27,12 +27,18 @@ + * DEALINGS IN THE SOFTWARE. + ****************************************************************************/ + ++#define JSON_C_VER_013 (13 << 8) ++ + #include "ogrgeojsonwriter.h" + #include "ogrgeojsonutils.h" + #include "ogr_geojson.h" + #include "ogrgeojsonreader.h" + #include <json.h> // JSON-C ++ ++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013) + #include <json_object_private.h> ++#endif ++ + #include <printbuf.h> + #include <ogr_api.h> + #include <ogr_p.h> +@@ -1381,13 +1387,17 @@ static int OGR_json_double_with_precision_to_string( struct json_object *jso, + { + // TODO(schwehr): Explain this casting. + const int nPrecision = ++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013) + static_cast<int>(reinterpret_cast<GUIntptr_t>(jso->_userdata)); ++#else ++ static_cast<int>(reinterpret_cast<GUIntptr_t>(json_object_get_userdata(jso))); ++#endif + char szBuffer[75] = {}; +- OGRFormatDouble( szBuffer, sizeof(szBuffer), jso->o.c_double, '.', ++ OGRFormatDouble( szBuffer, sizeof(szBuffer), json_object_get_double(jso), '.', + (nPrecision < 0) ? 15 : nPrecision ); + if( szBuffer[0] == 't' /*oobig */ ) + { +- CPLsnprintf(szBuffer, sizeof(szBuffer), "%.18g", jso->o.c_double); ++ CPLsnprintf(szBuffer, sizeof(szBuffer), "%.18g", json_object_get_double(jso)); + } + return printbuf_memappend(pb, szBuffer, static_cast<int>(strlen(szBuffer))); + } +@@ -1417,11 +1427,11 @@ OGR_json_double_with_significant_figures_to_string( struct json_object *jso, + { + char szBuffer[75] = {}; + int nSize = 0; +- if( CPLIsNan(jso->o.c_double)) ++ if( CPLIsNan(json_object_get_double(jso))) + nSize = CPLsnprintf(szBuffer, sizeof(szBuffer), "NaN"); +- else if( CPLIsInf(jso->o.c_double) ) ++ else if( CPLIsInf(json_object_get_double(jso)) ) + { +- if( jso->o.c_double > 0 ) ++ if( json_object_get_double(jso) > 0 ) + nSize = CPLsnprintf(szBuffer, sizeof(szBuffer), "Infinity"); + else + nSize = CPLsnprintf(szBuffer, sizeof(szBuffer), "-Infinity"); +@@ -1429,13 +1439,17 @@ OGR_json_double_with_significant_figures_to_string( struct json_object *jso, + else + { + char szFormatting[32] = {}; ++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013) + const int nSignificantFigures = (int) (GUIntptr_t) jso->_userdata; ++#else ++ const int nSignificantFigures = (int) (GUIntptr_t) json_object_get_userdata(jso); ++#endif + const int nInitialSignificantFigures = + nSignificantFigures >= 0 ? nSignificantFigures : 17; + CPLsnprintf(szFormatting, sizeof(szFormatting), + "%%.%dg", nInitialSignificantFigures); + nSize = CPLsnprintf(szBuffer, sizeof(szBuffer), +- szFormatting, jso->o.c_double); ++ szFormatting, json_object_get_double(jso)); + const char* pszDot = NULL; + if( nSize+2 < static_cast<int>(sizeof(szBuffer)) && + (pszDot = strchr(szBuffer, '.')) == NULL ) +@@ -1457,7 +1471,7 @@ OGR_json_double_with_significant_figures_to_string( struct json_object *jso, + CPLsnprintf(szFormatting, sizeof(szFormatting), + "%%.%dg", nInitialSignificantFigures- i); + nSize = CPLsnprintf(szBuffer, sizeof(szBuffer), +- szFormatting, jso->o.c_double); ++ szFormatting, json_object_get_double(jso)); + pszDot = strchr(szBuffer, '.'); + if( pszDot != NULL && + strstr(pszDot, "999999") == NULL && +@@ -1472,7 +1486,7 @@ OGR_json_double_with_significant_figures_to_string( struct json_object *jso, + CPLsnprintf(szFormatting, sizeof(szFormatting), + "%%.%dg", nInitialSignificantFigures); + nSize = CPLsnprintf(szBuffer, sizeof(szBuffer), +- szFormatting, jso->o.c_double); ++ szFormatting, json_object_get_double(jso)); + if( nSize+2 < static_cast<int>(sizeof(szBuffer)) && + strchr(szBuffer, '.') == NULL ) + { Modified: PKGBUILD =================================================================== --- PKGBUILD 2018-01-15 13:45:29 UTC (rev 282651) +++ PKGBUILD 2018-01-15 13:54:57 UTC (rev 282652) @@ -7,8 +7,8 @@ pkgname=mysql-workbench pkgver=6.3.10 -pkgrel=1 -_mysql_version=5.7.20 +pkgrel=2 +_mysql_version=5.7.21 _connector_version=1.1.9 _gdal_version=2.2.3 _boost_version=1.59.0 @@ -35,10 +35,11 @@ '0003-add-option-to-hide-nonstandard-server-warning.patch' '0005-gdal-use-CPLFree.patch' '0006-mysql-include-my_dir.patch' + '0007-gdal-json-c-0-13.patch' 'arch_linux_profile.xml') sha256sums=('b5593e439c6f8d50262a8950456a9ba3709b02d1dece0360d5f6e47e1b0d7dc3' 'SKIP' - '5397549bb7c238f396c123db2df4cad2191b11adf8986de7fe63bff8e2786487' + 'fa205079c27a39c24f3485e7498dd0906a6e0b379b4f99ebc0ec38a9ec5b09b7' 'SKIP' '3e31847a69a4e5c113b7c483731317ec4533858e3195d3a85026a0e2f509d2e4' 'SKIP' @@ -50,6 +51,7 @@ '3c9097af599f08388c471d6fd02f40ea72e5759eaa89f731e662852a5e67feea' '0965b4f12a0ae26bea131f05c7383d4a9b068d556b092ad23e19e1d8f6895531' 'd97a1fec15e0dc4491e79ce380f6f994f1c4b387d960c13e178a18b0299c0436' + '7000da5a03b7a44b26d86653104558798879ce9a2f6e7e1b929f8f9fcabdf33f' '2ade582ca25f6d6d748bc84a913de39b34dcaa6e621a77740fe143007f2833af') prepare() { @@ -58,6 +60,11 @@ # fix build without server patch -Np1 < "${srcdir}"/0006-mysql-include-my_dir.patch + cd "${srcdir}/gdal-${_gdal_version}" + + # Add support for json-c v0.13 + patch -Np2 < "${srcdir}"/0007-gdal-json-c-0-13.patch + cd "${srcdir}/mysql-workbench-community-${pkgver}-src/" # Disable 'Help' -> 'Check for Updates' @@ -130,9 +137,6 @@ make make DESTDIR="${srcdir}/install-bundle/" install - # fix: Can't get 'MysqlSqlFacade' module. - unset CPPFLAGS CFLAGS CXXFLAGS LDFLAGS - # Build MySQL Workbench itself with bundled libs cd "${srcdir}/mysql-workbench-community-${pkgver}-src/" cmake . \