Revision: 110476 https://trac.macports.org/changeset/110476 Author: mojca@macports.org Date: 2013-08-31 04:02:07 -0700 (Sat, 31 Aug 2013) Log Message: ----------- grass: upgrade to 6.4.3, set GRASS_PYTHON in bin/grass64, blacklist *clang*; it doesn't really support wxPython 2.9 (needs a fix), but it's now equally broken as previously Modified Paths: -------------- trunk/dports/gis/grass/Portfile trunk/dports/gis/grass/files/patch-Makefile.diff trunk/dports/gis/grass/files/patch-configure.diff trunk/dports/gis/grass/files/patch-macosx_Makefile.diff Added Paths: ----------- trunk/dports/gis/grass/files/patch-gui-wxpython-core-globalvar.py.diff trunk/dports/gis/grass/files/patch-gui-wxpython-gui_core-ghelp.py.diff trunk/dports/gis/grass/files/patch-lib-init-grass.src.diff Removed Paths: ------------- trunk/dports/gis/grass/files/patch-visualization_nviz_src-draw_c.diff Modified: trunk/dports/gis/grass/Portfile =================================================================== --- trunk/dports/gis/grass/Portfile 2013-08-31 10:54:29 UTC (rev 110475) +++ trunk/dports/gis/grass/Portfile 2013-08-31 11:02:07 UTC (rev 110476) @@ -5,8 +5,7 @@ name grass epoch 1 -version 6.4.2 -revision 4 +version 6.4.3 maintainers nomaintainer categories gis license GPL-2+ @@ -19,11 +18,16 @@ homepage http://grass.osgeo.org/ master_sites ${homepage}grass[join [lrange [split ${version} .] 0 1] {}]/source/ -checksums rmd160 2a8a2a63edf8e1cc53b7b26975087eef59c9a397 \ - sha256 670bb74d3000ea0932b7e988d3080d0c629f9eb22a8479bb2987ded473f7b4ca +checksums rmd160 bdbd671972730701aa8213c2041abe31a68eea4c \ + sha256 5d29d322a262330894aa046845e6790258cd6e3f95b28c350ed7839810672ed6 wxWidgets.use wxPython-3.0 +# TODO +# this port doesn't work with the python portgroup because the group changes too much +# but it would make sense to fix this properly +set python_bin ${frameworks_dir}/Python.framework/Versions/2.7/bin/python2.7 + depends_build port:pkgconfig depends_lib port:fftw-3 \ port:freetype \ @@ -40,39 +44,136 @@ # https://trac.macports.org/ticket/32790 # this should probably only apply to some Xcode versions -compiler.blacklist clang +compiler.blacklist *clang* patchfiles \ - patch-Makefile.diff \ patch-configure.diff \ + patch-gui-wxpython-core-globalvar.py.diff \ + patch-gui-wxpython-gui_core-ghelp.py.diff \ + patch-lib-init-grass.src.diff \ patch-macosx_Makefile.diff \ - patch-visualization_nviz_src-draw_c.diff + patch-Makefile.diff # List of all python scripts. Used later to ensure usage of python27 (and not # the currently active python) # Work around bug http://trac.osgeo.org/grass/ticket/1758 depends_build-append port:python27 set python_scripts [ list \ - doc/python/example_ctypes.py \ + doc/python/m.distance.py \ + doc/python/raster_example_ctypes.py \ + doc/python/vector_example_ctypes.py \ general/g.parser/test.py \ + gui/scripts/d.rast3d.py \ gui/scripts/g.change.gui.py \ gui/scripts/g.extension.py \ gui/scripts/g.extension.rebuild.all.py \ gui/scripts/v.type_wrapper.py \ - gui/wxpython/gui_modules/gmodeler.py \ - gui/wxpython/gui_modules/menuform.py \ - gui/wxpython/scripts/d.rast3d.py \ + gui/wxpython/compat/__init__.py \ + gui/wxpython/compat/subprocess.py \ + gui/wxpython/core/debug.py \ + gui/wxpython/core/gcmd.py \ + gui/wxpython/core/globalvar.py \ + gui/wxpython/core/menudata.py \ + gui/wxpython/core/render.py \ + gui/wxpython/core/settings.py \ + gui/wxpython/core/units.py \ + gui/wxpython/core/utils.py \ + gui/wxpython/core/workspace.py \ + gui/wxpython/create__init__.py \ + gui/wxpython/dbmgr/dialogs.py \ + gui/wxpython/dbmgr/manager.py \ + gui/wxpython/dbmgr/sqlbuilder.py \ + gui/wxpython/dbmgr/vinfo.py \ + gui/wxpython/gcp/manager.py \ + gui/wxpython/gcp/mapdisplay.py \ + gui/wxpython/gcp/toolbars.py \ + gui/wxpython/gis_set.py \ + gui/wxpython/gmodeler/dialogs.py \ + gui/wxpython/gmodeler/frame.py \ + gui/wxpython/gmodeler/menudata.py \ + gui/wxpython/gmodeler/model.py \ + gui/wxpython/gmodeler/preferences.py \ + gui/wxpython/gmodeler/toolbars.py \ + gui/wxpython/gui_core/dialogs.py \ + gui/wxpython/gui_core/forms.py \ + gui/wxpython/gui_core/ghelp.py \ + gui/wxpython/gui_core/goutput.py \ + gui/wxpython/gui_core/gselect.py \ + gui/wxpython/gui_core/mapdisp.py \ + gui/wxpython/gui_core/mapwindow.py \ + gui/wxpython/gui_core/menu.py \ + gui/wxpython/gui_core/preferences.py \ + gui/wxpython/gui_core/prompt.py \ + gui/wxpython/gui_core/toolbars.py \ + gui/wxpython/gui_core/widgets.py \ + gui/wxpython/icons/__init__.py \ + gui/wxpython/icons/grass2_icons.py \ + gui/wxpython/icons/grass_icons.py \ + gui/wxpython/icons/icon.py \ + gui/wxpython/icons/silk_icons.py \ + gui/wxpython/lmgr/frame.py \ + gui/wxpython/lmgr/layertree.py \ + gui/wxpython/lmgr/menudata.py \ + gui/wxpython/lmgr/pyshell.py \ + gui/wxpython/lmgr/toolbars.py \ + gui/wxpython/location_wizard/base.py \ + gui/wxpython/location_wizard/dialogs.py \ + gui/wxpython/location_wizard/wizard.py \ + gui/wxpython/mapdisp/frame.py \ + gui/wxpython/mapdisp/gprint.py \ + gui/wxpython/mapdisp/main.py \ + gui/wxpython/mapdisp/mapwindow.py \ + gui/wxpython/mapdisp/overlays.py \ + gui/wxpython/mapdisp/statusbar.py \ + gui/wxpython/mapdisp/toolbars.py \ + gui/wxpython/modules/colorrules.py \ + gui/wxpython/modules/extensions.py \ + gui/wxpython/modules/histogram.py \ + gui/wxpython/modules/mcalc_builder.py \ + gui/wxpython/modules/ogc_services.py \ + gui/wxpython/modules/vclean.py \ + gui/wxpython/nviz/animation.py \ + gui/wxpython/nviz/main.py \ + gui/wxpython/nviz/mapwindow.py \ + gui/wxpython/nviz/preferences.py \ + gui/wxpython/nviz/tools.py \ + gui/wxpython/nviz/workspace.py \ + gui/wxpython/nviz/wxnviz.py \ + gui/wxpython/psmap/dialogs.py \ + gui/wxpython/psmap/frame.py \ + gui/wxpython/psmap/instructions.py \ + gui/wxpython/psmap/menudata.py \ + gui/wxpython/psmap/toolbars.py \ + gui/wxpython/psmap/utils.py \ gui/wxpython/scripts/p.cmd.py \ gui/wxpython/scripts/p.db.py \ gui/wxpython/scripts/p.mon.py \ gui/wxpython/scripts/p.rast.py \ gui/wxpython/scripts/p.vect.py \ + gui/wxpython/scripts/vkrige.py \ + gui/wxpython/tools/update_menudata.py \ + gui/wxpython/vdigit/dialogs.py \ + gui/wxpython/vdigit/main.py \ + gui/wxpython/vdigit/mapwindow.py \ + gui/wxpython/vdigit/preferences.py \ + gui/wxpython/vdigit/toolbars.py \ + gui/wxpython/vdigit/wxdigit.py \ + gui/wxpython/vdigit/wxdisplay.py \ + gui/wxpython/wxgui.py \ + gui/wxpython/wxplot/base.py \ + gui/wxpython/wxplot/dialogs.py \ + gui/wxpython/wxplot/profile.py \ imagery/i.atcorr/create_iwave.py \ + lib/python/__init__.py \ + lib/python/array.py \ + lib/python/core.py \ + lib/python/ctypes/__init__.py \ lib/python/ctypes/ctypesgen.py \ lib/python/ctypes/ctypesgencore/__init__.py \ lib/python/ctypes/ctypesgencore/ctypedescs.py \ lib/python/ctypes/ctypesgencore/descriptions.py \ lib/python/ctypes/ctypesgencore/expressions.py \ + lib/python/ctypes/ctypesgencore/libraryloader.py \ lib/python/ctypes/ctypesgencore/messages.py \ lib/python/ctypes/ctypesgencore/options.py \ lib/python/ctypes/ctypesgencore/parser/__init__.py \ @@ -81,20 +182,34 @@ lib/python/ctypes/ctypesgencore/parser/cparser.py \ lib/python/ctypes/ctypesgencore/parser/ctypesparser.py \ lib/python/ctypes/ctypesgencore/parser/datacollectingparser.py \ + lib/python/ctypes/ctypesgencore/parser/lex.py \ + lib/python/ctypes/ctypesgencore/parser/lextab.py \ + lib/python/ctypes/ctypesgencore/parser/parsetab.py \ lib/python/ctypes/ctypesgencore/parser/pplexer.py \ lib/python/ctypes/ctypesgencore/parser/preprocessor.py \ + lib/python/ctypes/ctypesgencore/parser/yacc.py \ lib/python/ctypes/ctypesgencore/printer/__init__.py \ + lib/python/ctypes/ctypesgencore/printer/defaultheader.py \ + lib/python/ctypes/ctypesgencore/printer/preamble.py \ lib/python/ctypes/ctypesgencore/printer/printer.py \ + lib/python/ctypes/ctypesgencore/printer/test.py \ lib/python/ctypes/ctypesgencore/processor/__init__.py \ lib/python/ctypes/ctypesgencore/processor/dependencies.py \ lib/python/ctypes/ctypesgencore/processor/operations.py \ - lib/python/ctypes/ctypesgencore/processor/pipeline.py ] + lib/python/ctypes/ctypesgencore/processor/pipeline.py \ + lib/python/ctypes/loader.py \ + lib/python/ctypes/preamble.py \ + lib/python/db.py \ + lib/python/grass__init__.py \ + lib/python/raster.py \ + lib/python/task.py \ + lib/python/vector.py ] post-patch { - reinplace "s|@@APPLICATIONS_DIR@@|${applications_dir}|" \ - ${worksrcpath}/configure + reinplace "s|@@APPLICATIONS_DIR@@|${applications_dir}|" ${worksrcpath}/configure + reinplace "s|@@PYTHON@@|${python_bin}|" ${worksrcpath}/lib/init/grass.src foreach f $python_scripts { - reinplace "s|/usr/bin/env python|${prefix}/bin/python2.7|" $f + reinplace "s|/usr/bin/env python|${python_bin}|" $f } } @@ -137,7 +252,7 @@ build.target default -build.args-append PYTHON=${frameworks_dir}/Python.framework/Versions/2.7/bin/python2.7 +build.args-append PYTHON=${python_bin} variant mysql5 description {Add MySQL 5 support} { depends_lib-append path:bin/mysql_config5:mysql5 @@ -195,6 +310,10 @@ --with-ffmpeglibs=${prefix}/lib } +# FIXME: +# grass 4.6.3 is not compatible with wxPython 2.9 yet +# the option names should be changed to allow building against wxPython 2.8 (either carbon or gtk variant) +# it also needs to be guaranteed that the right architecture is chosen variant wxwidgets description {Add WXWidgets support} { depends_lib-append port:${wxWidgets.port} configure.args-delete --disable-wxwidgets Modified: trunk/dports/gis/grass/files/patch-Makefile.diff =================================================================== --- trunk/dports/gis/grass/files/patch-Makefile.diff 2013-08-31 10:54:29 UTC (rev 110475) +++ trunk/dports/gis/grass/files/patch-Makefile.diff 2013-08-31 11:02:07 UTC (rev 110476) @@ -1,6 +1,6 @@ ---- Makefile.orig 2011-05-13 14:01:14.000000000 -0500 -+++ Makefile 2012-09-05 23:55:59.000000000 -0500 -@@ -24,7 +24,7 @@ +--- Makefile.orig ++++ Makefile +@@ -24,7 +24,7 @@ include $(MODULE_TOPDIR)/include/Make/Grass.make # Install directories exec_prefix= ${prefix} @@ -9,7 +9,7 @@ # Shell commands MAKE_DIR_CMD= mkdir -p -m 755 -@@ -80,6 +80,9 @@ +@@ -81,6 +81,9 @@ DOXNAME=grass include $(MODULE_TOPDIR)/include/Make/Docs.make include $(MODULE_TOPDIR)/include/Make/Doxygen.make @@ -19,7 +19,7 @@ default: builddemolocation @echo "GRASS GIS compilation log" > $(ERRORLOG) @echo "-------------------------" >> $(ERRORLOG) -@@ -269,7 +272,7 @@ +@@ -272,7 +275,7 @@ real-install: FORCE test -d ${INST_DIR} || ${MAKE_DIR_CMD} ${INST_DIR} @##### test -d ${INST_DIR}/dev || ${MAKE_DIR_CMD} ${INST_DIR}/dev test -d ${BINDIR} || ${MAKE_DIR_CMD} ${BINDIR} @@ -28,7 +28,7 @@ -chmod a+x ${BINDIR}/grass${GRASS_VERSION_MAJOR}${GRASS_VERSION_MINOR} -cd ${GISBASE} ; tar cBf - $(FILES) | (cd ${INST_DIR} ; tar xBf - ) 2>/dev/null -cd ${GISBASE} ; tar cBf - bin | (cd ${INST_DIR} ; tar xBf - ) 2>/dev/null -@@ -304,8 +307,6 @@ +@@ -310,8 +313,6 @@ ifeq ($(strip $(MINGW)),) -tar cBf - gem/skeleton | (cd ${INST_DIR}/etc ; tar xBf - ) 2>/dev/null -${INSTALL} gem/gem$(GRASS_VERSION_MAJOR)$(GRASS_VERSION_MINOR) ${BINDIR} 2>/dev/null endif Modified: trunk/dports/gis/grass/files/patch-configure.diff =================================================================== --- trunk/dports/gis/grass/files/patch-configure.diff 2013-08-31 10:54:29 UTC (rev 110475) +++ trunk/dports/gis/grass/files/patch-configure.diff 2013-08-31 11:02:07 UTC (rev 110476) @@ -1,6 +1,6 @@ ---- configure.orig 2012-02-06 04:16:07.000000000 -0600 -+++ configure 2012-09-05 23:57:31.000000000 -0500 -@@ -1437,9 +1437,9 @@ +--- configure.orig ++++ configure +@@ -1424,9 +1424,9 @@ fi # Set INST_DIR if test -n "$MACOSX_APP" ; then Added: trunk/dports/gis/grass/files/patch-gui-wxpython-core-globalvar.py.diff =================================================================== --- trunk/dports/gis/grass/files/patch-gui-wxpython-core-globalvar.py.diff (rev 0) +++ trunk/dports/gis/grass/files/patch-gui-wxpython-core-globalvar.py.diff 2013-08-31 11:02:07 UTC (rev 110476) @@ -0,0 +1,12 @@ +just a temporary (pretty much useless) workaround that allows to start the GUI with wxPython 2.9.4 +--- gui/wxpython/core/globalvar.py.orig ++++ gui/wxpython/core/globalvar.py +@@ -59,7 +59,7 @@ def CheckForWx(): + raise ValueError('Your wxPython version is %s.%s.%s.%s' % tuple(version.split('.'))) + if map(int, version.split('.')) >= unsupportedVersion: + print >> sys.stderr, 'ERROR: wxGUI does not support wxPython %s yet.' % version +- sys.exit(1) ++ # sys.exit(1) + except ImportError, e: + print >> sys.stderr, 'ERROR: wxGUI requires wxPython. %s' % str(e) + sys.exit(1) Added: trunk/dports/gis/grass/files/patch-gui-wxpython-gui_core-ghelp.py.diff =================================================================== --- trunk/dports/gis/grass/files/patch-gui-wxpython-gui_core-ghelp.py.diff (rev 0) +++ trunk/dports/gis/grass/files/patch-gui-wxpython-gui_core-ghelp.py.diff 2013-08-31 11:02:07 UTC (rev 110476) @@ -0,0 +1,21 @@ +http://trac.osgeo.org/grass/changeset/51052 +Doesn't really help because grass refuses to run with "ERROR: wxGUI does not support wxPython 2.9.4.0 yet." +--- gui/wxpython/gui_core/ghelp.py.orig ++++ gui/wxpython/gui_core/ghelp.py +@@ -88,7 +88,6 @@ class SearchModuleWindow(wx.Panel): + """!Do layout""" + sizer = wx.StaticBoxSizer(self.box, wx.HORIZONTAL) + gridSizer = wx.GridBagSizer(hgap = 3, vgap = 3) +- gridSizer.AddGrowableCol(1) + + gridSizer.Add(item = self.searchBy, + flag = wx.ALIGN_CENTER_VERTICAL, pos = (0, 0)) +@@ -104,6 +103,8 @@ class SearchModuleWindow(wx.Panel): + gridSizer.Add(item = self.searchChoice, + flag = wx.ALIGN_CENTER_VERTICAL | wx.EXPAND, pos = (row, 0), span = (1, 2)) + ++ gridSizer.AddGrowableCol(1) ++ + sizer.Add(item = gridSizer, proportion = 1) + + self.SetSizer(sizer) Added: trunk/dports/gis/grass/files/patch-lib-init-grass.src.diff =================================================================== --- trunk/dports/gis/grass/files/patch-lib-init-grass.src.diff (rev 0) +++ trunk/dports/gis/grass/files/patch-lib-init-grass.src.diff 2013-08-31 11:02:07 UTC (rev 110476) @@ -0,0 +1,9 @@ +--- lib/init/grass.src.orig ++++ lib/init/grass.src +@@ -21,5 +21,6 @@ trap "echo 'User break!' ; exit" 2 3 9 15 + # Set the GISBASE variable + GISBASE="GISBASE_VALUE" + export GISBASE ++export GRASS_PYTHON=@@PYTHON@@ + + exec "$GISBASE/etc/Init.sh" "$@" Modified: trunk/dports/gis/grass/files/patch-macosx_Makefile.diff =================================================================== --- trunk/dports/gis/grass/files/patch-macosx_Makefile.diff 2013-08-31 10:54:29 UTC (rev 110475) +++ trunk/dports/gis/grass/files/patch-macosx_Makefile.diff 2013-08-31 11:02:07 UTC (rev 110476) @@ -1,6 +1,6 @@ ---- macosx/Makefile.orig 2010-02-19 06:16:31.000000000 +0900 -+++ macosx/Makefile 2010-05-19 17:53:30.000000000 +0900 -@@ -35,6 +35,8 @@ +--- macosx/Makefile.orig ++++ macosx/Makefile +@@ -35,6 +35,8 @@ FILES = AUTHORS COPYING CHANGES REQUIREMENTS.html GPL.TXT include $(MODULE_TOPDIR)/include/Make/Dir.make Deleted: trunk/dports/gis/grass/files/patch-visualization_nviz_src-draw_c.diff =================================================================== --- trunk/dports/gis/grass/files/patch-visualization_nviz_src-draw_c.diff 2013-08-31 10:54:29 UTC (rev 110475) +++ trunk/dports/gis/grass/files/patch-visualization_nviz_src-draw_c.diff 2013-08-31 11:02:07 UTC (rev 110476) @@ -1,11 +0,0 @@ ---- visualization/nviz/src/draw.c 2008-12-19 21:29:59.000000000 +0100 -+++ visualization/nviz/src/draw_new.c 2013-01-21 22:22:09.819456565 +0100 -@@ -32,7 +32,7 @@ - void CancelFunc_Hook(void) - { - if (cancel_script != NULL) { -- TkCopyAndGlobalEval(cancel_interp, cancel_script); -+ Tcl_EvalEx(cancel_interp, cancel_script, -1, TCL_EVAL_GLOBAL); - } - } -
participants (1)
-
mojca@macports.org