[magics] 03/63: merge dev-cmake work and add python3 detection

Alastair McKinstry mckinstry at moszumanska.debian.org
Fri Mar 24 10:41:41 UTC 2017


This is an automated email from the git hooks/post-receive script.

mckinstry pushed a commit to branch debian/master
in repository magics.

commit 039e1a62d1673fbfe1d5b521e51a5c656855fec5
Merge: a80675e 0d52f14
Author: Alastair McKinstry <mckinstry at debian.org>
Date:   Tue May 19 11:43:54 2015 +0100

    merge dev-cmake work and add python3 detection

 .cproject                                          |    61 +
 .gitignore                                         |    21 +
 .project                                           |    27 +
 AUTHORS                                            |     6 +-
 CMakeLists.txt                                     |   434 +
 COPYING                                            |   202 +-
 LICENSE_for_source_files                           |    14 +
 Makefile.am                                        |    82 -
 Makefile.in                                        |   948 -
 NOTICE                                             |    52 +
 VERSION.cmake                                      |     9 +
 aclocal.m4                                         |  1374 --
 apps/CMakeLists.txt                                |     4 +
 apps/MagMLInterpretor/CMakeLists.txt               |    32 +
 apps/MagMLInterpretor/Makefile.am                  |    27 -
 apps/MagMLInterpretor/Makefile.in                  |   633 -
 apps/MagMLInterpretor/grib.template                |    37 +
 apps/MagMLInterpretor/gribview                     |    77 +
 apps/MagMLInterpretor/json.cc                      |    70 +-
 apps/MagMLInterpretor/magjson-script.in            |    11 +
 apps/MagMLInterpretor/magml-script.in              |    11 +
 apps/MagMLInterpretor/magml.cc                     |     2 +-
 apps/MagMLInterpretor/test.magml                   |    17 +
 apps/MagMLInterpretor/web.magml                    |    39 +
 apps/Makefile.am                                   |     5 -
 apps/Makefile.in                                   |   644 -
 apps/metgram/10_days_epsgram.xml                   |   166 -
 apps/metgram/10_days_metgram_a3.xml                |   161 +
 apps/metgram/10_days_wave_epsgram_a3.xml           |   206 +
 apps/metgram/15_days_epsgram.xml                   |   182 -
 apps/metgram/CMakeLists.txt                        |    24 +
 apps/metgram/Makefile.am                           |    43 -
 apps/metgram/Makefile.in                           |   724 -
 apps/metgram/anna.pl                               |   577 +
 apps/metgram/efiserver.pl                          |   579 +
 apps/metgram/eps.xml                               |   154 +
 apps/metgram/epsserver.pl                          |   577 +
 apps/metgram/epswind.xml                           |     9 +
 apps/metgram/magplusserver.pl                      |   610 +
 apps/metgram/metgram                               |     2 +-
 apps/metgram/metgram-script.in                     |    10 +
 apps/metgram/metgram.xml                           |     2 +
 apps/metgram/metview_metgramserver.pl              |   606 +
 apps/metgram/multi_metgrams.xml                    |  1510 ++
 apps/metgram/multi_metgrams_page1.xml              |  1511 ++
 apps/metgram/multi_metgrams_page2.xml              |  1510 ++
 apps/metgram/multi_metgrams_page3.xml              |  1510 ++
 apps/metgram/multi_metgrams_page4.xml              |  1518 ++
 apps/metgram/templates/10_days_epsgram.xml         |   170 +
 .../metgram/{ => templates}/10_days_epsgram_a3.xml |     0
 apps/metgram/{ => templates}/10_days_metgram.xml   |     0
 .../{ => templates}/10_days_wave_epsgram.xml       |     0
 apps/metgram/templates/15_days_epsgram.xml         |   184 +
 .../metgram/{ => templates}/15_days_epsgram_a3.xml |     0
 .../{ => templates}/15_days_with_clim_epsgram.xml  |     0
 apps/metgram/{ => templates}/classic_plumes.json   |     0
 apps/metgram/{ => templates}/efi_distribution.xml  |     0
 .../{ => templates}/new_efi_distribution.xml       |     0
 apps/metgram/tigge_epsgram.xml                     |   163 +
 apps/metgram/wave10.xml                            |     9 +
 apps/metgram/wave10_a3.xml                         |     9 +
 cmake/2.8/CMakePushCheckState.cmake                |    61 +
 cmake/CMakeLists.txt                               |     5 +
 cmake/CheckFortranCompilerFlag.cmake               |    37 +
 cmake/CheckFortranSourceCompiles.cmake             |    94 +
 cmake/FindADSM.cmake                               |    43 +
 cmake/FindAEC.cmake                                |    34 +
 cmake/FindAIO.cmake                                |    66 +
 cmake/FindArmadillo.cmake                          |    33 +
 cmake/FindCMath.cmake                              |    23 +
 cmake/FindCairo.cmake                              |    58 +
 cmake/FindDl.cmake                                 |    20 +
 cmake/FindEMOS.cmake                               |    37 +
 cmake/FindEcLib.cmake                              |    49 +
 cmake/FindEcregrid.cmake                           |    48 +
 cmake/FindFDB.cmake                                |    35 +
 cmake/FindGeoTIFF.cmake                            |    37 +
 cmake/FindHPSS.cmake                               |    39 +
 cmake/FindLEX.cmake                                |   129 +
 cmake/FindLegacyFDB.cmake                          |    35 +
 cmake/FindLibGFortran.cmake                        |    52 +
 cmake/FindNDBM.cmake                               |    34 +
 cmake/FindNetCDF.cmake                             |   167 +
 cmake/FindNetCDF3.cmake                            |   129 +
 cmake/FindODB.cmake                                |    53 +
 cmake/FindOpenJPEG.cmake                           |    43 +
 cmake/FindPGIFortran.cmake                         |    46 +
 cmake/FindPango.cmake                              |    33 +
 cmake/FindPangoCairo.cmake                         |    91 +
 cmake/FindProj4.cmake                              |    67 +
 cmake/FindREADLINE.cmake                           |    87 +
 cmake/FindRPCGEN.cmake                             |    20 +
 cmake/FindRealtime.cmake                           |    22 +
 cmake/FindSZip.cmake                               |    32 +
 cmake/FindScin.cmake                               |    48 +
 cmake/FindTrilinos.cmake                           |    52 +
 cmake/FindXLFortranLibs.cmake                      |    49 +
 cmake/FindYACC.cmake                               |   157 +
 cmake/Findgrib_api.cmake                           |   135 +
 cmake/Findodb_api.cmake                            |    99 +
 cmake/Findspot.cmake                               |    67 +
 cmake/VERSION.cmake                                |     7 +
 cmake/contrib/CheckFortranCompilerFlag.cmake       |    25 +
 cmake/contrib/CheckFortranSourceCompiles.cmake     |    61 +
 cmake/contrib/FindEigen3.cmake                     |    93 +
 cmake/contrib/FindFFTW.cmake                       |   124 +
 cmake/contrib/FindNetCDF4.cmake                    |   314 +
 cmake/contrib/FindNumPy.cmake                      |   101 +
 cmake/contrib/GetGitRevisionDescription.cmake      |   123 +
 cmake/contrib/GetGitRevisionDescription.cmake.in   |    38 +
 cmake/contrib/GreatCMakeCookOff/.gitattributes     |    22 +
 cmake/contrib/GreatCMakeCookOff/.gitignore         |     6 +
 .../contrib/GreatCMakeCookOff/AddCPP11Flags.cmake  |    56 +
 cmake/contrib/GreatCMakeCookOff/AddGTest.cmake     |    72 +
 .../GreatCMakeCookOff/CheckCXX11Features.cmake     |   197 +
 cmake/contrib/GreatCMakeCookOff/CheckIsNaN.cmake   |    53 +
 cmake/contrib/GreatCMakeCookOff/FindEigen.cmake    |   131 +
 cmake/contrib/GreatCMakeCookOff/LICENSE            |    20 +
 cmake/contrib/GreatCMakeCookOff/README.md          |   176 +
 cmake/contrib/GreatCMakeCookOff/TestCMake.cmake    |    58 +
 .../GreatCMakeCookOff/cpp11/__func__-N2340.cpp     |     8 +
 .../contrib/GreatCMakeCookOff/cpp11/auto-N2546.cpp |    12 +
 .../GreatCMakeCookOff/cpp11/begin_function.cc      |    12 +
 .../GreatCMakeCookOff/cpp11/constexpr-N2235.cpp    |    19 +
 .../cpp11/constructor_delegate.cpp                 |    32 +
 cmake/contrib/GreatCMakeCookOff/cpp11/cstdint.cpp  |    10 +
 .../GreatCMakeCookOff/cpp11/decltype-N2343.cpp     |    11 +
 .../cpp11/deleted_constructor.cpp                  |    10 +
 .../cpp11/deleted_constructor_fail_compile.cpp     |    11 +
 .../contrib/GreatCMakeCookOff/cpp11/enable_if.cpp  |     8 +
 .../GreatCMakeCookOff/cpp11/explicit_cast.cpp      |    13 +
 .../GreatCMakeCookOff/cpp11/initialization.cpp     |     7 +
 .../GreatCMakeCookOff/cpp11/lambda-N2927.cpp       |     5 +
 .../GreatCMakeCookOff/cpp11/long_double.cpp        |     4 +
 .../GreatCMakeCookOff/cpp11/long_long-N1811.cpp    |     7 +
 cmake/contrib/GreatCMakeCookOff/cpp11/noexcept.cpp |     9 +
 .../GreatCMakeCookOff/cpp11/nullptr-N2431.cpp      |     5 +
 .../cpp11/nullptr-N2431_fail_compile.cpp           |     5 +
 cmake/contrib/GreatCMakeCookOff/cpp11/override.cpp |    22 +
 .../cpp11/override_fail_compile.cpp                |    22 +
 .../GreatCMakeCookOff/cpp11/random_device.cpp      |    13 +
 .../cpp11/rvalue_references-N2118.cpp              |    15 +
 .../contrib/GreatCMakeCookOff/cpp11/shared_ptr.cpp |     6 +
 .../cpp11/sizeof_member-N2253.cpp                  |    14 +
 .../cpp11/static_assert-N1720.cpp                  |     5 +
 .../cpp11/static_assert-N1720_fail_compile.cpp     |     5 +
 .../GreatCMakeCookOff/cpp11/template_alias.cpp     |     8 +
 .../cpp11/trivial_type_traits.cpp                  |     7 +
 .../GreatCMakeCookOff/cpp11/type_traits.cpp        |     7 +
 .../contrib/GreatCMakeCookOff/cpp11/unique_ptr.cpp |     6 +
 .../cpp11/variadic_templates-N2555.cpp             |    23 +
 .../contrib/GreatCMakeCookOff/tests/CMakeLists.txt |    12 +
 .../contrib/GreatCMakeCookOff/tests/addgtest.cmake |    20 +
 .../GreatCMakeCookOff/tests/checkcpp11flags.cmake  |     1 +
 .../GreatCMakeCookOff/tests/checkisnan.cmake       |    19 +
 .../GreatCMakeCookOff/tests/cpp11/CMakeLists.txt   |     3 +
 .../tests/cpp11/allfeatures.cmake                  |     7 +
 .../tests/cpp11/check_features.cmake               |     9 +
 .../tests/cpp11/parse_input_features.cmake         |    68 +
 cmake/ecbuild_add_cxx11_flags.cmake                |    25 +
 cmake/ecbuild_add_executable.cmake                 |   197 +
 cmake/ecbuild_add_extra_search_paths.cmake         |    34 +
 cmake/ecbuild_add_library.cmake                    |   328 +
 cmake/ecbuild_add_option.cmake                     |   194 +
 cmake/ecbuild_add_persistent.cmake                 |    61 +
 cmake/ecbuild_add_resources.cmake                  |   158 +
 cmake/ecbuild_add_test.cmake                       |   315 +
 cmake/ecbuild_append_to_rpath.cmake                |    82 +
 cmake/ecbuild_bundle.cmake                         |   284 +
 cmake/ecbuild_cache.cmake                          |    65 +
 cmake/ecbuild_check_c_source.cmake                 |   161 +
 cmake/ecbuild_check_compiler.cmake                 |   125 +
 cmake/ecbuild_check_cxx11.cmake                    |    67 +
 cmake/ecbuild_check_cxx_source.cmake               |   160 +
 cmake/ecbuild_check_fortran_source.cmake           |   157 +
 cmake/ecbuild_check_functions.cmake                |   125 +
 cmake/ecbuild_check_os.cmake                       |   342 +
 cmake/ecbuild_config.h.in                          |   167 +
 cmake/ecbuild_debug_var.cmake                      |    35 +
 cmake/ecbuild_declare_project.cmake                |   151 +
 cmake/ecbuild_define_build_types.cmake             |   110 +
 cmake/ecbuild_define_options.cmake                 |    40 +
 cmake/ecbuild_define_paths.cmake                   |    41 +
 cmake/ecbuild_echo_targets.cmake                   |   198 +
 cmake/ecbuild_enable_fortran.cmake                 |    56 +
 cmake/ecbuild_find_fortranlibs.cmake               |   131 +
 cmake/ecbuild_find_lexyacc.cmake                   |    60 +
 cmake/ecbuild_find_mpi.cmake                       |   230 +
 cmake/ecbuild_find_omp.cmake                       |   204 +
 cmake/ecbuild_find_package.cmake                   |   190 +
 cmake/ecbuild_find_perl.cmake                      |    45 +
 cmake/ecbuild_find_python.cmake                    |   131 +
 cmake/ecbuild_generate_config_headers.cmake        |    47 +
 cmake/ecbuild_generate_rpc.cmake                   |    73 +
 cmake/ecbuild_generate_yy.cmake                    |   113 +
 cmake/ecbuild_get_date.cmake                       |    32 +
 cmake/ecbuild_get_resources.cmake                  |    52 +
 cmake/ecbuild_get_test_data.cmake                  |   271 +
 cmake/ecbuild_install_package.cmake                |   286 +
 cmake/ecbuild_links_target.cmake                   |    74 +
 cmake/ecbuild_list_extra_search_paths.cmake        |   108 +
 cmake/ecbuild_list_macros.cmake                    |    57 +
 cmake/ecbuild_pkgconfig.cmake                      |   365 +
 cmake/ecbuild_print_summary.cmake                  |   115 +
 cmake/ecbuild_project_files.cmake                  |    73 +
 cmake/ecbuild_requires_macro_version.cmake         |    15 +
 cmake/ecbuild_separate_sources.cmake               |    63 +
 cmake/ecbuild_setup_test_framework.cmake           |    42 +
 cmake/ecbuild_system.cmake                         |   281 +
 cmake/ecbuild_use_package.cmake                    |   206 +
 cmake/ecbuild_version.h.in                         |    20 +
 cmake/ecbuild_warn_unused_files.cmake              |    58 +
 cmake/include/ecbuild/boost_test_framework.h       |    17 +
 cmake/md5.in                                       |     1 +
 cmake/pkg-config.pc.in                             |    35 +
 cmake/project-config-version.cmake.in              |    12 +
 cmake/project-config.cmake.in                      |    80 +
 cmake/sg.pl                                        |   573 +
 cmake/sha1.in                                      |     1 +
 config/README                                      |     1 -
 config/config.guess                                |  1511 --
 config/config.sub                                  |  1705 --
 config/depcomp                                     |   630 -
 config/install-sh                                  |   520 -
 config/ltmain.sh                                   |  8406 -------
 config/missing                                     |   376 -
 config/py-compile                                  |   146 -
 configure                                          | 24673 -------------------
 configure.ac                                       |  1152 -
 debian/changelog                                   |     1 +
 debian/control                                     |     9 +-
 debian/patches/cve-2010-3393.patch                 |    10 +-
 debian/patches/dynamic_link.patch                  |    21 -
 debian/patches/enable_static.patch                 |    18 -
 debian/patches/fix-headers.patch                   |    39 +-
 debian/patches/gcc-4.7.patch                       |    52 +-
 debian/patches/geotiff.patch                       |    13 +
 debian/patches/magics-config.patch                 |   122 +-
 debian/patches/metview_fixes.patch                 |     2 +-
 debian/patches/python3.patch                       |   307 +
 debian/patches/series                              |     4 +-
 debian/patches/terralib.patch                      |   201 +-
 debian/rules                                       |    76 +-
 docs/Magics.dox.in                                 |  1531 --
 m4/autotroll.m4                                    |   563 -
 m4/autotroll.mk                                    |   108 -
 m4/ax_boost_base.m4                                |   258 -
 m4/libtool.m4                                      |  7356 ------
 m4/ltoptions.m4                                    |   368 -
 m4/ltsugar.m4                                      |   123 -
 m4/ltversion.m4                                    |    23 -
 m4/lt~obsolete.m4                                  |    92 -
 m4/magics.m4                                       |    38 -
 magics-config.in                                   |    71 +-
 magics.sublime-project                             |    18 +
 metview_files/MTHERMOGRIDDef                       |   322 +
 metview_files/MTHERMOGRIDRules                     |    62 +
 project_summary.cmake                              |    53 +
 python/CMakeLists.txt                              |     1 +
 python/Magics/CMakeLists.txt                       |    49 +
 python/Magics/Magics.i                             |    66 -
 python/Magics/Magics.i.in                          |    69 +
 python/Magics/Magics_interface.cc                  |    11 +
 python/Magics/Makefile.am                          |    35 -
 python/Magics/Makefile.in                          |   527 -
 python/Magics/macro.py                             |    38 +-
 rpms/Magics_OBS.spec                               |   195 +
 rpms/Makefile.am                                   |    26 -
 rpms/Makefile.in                                   |   467 -
 share/CMakeLists.txt                               |     3 +
 share/magics/10m/10m_populated_places_simple.dbf   |   Bin
 share/magics/10m/10m_populated_places_simple.prj   |     1 -
 share/magics/10m/10m_populated_places_simple.shp   |   Bin
 share/magics/10m/10m_populated_places_simple.shx   |   Bin
 share/magics/bufr_80.xml                           |   141 +
 share/magics/bufr_98.xml                           |     1 +
 share/magics/contour_ids.json                      |     1 +
 share/magics/contours.json                         |     1 +
 share/magics/default.json                          |     1 +
 share/magics/epsg.json                             |    88 +-
 share/magics/layer_contours.json                   |     1 +
 share/magics/layer_ids.json                        |     1 +
 share/magics/layers.json                           |     1 +
 share/magics/level.json                            |     1 +
 share/magics/marsClass.json                        |     1 +
 share/magics/marsStream.json                       |     1 +
 share/magics/marsType.json                         |     1 +
 share/magics/natural_earth.ksh                     |    16 +
 share/magics/number.json                           |     1 +
 share/magics/obs.xml                               |    37 +-
 share/magics/paramId.json                          |     1 +
 share/magics/shortName.json                        |     1 +
 share/magics/stepRange.json                        |     1 +
 share/magics/symbols.svg                           |   142 +-
 share/magics/title_template.xml                    |    62 +-
 share/magics/typeOfLevel.json                      |     1 +
 share/magics/units.json                            |     1 +
 share/magics/web/magics.js                         |   662 +
 src/CMakeLists.txt                                 |   259 +
 src/MagicsDouble.cc                                |     9 +-
 src/Makefile.am                                    |   228 -
 src/Makefile.in                                    |  1284 -
 src/MvObs/Makefile.am                              |    14 -
 src/MvObs/Makefile.in                              |   666 -
 src/MvObs/MvBufr.h                                 |   444 -
 src/MvObs/MvBufrObs.h                              |   599 -
 src/MvObs/MvObs.cc                                 |  3297 ---
 src/MvObs/MvObsSet.cc                              |  1011 -
 src/MvObs/MvObsSet.h                               |   337 -
 src/basic/BasicGraphicsObject.cc                   |     4 +-
 src/basic/BasicGraphicsObject.h                    |    23 +-
 src/basic/BasicSceneObject.cc                      |     7 +
 src/basic/BasicSceneObject.h                       |     2 +
 src/basic/CMakeLists.txt                           |    71 +
 src/basic/DataConverter.cc                         |    54 +
 src/basic/DataConverter.h                          |    59 +
 src/basic/DisplayManager.cc                        |   300 +
 src/basic/FortranMagics.cc                         |   405 +-
 src/basic/FortranMagics.h                          |     6 +-
 src/basic/ImportObjectHandler.cc                   |    12 +-
 src/basic/Layer.cc                                 |    43 +-
 src/basic/Layer.h                                  |    70 +-
 src/basic/LegendVisitor.cc                         |   368 +-
 src/basic/LegendVisitor.h                          |    35 +-
 src/basic/LegendVisitorAttributes.h                |   129 -
 src/basic/MagnifierVisitorAttributes.h             |    91 -
 src/basic/Makefile.am                              |    46 -
 src/basic/Makefile.in                              |   724 -
 src/basic/RootSceneNode.cc                         |    56 +-
 src/basic/RootSceneNode.h                          |    11 +
 src/basic/SceneNode.cc                             |    13 +-
 src/basic/SceneVisitor.cc                          |    12 +-
 src/basic/SceneVisitor.h                           |    14 +-
 src/basic/TagHandler.cc                            |    37 +-
 src/basic/TextVisitor.cc                           |    76 +-
 src/basic/ThreadNode.h                             |    44 -
 src/basic/ViewNode.cc                              |    66 +-
 src/basic/Visdef.h                                 |     5 +-
 src/basic/VisualAction.cc                          |    99 +-
 src/basic/VisualAction.h                           |    13 +-
 src/basic/WebFormat.cc                             |    13 +-
 src/basic/WrepRootNodeAttributes.h                 |    83 -
 src/basic/XmlBasicNodeAttributes.h                 |   110 -
 src/basic/XmlMagics.cc                             |    64 +-
 src/basic/XmlMagics.h                              |     4 +-
 src/basic/XmlRootNodeAttributes.h                  |    90 -
 src/basic/XmlSceneNodeAttributes.h                 |   106 -
 src/basic/XmlViewNodeAttributes.h                  |    83 -
 src/common/ArrowProperties.cc                      |     1 +
 src/common/ArrowProperties.h                       |     6 +
 src/common/AutoLocker.cc                           |    10 +-
 src/common/AutomaticPlotManager.cc                 |   161 +
 src/common/AutomaticPlotManager.h                  |    81 +
 src/common/BaseParameter.cc                        |     2 +-
 src/common/BaseParameter.h                         |    22 +-
 src/common/BasePointsHandler.h                     |     1 +
 src/common/BinaryObject.h                          |     8 +-
 src/common/CMakeLists.txt                          |   145 +
 src/common/CartesianTransformation.cc              |    16 +-
 src/common/CartesianTransformation.h               |    44 +-
 src/common/Colour.cc                               |    28 +-
 src/common/ColourTableDefinitionList.cc            |    11 +-
 src/common/ColourTableDefinitionList.h             |     1 +
 src/common/Coordinate.cc                           |     4 +-
 src/common/Coordinate.h                            |   539 +-
 src/common/CustomisedPoint.h                       |     4 +
 src/common/Data.cc                                 |    32 +
 src/common/Data.h                                  |    31 +-
 src/common/Factory.cc                              |     3 +
 src/common/FortranRootSceneNodeAttributes.h        |    91 -
 src/common/FortranSceneNodeAttributes.h            |    94 -
 src/common/FortranViewNodeAttributes.h             |   109 -
 src/common/Frame.cc                                |    94 +
 src/common/FrameLoop.cc                            |   232 +
 src/common/FrameLoop.h                             |   164 +
 src/common/GeoRectangularProjection.cc             |    60 +-
 src/common/GeoRectangularProjection.h              |     3 +-
 src/common/GeoRectangularProjectionAttributes.h    |    85 -
 src/common/InteractiveSet.cc                       |   116 +
 src/common/InteractiveSet.h                        |   144 +
 src/common/Label.h                                 |    10 +
 src/common/Layout.cc                               |     6 +-
 src/common/Layout.h                                |     2 +-
 src/common/LogoPlottingAttributes.h                |    80 -
 src/common/MagException.h                          |    10 +-
 src/common/MagExceptions.cc                        |     2 +-
 src/common/MagFont.cc                              |     5 +-
 src/common/MagLog.cc                               |    19 +-
 src/common/MagLog.h                                |    16 +-
 src/common/MagTranslator.h                         |   112 +-
 src/common/MagicsCalls.cc                          |    89 +-
 src/common/MagicsThreads.cc                        |   151 +
 src/common/MagicsThreads.h                         |    93 +
 src/common/Makefile.am                             |   119 -
 src/common/Makefile.in                             |   934 -
 src/common/Matrix.cc                               |    33 +-
 src/common/Matrix.h                                |    38 +-
 src/common/MatrixHandler.h                         |   112 +-
 src/common/MetaData.cc                             |    20 +-
 src/common/MetaData.h                              |     4 +
 src/common/Node.cc                                 |   247 +
 src/common/OutputFactory.cc                        |     9 +
 src/common/OutputFactory.h                         |    10 +
 src/common/OutputHandler.cc                        |    27 +-
 src/common/OutputHandler.h                         |     5 +
 src/common/OutputHandlerAttributes.h               |    82 -
 src/common/PageIDAttributes.h                      |    93 -
 src/common/PageIDBase.h                            |   102 +
 src/common/PlotManager.cc                          |   121 +
 src/common/PolarStereographicProjection.cc         |   141 +-
 src/common/PolarStereographicProjection.h          |    28 +-
 src/common/Polyline.h                              |    19 +-
 src/common/ProgressObject.cc                       |    45 +
 src/common/ProgressObject.h                        |    11 +
 src/common/ProgressTask.cc                         |    43 +
 src/common/Proj4Projection.cc                      |   141 +-
 src/common/Proj4Projection.h                       |    56 +-
 src/common/RasterData.cc                           |    59 +
 src/common/RasterData.h                            |     1 +
 src/common/SatelliteProjection.cc                  |   366 +
 src/common/SciMethods.cc                           |    10 +-
 src/common/SciMethods.h                            |     2 +-
 src/common/Seconds.cc                              |     2 +-
 src/common/Symbol.cc                               |     5 +-
 src/common/TaylorProjection.cc                     |    38 +-
 src/common/TaylorProjection.h                      |     1 +
 src/common/Tephigram.cc                            |   668 +
 src/common/Tephigram.h                             |   298 +
 src/common/Thread.h                                |     5 +-
 src/common/ThreadControler.cc                      |    11 +
 src/common/ThreadControler.h                       |     4 +
 src/common/Timer.cc                                |    25 +-
 src/common/Timer.h                                 |     7 +-
 src/common/Tokenizer.cc                            |     1 +
 src/common/Transformation.cc                       |   480 +-
 src/common/Transformation.h                        |    72 +-
 src/common/UserLogoPlottingAttributes.h            |    89 -
 src/common/XmlReader.cc                            |     5 +-
 src/common/XmlReader.h                             |     2 +
 src/common/linux.h                                 |     4 +-
 src/common/machine.h                               |     0
 src/common/magics_api.h                            |     3 +
 src/decoders/BinningObject.cc                      |   164 +-
 src/decoders/BinningObject.h                       |    77 +-
 src/decoders/BinningObjectAttributes.h             |    94 -
 src/decoders/CMakeLists.txt                        |   146 +
 src/decoders/ClassicMtgDecoder.cc                  |     6 +-
 src/decoders/Date.cc                               |    10 +-
 src/decoders/DateGribLoopStepAttributes.h          |    83 -
 src/decoders/EfiDataDecoder.h                      |    82 -
 src/decoders/EpsBufr.cc                            |     6 +-
 src/decoders/EpsXmlInput.cc                        |    11 +-
 src/decoders/EpsgramDecoder.cc                     |   148 +-
 src/decoders/GeoPointsDecoder.cc                   |    15 +
 src/decoders/GeoPointsDecoderAttributes.h          |    81 -
 src/decoders/Grib                                  |     0
 src/decoders/GribAddressMode.h                     |    23 +-
 src/decoders/GribDecoder.cc                        |  1838 +-
 src/decoders/GribDecoder.h                         |    51 +-
 src/decoders/GribDecoderAttributes.h               |    97 -
 src/decoders/GribInterpretor.h                     |     9 +-
 src/decoders/GribLoopAttributes.h                  |    96 -
 src/decoders/GribLoopStep.h                        |     2 +-
 src/decoders/GribRegularInterpretor.cc             |  2238 +-
 src/decoders/GribRegularInterpretor.h              |    47 +-
 src/decoders/GribSatelliteInterpretor.cc           |   474 +-
 src/decoders/GribSatelliteInterpretor.h            |     8 +-
 src/decoders/ImportActionAttributes.h              |    85 -
 src/decoders/InputData.cc                          |    67 +-
 src/decoders/InputData.h                           |     2 +-
 src/decoders/InputMatrix.cc                        |     6 +-
 src/decoders/InputMatrix.h                         |     2 +-
 src/decoders/InputMatrixInterpretor.cc             |     2 +-
 src/decoders/LandgramDecoder.cc                    |     4 +-
 src/decoders/LocalTable.cc                         |     1 +
 src/decoders/Makefile.am                           |   113 -
 src/decoders/Makefile.in                           |   963 -
 src/decoders/Netcdf.cc                             |    85 +-
 src/decoders/Netcdf.h                              |    36 +-
 src/decoders/NetcdfDecoder.cc                      |     2 +-
 src/decoders/NetcdfDecoder.h                       |     3 +-
 src/decoders/NetcdfDecoderAttributes.h             |    82 -
 src/decoders/NetcdfGeoMatrixInterpretor.cc         |    78 +-
 src/decoders/NetcdfGeoMatrixInterpretor.h          |     6 +-
 .../NetcdfGeoMatrixInterpretorAttributes.h         |    85 -
 .../NetcdfGeoPolarMatrixInterpretorAttributes.h    |    84 -
 .../NetcdfGeoVectorInterpretorAttributes.h         |    84 -
 src/decoders/NetcdfGeopointsInterpretor.cc         |   139 +-
 src/decoders/NetcdfGeopointsInterpretor.h          |    14 +-
 .../NetcdfGeopointsInterpretorAttributes.h         |    82 -
 src/decoders/NetcdfInterpretor.cc                  |   132 +-
 src/decoders/NetcdfInterpretor.h                   |    55 +-
 src/decoders/NetcdfInterpretorAttributes.h         |    89 -
 src/decoders/NetcdfMatrixInterpretor.cc            |   239 +-
 src/decoders/NetcdfMatrixInterpretor.h             |    21 +-
 src/decoders/NetcdfMatrixInterpretorAttributes.h   |    85 -
 src/decoders/NetcdfOrcaInterpretor.cc              |    73 +-
 src/decoders/NetcdfOrcaInterpretor.h               |     4 +-
 src/decoders/NetcdfVectorInterpretor.cc            |    48 +-
 src/decoders/NetcdfVectorInterpretor.h             |     1 +
 src/decoders/NetcdfVectorInterpretorAttributes.h   |    84 -
 src/decoders/ObsDecoder.cc                         |    16 +-
 src/decoders/ObsDecoderAttributes.h                |    85 -
 src/decoders/ObsStatDecoderAttributes.h            |    81 -
 src/decoders/ShapeDecoder.cc                       |    57 +-
 src/decoders/TableDecoder.cc                       |    18 +-
 src/decoders/ThinningMethod.cc                     |    48 +-
 src/decoders/ThinningMethod.h                      |    11 +-
 src/decoders/Time.cc                               |     2 +
 src/decoders/TitleTemplate.cc                      |    26 +-
 src/decoders/TitleTemplate.h                       |     2 +-
 src/decoders/WindMode.cc                           |     2 +-
 src/decoders/WindMode.h                            |     4 +-
 src/decoders/XYList.cc                             |    48 +-
 src/drivers/BaseDriver.cc                          |   515 +-
 src/drivers/BaseDriver.h                           |     5 +-
 src/drivers/BaseDriverBinaryReader.cc              |   513 -
 src/drivers/BaseDriverImages.h                     |     2 +-
 src/drivers/BaseDriverSymbols.h                    |    37 +-
 src/drivers/BaseDriverWind.h                       |    12 +-
 src/drivers/BinaryDriver.cc                        |     8 +-
 src/drivers/CMakeLists.txt                         |    88 +
 src/drivers/CairoDriver.cc                         |   270 +-
 src/drivers/CairoDriver.h                          |    21 +-
 src/drivers/KMLDriver.cc                           |   659 +-
 src/drivers/KMLDriver.h                            |     9 +-
 src/drivers/Makefile.am                            |   107 -
 src/drivers/Makefile.in                            |  1187 -
 src/drivers/MgQ/MgQDriverObject.h                  |     2 +-
 src/drivers/MgQ/MgQLayoutItem.h                    |     2 +-
 src/drivers/MgQ/MgQPlotScene.cc                    |     2 +-
 src/drivers/MgQ/MgQPlotScene.h                     |     2 +-
 src/drivers/MgQ/MgQRootItem.h                      |     3 +
 src/drivers/MgQ/MgQScene.cc                        |    13 +-
 src/drivers/MgQ/MgQSceneItem.h                     |     2 +-
 src/drivers/MingDriver.cc                          |   568 +
 src/drivers/MingDriver.h                           |   132 +
 src/drivers/PostScriptDriver.cc                    |    39 +-
 src/drivers/QtDriver.cc                            |    38 +-
 src/drivers/QtDriver.h                             |     6 +
 src/drivers/SVGDriver.cc                           |   108 +-
 src/drivers/SVGDriver.h                            |     3 +-
 src/drivers/SelectionMode.cc                       |    55 +
 src/drivers/SelectionMode.h                        |    66 +
 src/eckit_readers/CMakeLists.txt                   |    38 +
 src/eckit_readers/MvBufr.h                         |   444 +
 src/eckit_readers/MvBufrObs.h                      |   599 +
 src/{MvObs => eckit_readers}/MvLocation.cc         |     0
 src/{MvObs => eckit_readers}/MvLocation.h          |     0
 src/eckit_readers/MvObs.cc                         |  3297 +++
 src/{MvObs => eckit_readers}/MvObs.h               |     0
 src/eckit_readers/MvObsSet.cc                      |  1011 +
 src/eckit_readers/MvObsSet.h                       |   337 +
 src/{MvObs => eckit_readers}/MvPrepBufrPrep.cc     |     0
 src/{MvObs => eckit_readers}/MvPrepBufrPrep.h      |     0
 src/{libTable => eckit_readers}/TableReader.cc     |     0
 src/{libTable => eckit_readers}/TableReader.h      |     0
 src/{MvObs => eckit_readers}/fdyntime.cc           |     0
 src/{MvObs => eckit_readers}/fdyntime.h            |     0
 src/{MvObs => eckit_readers}/fmettim.cc            |     0
 src/{MvObs => eckit_readers}/fmettim.h             |     0
 src/{MvObs => eckit_readers}/fobject.cc            |     0
 src/{MvObs => eckit_readers}/fobject.h             |     0
 src/{MvObs => eckit_readers}/fsortabl.cc           |     0
 src/{MvObs => eckit_readers}/fsortabl.h            |     0
 src/{MvObs => eckit_readers}/fstatime.cc           |     0
 src/{MvObs => eckit_readers}/fstatime.h            |     0
 src/{MvObs => eckit_readers}/inc_iostream.h        |     0
 src/libMagWrapper/CMakeLists.txt                   |    14 +
 src/libMagWrapper/MagPlus.cc                       |   492 +-
 src/libMagWrapper/MagPlus.h                        |    29 +-
 src/libMagWrapper/MagRequest.h                     |     1 +
 src/libMagWrapper/Makefile.am                      |   132 -
 src/libMagWrapper/Makefile.in                      |  1082 -
 src/libTable/Makefile.am                           |    17 -
 src/libTable/Makefile.in                           |   631 -
 src/magics.h                                       |    31 +-
 src/magics.pc.in                                   |    14 +-
 src/magics_config.h                                |   218 -
 src/magics_config.h.in                             |   165 +-
 src/magics_ecmwf_log.h                             |    25 +-
 src/oda/CMakeLists.txt                             |    15 +
 src/oda/Makefile.am                                |    24 -
 src/oda/Makefile.in                                |   675 -
 src/oda/OdaDecoder.cc                              |    49 +-
 src/params/Akima474Method.xml                      |    19 +
 src/params/Akima760Method.xml                      |    23 +
 src/params/Akima761Method.xml                      |    20 +
 src/params/ArrowPlotting.xml                       |    83 +
 src/params/AutomaticContourMethod.xml              |     2 +
 src/params/AutomaticPlotManager.xml                |    29 +
 src/params/Axis.xml                                |   248 +
 src/params/AxisMethod.xml                          |     2 +
 src/params/Bar.xml                                 |    52 +
 src/params/BaseDriver.xml                          |    78 +
 src/params/BinaryDriver.xml                        |     7 +
 src/params/BinaryObject.xml                        |    30 +
 src/params/BinningObject.xml                       |    65 +
 src/params/BothValuePlotMethod.xml                 |    25 +
 src/params/Boundaries.xml                          |    70 +
 src/params/BoxPlotBox.xml                          |    24 +
 src/params/BoxPlotBoxBorder.xml                    |    15 +
 src/params/BoxPlotDecoder.xml                      |    33 +
 src/params/BoxPlotMedian.xml                       |    17 +
 src/params/BoxPlotVisualiser.xml                   |    22 +
 src/params/BoxPlotWhiskerBorder.xml                |    15 +
 src/params/BoxPlotWhiskerBox.xml                   |    16 +
 src/params/BoxPlotWhiskerLine.xml                  |    14 +
 src/params/CMakeLists.txt                          |   335 +
 src/params/CairoDriver.xml                         |    23 +
 src/params/CalculateColourTechnique.xml            |    19 +
 src/params/CalculateHeightTechnique.xml            |     2 +
 src/params/CalmIndicator.xml                       |     2 +
 src/params/CartesianTransformation.xml             |    22 +
 src/params/CdfGraph.xml                            |    27 +
 src/params/CellShading.xml                         |    13 +
 src/params/CircleOriginMarker.xml                  |     2 +
 src/params/Cities.xml                              |    41 +
 src/params/ClassicMtgDecoder.xml                   |    75 +
 src/params/CoastPlotting.xml                       |    17 +
 src/params/Coastlines.xml                          |    35 +
 src/params/ColourTechnique.xml                     |     2 +
 src/params/ContinuousLegendMethod.xml              |     8 +
 src/params/Contour.xml                             |   107 +
 src/params/ContourMethod.xml                       |     2 +
 src/params/CountSelectionType.xml                  |    28 +
 src/params/Curve.xml                               |   101 +
 src/params/CurveArea.xml                           |     8 +
 src/params/DateAxisMethod.xml                      |   116 +
 src/params/DateGribLoopStep.xml                    |    23 +
 src/params/DotGraphShadeStyle.xml                  |    10 +
 src/params/DotOriginMarker.xml                     |     2 +
 src/params/DotPolyShadingMethod.xml                |    20 +
 src/params/DumpShading.xml                         |     4 +
 src/params/DumpShadingWrapper.xml                  |    13 +
 src/params/EfiDataDecoder.xml                      |    12 +
 src/params/EfiGraph.xml                            |    37 +
 src/params/EfiJSon.xml                             |    36 +
 src/params/EfigramDecoder.xml                      |    81 +
 src/params/EpsBufr.xml                             |    57 +
 src/params/EpsCloud.xml                            |    13 +
 src/params/EpsDirection.xml                        |    19 +
 src/params/EpsGraph.xml                            |    81 +
 src/params/EpsPlume.xml                            |    75 +
 src/params/EpsShade.xml                            |    18 +
 src/params/EpsWave.xml                             |     9 +
 src/params/EpsWind.xml                             |    20 +
 src/params/EpsXmlInput.xml                         |    17 +
 src/params/EpsgramDecoder.xml                      |   117 +
 src/params/EquidistantTableMode.xml                |     4 +
 src/params/FixedTableMode.xml                      |    10 +
 src/params/FlagPlotting.xml                        |    74 +
 src/params/FortranRootSceneNode.xml                |    51 +
 src/params/FortranSceneNode.xml                    |    81 +
 src/params/FortranViewNode.xml                     |   150 +
 src/params/GDDriver.xml                            |    26 +
 src/params/GenericSQLDecoder.xml                   |    35 +
 src/params/GeoPointsDecoder.xml                    |     7 +
 src/params/GeoRectangularProjection.xml            |    29 +
 src/params/Graph.xml                               |     3 +
 src/params/GraphArrow.xml                          |     9 +
 src/params/GraphFlag.xml                           |     9 +
 src/params/GraphPlotting.xml                       |    25 +
 src/params/GraphShade.xml                          |    10 +
 src/params/GraphShadeStyle.xml                     |     6 +
 src/params/GribAddressByteMode.xml                 |     2 +
 src/params/GribAddressMode.xml                     |     2 +
 src/params/GribAddressRecordMode.xml               |     2 +
 src/params/GribDecoder.xml                         |    91 +
 src/params/GribLoop.xml                            |    65 +
 src/params/GribLoopStep.xml                        |     2 +
 src/params/GridPlotting.xml                        |    27 +
 src/params/GridShading.xml                         |     8 +
 src/params/HatchGraphShadeStyle.xml                |     6 +
 src/params/HatchPolyShadingMethod.xml              |    18 +
 src/params/HeightTechnique.xml                     |     2 +
 src/params/HiLo.xml                                |    80 +
 src/params/HiLoBase.xml                            |     2 +
 src/params/HiLoBoth.xml                            |     2 +
 src/params/HiLoMarker.xml                          |    22 +
 src/params/HiLoMarkerBase.xml                      |     2 +
 src/params/HiLoNumber.xml                          |    12 +
 src/params/HiLoTechnique.xml                       |    24 +
 src/params/HiLoText.xml                            |    19 +
 src/params/HighHiLo.xml                            |     2 +
 src/params/Histogram.xml                           |    62 +
 src/params/HistogramLegendMethod.xml               |    40 +
 src/params/HyperAxisMethod.xml                     |     2 +
 src/params/ImageCalculateColourTechnique.xml       |    19 +
 src/params/ImageListColourTechnique.xml            |     7 +
 src/params/ImagePlotting.xml                       |    39 +
 src/params/ImportAction.xml                        |    23 +
 src/params/ImportObjectHandler.xml                 |    26 +
 src/params/ImportPlot.xml                          |    49 +
 src/params/InputData.xml                           |    88 +
 src/params/InputMatrix.xml                         |    49 +
 src/params/InputMatrixIrregularInterpretor.xml     |    19 +
 src/params/InputMatrixRegularInterpretor.xml       |    79 +
 src/params/IntervalSelectionType.xml               |    17 +
 src/params/IsoHighlight.xml                        |    31 +
 src/params/IsoLabel.xml                            |    72 +
 src/params/IsoPlot.xml                             |   144 +
 src/params/IsoShading.xml                          |    40 +
 src/params/KMLDriver.xml                           |    56 +
 src/params/LabelPlotting.xml                       |    61 +
 src/params/LandgramBox.xml                         |    32 +
 src/params/LandgramDecoder.xml                     |    17 +
 src/params/LegendMethod.xml                        |     2 +
 src/params/LegendVisitor.xml                       |   241 +
 src/params/LevelListSelectionType.xml              |    13 +
 src/params/LevelSelection.xml                      |    24 +
 src/params/ListColourTechnique.xml                 |     8 +
 src/params/ListHeightTechnique.xml                 |     2 +
 src/params/LogarithmicAxisMethod.xml               |     2 +
 src/params/LogoPlotting.xml                        |     2 +
 src/params/LookupTableMode.xml                     |    19 +
 src/params/LowHiLo.xml                             |     2 +
 src/params/MagnifierVisitor.xml                    |    53 +
 src/params/MapGenDecoder.xml                       |    11 +
 src/params/MarkerShadingTechnique.xml              |    17 +
 src/params/MarkerValuePlotMethod.xml               |    25 +
 src/params/MercatorProjection.xml                  |     2 +
 src/params/MetaData.xml                            |    27 +
 src/params/MetgramCurve.xml                        |    24 +
 src/params/MetgramFlags.xml                        |    15 +
 src/params/MetgramGraph.xml                        |    12 +
 src/params/MingDriver.xml                          |     7 +
 src/params/MvRootSceneNode.xml                     |    52 +
 src/params/NetcdfDecoder.xml                       |    26 +
 src/params/NetcdfGeoMatrixInterpretor.xml          |    38 +
 src/params/NetcdfGeoPolarMatrixInterpretor.xml     |    19 +
 src/params/NetcdfGeoVectorInterpretor.xml          |    20 +
 src/params/NetcdfGeopointsInterpretor.xml          |    11 +
 src/params/NetcdfInterpretor.xml                   |    42 +
 src/params/NetcdfMatrixInterpretor.xml             |    32 +
 src/params/NetcdfOrcaInterpretor.xml               |    27 +
 src/params/NetcdfVectorInterpretor.xml             |    20 +
 src/params/NetcdfXYpointsInterpretor.xml           |    21 +
 src/params/NoBinningObject.xml                     |     2 +
 src/params/NoBoundaries.xml                        |     4 +
 src/params/NoBoxPlotBoxBorder.xml                  |     4 +
 src/params/NoBoxPlotMedian.xml                     |     4 +
 src/params/NoCalmIndicator.xml                     |     2 +
 src/params/NoCities.xml                            |     4 +
 src/params/NoCoastPlotting.xml                     |    81 +
 src/params/NoGraphShade.xml                        |     2 +
 src/params/NoGridPlotting.xml                      |    30 +
 src/params/NoHiLo.xml                              |     4 +
 src/params/NoHiLoMarker.xml                        |     6 +
 src/params/NoIsoHighlight.xml                      |     2 +
 src/params/NoIsoLabel.xml                          |     2 +
 src/params/NoIsoPlot.xml                           |     2 +
 src/params/NoIsoShading.xml                        |     2 +
 src/params/NoLabelPlotting.xml                     |     6 +
 src/params/NoLegendNode.xml                        |     2 +
 src/params/NoLegendVisitor.xml                     |     2 +
 src/params/NoLogoPloting.xml                       |     3 +
 src/params/NoLogoPlotting.xml                      |     3 +
 src/params/NoMagnifierVisitor.xml                  |     2 +
 src/params/NoOriginMarker.xml                      |     2 +
 src/params/NoOutLayerTechnique.xml                 |     2 +
 src/params/NoPageID.xml                            |     4 +
 src/params/NoPreviewVisitor.xml                    |     2 +
 src/params/NoTitle.xml                             |     2 +
 src/params/NoValuePlot.xml                         |     4 +
 src/params/ObsCloud.xml                            |     6 +
 src/params/ObsDecoder.xml                          |    23 +
 src/params/ObsDemoItem2.xml                        |     9 +
 src/params/ObsDewPoint.xml                         |     4 +
 src/params/ObsJSon.xml                             |     9 +
 src/params/ObsPlotting.xml                         |   183 +
 src/params/ObsStatDecoder.xml                      |    13 +
 src/params/ObsTable.xml                            |     9 +
 src/params/OdaGeoDecoder.xml                       |    40 +
 src/params/OdaXYDecoder.xml                        |    39 +
 src/params/OdbDecoder.xml                          |    54 +
 src/params/OriginMarker.xml                        |     2 +
 src/params/OutputHandler.xml                       |    14 +
 src/params/PageID.xml                              |    60 +
 src/params/ParamGribLoopStep.xml                   |     4 +
 src/params/PolarStereographicProjection.xml        |    76 +
 src/params/PolyShadingMethod.xml                   |     2 +
 src/params/PolyShadingTechnique.xml                |    10 +
 src/params/PositionListAxisMethod.xml              |     2 +
 src/params/PostScriptDriver.xml                    |    20 +
 src/params/PpmDecoder.xml                          |    26 +
 src/params/PreviewVisitor.xml                      |     2 +
 src/params/Proj4Bonne.xml                          |     2 +
 src/params/Proj4Collignon.xml                      |     2 +
 src/params/Proj4EPSG32661.xml                      |     2 +
 src/params/Proj4EPSG3857.xml                       |     2 +
 src/params/Proj4EPSG4326.xml                       |     2 +
 src/params/Proj4Efas.xml                           |     2 +
 src/params/Proj4Geos.xml                           |     2 +
 src/params/Proj4Geose.xml                          |     2 +
 src/params/Proj4Geosw.xml                          |     2 +
 src/params/Proj4Goode.xml                          |     2 +
 src/params/Proj4Google.xml                         |     2 +
 src/params/Proj4Lambert.xml                        |     2 +
 src/params/Proj4LambertNorthAtlantic.xml           |     2 +
 src/params/Proj4Meteosat0.xml                      |     2 +
 src/params/Proj4Meteosat145.xml                    |     2 +
 src/params/Proj4Meteosat57.xml                     |     2 +
 src/params/Proj4Mollweide.xml                      |     2 +
 src/params/Proj4PolarNorth.xml                     |     2 +
 src/params/Proj4Projection.xml                     |    43 +
 src/params/Proj4Robinson.xml                       |     2 +
 src/params/QtDriver.xml                            |     8 +
 src/params/SDWindMode.xml                          |     2 +
 src/params/SVGDriver.xml                           |    29 +
 src/params/SampleContourMethod.xml                 |    12 +
 src/params/SelectionMode.xml                       |    27 +
 src/params/ShadingTechnique.xml                    |     2 +
 src/params/ShapeDecoder.xml                        |     8 +
 src/params/SimpleOutLayerTechnique.xml             |     2 +
 src/params/SimplePolyline.xml                      |    98 +
 src/params/SimplePolylineInput.xml                 |    28 +
 src/params/Streamlines.xml                         |    40 +
 src/params/SymbolAdvancedTableMode.xml             |   197 +
 src/params/SymbolIndividualMode.xml                |    77 +
 src/params/SymbolInput.xml                         |    40 +
 src/params/SymbolMode.xml                          |     3 +
 src/params/SymbolPlotting.xml                      |   163 +
 src/params/SymbolTableMode.xml                     |    30 +
 src/params/TableDecoder.xml                        |    83 +
 src/params/TaylorGrid.xml                          |   161 +
 src/params/TaylorProjection.xml                    |    18 +
 src/params/TephiGrid.xml                           |   422 +
 src/params/TephiInfo.xml                           |     2 +
 src/params/Tephigram.xml                           |    27 +
 src/params/TextVisitor.xml                         |   376 +
 src/params/Title.xml                               |    42 +
 src/params/TitleBase.xml                           |     2 +
 src/params/TitleTemplate.xml                       |    11 +
 src/params/Transformation.xml                      |     2 +
 src/params/UVWindMode.xml                          |     2 +
 src/params/UserLogoPlotting.xml                    |    49 +
 src/params/VDWindMode.xml                          |     2 +
 src/params/ValuePlot.xml                           |    17 +
 src/params/ValuePlotBase.xml                       |     2 +
 src/params/ValuePlotMethod.xml                     |    45 +
 src/params/Wind.xml                                |    26 +
 src/params/WindMode.xml                            |     2 +
 src/params/WindPlotting.xml                        |   131 +
 src/params/WrepJSon.xml                            |    85 +
 src/params/WrepRootNode.xml                        |    23 +
 src/params/XCoordinate.xml                         |     2 +
 src/params/XDateCoordinate.xml                     |    24 +
 src/params/XHyperCoordinate.xml                    |    32 +
 src/params/XLogarithmicCoordinate.xml              |    26 +
 src/params/XRegularCoordinate.xml                  |    27 +
 src/params/XYList.xml                              |   126 +
 src/params/XmlBasicNode.xml                        |   147 +
 src/params/XmlBox.xml                              |    45 +
 src/params/XmlLegendNode.xml                       |     2 +
 src/params/XmlPage.xml                             |    25 +
 src/params/XmlRootNode.xml                         |    47 +
 src/params/XmlSceneNode.xml                        |   122 +
 src/params/XmlSubPage.xml                          |    36 +
 src/params/XmlViewNode.xml                         |    23 +
 src/params/YCoordinate.xml                         |     2 +
 src/params/YDateCoordinate.xml                     |    29 +
 src/params/YHyperCoordinate.xml                    |    38 +
 src/params/YLogarithmicCoordinate.xml              |    29 +
 src/params/YRegularCoordinate.xml                  |    27 +
 src/params/todo.xml                                |   106 +
 src/terralib/CMakeLists.txt                        |   132 +
 src/terralib/Makefile.am                           |   138 -
 src/terralib/Makefile.in                           |  1706 --
 src/terralib/jpeg/ijl.h                            |  1513 ++
 src/terralib/jpeg/jpeg.h                           |    95 +
 src/terralib/kernel/TeAkimaInterpolator.cpp        |  1067 +
 src/terralib/kernel/TeBlockLoader.cpp              |   171 +
 src/terralib/kernel/TeBlockLoader.h                |    95 +
 src/terralib/kernel/TeCommunicator.h               |   413 +
 src/terralib/kernel/TeConsoleErrorMessage.cpp      |    29 +
 src/terralib/kernel/TeConsoleErrorMessage.h        |    62 +
 src/terralib/kernel/TeDecoderDatabase.cpp          |     8 +-
 src/terralib/kernel/TeDecoderJPEG.cpp              |   233 +
 src/terralib/kernel/TeDecoderJPEG.h                |    81 +
 src/terralib/kernel/TeDecoderTIFF.cpp              |  1214 +
 src/terralib/kernel/TeDecoderTIFF.h                |   185 +
 src/terralib/kernel/TeExternalTheme.cpp            |     2 +-
 src/terralib/kernel/TeGeometryAlgorithms.cpp       |     4 +-
 src/terralib/kernel/TeInitRasterDecoders.cpp       |     3 +
 .../kernel/TeProxMatrixConstructionStrategy.cpp    |     6 +-
 src/terralib/kernel/TeProxMatrixImplementation.h   |     2 +-
 src/terralib/kernel/TeRedBlackTree.h               |   763 +
 src/terralib/kernel/TeSTEvent.cpp                  |     2 +-
 src/terralib/kernel/TeSparseMatrix.h               |   274 +
 src/terralib/kernel/TeSpatialOperations.cpp        |     6 +-
 src/terralib/kernel/TeStatistics.h                 |     6 +-
 src/terralib/kernel/TeTheme.cpp                    |     2 +-
 src/terralib/kernel/dynpq.h                        |     3 +-
 src/terralib/kernel/graph.h                        |    14 +-
 src/terralib/utils/TeColorUtils.cpp                |   780 +
 src/terralib/utils/TeColorUtils.h                  |    92 +
 src/terralib/utils/TeDatabaseUtils.cpp             |   582 +
 src/terralib/utils/TeUpdateDBVersion.cpp           |  1504 ++
 src/terralib/utils/TeUpdateDBVersion.h             |    60 +
 src/terralib/utils/mtrand.cpp                      |    50 +
 src/terralib/utils/mtrand.h                        |   153 +
 src/visualisers/Akima474MethodAttributes.h         |    82 -
 src/visualisers/Akima760.cc                        |    77 +-
 src/visualisers/Akima760Method.cc                  |    52 +
 src/visualisers/Akima760MethodAttributes.h         |    82 -
 src/visualisers/Akima761.cc                        |  3408 +++
 src/visualisers/Akima761Method.cc                  |    52 +
 src/visualisers/ArrowPlotting.cc                   |    45 +-
 src/visualisers/ArrowPlotting.h                    |    10 +-
 src/visualisers/Axis.cc                            |    10 +-
 src/visualisers/AxisAttributes.cc                  |   463 -
 src/visualisers/AxisAttributes.h                   |   133 -
 src/visualisers/AxisControl.cc                     |    77 +
 src/visualisers/AxisControl.h                      |   115 +
 src/visualisers/AxisGrid.cc                        |   125 +
 src/visualisers/AxisGrid.h                         |   125 +
 src/visualisers/AxisItem.cc                        |    41 +-
 src/visualisers/AxisItem.h                         |    18 +-
 src/visualisers/AxisLine.cc                        |   119 +
 src/visualisers/AxisLine.h                         |   129 +
 src/visualisers/AxisMethod.cc                      |    10 +-
 src/visualisers/AxisMethod.h                       |    10 +-
 src/visualisers/AxisMethodAttributes.cc            |    91 -
 src/visualisers/AxisMinorTick.cc                   |   101 +
 src/visualisers/AxisMinorTick.h                    |   117 +
 src/visualisers/AxisTick.cc                        |   116 +
 src/visualisers/AxisTick.h                         |   118 +
 src/visualisers/AxisTickLabelType.cc               |   107 +
 src/visualisers/AxisTickLabelType.h                |   131 +
 src/visualisers/AxisTip.cc                         |    98 +
 src/visualisers/AxisTip.h                          |   116 +
 src/visualisers/AxisType.cc                        |    54 +
 src/visualisers/AxisType.h                         |    86 +
 src/visualisers/BothValuePlotMethodAttributes.cc   |   125 -
 src/visualisers/BoundariesAttributes.h             |    93 -
 src/visualisers/BoxPlotBoxAttributes.cc            |   146 -
 src/visualisers/BoxPlotBoxBorderAttributes.cc      |   117 -
 src/visualisers/BoxPlotItem.cc                     |    45 +-
 src/visualisers/BoxPlotMedianAttributes.cc         |   117 -
 src/visualisers/BoxPlotVisualiser.cc               |    18 +-
 src/visualisers/BoxPlotVisualiserAttributes.cc     |   132 -
 src/visualisers/BoxPlotWhiskerBorderAttributes.cc  |   119 -
 src/visualisers/BoxPlotWhiskerBoxAttributes.cc     |   129 -
 src/visualisers/BoxPlotWhiskerLineAttributes.cc    |   118 -
 src/visualisers/CMakeLists.txt                     |   204 +
 src/visualisers/CalcStreamlines.cc                 |   861 +
 src/visualisers/CalcStreamlines.h                  |    85 +
 .../CalculateColourTechniqueAttributes.h           |    85 -
 src/visualisers/CdfGraphAttributes.cc              |   137 -
 src/visualisers/CellShading.cc                     |    55 +
 src/visualisers/CellShading.h                      |    20 +
 src/visualisers/CellShadingAttributes.h            |    82 -
 src/visualisers/CoastPlottingAttributes.h          |    84 -
 src/visualisers/CoastlinesAttributes.h             |    86 -
 src/visualisers/ColourSelection.cc                 |    53 +
 src/visualisers/ColourSelectionCount.cc            |    61 +
 src/visualisers/ColourSelectionList.cc             |    59 +
 src/visualisers/ColourTechnique.cc                 |    29 +-
 src/visualisers/ColourTechnique.h                  |    11 +-
 src/visualisers/ContinuousLegendMethodAttributes.h |    81 -
 src/visualisers/Contour.cc                         |    41 +-
 src/visualisers/Contour.h                          |     1 +
 src/visualisers/ContourAttributes.cc               |   206 -
 src/visualisers/ContourAttributes.h                |    93 -
 src/visualisers/ContourLibrary.cc                  |   168 +
 src/visualisers/ContourLibrary.h                   |   131 +-
 src/visualisers/CountSelectionType.cc              |     4 +-
 src/visualisers/CountSelectionType.h               |     2 +-
 src/visualisers/CountSelectionTypeAttributes.h     |    83 -
 src/visualisers/Curve.cc                           |   102 +-
 src/visualisers/Curve.h                            |     5 +
 src/visualisers/DateAxis.cc                        |    40 +-
 src/visualisers/DefinitionTable.h                  |     2 +-
 .../{DefinitionTable.cc => DefinitionTable.hcc}    |     0
 src/visualisers/DotPolyShadingMethodAttributes.h   |    84 -
 src/visualisers/EfiGraphAttributes.cc              |   172 -
 src/visualisers/EpsCloudAttributes.cc              |   110 -
 src/visualisers/EpsGraph.cc                        |   285 +-
 src/visualisers/EpsGraph.h                         |     2 +-
 src/visualisers/EpsGraphAttributes.cc              |   312 -
 src/visualisers/EpsPlumeAttributes.cc              |   166 -
 src/visualisers/EpsShadeAttributes.cc              |   123 -
 src/visualisers/EpsWindAttributes.cc               |   117 -
 src/visualisers/FixedTableModeAttributes.h         |    82 -
 src/visualisers/FlagPlotting.cc                    |   174 +-
 src/visualisers/FlagPlotting.h                     |    16 +-
 src/visualisers/FloatSelection.cc                  |    74 +
 src/visualisers/GraphShadeStyle.cc                 |     8 +
 src/visualisers/GridPlottingAttributes.h           |    84 -
 src/visualisers/GridShadingAttributes.h            |    81 -
 src/visualisers/HatchPolyShadingMethodAttributes.h |    83 -
 src/visualisers/HeightSelection.cc                 |    53 +
 src/visualisers/HiLoAttributes.cc                  |   187 -
 src/visualisers/HiLoAttributes.h                   |    92 -
 src/visualisers/HiLoMarkerAttributes.h             |    84 -
 src/visualisers/HiLoNumber.h                       |     4 +-
 src/visualisers/HiLoNumberAttributes.h             |    82 -
 src/visualisers/HiLoTechnique.cc                   |    52 -
 src/visualisers/HiLoTechniqueAttributes.h          |    85 -
 src/visualisers/HiLoTextAttributes.h               |    83 -
 src/visualisers/Histogram.cc                       |    13 +-
 src/visualisers/HistogramAttributes.cc             |   175 -
 src/visualisers/HistogramLegendMethodAttributes.h  |    92 -
 src/visualisers/ImageListColourTechnique.h         |     2 +-
 src/visualisers/ImagePlotting.cc                   |   292 -
 src/visualisers/ImagePlotting.h                    |    86 -
 src/visualisers/ImagePlottingAttributes.h          |    86 -
 src/visualisers/ImportPlotAttributes.h             |    91 -
 src/visualisers/IntervalSelectionType.cc           |    47 +-
 src/visualisers/IntervalSelectionType.h            |     2 +-
 src/visualisers/IntervalSelectionTypeAttributes.h  |    82 -
 src/visualisers/IsoHelper.cc                       |     6 +-
 src/visualisers/IsoHelper.h                        |     2 +-
 src/visualisers/IsoHighlightAttributes.h           |    86 -
 src/visualisers/IsoLabel.cc                        |     6 +-
 src/visualisers/IsoLabelAttributes.h               |    89 -
 src/visualisers/IsoPlot.cc                         |  2402 +-
 src/visualisers/IsoPlot.h                          |   126 +-
 src/visualisers/IsoPlotAttributes.cc               |   222 -
 src/visualisers/IsoPlotAttributes.h                |    97 -
 src/visualisers/IsoShading.cc                      |    34 +
 src/visualisers/IsoShading.h                       |     4 +
 src/visualisers/IsoShadingAttributes.cc            |   149 -
 src/visualisers/IsoShadingAttributes.h             |    86 -
 src/visualisers/LabelPlottingAttributes.h          |    90 -
 src/visualisers/LabelPlottingBase.h                |   106 +
 src/visualisers/LandgramBox.cc                     |   144 -
 src/visualisers/LandgramBox.h                      |    87 -
 src/visualisers/LegendBoxAttributes.h              |    80 -
 src/visualisers/LegendMethod.cc                    |     5 +-
 src/visualisers/LevelListSelectionType.h           |     2 +-
 src/visualisers/LevelListSelectionTypeAttributes.h |    81 -
 src/visualisers/LevelSelection.cc                  |     7 +-
 src/visualisers/LevelSelection.h                   |     2 +-
 src/visualisers/LevelSelectionAttributes.h         |    84 -
 src/visualisers/ListColourTechnique.cc             |     2 +
 src/visualisers/ListColourTechnique.h              |     2 +-
 src/visualisers/ListColourTechniqueAttributes.h    |    82 -
 src/visualisers/LookupTableModeAttributes.h        |    83 -
 src/visualisers/Makefile.am                        |   192 -
 src/visualisers/Makefile.in                        |  1194 -
 src/visualisers/MarkerShadingTechniqueAttributes.h |    83 -
 src/visualisers/MetgramCurveAttributes.cc          |   137 -
 src/visualisers/MetgramFlagsAttributes.cc          |   116 -
 src/visualisers/MetgramGraphAttributes.cc          |   111 -
 src/visualisers/NoGridPlottingAttributes.h         |    84 -
 src/visualisers/ObsItem.h                          |    15 +-
 src/visualisers/ObsItemFamily.cc                   |   357 +-
 src/visualisers/ObsItemFamily.h                    |   139 +-
 src/visualisers/ObsPlotting.cc                     |    27 +-
 src/visualisers/ObsPlottingAttributes.h            |    81 -
 src/visualisers/ObsStatGraph.h                     |    90 -
 src/visualisers/ObsTable.cc                        |     5 +-
 src/visualisers/ObsTable.h                         |    11 +-
 src/visualisers/PolyShadingMethod.cc               |    11 +-
 src/visualisers/PolyShadingTechnique.h             |     4 +-
 src/visualisers/PolyShadingTechniqueAttributes.cc  |   117 -
 src/visualisers/PolyShadingTechniqueAttributes.h   |    82 -
 src/visualisers/SampleContourMethodAttributes.h    |    82 -
 src/visualisers/SegmentJoiner.cc                   |    54 +-
 src/visualisers/SegmentJoiner.h                    |    21 +-
 src/visualisers/ShadingTechnique.h                 |    11 +-
 src/visualisers/SimplePolylineVisualiser.h         |     1 +
 src/visualisers/Streamlines.cc                     |   111 +
 src/visualisers/Streamlines.h                      |    83 +
 src/visualisers/SymbolAdvancedTableMode.cc         |     6 +-
 src/visualisers/SymbolAdvancedTableMode.h          |     1 +
 src/visualisers/SymbolIndividualModeAttributes.h   |    98 -
 src/visualisers/SymbolMode.cc                      |     8 +-
 src/visualisers/SymbolTableModeAttributes.h        |    86 -
 src/visualisers/TephiGrid.cc                       |   428 +
 src/visualisers/TephiGrid.h                        |    83 +
 src/visualisers/Title.h                            |   123 -
 src/visualisers/TitleBase.h                        |   130 -
 src/visualisers/UserDate.cc                        |    62 +
 src/visualisers/UserDate.h                         |    93 +
 src/visualisers/VisDefInfo.cc                      |     2 +-
 src/visualisers/Wind.cc                            |    23 +-
 src/visualisers/Wind.h                             |     1 +
 src/visualisers/WindPlotting.cc                    |   137 +-
 src/visualisers/WindPlotting.h                     |    19 +-
 src/web/CMakeLists.txt                             |    12 +
 src/web/MagConfig.cc                               |    20 +-
 src/web/MagConfig.h                                |     3 +
 src/web/MagJSon.cc                                 |     4 +-
 src/web/Makefile.am                                |    24 -
 src/web/Makefile.in                                |   679 -
 src/web/ObsJSon.cc                                 |    59 +-
 src/web/ObsJSon.h                                  |     4 +-
 src/web/ObsJSonAttributes.cc                       |   102 -
 src/web/WrepJSon.cc                                |   327 +-
 src/web/WrepJSon.h                                 |     9 +-
 src/web/WrepJSonAttributes.cc                      |   228 -
 src/web/json_spirit.h                              |    12 +-
 src/web/json_spirit.vcproj                         |   213 +
 src/web/json_spirit_error_position.h               |    54 +
 src/web/json_spirit_reader.cpp                     |   758 +-
 src/web/json_spirit_reader.h                       |    53 +-
 src/web/json_spirit_reader_template.h              |   650 +
 src/web/json_spirit_stream_reader.h                |    70 +
 src/web/json_spirit_utils.h                        |    16 +-
 src/web/json_spirit_value.h                        |   287 +-
 src/web/json_spirit_writer.cpp                     |   355 +-
 src/web/json_spirit_writer.h                       |    61 +-
 src/web/json_spirit_writer_options.h               |    33 +
 src/web/json_spirit_writer_template.h              |   387 +
 src/xml/ActionRoutines.xml                         |   167 -
 src/xml/Akima.xml                                  |    69 -
 src/xml/Axis.xml                                   |   372 -
 src/xml/BaseDriver.xml                             |    79 -
 src/xml/BinaryDriver.xml                           |    35 -
 src/xml/BinningObject.xml                          |    75 -
 src/xml/BoxPlot.xml                                |   193 -
 src/xml/CairoDriver.xml                            |    22 -
 src/xml/CoastPlotting.xml                          |   233 -
 src/xml/Coastlines.xml                             |    40 -
 src/xml/Contour.xml                                |    94 -
 src/xml/Drivers.xml                                |    26 -
 src/xml/EpsJSon.xml                                |   141 -
 src/xml/Epsgram.xml                                |   812 -
 src/xml/Frame.xml                                  |    45 -
 src/xml/GDDriver.xml                               |    33 -
 src/xml/GeoRectangularProjection.xml               |    63 -
 src/xml/Geopoints.xml                              |   186 -
 src/xml/Grib.xml                                   |   232 -
 src/xml/GridPlotting.xml                           |    71 -
 src/xml/HiLo.xml                                   |   186 -
 src/xml/HiLoMarker.xml                             |    41 -
 src/xml/HiLoNumber.xml                             |    15 -
 src/xml/HiLoTechnique.xml                          |    32 -
 src/xml/HiLoText.xml                               |    23 -
 src/xml/Histogram.xml                              |    79 -
 src/xml/ImagePlotting.xml                          |   264 -
 src/xml/Import.xml                                 |   119 -
 src/xml/InputData.xml                              |    94 -
 src/xml/InputMatrix.xml                            |   151 -
 src/xml/IsoHighlight.xml                           |    43 -
 src/xml/IsoLabel.xml                               |    85 -
 src/xml/IsoPlot.xml                                |    86 -
 src/xml/IsoShading.xml                             |   177 -
 src/xml/KMLDriver.xml                              |    58 -
 src/xml/LabelPlotting.xml                          |    84 -
 src/xml/Landgram.xml                               |    63 -
 src/xml/Layout.xml                                 |    54 -
 src/xml/Legend.xml                                 |   269 -
 src/xml/LevelSelection.xml                         |   107 -
 src/xml/Makefile.am                                |   134 -
 src/xml/Makefile.in                                |   526 -
 src/xml/MetaData.xml                               |    37 -
 src/xml/NetcdfDecoder.xml                          |    47 -
 src/xml/NetcdfInterpretor.xml                      |   249 -
 src/xml/Obs.xml                                    |    26 -
 src/xml/ObsJSon.xml                                |    11 -
 src/xml/ObsPlotting.xml                            |   233 -
 src/xml/ObsStat.xml                                |    32 -
 src/xml/OdaDecoder.xml                             |   100 -
 src/xml/Page.xml                                   |   103 -
 src/xml/PageID.xml                                 |   124 -
 src/xml/PolarStereographicProjection.xml           |   116 -
 src/xml/PostScriptDriver.xml                       |    29 -
 src/xml/Proj4Projection.xml                        |    73 -
 src/xml/QtDriver.xml                               |    39 -
 src/xml/SVGDriver.xml                              |    38 -
 src/xml/SatelliteProjection.xml                    |    19 -
 src/xml/SelectionMode.xml                          |    39 -
 src/xml/SubPage.xml                                |   214 -
 src/xml/SubPageProj4.xml                           |   212 -
 src/xml/SuperPage.xml                              |   183 -
 src/xml/SymbolInput.xml                            |    43 -
 src/xml/SymbolPlotting.xml                         |   441 -
 src/xml/TableDecoder.xml                           |    93 -
 src/xml/Taylor.xml                                 |   193 -
 src/xml/TextVisitor.xml                            |   405 -
 src/xml/Title.xml                                  |    54 -
 src/xml/TitleTemplate.xml                          |    16 -
 src/xml/ValuePlot.xml                              |   130 -
 src/xml/View.xml                                   |   348 -
 src/xml/Wind.xml                                   |   343 -
 src/xml/XYList.xml                                 |   154 -
 src/xml/XYTransformation.xml                       |   267 -
 src/xml/XmlBox.xml                                 |    57 -
 src/xml/XmlPage.xml                                |    39 -
 src/xml/XmlSubPage.xml                             |    46 -
 src/xml/graph_params.xml                           |   233 -
 src/xml/magml.xml                                  |   114 -
 src/xml/output.xml                                 |    16 -
 test/C/Makefile.am                                 |    25 -
 test/C/Makefile.in                                 |   724 -
 test/C/cairo.c                                     |    52 -
 test/C/contours.c                                  |    68 -
 test/C/drivers.c                                   |    40 -
 test/C/land_sea_shade.c                            |    72 -
 test/C/large_area.c                                |    61 -
 test/CMakeLists.txt                                |   101 +
 test/MagML/Makefile.am                             |     7 -
 test/MagML/Makefile.in                             |   541 -
 test/MagML/drivers.magml                           |   123 -
 test/Makefile.am                                   |    18 -
 test/Makefile.in                                   |   656 -
 test/bufr.f90                                      |    31 +
 test/bufr.py                                       |    53 +
 test/cairo.f90                                     |    26 +
 test/cairo.py                                      |    61 +
 test/coast.f90                                     |    22 +
 test/coast.py                                      |    40 +
 test/data.bufr                                     |   Bin 0 -> 1070184 bytes
 test/data/cloudcover.grib                          |   Bin 1557480 -> 0 bytes
 test/data/t2m_fc12.grib                            |   Bin 82680 -> 0 bytes
 test/data/t850_fc_12.grib                          |   Bin 9840 -> 0 bytes
 test/data/uv500.grb                                |   Bin 116400 -> 0 bytes
 test/data/wind30m_fc12.grib                        |   Bin 166800 -> 0 bytes
 test/data/z500.grb                                 |   Bin 58200 -> 0 bytes
 test/data/z500_fc_12.grib                          |   Bin 9840 -> 0 bytes
 test/fortran/Makefile.am                           |    15 -
 test/fortran/Makefile.in                           |   692 -
 test/fortran/boxplot.f                             |   168 -
 test/fortran/coast_only.f                          |    52 -
 test/fortran/layout_test.f                         |   572 -
 test/fortran/shaded_isolines.f                     |   131 -
 test/fortran/wind.f                                |    69 -
 test/grib.f90                                      |    38 +
 test/grib.py                                       |    71 +
 test/odb.py                                        |    32 +
 test/python/Makefile.am                            |     7 -
 test/python/Makefile.in                            |   541 -
 test/python/magmacro_example.py                    |    35 -
 test/python/simple.py                              |    33 -
 test/synop.bufr                                    |   Bin 0 -> 1070184 bytes
 test/test.odb                                      |   Bin 0 -> 235010 bytes
 tools/CMakeLists.txt                               |    27 +
 tools/Makefile.am                                  |     9 -
 tools/Makefile.in                                  |   510 -
 tools/RPM_build_specs/EmosLib.spec                 |   118 +
 tools/RPM_build_specs/emoslib/EmosLib.spec         |   155 +
 tools/RPM_build_specs/emoslib/generateRPM.sh       |    47 +
 tools/RPM_build_specs/grib_api/rpms/grib_api.spec  |    96 +
 tools/axis2doc.py                                  |   285 +
 tools/beau.py                                      |    10 +
 tools/beautify-xml.py                              |    14 +
 tools/generateDebugLibs.sh                         |    27 +
 tools/magml2json.pl                                |   153 +
 tools/make_wrappers                                |    79 +
 tools/metview.py                                   |    17 +
 tools/newbase.pl                                   |   111 +
 tools/newclass.pl                                  |   117 +
 tools/newdriver.pl                                 |    34 +-
 tools/newfactory.pl                                |   147 +
 tools/newprojection.pl                             |   435 +
 tools/newtemplate.pl                               |   118 +
 tools/shp_process.ksh                              |   293 +
 tools/x                                            |     1 +
 tools/xml2cc.pl                                    |     0
 tools/xml2cc.pl.workshop                           |   742 +
 tools/xml2cc_list.pl                               |   140 +
 tools/xml2cc_new.pl                                |     1 +
 tools/xml2doc.pl                                   |   147 +
 tools/xml2doc.py                                   |   203 +
 tools/xml2dtd.pl                                   |     0
 tools/xml2html.py                                  |   197 +
 tools/xml2icon.pl                                  |   149 +
 tools/xml2mv.pl                                    |     4 +-
 tools/xml2mv.py                                    |   848 +
 tools/xml2odt.py                                   |    87 +
 tools/xml2odt.sh                                   |    40 +
 tools/xml2split.py                                 |    70 +
 version.sh                                         |     4 +-
 1267 files changed, 83103 insertions(+), 111486 deletions(-)

diff --cc debian/changelog
index 01aa1d9,869e9d9..ca2937b
--- a/debian/changelog
+++ b/debian/changelog
@@@ -2,7 -2,7 +2,8 @@@ magics++ (2.24.4-1) UNRELEASED; urgency
  
    * New upstream release.
    * Standards-Version: 3.9.6
 +  * emoslib now builds on mips, so remove exception for its dependency
+   * Move to cmake-based build. Update patches
  
   -- Alastair McKinstry <mckinstry at debian.org>  Wed, 29 Apr 2015 08:09:32 +0100
  
diff --cc debian/patches/python3.patch
index 03c430a,0000000..e8935d1
mode 100644,000000..100644
--- a/debian/patches/python3.patch
+++ b/debian/patches/python3.patch
@@@ -1,803 -1,0 +1,1110 @@@
 +Index: magics++-2.24.4/tools/axis2doc.py
 +===================================================================
 +--- magics++-2.24.4.orig/tools/axis2doc.py
 ++++ magics++-2.24.4/tools/axis2doc.py
 +@@ -1,4 +1,6 @@
 + #!/usr/bin/python
 ++
 ++from __future__ import print_function
 + from xml.sax.handler import ContentHandler
 + from xml.sax import make_parser
 + from types import *
 +@@ -40,7 +42,7 @@ class ObjectHandler(ContentHandler):
 + 		
 + 	def anyset(p, attrs):
 + 		p["set"] = "psetc"
 +-		if  attrs.has_key("values") :
 ++		if  "values" in attrs:
 + 			val = attrs["values"]
 + 			values = val.split("/")
 + 			p["values"] = values
 +@@ -88,21 +90,18 @@ class ObjectHandler(ContentHandler):
 + 
 + 
 + 	def get(self, attrs, name, default):
 +-		if  attrs.has_key(name):
 +-			return attrs.get(name)
 +-		else :
 +-			return default
 ++	        return attrs.get(name, default)
 + 
 + 	def newparam(self, attrs):
 + 		p = {}
 + 		self.parameters[attrs.get("name")] = p
 + 		p["name"] = attrs.get("name")
 + 		p["type"] = attrs.get("to")
 +-		if attrs.has_key("metview") :
 ++		if "metview" in attrs:
 + 			p["metview"]= attrs["metview"]
 + 		p["values"] = []
 + 		t = p["type"]
 +-		if  self.types.has_key(t) :
 ++		if  t in self.types:
 + 			self.types[t](p, attrs)
 + 		else :
 + 			p["set"]="psetc"
 +@@ -117,7 +116,7 @@ class ObjectHandler(ContentHandler):
 + 		o["name"] = attrs.get("name")
 + 		o["documentation"] = ""
 + 		o["parameters"] = []
 +-		if  attrs.has_key("inherits") :
 ++		if  "inherits" in attrs:
 + 			o["inherits"]=attrs.get("inherits")
 + 			
 + 		return o
 +@@ -139,12 +138,12 @@ class ObjectHandler(ContentHandler):
 + 		if ( name == "option") : 
 + 			val = attrs.get("fortran")
 + 			self.param["values"].append(val)
 +-			if ( self.param.has_key(val) == False ):
 ++			if val not in self.param:
 + 				self.param[val] = []
 + 			self.param[val].append(attrs.get("name"))
 + 		if ( name == "set" ) : 
 + 			val = attrs.get("value")
 +-			if ( self.param.has_key(val) == False ):
 ++			if val not in self.param:
 + 				self.param[val] = []
 + 			self.param[val].append(attrs.get("name"))
 + 
 +@@ -167,7 +166,7 @@ class ObjectHandler(ContentHandler):
 + 			self.actiondoc= ""
 + 			
 + 	def printDef(self):
 +-		print json.dumps(self.magics, indent=2)
 ++		print (json.dumps(self.magics, indent=2))
 + 	
 + 
 + 	def parse(self, file):
 +@@ -180,21 +179,21 @@ class ObjectHandler(ContentHandler):
 + 
 + 	def prepare(self, defparam):
 + 		param = defparam.copy()
 +-		print "prepare-->"
 +-		print param
 +-		print "<---prepare"
 +-		if param.has_key("values") == False:
 ++		print ("prepare-->")
 ++		print (param)
 ++		print ("<---prepare")
 ++		if "values" not in param:
 + 			return param
 + 		if len(param["values"]) == 0:
 + 			return param
 + 		for val in param["values"]:
 +-			print val + " For " + param["name"]
 ++			print (val + " For " + param["name"])
 + 			newp = []
 +-			if param.has_key(val):
 ++			if val in param):
 + 				for v in param[val]:
 +-					print "prepare-->" + v
 ++					print ("prepare-->" + v)
 + 					# Can be a parameter or another object!
 +-					if self.parameters.has_key(v) :
 ++					if v in self.parameters:
 + 						self.append(newp, v)
 + 					else:
 + 						self.append(newp, self.getList(v))
 +@@ -210,7 +209,7 @@ class ObjectHandler(ContentHandler):
 + 	def getList(self, object):
 + 		definition = self.magics[object] 
 + 		list = []
 +-		if definition.has_key("inherits"):
 ++		if "inherits" in definition:
 + 			self.append(list, self.getList(definition["inherits"]))
 + 		for p in definition["parameters"]:
 + 			list.append(p["name"])
 +@@ -220,8 +219,8 @@ class ObjectHandler(ContentHandler):
 + 
 + 	def buildParam(self, param):
 + 		parameters = []
 +-		if param.has_key("inherits"):
 +-			print param["name"] + " inherits from " + param["inherits"]	
 ++		if "inherits" in param:
 ++			print (param["name"] + " inherits from " + param["inherits"])
 + 			parent = self.buildParam(self.magics[param["inherits"]])
 + 			self.append(parameters, parent) 
 + 		parameters.append(self.prepare(param))
 +@@ -232,8 +231,8 @@ class ObjectHandler(ContentHandler):
 + 	def build(self, params):
 + 		parameters = []
 + 		for p in params:
 +-			print "find class " + p
 +-			if ( self.magics.has_key(p) ) :
 ++			print ("find class " + p)
 ++			if p in self.magics:
 + 				defp = self.magics[p]
 + 			# internal object
 + 				for p in defp["parameters"]:
 +Index: magics++-2.24.4/tools/beau.py
 +===================================================================
 +--- magics++-2.24.4.orig/tools/beau.py
 ++++ magics++-2.24.4/tools/beau.py
 +@@ -1,10 +1,10 @@
 +-
 ++from __future__ import print_function
 + import xml.dom.minidom
 + 
 + xml = xml.dom.minidom.parse("../src/xml/TextVisitor.xml") # or xml.dom.minidom.parseString(xml_string)
 + pretty_xml_as_string = xml.toprettyxml()
 + 
 + 
 +-print pretty_xml_as_string
 ++print (pretty_xml_as_string)
 + 
 + 
 +Index: magics++-2.24.4/tools/xml2doc.py
 +===================================================================
 +--- magics++-2.24.4.orig/tools/xml2doc.py
 ++++ magics++-2.24.4/tools/xml2doc.py
 +@@ -1,4 +1,4 @@
 +-
 ++from __future__ import print_function
 + from xml.sax.handler import ContentHandler
 + from xml.sax import make_parser
 + import sys
 +@@ -122,7 +122,7 @@ class ObjectHandler(ContentHandler):
 + 			if self.inherits != '':
 + 				try:
 + 					file = open("xml/%s.xml" % attrs.get("inherits"), "r")
 +-					print " inherits ->%s" % self.inherits
 ++					print (" inherits ->%s" % self.inherits)
 + 					object = ObjectHandler()
 + 					parser = make_parser()
 + 					object.params = []
 +Index: magics++-2.24.4/tools/xml2html.py
 +===================================================================
 +--- magics++-2.24.4.orig/tools/xml2html.py
 ++++ magics++-2.24.4/tools/xml2html.py
 +@@ -1,4 +1,5 @@
 + #!/usr/bin/python
 ++from __future__ import print_function
 + from xml.sax.handler import ContentHandler
 + from xml.sax import make_parser
 + from types import *
 +@@ -26,7 +27,7 @@ class ObjectHandler(ContentHandler):
 + 		p["type"] = "toggle"
 + 		
 + 	def anyset(p, attrs):
 +-		if  attrs.has_key("values") :
 ++		if  "values" in attrs:
 + 			val = attrs["values"]
 + 			values = val.split("/")
 + 			p["values"] = values
 +@@ -42,7 +43,7 @@ class ObjectHandler(ContentHandler):
 + 
 + 
 + 	def get(self, attrs, name, default):
 +-		if  attrs.has_key(name):
 ++		if  name in attrs:
 + 			return attrs.get(name)
 + 		else :
 + 			return default
 +@@ -53,7 +54,7 @@ class ObjectHandler(ContentHandler):
 + 		p["type"] = attrs.get("to")
 + 		p["values"] = []
 + 		t = p["type"]
 +-		if  self.types.has_key(t) :
 ++		if  t in self.types:
 + 			self.types[t](p, attrs)
 + 		else :
 + 			p["type"]="toggle"
 +@@ -68,9 +69,9 @@ class ObjectHandler(ContentHandler):
 + 		o["name"] = attrs.get("name")
 + 		o["documentation"] = ""
 + 		o["parameters"] = []
 +-		if  attrs.has_key("inherits") :
 ++		if  "inherits" in attrs:
 + 			o["inherits"]=attrs.get("inherits")
 +-			print o["name"] + " inhrits from " + o["inherits"]
 ++			print (o["name"] + " inhrits from " + o["inherits"])
 + 		return o
 + 
 + 	def startElement(self, name, attrs):
 +@@ -90,12 +91,12 @@ class ObjectHandler(ContentHandler):
 + 		if ( name == "option") : 
 + 			val = attrs.get("fortran")
 + 			self.param["values"].append(val)
 +-			if ( self.param.has_key(val) == False ):
 ++			if "val" not in self.param:
 + 				self.param[val] = []
 + 			self.param[val].append(attrs.get("name"))
 + 		if ( name == "set" ) : 
 + 			val = attrs.get("value")
 +-			if ( self.param.has_key(val) == False ):
 ++			if "val" not in self.param:
 + 				self.param[val] = []
 + 			self.param[val].append(attrs.get("name"))
 + 
 +@@ -118,7 +119,7 @@ class ObjectHandler(ContentHandler):
 + 			self.actiondoc= ""
 + 			
 + 	def printDef(self):
 +-		print json.dumps(self.magics, indent=2)
 ++		print (json.dumps(self.magics, indent=2))
 + 	
 + 
 + 	def parse(self, file):
 +@@ -133,25 +134,25 @@ class ObjectHandler(ContentHandler):
 + 		parameters = []
 + 			
 + 		for a in actions:
 +-			if ( type(a) != dict and self.magics.has_key(a) ) :
 ++			if ( type(a) != dict and a in self.magics) :
 + 			# external object
 + 				action = self.magics[a]
 +-				if action.has_key("inherits") :
 ++				if "inherits" in action:
 + 					parent = action["inherits"]
 + 					definition = self.magics[parent]
 +-					print  a + " xxxxinherits from " + parent
 ++					print ( a + " xxxxinherits from " + parent)
 + 			
 +-					print "??????????????????"
 ++					print ("??????????????????")
 + 					for p in definition["parameters"]:
 +-						print p["name"]	
 ++						print (p["name"] )
 + 						parameters.append(p)
 +-					print "---------------"
 ++					print ("---------------")
 + 
 + 				for param in action["parameters"]:
 + 					#print "add" + param["name"]
 + 					parameters.append(param)
 + 					for val in param["values"]:
 +-						if param.has_key(val) :
 ++						if val in param:
 + 							param[val] = self.build(param[val], action)
 + 						else :
 + 							param[val] = [] 
 +Index: magics++-2.24.4/tools/xml2odt.py
 +===================================================================
 +--- magics++-2.24.4.orig/tools/xml2odt.py
 ++++ magics++-2.24.4/tools/xml2odt.py
 +@@ -1,4 +1,5 @@
 + #!/usr/bin/python
 ++from __future__ import print_function
 + from xml.sax.handler import ContentHandler
 + from xml.sax import make_parser
 + from types import *
 +@@ -7,8 +8,8 @@ import sys
 + 
 + 
 + if(len(sys.argv) != 3) :
 +-    print "\n\tYou need to give 2 input parameters:"
 +-    print "\n\t  %s source.xml target.odt\n" % sys.argv[0]
 ++    print ("\n\tYou need to give 2 input parameters:")
 ++    print ("\n\t  %s source.xml target.odt\n" % sys.argv[0])
 +     sys.exit()
 + 
 + 
 +Index: magics++-2.24.4/tools/xml2split.py
 +===================================================================
 +--- magics++-2.24.4.orig/tools/xml2split.py
 ++++ magics++-2.24.4/tools/xml2split.py
 +@@ -1,5 +1,5 @@
 + 
 +-
 ++from __future__ import print_function
 + from xml.sax.handler import ContentHandler
 + from xml.sax import make_parser
 + import sys
 +@@ -32,7 +32,7 @@ class ObjectHandler(ContentHandler):
 + 			self.file.write(data);
 + 
 + 	def startElement(self, name, attrs):
 +-		print "found %s " % name
 ++		print ("found %s " % name)
 + 		if (name == "magics") :
 + 			return
 + 		if (name == "static") :
 +@@ -44,13 +44,13 @@ class ObjectHandler(ContentHandler):
 + 			self.file=open(filename, "w")
 + 			self.open_file = 1;
 + 			self.file.write("<magics>\n")
 +-			print "open %s " % filename
 ++			print ("open %s " % filename)
 + 		self.nice(name, attrs)
 + 		self.tab1 = self.tab1+1
 + 		self.tab2 = self.tab2+1
 + 
 + 	def endElement(self,name):
 +-		print "close %s\n " % name
 ++		print ("close %s\n " % name)
 + 		if ( self.open_file == 0):
 + 			return
 + 
 +Index: magics++-2.24.4/tools/xml2mv.py
 +===================================================================
 +--- magics++-2.24.4.orig/tools/xml2mv.py
 ++++ magics++-2.24.4/tools/xml2mv.py
 +@@ -1,4 +1,5 @@
 + #!/usr/bin/python
 ++from __future__ import print_function
 + from xml.sax.handler import ContentHandler
 + from xml.sax import make_parser
 + from types import *
 +@@ -7,8 +8,8 @@ import sys
 + 
 + 
 + if(len(sys.argv) != 6) :
 +-    print "\n\tYou need to give 4 input parameters:"
 +-    print "\n\t  %s source.xml targetDef CLASS_NAME rulesDef\n" % sys.argv[0]
 ++    print ("\n\tYou need to give 4 input parameters:")
 ++    print ("\n\t  %s source.xml targetDef CLASS_NAME rulesDef\n" % sys.argv[0])
 +     sys.exit()
 + 
 + 
 +@@ -311,7 +312,7 @@ class ObjectHandler(ContentHandler):
 + 
 + 
 + 	def addOptionalParam(self, paramname, requirements):
 +-		if paramname in self.optionalparams.keys():
 ++		if paramname in self.optionalparams:
 + 			if not(requirements[0] in self.optionalparams[paramname]):
 + 				self.optionalparams[paramname] = self.optionalparams[paramname] + requirements
 + 		else:
 +@@ -319,7 +320,7 @@ class ObjectHandler(ContentHandler):
 + 
 + 
 + 	def addRelatedOptionalRequirements(self):
 +-		optparams = self.optionalparams.keys()
 ++		optparams = list(self.optionalparams.keys())
 + 		for optparam in optparams:
 + 			conditions = self.optionalparams[optparam]
 + 			for condition in conditions:
 +@@ -328,7 +329,7 @@ class ObjectHandler(ContentHandler):
 + 
 + 
 + 	def addRelatedOptionalRequirements2(self):
 +-		optparams = self.optionalparams.keys()
 ++		optparams = list(self.optionalparams.keys())
 + 		for optparam in optparams:
 + 			conditions = self.optionalparams[optparam]
 + 			for condition in conditions:
 +@@ -341,9 +342,9 @@ class ObjectHandler(ContentHandler):
 + 
 + 	# see top of file for description of optionalparams and optionalparams2
 + 	def reorganiseOptionalParameters(self):
 +-		for optparam in self.optionalparams.keys():
 ++		for optparam in self.optionalparams:
 + 			condition = self.optionalparams[optparam]
 +-			if condition in self.optionalparams2.keys():
 ++			if condition in self.optionalparams2:
 + 				self.optionalparams2[condition].add(optparam)
 + 			else:
 + 				self.optionalparams2[condition] = set([optparam])
 +@@ -355,7 +356,7 @@ class ObjectHandler(ContentHandler):
 + 	def ensureOptionalParameters2DependenciesAreInRightOrder(self):
 + 		self.optionalparams3 = () # empty tuple, will contain an ordered version of optionalparams2
 + 
 +-		for conditions2 in self.optionalparams2.keys():
 ++		for conditions2 in self.optionalparams2:
 + 			# does this rule unset something that is needed in the optionalparams3 rules?
 + 			unsetparams2 = self.optionalparams2[conditions2]
 + 			newtuple3 = (conditions2, unsetparams2)
 +@@ -374,7 +375,7 @@ class ObjectHandler(ContentHandler):
 + 
 + 			# we now know that the clause should go into position 'position' in the new tuple
 + 			if self.debug:
 +-				print "put into position " + str(position)
 ++				print ("put into position " + str(position))
 + 			if position == 0:
 + 				firstpart = ()
 + 				secondpart = (newtuple3,)
 +@@ -395,7 +396,7 @@ class ObjectHandler(ContentHandler):
 + 
 + 
 + 	def newClass(self, c):
 +-		if not (c in self.classes.keys()):
 ++		if not (c in self.classes):
 + 			self.classes[c] = {"inherits_reqs_from": set(),   # 'inherits_params_from' is an empty set
 + 			                   "inherits_params_from": set()}
 + 			#print "newClass " + c
 +@@ -437,7 +438,7 @@ class ObjectHandler(ContentHandler):
 + 			params = self.classes[c].get("params", ())
 + 			for p in params:
 + 				x = reqs
 +-				if x <> ():
 ++				if x != ():
 + 					self.addOptionalParam(p, x)
 + 					#self.addOptionalParam(p, (x,))
 + 
 +@@ -455,11 +456,11 @@ class ObjectHandler(ContentHandler):
 + 		#print spaces + "enter rec, class = " + classname
 + 		for parent in i:
 + 			#print parent
 +-			if parent <> None:
 ++			if parent != None:
 + 				reqs = self.addRecursiveInheritedClassRequirements(parent, reclevel+1)
 + 				#print spaces + "reqs: "
 + 				#print reqs
 +-				if reqs <> None:
 ++				if reqs != None:
 + 					for req in reqs:
 + 						#print "ADDING REQ FROM RECURSIVE"
 + 						self.addRequirementToClass(req[0], req[1], classname)
 +@@ -481,11 +482,11 @@ class ObjectHandler(ContentHandler):
 + 		#print spaces + "enter rec, class = " + classname
 + 		for parent in i:
 + 			#print parent
 +-			if parent <> None:
 ++			if parent != None:
 + 				params = self.addRecursiveInheritedClassParams(parent, reclevel+1)
 + 				#print spaces + "reqs: "
 + 				#print reqs
 +-				if params <> None:
 ++				if params != None:
 + 					for params in params:
 + 						#print "ADDING REQ FROM RECURSIVE"
 + 						self.addParamsFromOneClassToAnother(parent, classname)
 +@@ -532,7 +533,7 @@ class ObjectHandler(ContentHandler):
 + 					try:
 + 						file = open(fname, "r")
 + 						if (self.debug):
 +-							print "Opened (start class)" + fname
 ++							print ("Opened (start class)" + fname)
 + 						self.filehistory.append(fname)
 + 						object = ObjectHandler()
 + 						object.myoptions = []
 +@@ -568,17 +569,17 @@ class ObjectHandler(ContentHandler):
 + 				return
 + 			if (attrs.get("inherit_parent_reqs") != 'no'):
 + 				docclass = attrs.get("doc_class", None)
 +-				if docclass <> None:
 ++				if docclass != None:
 + 					paramclass = docclass
 + 				else:
 + 					paramclass = self.classname
 + 				self.addParameterToClass(self.param, paramclass)
 +-			type = attrs.get("to")
 ++			typ = attrs.get("to")
 + 			metview_type = attrs.get("metview_interface")
 +-			if metview_type <> None:
 +-				type = metview_type
 +-			if (self.types.has_key(type)):
 +-				f = self.types[type]
 ++			if metview_type != None:
 ++				typ = metview_type
 ++			if typ in self.types:
 ++				f = self.types[typ]
 + 				self.newparam(self.param, f(self, attrs), self.default(attrs))
 + 			else:
 + 				self.last = self.last + self.options(attrs)
 +@@ -614,7 +615,7 @@ class ObjectHandler(ContentHandler):
 + 								file = open(fname, "r")
 + 								self.filehistory.append(fname)
 + 								if (self.debug):
 +-									print "Opened (start option) " + fname
 ++									print ("Opened (start option) " + fname)
 + 								object = ObjectHandler()
 + 								object.myoptions = []
 + 								object.myrules = {}
 +@@ -667,8 +668,8 @@ class ObjectHandler(ContentHandler):
 + 			self.last = self.last + "\t} = %s\n" % self.defparam
 + 			self.newparam(self.param, self.last, self.defparam)
 + 			if (self.debug) :
 +-				print "  endparam: " + self.param
 +-				print "  endparam SL: \n" + self.last
 ++				print ("  endparam: " + self.param)
 ++				print ("  endparam SL: \n" + self.last)
 + 			self.last = ""
 + 			for option in self.myoptions:
 + 				for p in option:
 +@@ -768,7 +769,7 @@ class ObjectHandler(ContentHandler):
 + 				# two different ways to generate the rules
 + 				if False:
 + 					rules = open(sys.argv[5], "w")
 +-					for optparam in self.optionalparams.keys():
 ++					for optparam in self.optionalparams:
 + 						rules.write("\n%if")
 + 						first = True
 + 						prevparam = ""
 +@@ -845,4 +846,4 @@ saxparser.setContentHandler(object)
 + 
 + datasource = open(sys.argv[1] +"/" + sys.argv[2], "r")
 + saxparser.parse(datasource)
 +-print "DONE"
 ++print ("DONE")
 +Index: magics++-2.24.4/python/Magics/macro.py
 +===================================================================
 +--- magics++-2.24.4.orig/python/Magics/macro.py
 ++++ magics++-2.24.4/python/Magics/macro.py
 +@@ -1,3 +1,4 @@
 ++from __future__ import print_function
 + import os
 + import Magics
 + import numpy
 +@@ -60,7 +61,7 @@ class Action(object):
 + 		return x
 + 
 + 	def inspect(self):
 +-		print self
 ++		print (self)
 + 
 + 	def quote(self, v):
 + 		return "\"" + v + "\""
 +@@ -119,12 +120,12 @@ class Action(object):
 + 				dim  = len(self.args[key].shape)
 + 				if isinstance(self.args[key][0], int):
 + 					if (dim == 2) :
 +-				   		print "pset2i" 
 ++				   		print ("pset2i")
 + 					else :
 +-				   		print "pset1i" 
 ++				   		print I"pset1i")
 + 				elif ( type == 'float64' or type == 'float32') :
 + 					if (dim == 2) :
 +-				   		print "pset2r" 
 ++				   		print ("pset2r")
 + 					else :
 + 				   		vval = ""
 + 				   		vsep = ""
 +@@ -137,10 +138,10 @@ class Action(object):
 + 				   		vval += ""
 + 				   		val+= '%s%s = [%s]'%(sep, key, vval)
 + 				else :
 +-					print "type???->", key
 ++					print ("type???->", key)
 + 			sep=",\n\t"
 + 				
 +-		print >>file, val + ")\n"
 ++		print (val + ")\n", file=file)
 + 
 + 	def tomv4(self, file):
 + 		sep="\t"
 +@@ -166,20 +167,20 @@ class Action(object):
 + 				   vval += "]"
 + 				   val+= '%s%s = %s'%(sep, key.upper(), vval)
 + 				elif isinstance(self.args[key][0], int):
 +-				   print "pset1i"
 ++				   print ("pset1i")
 + 				elif isinstance(self.args[key][0], float):
 +-				   print "pset1r" 
 ++				   print ("pset1r") 
 + 			elif isinstance(self.args[key], numpy.ndarray) :
 + 				type = self.args[key].dtype
 + 				dim  = len(self.args[key].shape)
 + 				if isinstance(self.args[key][0], int):
 + 					if (dim == 2) :
 +-				   		print "pset2i" 
 ++				   		print ("pset2i")
 + 					else :
 +-				   		print "pset1i" 
 ++				   		print ("pset1i")
 + 				elif ( type == 'float64' or type == 'float32') :
 + 					if (dim == 2) :
 +-				   		print "pset2r" 
 ++				   		print ("pset2r" )
 + 					else :
 + 				   		vval = "["
 + 				   		vsep = ""
 +@@ -190,10 +191,10 @@ class Action(object):
 + 				   		val+= '%s%s = %s'%(sep, key.upper(), vval)
 + 				   		
 + 				else :
 +-					print "type???->", key
 ++					print ("type???->", key)
 + 			sep=",\n\t"
 + 				
 +-		print >> file, val + "\n"
 ++		print (val + "\n", file=file)
 + 
 + 
 + 
 +@@ -201,18 +202,18 @@ class Action(object):
 + 
 + 	def tofortran(self, f):
 + 		if self.action == Magics.new_page :
 +-			print >> f, '\tcall pnew("page")'
 ++			print ('\tcall pnew("page")', file=f)
 + 			return
 + 		for key in self.args.keys():
 + 			if isinstance(self.args[key], str):
 + 				if key == 'odb_data':
 + 					Magics.setc('odb_filename', self.args[key])
 + 				else:
 +-					print >> f, '\tcall psetc("%s", "%s")'%(key, self.args[key])
 ++					print('\tcall psetc("%s", "%s")'%(key, self.args[key]), file=f)
 + 			elif isinstance(self.args[key], int):
 +-				print >>f, '\tcall pseti("%s", %d)'%(key, self.args[key])
 ++				print ('\tcall pseti("%s", %d)'%(key, self.args[key]), file=f)
 + 			elif isinstance(self.args[key], float):
 +-				print >> f, '\tcall psetr("%s", %0.2f)'%(key, self.args[key])
 ++				print ('\tcall psetr("%s", %0.2f)'%(key, self.args[key]), file=f)
 + 			elif isinstance(self.args[key], list) :
 + 				if isinstance (self.args[key][0], str):
 + 				   nb = 0
 +@@ -229,9 +230,9 @@ class Action(object):
 + 							sep = ",&\n\t\t"
 + 							newline = newline + 70
 + 				   val += "/)"
 +-				   print >>f, '\tcall pset1c("%s", %s, %d)'%(key, val, len(self.args[key]))
 ++				   print ('\tcall pset1c("%s", %s, %d)'%(key, val, len(self.args[key])), file=f)
 + 				elif isinstance(self.args[key][0], int):
 +-				   print "pset1i"
 ++				   print ("pset1i")
 + 				elif isinstance(self.args[key][0], float):
 + 				   	val = "(/"
 + 				   	sep = ""
 +@@ -239,18 +240,18 @@ class Action(object):
 + 				   		val += sep + ("%0.2f" % v)
 + 				   		sep = ", "
 + 				   	val += "/)"
 +-				   	print >>f, '\tcall pset1r("%s", %s, %d)'%(key, val, len(self.args[key]))
 ++				   	print ('\tcall pset1r("%s", %s, %d)'%(key, val, len(self.args[key])), file=f)
 + 			elif isinstance(self.args[key], numpy.ndarray) :
 + 				type = self.args[key].dtype
 + 				dim  = len(self.args[key].shape)
 + 				if isinstance(self.args[key][0], int):
 + 					if (dim == 2) :
 +-				   		print "pset2i" 
 ++				   		print ("pset2i")
 + 					else :
 +-				   		print "pset1i" 
 ++				   		print ("pset1i")
 + 				elif ( type == 'float64' or type == 'float32') :
 + 					if (dim == 2) :
 +-				   		print "pset2r" 
 ++				   		print ("pset2r")
 + 					else :
 + 				   		val = "(/"
 + 				   		sep = ""
 +@@ -258,20 +259,20 @@ class Action(object):
 + 				   			val += sep + ("%0.2f" % v)
 + 				   			sep = ", "
 + 				   		val += "/)"
 +-				   		print >>f, '\tcall pset1r("%s", %s, %d)'%(key, val, len(self.args[key]))
 ++				   		print ('\tcall pset1r("%s", %s, %d)'%(key, val, len(self.args[key])), file=f)
 + 				elif isinstance(self.args[key][0], int):
 +-				   		print "pset1r" 
 ++				   		print ("pset1r" )
 + 				else :
 +-					print "type???->", key
 ++					print ("type???->", key)
 + 
 + 		if self.action != None and actions[self.verb] != "" and actions[self.verb] != "pinput":
 +-			print >>f, "\tcall %s\n"%actions[self.verb] 
 ++			print ("\tcall %s\n"%actions[self.verb] , file=f)
 + 			for key in self.args.keys():
 +-				print >>f, "\tcall preset('%s')"%key 
 +-			print >>f, ""
 ++				print ("\tcall preset('%s')"%key , file=f)
 ++			print ("", file=f)
 + 
 + 		else:
 +-			print >>f, ""
 ++			print ("", file=f)
 + 
 + 
 + 	def clean_object(self, obj):
 +@@ -290,8 +291,8 @@ class Action(object):
 + 			for i,v in obj.iteritems():
 + 				obj[i] = self.clean_object(v)
 + 		else:
 +-			print "Invalid object in data, converting to string: " 
 +-			print  type(obj)
 ++			print ("Invalid object in data, converting to string: " )
 ++			print ( type(obj))
 + 			obj = str(obj) 
 + 		return obj
 + 
 +@@ -331,7 +332,7 @@ class Action(object):
 + 					else :
 + 						Magics.set1r(key, self.args[key].copy())
 + 				else :
 +-					print "type???->", key
 ++					print ("type???->", key)
 + 
 + 			else:
 + 				self.args[key].execute(key)
 +@@ -439,26 +440,26 @@ def plot(*args):
 + 
 + 
 + def tofortran(file, *args):
 +-	f = open(file+".f90",'w')
 +-	print >>f, "\tprogram magics\n"
 +-	print >>f, "\tcall popen\n"
 +-	for n in args:
 ++	with open(file+".f90",'w') as f:
 ++	    print ("\tprogram magics\n", file=f)
 ++	    print ("\tcall popen\n", file=f)
 ++	    for n in args:
 + 		n.tofortran(f)
 +-	print >>f, "\tcall pclose\n"
 +-	print >>f, "\tend"
 ++	    print  ("\tcall pclose\n", file=f)
 ++	    print  ("\tend", file=f)
 + 
 + 
 + def tohtml(file, *args):
 +-	f = open(file+".html",'w')
 +-	print >>f, "<html>"
 +-	for n in args:
 +-		n.tohtml(f)
 +-	print >>f, "</html>"
 ++	with open(file+".html",'w') as f:
 ++	    print ("<html>", file=f)
 ++	    for n in args:
 ++	        n.tohtml(f)
 ++	    print ("</html>", file=f)
 + 
 + def tomv4(file, *args):
 +-	f = open(file+".mv4",'w')
 +-	for n in args:
 +-		n.tomv4(f)
 ++        with open(file+".mv4",'w') as f:
 ++	    for n in args:
 ++	        n.tomv4(f)
 + 
 + class  odb_filter(object):
 + 	def __init__(self, _m = None,**kw):
 +@@ -472,17 +473,17 @@ class  odb_filter(object):
 + 		odb = "%s.odb" % file 
 + 		context.tmp.append(odb)
 + 		cmd = "odbsql -q \"" + self.args["query"] + "\" -i " + self.args["path"] + " -f newodb -o " + odb
 +-		print cmd 
 ++		print (cmd)
 + 		if (os.system(cmd)) :
 +-			print "Error in filtering ODB data... Aborting"
 ++			print ("Error in filtering ODB data... Aborting")
 + 			os.abort();
 + 		Magics.setc('odb_filename', odb)
 + 	def inspect(self):
 + 		cmd = "odbsql -q \"" + self.args["query"] + "\" -i " + self.args["path"] + " -o data.ascii"
 + 		if (os.system(cmd)) :
 +-			print "Error in filtering ODB data... Aborting"
 ++			print ("Error in filtering ODB data... Aborting")
 + 			os.abort();
 + 		cmd =  os.environ['ODB_REPORTER'] + " %s" % "data.ascii"
 + 		if (os.system(cmd)) :
 +-			print "Error in viewing ODB data... Aborting"
 ++			print ("Error in viewing ODB data... Aborting")
 + 			os.abort();
 +Index: magics++-2.24.4/python/Magics/metgram.py
 +===================================================================
 +--- magics++-2.24.4.orig/python/Magics/metgram.py
 ++++ magics++-2.24.4/python/Magics/metgram.py
 +@@ -1,3 +1,4 @@
 ++from __future__ import print_function
 + import simplejson
 + import tempfile
 + import os
 +@@ -309,7 +310,7 @@ def metgram(*args):
 + 
 + 	error = os.system(cmd)
 + 	if (error != 0):
 +-		print "Error found"
 ++		print ("Error found")
 + 	f.close
 + 	
 + 
++Index: magics++-2.24.4/CMakeLists.txt
++===================================================================
++--- magics++-2.24.4.orig/CMakeLists.txt
+++++ magics++-2.24.4/CMakeLists.txt
++@@ -49,6 +49,7 @@ option( ENABLE_CAIRO          "enable ca
++ option( ENABLE_GEOTIFF        "enable geotiff support [implies cairo]" OFF )
++ 
++ option( ENABLE_PYTHON         "enable python interface"   ON  )
+++option( ENABLE_PYTHON3         "enable python3 interface"   ON  )
++ option( ENABLE_FORTRAN        "enable fortran interface"  ON  )
++ 
++ option( ENABLE_METVIEW        "enable Metview interface"  OFF  )
++@@ -69,6 +70,7 @@ set( MAGICS_HTML_ROOT        "${CMAKE_BI
++ file(MAKE_DIRECTORY ${MAGICS_HTML_ROOT} )
++ 
++ set( MAG_PYTHON_PATH ${CMAKE_BINARY_DIR}/python )
+++set( MAG_PYTHON3_PATH ${CMAKE_BINARY_DIR}/python3 )
++ 
++ ###############################################################################
++ # projects
++@@ -96,6 +98,19 @@ if( ENABLE_PYTHON )
++ 	find_package( SWIG REQUIRED )
++ 	find_package( NumPy REQUIRED )
++ endif()
+++
+++if( ENABLE_PYTHON3 )
+++    ecbuild_find_python3( REQUIRED )
+++    debug_var( PYTHON3_INCLUDE_DIRS )
+++    debug_var( PYTHON3_LIBRARIES )
+++
+++    if( NOT PYTHON3_INCLUDE_DIRS OR NOT PYTHON3_LIBRARIES )
+++        message( FATAL_ERROR "Couldn't find Python3 libraries" )
+++    endif()
+++	find_package( SWIG REQUIRED )
+++	find_package( NumPy3 REQUIRED )
+++endif()
+++
++ if( SWIG_FOUND )
++    include(UseSWIG)
++ endif()
++Index: magics++-2.24.4/cmake/ecbuild_find_python3.cmake
++===================================================================
++--- /dev/null
+++++ magics++-2.24.4/cmake/ecbuild_find_python3.cmake
++@@ -0,0 +1,131 @@
+++# (C) Copyright 1996-2014 ECMWF.
+++#
+++# This software is licensed under the terms of the Apache Licence Version 2.0
+++# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
+++# In applying this licence, ECMWF does not waive the privileges and immunities
+++# granted to it by virtue of its status as an intergovernmental organisation nor
+++# does it submit to any jurisdiction.
+++
+++############################################################################################
+++# macro to find python3
+++
+++# OUTPUT:
+++#   PYTHON3INTERP_FOUND
+++#   PYTHON3LIBS_FOUND
+++#   PYTHON3_INCLUDE_DIRS
+++#   PYTHON3_LIBRARIES
+++#   PYTHON3_SITE_PACKAGES
+++
+++macro( ecbuild_find_python3 )
+++
+++    # parse parameters
+++
+++    set( options REQUIRED )
+++    set( single_value_args VERSION )
+++    set( multi_value_args  )
+++
+++    cmake_parse_arguments( _p "${options}" "${single_value_args}" "${multi_value_args}"  ${_FIRST_ARG} ${ARGN} )
+++
+++    if(_p_UNPARSED_ARGUMENTS)
+++      message(FATAL_ERROR "Unknown keywords given to ecbuild_find_python(): \"${_p_UNPARSED_ARGUMENTS}\"")
+++    endif()
+++
+++    # find python3 executable
+++
+++    find_package( PythonInterp3 )
+++
+++    if( NOT PYTHON3INTERP_FOUND AND _p_REQUIRED )
+++        message( FATAL_ERROR "Failed to find any Python3 interpreter (REQUIRED)" )
+++    endif()
+++
+++    # find python version
+++    # execute_process( COMMAND ${PYTHON_EXECUTABLE} -V ERROR_VARIABLE _version  RESULT_VARIABLE _return ERROR_STRIP_TRAILING_WHITESPACE)
+++    # if( NOT _return )
+++    #    string(REGEX REPLACE ".*([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1.\\2.\\3" PYTHON_VERSION ${_version} )
+++    # endif()
+++    # endif()
+++
+++    # message( STATUS "Python version ${PYTHON_VERSION_STRING}" )
+++    # debug_var(PYTHON_VERSION_MAJOR)
+++    # debug_var(PYTHON_VERSION_MINOR)
+++    # debug_var(PYTHON_VERSION_PATCH)
+++
+++    if( PYTHON3INTERP_FOUND AND DEFINED _p_VERSION )
+++        if( _p_VERSION VERSION_GREATER "${PYTHON3_VERSION_MAJOR}.${PYTHON3_VERSION_MINOR}.${PYTHON3_VERSION_PATCH}" )
+++            set( PYTHON3INTERP_FOUND 0 )
+++            set( PYTHON3_EXECUTABLE "PYTHON3_EXECUTABLE-NOTFOUND" )
+++            if( _p_REQUIRED )
+++                message( FATAL_ERROR "Required python3 version at least ${_p_VERSION} but found only ${PYTHON3_VERSION_STRING}" )
+++            else()
+++                message( WARNING "Looking for python3 version at least ${_p_VERSION} but found only ${PYTHON3_VERSION_STRING}\nMarking Python3 as NOTFOUND" )
+++            endif()
+++        endif()
+++    endif()
+++
+++    if( PYTHON3INTERP_FOUND )
+++
+++        # find python3 config
+++
+++        if( PYTHON3_EXECUTABLE AND EXISTS ${PYTHON3_EXECUTABLE}-config )
+++            set(PYTHON3_CONFIG ${PYTHON3_EXECUTABLE}-config CACHE PATH "" FORCE)
+++        else()
+++            find_program( PYTHON3_CONFIG NAMES python3-config python3-config${PYTHON3_VERSION_MAJOR}.${PYTHON3_VERSION_MINOR} )
+++        endif()
+++
+++        # find python3 libs
+++
+++        # The OpenBSD python packages have python-config's 
+++        # that don't reliably report linking flags that will work.
+++        
+++        if( PYTHON3_CONFIG AND NOT ${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD" )
+++            
+++            execute_process(COMMAND "${PYTHON3_CONFIG}" --ldflags
+++                            OUTPUT_VARIABLE PYTHON3_LIBRARIES
+++                            OUTPUT_STRIP_TRAILING_WHITESPACE
+++                            ERROR_QUIET)
+++
+++            execute_process(COMMAND "${PYTHON3_CONFIG}" --includes
+++                            OUTPUT_VARIABLE PYTHON3_INCLUDE_DIR
+++                            OUTPUT_STRIP_TRAILING_WHITESPACE
+++                            ERROR_QUIET)
+++
+++#           debug_var(PYTHON3_LIBRARIES)
+++#           debug_var(PYTHON3_INCLUDE_DIR)
+++
+++            string(REGEX REPLACE "^[-I]" "" PYTHON3_INCLUDE_DIR "${PYTHON3_INCLUDE_DIR}")
+++            string(REGEX REPLACE "[ ]-I" " " PYTHON3_INCLUDE_DIR "${PYTHON3_INCLUDE_DIR}")
+++            
+++            separate_arguments(PYTHON3_INCLUDE_DIR)
+++
+++        else() # revert to finding pythonlibs the standard way (cmake macro)
+++            
+++            find_package(Python3Libs)
+++            if( PYTHON3_INCLUDE_PATH AND NOT PYTHON3_INCLUDE_DIR )
+++                set(PYTHON3_INCLUDE_DIR "${PYTHON3_INCLUDE_PATH}")
+++            endif()
+++
+++        endif()
+++
+++        # set output variables
+++
+++        find_package_handle_standard_args( Python3Libs DEFAULT_MSG PYTHON3_INCLUDE_DIR PYTHON3_LIBRARIES )
+++
+++        set( PYTHON3_INCLUDE_DIRS ${PYTHON3_INCLUDE_DIR} )
+++        set( PYTHON3_INCLUDE_PATH ${PYTHON3_INCLUDE_DIR} )
+++
+++        list( REMOVE_DUPLICATES PYTHON3_INCLUDE_DIRS )
+++
+++        # find where python3 site-packages are ...
+++
+++        execute_process(COMMAND ${PYTHON3_EXECUTABLE} -c "from distutils.sysconfig import get_python_lib; print (get_python_lib())" OUTPUT_VARIABLE PYTHON_SITE_PACKAGES OUTPUT_STRIP_TRAILING_WHITESPACE)
+++
+++    endif()
+++
+++#    debug_var( PYTHON3INTERP_FOUND )
+++#    debug_var( PYTHON3_EXECUTABLE )
+++#    debug_var( PYTHON3LIBS_FOUND )
+++#    debug_var( PYTHON3_INCLUDE_DIRS )
+++#    debug_var( PYTHON3_LIBRARIES )
+++#    debug_var( PYTHON3_SITE_PACKAGES )
+++
+++endmacro( ecbuild_find_python3 )
++Index: magics++-2.24.4/cmake/ecbuild_system.cmake
++===================================================================
++--- magics++-2.24.4.orig/cmake/ecbuild_system.cmake
+++++ magics++-2.24.4/cmake/ecbuild_system.cmake
++@@ -242,6 +242,7 @@ if( PROJECT_NAME STREQUAL CMAKE_PROJECT_
++ 	include( ecbuild_find_omp )
++ 	include( ecbuild_find_perl )
++ 	include( ecbuild_find_python )
+++	include( ecbuild_find_python3 )
++ 	include( ecbuild_find_lexyacc )
++ 	include( ecbuild_find_fortranlibs )
++ 	include( ecbuild_enable_fortran )
++Index: magics++-2.24.4/python/Magics/CMakeLists.txt
++===================================================================
++--- magics++-2.24.4.orig/python/Magics/CMakeLists.txt
+++++ magics++-2.24.4/python/Magics/CMakeLists.txt
++@@ -2,7 +2,7 @@ if( ENABLE_PYTHON AND NUMPY_FOUND )
++ 
++   ### python destination
++ 
++-  set( PYTHON_SITE "lib/python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}/site-packages" )
+++  set( PYTHON3_DIST "lib/python${PYTHON3_VERSION_MAJOR}.${PYTHON3_VERSION_MINOR}/site-packages" )
++   set( PYTHON_DEST "${PYTHON_SITE}/Magics" )
++ 
++   file( RELATIVE_PATH relative_rpath "${CMAKE_INSTALL_PREFIX}/${PYTHON_DEST}" "${${PNAME}_FULL_INSTALL_LIB_DIR}" )
++Index: magics++-2.24.4/cmake/FindNumPy3.cmake
++===================================================================
++--- /dev/null
+++++ magics++-2.24.4/cmake/FindNumPy3.cmake
++@@ -0,0 +1,101 @@
+++# - Find the NumPy3 libraries
+++# This module finds if NumPy3 is installed, and sets the following variables
+++# indicating where it is.
+++#
+++# TODO: Update to provide the libraries and paths for linking npymath lib.
+++#
+++#  NUMPY3_FOUND               - was NumPy3 found
+++#  NUMPY3_VERSION             - the version of NumPy3 found as a string
+++#  NUMPY3_VERSION_MAJOR       - the major version number of NumPy3
+++#  NUMPY3_VERSION_MINOR       - the minor version number of NumPy3
+++#  NUMPY3_VERSION_PATCH       - the patch version number of NumPy3
+++#  NUMPY3_VERSION_DECIMAL     - e.g. version 1.6.1 is 10601
+++#  NUMPY3_INCLUDE_DIRS        - path to the NumPy3  include files
+++
+++#============================================================================
+++# Copyright 2015 Alastair McKinstry <debian.org>
+++#
+++# MIT License
+++#
+++# Permission is hereby granted, free of charge, to any person obtaining
+++# a copy of this software and associated documentation files
+++# (the "Software"), to deal in the Software without restriction, including
+++# without limitation the rights to use, copy, modify, merge, publish,
+++# distribute, sublicense, and/or sell copies of the Software, and to permit
+++# persons to whom the Software is furnished to do so, subject to
+++# the following conditions:
+++#
+++# The above copyright notice and this permission notice shall be included
+++# in all copies or substantial portions of the Software.
+++#
+++# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+++# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+++# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+++# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+++# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+++# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+++# OTHER DEALINGS IN THE SOFTWARE.
+++#
+++#============================================================================
+++
+++# Finding NumPy3 involves calling the Python3 interpreter
+++if(NumPy3_FIND_REQUIRED)
+++    find_package(Python3Interp REQUIRED)
+++else()
+++    find_package(Python3Interp)
+++endif()
+++
+++if(NOT PYTHON3INTERP_FOUND)
+++    set(NUMPY3_FOUND FALSE)
+++    return()
+++endif()
+++
+++execute_process(COMMAND "${PYTHON3_EXECUTABLE}" "-c"
+++    "import numpy as n; print(n.__version__); print(n.get_include());"
+++    RESULT_VARIABLE _NUMPY3_SEARCH_SUCCESS
+++    OUTPUT_VARIABLE _NUMPY3_VALUES_OUTPUT
+++    ERROR_VARIABLE _NUMPY3_ERROR_VALUE
+++    OUTPUT_STRIP_TRAILING_WHITESPACE)
+++
+++if(NOT _NUMPY3_SEARCH_SUCCESS MATCHES 0)
+++    if(NumPy3_FIND_REQUIRED)
+++        message(FATAL_ERROR
+++            "NumPy3 import failure:\n${_NUMPY3_ERROR_VALUE}")
+++    endif()
+++    set(NUMPY3_FOUND FALSE)
+++    return()
+++endif()
+++
+++# Convert the process output into a list
+++string(REGEX REPLACE ";" "\\\\;" _NUMPY3_VALUES ${_NUMPY3_VALUES_OUTPUT})
+++string(REGEX REPLACE "\n" ";" _NUMPY3_VALUES ${_NUMPY3_VALUES})
+++# Just in case there is unexpected output from the Python3 command.
+++list(GET _NUMPY3_VALUES -2 NUMPY3_VERSION)
+++list(GET _NUMPY3_VALUES -1 NUMPY3_INCLUDE_DIRS)
+++
+++string(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" _VER_CHECK "${NUMPY3_VERSION}")
+++if("${_VER_CHECK}" STREQUAL "")
+++    # The output from Python3 was unexpected. Raise an error always
+++    # here, because we found NumPy3, but it appears to be corrupted somehow.
+++    message(FATAL_ERROR
+++        "Requested version and include path from NumPy3, got instead:\n${_NUMPY3_VALUES_OUTPUT}\n")
+++    return()
+++endif()
+++
+++# Make sure all directory separators are '/'
+++string(REGEX REPLACE "\\\\" "/" NUMPY3_INCLUDE_DIRS ${NUMPY3_INCLUDE_DIRS})
+++
+++# Get the major and minor version numbers
+++string(REGEX REPLACE "\\." ";" _NUMPY3_VERSION_LIST ${NUMPY3_VERSION})
+++list(GET _NUMPY3_VERSION_LIST 0 NUMPY3_VERSION_MAJOR)
+++list(GET _NUMPY3_VERSION_LIST 1 NUMPY3_VERSION_MINOR)
+++list(GET _NUMPY3_VERSION_LIST 2 NUMPY3_VERSION_PATCH)
+++string(REGEX MATCH "[0-9]*" NUMPY3_VERSION_PATCH ${NUMPY3_VERSION_PATCH})
+++math(EXPR NUMPY3_VERSION_DECIMAL
+++    "(${NUMPY3_VERSION_MAJOR} * 10000) + (${NUMPY3_VERSION_MINOR} * 100) + ${NUMPY3_VERSION_PATCH}")
+++
+++find_package_message(NUMPY3
+++    "Found NumPy3: version \"${NUMPY3_VERSION}\" ${NUMPY3_INCLUDE_DIRS}"
+++    "${NUMPY3_INCLUDE_DIRS}${NUMPY3_VERSION}")
+++
+++set(NUMPY3_FOUND TRUE)
diff --cc debian/patches/series
index f51ce15,f2016cd..44dc2d4
--- a/debian/patches/series
+++ b/debian/patches/series
@@@ -4,5 -4,4 +4,5 @@@ terralib.patc
  gcc-4.7.patch
  magics-config.patch
  fix-headers.patch
 +python3.patch
+ geotiff.patch
diff --cc debian/rules
index 9af5129,c31bb1d..b09e9d5
--- a/debian/rules
+++ b/debian/rules
@@@ -24,23 -31,12 +31,14 @@@ CMAKE_ARGS:= 
  
  override_dh_auto_clean:
  	find . -type l -exec rm {} \;
- 	find . \( -name '*.pyc' -o -name '*.o' -o -name '*.a' \)  -exec rm {} \;
- 	find . -name '.libs' -exec rm -rf {} \;  || echo ".libs deleted already."
- 	find test \( -name '*.ps' -o -name '*.pdf' -o -name '*.svg' -o -name '*.png' \
- 	       -o -name '*.kmz' \)  -exec rm  {} \;
- 	rm -f config.log
++	rm -rf python3
  	rm -rf share/magics/ttf src/terralib
- 	$(MAKE) -k distclean || echo "Already distcleaned"
- 
- override_dh_autoreconf:
- 	# remove out of date files
- 	rm -f conf/config.guess conf/config.sub
- 	libtoolize -c -f
- 	dh_autoreconf --as-needed
+ 	dh_auto_clean
  
  override_dh_auto_configure:
  	# link for font for tesing.
  	mkdir -p share/fonts/truetype/ttf-dejavu/
++	cp -a python python3
  	ln -sf /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf share/fonts/truetype/ttf-dejavu/
  	# Link terralib
  	[ -e src/terralib ] || ln -sf  /usr/include/terralib src/terralib

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/magics.git



More information about the debian-science-commits mailing list