[110234] trunk/dports

mojca at macports.org mojca at macports.org
Wed Aug 28 22:52:39 PDT 2013


Revision: 110234
          https://trac.macports.org/changeset/110234
Author:   mojca at macports.org
Date:     2013-08-28 22:52:39 -0700 (Wed, 28 Aug 2013)
Log Message:
-----------
new wxWidgets-1.0 PortGroup, wxWidgets-2.8, wxWidgets-3.0, wxgtk-2.8, wxgtk-3.0, wxPython-3.0 (#32035, #37819, #39807, #40007)

- add a new wxWidgets PortGroup
- add new (sub)ports:
  - wxWidgets-2.8
  - wxWidgets-3.0
  - wxgtk-2.8
  - wxgtk-3.0 (just for testing)
  - wxPython-3.0 (for compatibility with a possibly different version of wxPython)
- will replace the ports:
  - wxWidgets
  - wxWidgets-devel
  - wxWidgets-python
  - wxWidgets30
  - wxgtk
- install files to ${frameworks_dir}/wxWidgets.framework/Versions/${wxWidgets.name}/${wxWidgets.version}
- allow side-by-side installation of wxWidgets 2.8 and 2.9/3.0
- add some wxPython files to avoid conflicts in py2X-wxpython-* and py2Y-wxpython-*
- modified descriptions
- wxgtk-* ports now allow building 64-bit and universal binaries on otherwise incompatible architectures
- remove SDL from Carbon/Cocoa-based ports and fix building SDL for GTK-based ports
- fix builds with --enable-graphics_ctx (#32035)
- link against the right version of OpenGL in GTK

Modified Paths:
--------------
    trunk/dports/graphics/wxWidgets-2.8/Portfile
    trunk/dports/graphics/wxWidgets-3.0/Portfile

Added Paths:
-----------
    trunk/dports/_resources/port1.0/group/wxWidgets-1.0.tcl
    trunk/dports/graphics/wxWidgets/
    trunk/dports/graphics/wxWidgets-2.8/
    trunk/dports/graphics/wxWidgets-2.8/files/patch-configure.diff
    trunk/dports/graphics/wxWidgets-2.8/files/patch-sdl.diff
    trunk/dports/graphics/wxWidgets-2.8/files/patch-src-gtk-app.cpp.diff
    trunk/dports/graphics/wxWidgets-2.8/files/wxWidgets-2.8
    trunk/dports/graphics/wxWidgets-2.8/files/wxgtk-2.8
    trunk/dports/graphics/wxWidgets-3.0/
    trunk/dports/graphics/wxWidgets-3.0/files/patch-configure.diff
    trunk/dports/graphics/wxWidgets-3.0/files/patch-sdl.diff
    trunk/dports/graphics/wxWidgets-3.0/files/patch-src-osx-cocoa-window.mm.diff
    trunk/dports/graphics/wxWidgets-3.0/files/patch-upstream-psn.diff
    trunk/dports/graphics/wxWidgets-3.0/files/wxPython-3.0
    trunk/dports/graphics/wxWidgets-3.0/files/wxWidgets-3.0
    trunk/dports/graphics/wxWidgets-3.0/files/wxgtk-3.0
    trunk/dports/graphics/wxWidgets-devel/

Removed Paths:
-------------
    trunk/dports/graphics/wxWidgets/
    trunk/dports/graphics/wxWidgets-devel/

Added: trunk/dports/_resources/port1.0/group/wxWidgets-1.0.tcl
===================================================================
--- trunk/dports/_resources/port1.0/group/wxWidgets-1.0.tcl	                        (rev 0)
+++ trunk/dports/_resources/port1.0/group/wxWidgets-1.0.tcl	2013-08-29 05:52:39 UTC (rev 110234)
@@ -0,0 +1,120 @@
+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
+# $Id$
+
+options     wxWidgets.name
+options     wxWidgets.port
+options     wxWidgets.version
+options     wxWidgets.prefix
+
+options     wxWidgets.wxdir
+options     wxWidgets.wxconfig
+options     wxWidgets.wxrc
+
+options     wxWidgets.sdk
+options     wxWidgets.macosx_version_min
+
+# set to empty
+wxWidgets.name
+wxWidgets.port
+wxWidgets.version
+wxWidgets.prefix
+wxWidgets.wxdir
+wxWidgets.wxconfig
+wxWidgets.wxrc
+wxWidgets.sdk
+wxWidgets.macosx_version_min
+
+options     wxWidgets.use
+option_proc wxWidgets.use wxWidgets._set
+
+## TODO:
+## If the need for this ever arises ...
+##
+## This parameter could be set for every port and could be useful on Tiger
+## to switch to 2.8 automatically even when 3.0 is the default elsewhere
+## or to provent using 3.0 for ports that don't support this
+##
+## With proper implementation wxWidgets.use should only be needed in Portfile
+## in special cases (when a specific port wants to support multiple wxWidgets versions)
+#
+# options     wxWidgets.supported_versions
+# option_proc wxWidgets.supported_versions wxWidgets._set_supported_versions
+# proc wxWidgets._set_supported_versions {option action args} {}
+
+## TODO: it would be nice to make the changes reversible
+##
+## parameters: "wxWidgets-2.8" "wxGTK-2.8" "wxWidgets-3.0" "wxGTK-3.0" "wxPython-3.0"
+proc wxWidgets._set {option action args} {
+    global prefix frameworks_dir os.major
+    global wxWidgets.name wxWidgets.version wxWidgets.prefix wxWidgets.wxdir
+    if {"set" != ${action}} {
+        return
+    }
+
+    if {${args} == "wxWidgets-2.8"} {
+        wxWidgets.name      "wxWidgets"
+        wxWidgets.version   "2.8"
+        wxWidgets.port      "wxWidgets-2.8"
+
+        # wxWidgets is not universal and is 32-bit only
+        universal_variant   no
+        supported_archs     i386 ppc
+        compiler.blacklist  clang
+
+        pre-fetch {
+            # 10.8 (or later) -or- 10.7 with Xcode 4.4 (or later)
+            if {${os.major} >= 12 || [vercmp $xcodeversion 4.4] >= 0} {
+                ui_error "${wxWidgets.port} cannot be built on Moc OS X >= 10.7 with Xcode >= 4.4, please use port wxWidgets-3.0 or wxgtk-2.8 instead"
+                return -code return "wxWidgets-2.8 cannot be built on Moc OS X >= 10.7 with Xcode >= 4.4, please use port wxWidgets-3.0 or wxgtk-2.8 instead"
+            } else {
+                # 10.7
+                if {${os.major} == 11} {
+                    if {[vercmp $xcodeversion 4.3] < 0} {
+                        set sdks_dir "${developer_dir}/SDKs"
+                    } else {
+                        set sdks_dir "${developer_dir}/Platforms/MacOSX.platform/Developer/SDKs"
+                    }
+                    wxWidgets.sdk "${sdks_dir}/MacOSX10.6.sdk"
+                    wxWidgets.macosx_version_min "10.6"
+                }
+            }
+        }
+    } elseif {${args} == "wxGTK-2.8"} {
+        wxWidgets.name      "wxGTK"
+        wxWidgets.version   "2.8"
+        wxWidgets.port      "wxgtk-2.8"
+    } elseif {${args} == "wxGTK-3.0"} {
+        wxWidgets.name      "wxGTK"
+        wxWidgets.version   "2.9"
+        wxWidgets.port      "wxgtk-3.0"
+    } elseif {${args} == "wxWidgets-3.0"} {
+        wxWidgets.name      "wxWidgets"
+        wxWidgets.version   "2.9"
+        wxWidgets.port      "wxWidgets-3.0"
+        if {${os.major} < 9} {
+            pre-fetch {
+                ui_error "${wxWidgets.port} requires Mac OS X 10.5 or later."
+                return -code error "incompatible Mac OS X version"
+            }
+        }
+    } elseif {${args} == "wxPython-3.0"} {
+        wxWidgets.name      "wxPython"
+        wxWidgets.version   "2.9"
+        wxWidgets.port      "wxPython-3.0"
+        if {${os.major} < 9} {
+            pre-fetch {
+                ui_error "${wxWidgets.port} requires Mac OS X 10.5 or later."
+                return -code error "incompatible Mac OS X version"
+            }
+        }
+    } else {
+        # throw an error
+        ui_error "invalid parameter for wxWidgets.use; use one of: wxWidgets-2.8/wxGTK-2.8/wxWidgets-3.0/wxGTK-3.0/wxPython-3.0"
+        return -code return "invalid parameter for wxWidgets.use"
+    }
+    wxWidgets.prefix    ${frameworks_dir}/wxWidgets.framework/Versions/${wxWidgets.name}/${wxWidgets.version}
+
+    wxWidgets.wxdir     ${wxWidgets.prefix}/bin
+    wxWidgets.wxconfig  ${wxWidgets.wxdir}/wx-config
+    wxWidgets.wxrc      ${wxWidgets.wxdir}/wxrc
+}


Property changes on: trunk/dports/_resources/port1.0/group/wxWidgets-1.0.tcl
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:eol-style
   + native

Modified: trunk/dports/graphics/wxWidgets-2.8/Portfile
===================================================================
--- trunk/dports/graphics/wxWidgets/Portfile	2013-08-28 16:37:22 UTC (rev 110213)
+++ trunk/dports/graphics/wxWidgets-2.8/Portfile	2013-08-29 05:52:39 UTC (rev 110234)
@@ -1,139 +1,164 @@
 # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
 # $Id$
 
-PortSystem 1.0
-PortGroup       archcheck 1.0
+PortSystem          1.0
+PortGroup           active_variants 1.1
+PortGroup           archcheck       1.0
+PortGroup           select          1.0
+PortGroup           wxWidgets       1.0
 
-name            wxWidgets
-conflicts       wxgtk wxWidgets-python
-epoch           3
-version         2.8.12
-revision        3
+name                wxWidgets-2.8
+version             2.8.12
+set branch          [join [lrange [split ${version} .] 0 1] .]
+set wxpythonsubset  wxPython-2.8.12.1-MacPorts-subset
 
-categories      graphics devel
-license         LGPL-2+
-platforms       darwin
-maintainers     jwa
-description     mature cross-platform C++ GUI framework
-long_description    wxWidgets is a mature open-source cross-platform C++ \
-    GUI framework for Mac OS, Unix, Linux, Windows. It can \
-    make use of a variety of native widget sets as well as \
-    its own widget set: Mac OS, GTK+, Motif, WIN32. \
-    wxWidgets will even run on embedded systems using \
-    Linux and X11.
+categories          graphics devel
+platforms           darwin
+license             LGPL-2+
+maintainers         jwa mojca
 
-homepage        http://www.wxwidgets.org/
-distname        wxWidgets
-master_sites    sourceforge:wxwindows \
-                http://biolpc22.york.ac.uk/pub/${version}/
+description         C++ framework for cross-platform GUI development
+long_description    wxWidgets ${branch} is an open-source cross-platform C++ \
+                    GUI framework for Mac OS, Unix, Linux, Windows. \
+                    Version 2.8 doesn't work with 64-bit Cocoa, so users \
+                    can choose between native 32-bit Carbon-based wxWidgets-2.8 \
+                    (requires SDK for 10.6 or lower) \
+                    and X11-based wxgtk-2.8 which also works in 64-bit.\
+                    The port is provided for compatibility reasons only \
+                    and will be removed as soon as all dependencies \
+                    start working with wxWidgets-3.0.
 
-use_bzip2       yes
+homepage            http://www.wxwidgets.org/
+distname            wxWidgets
+master_sites        sourceforge:project/wxwindows/${version} \
+                    http://biolpc22.york.ac.uk/pub/${version}/ \
+                    http://trac.macports.org/raw-attachment/ticket/19190/:trac
 
-distfiles       ${distname}-${version}${extract.suffix}
-dist_subdir     ${distname}/${version}
+use_bzip2           yes
 
-checksums           rmd160  928e221abe1a00cd2d72d2a4fd3640ba639b9915 \
-                    sha256  3b0ac1d2d017683851841501c8e1b744b97242d684a1668ded61809b0504f707
+distfiles           ${distname}-${version}${extract.suffix} \
+                    ${wxpythonsubset}${extract.suffix}:trac
+dist_subdir         ${distname}/${version}
 
-depends_lib     port:jpeg \
-                port:tiff \
-                port:libpng \
-                port:zlib \
-                port:libiconv \
-                port:expat \
-                path:lib/pkgconfig/sdl.pc:libsdl \
-                port:libsdl_mixer
+checksums           ${distname}-${version}${extract.suffix} \
+                    rmd160  928e221abe1a00cd2d72d2a4fd3640ba639b9915 \
+                    sha256  3b0ac1d2d017683851841501c8e1b744b97242d684a1668ded61809b0504f707 \
+                    ${wxpythonsubset}${extract.suffix} \
+                    rmd160  df824e5cd99cb2fc927194526edadd2f650a1c87 \
+                    sha256  01d77736aca3d16d1c26aa1002748bf43cd8ad261802f35e9a8f7b75c2227e8a
 
-archcheck.files lib/libjpeg.dylib \
-                lib/libtiff.dylib \
-                lib/libpng.dylib \
-                lib/libz.dylib \
-                lib/libiconv.dylib \
-                lib/libexpat.dylib \
-                lib/libSDL.dylib \
-                lib/libSDL_mixer.dylib
+subport wxgtk-2.8   {}
 
-set worksrcdir  ${distname}-${version}/build
+if {$subport == $name || $subport == ""} {
+    wxWidgets.use   wxWidgets-2.8
+    set installname wxWidgets
+    set wxtype      mac
+} else {
+    wxWidgets.use   wxGTK-2.8
+    set installname wxGTK
+    set wxtype      gtk2
+}
+set installtype     release
+set contrib         "gizmos stc ogl"
 
-extract.only    ${distname}-${version}${extract.suffix}
+depends_lib         port:jpeg \
+                    port:tiff \
+                    port:libpng \
+                    port:zlib \
+                    port:libiconv \
+                    port:expat
 
-patchfiles      patch-chkconf.diff
-patch.dir       ${workpath}/${distname}-${version}
+depends_run         port:wxWidgets_select
 
-compiler.blacklist  clang
+select.group        wxWidgets
+select.file         ${filespath}/${subport}
 
-#configure.cmd    ../${distname}-${version}/configure
-configure.cmd   ../configure
-configure.ldflags   -L${build.dir}/lib -L${prefix}/lib
-configure.args      --mandir=${prefix}/share/man \
+archcheck.files     lib/libjpeg.dylib \
+                    lib/libtiff.dylib \
+                    lib/libpng.dylib \
+                    lib/libz.dylib \
+                    lib/libiconv.dylib \
+                    lib/libexpat.dylib
+
+worksrcdir          ${distname}-${version}/build
+
+patchfiles          patch-chkconf.diff \
+                    patch-configure.diff \
+                    patch-sdl.diff \
+                    patch-src-gtk-app.cpp.diff
+patch.dir           ${workpath}/${distname}-${version}
+
+post-patch {
+    reinplace "s|@@ARCHS@@|[get_canonical_archflags]|g" ${patch.dir}/configure
+    reinplace "s|@@PREFIX@@|${prefix}|g"                ${patch.dir}/configure
+}
+
+configure.cmd       ../configure
+configure.args      --prefix=${wxWidgets.prefix} \
+                    --with-mac \
                     --with-libiconv-prefix=${prefix} \
                     --with-libjpeg \
                     --with-libtiff \
                     --with-libpng \
                     --with-zlib \
-                    --with-sdl \
                     --with-opengl \
-                    --with-mac \
+                    --without-sdl \
                     --disable-sdltest \
                     --enable-unicode \
-                    --enable-display
+                    --enable-display \
+                    --enable-graphics_ctx \
+                    --enable-universal_binary
 
-set contrib     "gizmos stc ogl"
-set installtype release
+if {${wxWidgets.sdk} == ""} {
+    configure.args-append   --with-macosx-sdk=no \
+                            --with-macosx-version-min=no
+} else {
+    configure.args-append   --with-macosx-sdk=${wxWidgets.sdk} \
+                            --with-macosx-version-min=${wxWidgets.macosx_version_min}
+}
 
-build.target
+# wxgtk-2.8 (it doesn't work with Quartz)
+if {$subport != $name} {
+    depends_lib-append      port:cairo \
+                            port:gtk2 \
+                            port:mesa \
+                            path:lib/pkgconfig/sdl.pc:libsdl \
+                            port:libsdl_mixer
 
-universal_variant   no
-use_parallel_build  no
+    require_active_variants cairo x11
+    require_active_variants gtk2  x11
 
-supported_archs     i386 ppc
-configure.cppflags-append    -arch ${configure.build_arch}
-
-platform darwin 11 {
-    pre-fetch {
-        if {[vercmp $xcodeversion 4.4] >= 0} {
-            return -code return "${name} cannot build on 10.7 with Xcode >= 4.4, please use port ${name}-devel instead"
-        }
-    }
-
-    configure.args-append \
-        --with-macosx-version-min=10.6
-    if {[vercmp $xcodeversion 4.3] >= 0} {
-        configure.args-append \
-            --with-macosx-sdk=${developer_dir}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.6.sdk
-    } else {
-        configure.args-append \
-            --with-macosx-sdk=${developer_dir}/SDKs/MacOSX10.6.sdk
-    }
+    configure.args-delete   --with-mac \
+                            --without-sdl
+    configure.args-append   --with-gtk \
+                            --with-sdl
 }
 
-platform darwin 12 {
-    pre-fetch {
-        return -code return "${name} does not build on 10.8 due to missing Carbon support, please use port ${name}30 instead"
-    }
-}
-
 post-build {
     foreach c { ${contrib} } {
-        system "cd ${build.dir} && make -C contrib/src/${c}"
+        system -W ${build.dir} "make -C contrib/src/${c}"
     }
 }
 
 post-destroot {
     foreach c { ${contrib} } {
-        system "cd ${build.dir} && make -C contrib/src/${c} install ${destroot.destdir}"
+        system -W ${build.dir} "make -C contrib/src/${c} install ${destroot.destdir}"
     }
 
-    xinstall -d -m 755 ${destroot}${prefix}/share/doc/${name}
+    # copy a subset of wxPython to wxWidgets to prevent a conflict
+    # between py2X-wxpython-2.8 and py2Y-wxpython-2.8
+    copy ${workpath}/wxPython ${destroot}${wxWidgets.prefix}/include/wx-${branch}/wx/
+
+    # copy a subset of documetation
+    set destdocdir ${destroot}${wxWidgets.prefix}/share/doc/${distname}
+    xinstall -d -m 755 ${destdocdir}
     xinstall -m 644 -W ${workpath}/${distname}-${version} \
-    install-mac.txt install-mgl.txt install-motif.txt \
-    INSTALL-OS2.txt install-x11.txt readme-cocoa.txt \
-    readme-gtk.txt readme-mac.txt \
-    readme-mgl.txt readme-motif.txt readme-x11.txt \
-    ${destroot}${prefix}/share/doc/${name}
-    set confscript ${prefix}/lib/wx/config/mac-unicode-${installtype}-2.8
-    reinplace "s|-L${build.dir}/lib||" ${destroot}${confscript}
-    ln -sf ${confscript} ${destroot}${prefix}/bin/wx-config
+    install-mac.txt readme-mac.txt \
+    install-gtk.txt readme-gtk.txt ${destdocdir}
+
+    # maybe not needed
+    set confscript ${wxWidgets.prefix}/lib/wx/config/${wxtype}-unicode-${installtype}-${branch}
+    ln -sf ${confscript} ${destroot}${wxWidgets.prefix}/bin/wx-config
 }
 
 variant aui description {add support for AUI docking library} {
@@ -149,6 +174,7 @@
     set installtype debug
 }
 
-livecheck.type  regex
-livecheck.url   ${homepage}/downloads/
-livecheck.regex Current Stable Release.*(2\\.\[0-9\]\\.\[0-9\]+)
+# when version 3.0 gets released, the livecheck won't be valid any more
+livecheck.type      regex
+livecheck.url       ${homepage}/downloads/
+livecheck.regex     Current Stable Release.*(2\\.\[0-9\]\\.\[0-9\]+)

Added: trunk/dports/graphics/wxWidgets-2.8/files/patch-configure.diff
===================================================================
--- trunk/dports/graphics/wxWidgets-2.8/files/patch-configure.diff	                        (rev 0)
+++ trunk/dports/graphics/wxWidgets-2.8/files/patch-configure.diff	2013-08-29 05:52:39 UTC (rev 110234)
@@ -0,0 +1,124 @@
+--- configure.orig
++++ configure
+@@ -16169,7 +16169,7 @@ See \`config.log' for more details." >&2;}
+ echo "$as_me: WARNING: Please use --with-macosx-sdk=PATH and --enable-universal_binary without an argument" >&2;}
+             fi
+         fi
+-                OSX_UNIV_OPTS="-arch ppc -arch i386"
++                OSX_UNIV_OPTS="@@ARCHS@@"
+         CXXFLAGS="$OSX_UNIV_OPTS $CXXFLAGS"
+         CFLAGS="$OSX_UNIV_OPTS $CFLAGS"
+         OBJCXXFLAGS="$OSX_UNIV_OPTS $OBJCXXFLAGS"
+@@ -24932,44 +24932,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ 
+ 
+ 
+-SEARCH_INCLUDE="\
+-    /usr/local/include        \
+-    /usr/local/X11/include    \
+-    /usr/local/include/X11    \
+-    /usr/local/X11R6/include  \
+-    /usr/local/include/X11R6  \
+-                              \
+-    /usr/Motif-2.1/include    \
+-    /usr/Motif-1.2/include    \
+-    /usr/include/Motif1.2     \
+-                              \
+-    /usr/dt/include           \
+-    /usr/openwin/include      \
+-                              \
+-    /usr/include/Xm           \
+-                              \
+-    /usr/X11R6/include        \
+-    /usr/X11R6.4/include      \
+-                              \
+-    /usr/include/X11R6        \
+-                              \
+-    /usr/X11/include          \
+-    /usr/include/X11          \
+-                              \
+-    /usr/XFree86/include/X11  \
+-    /usr/pkg/include          \
+-                              \
+-    /usr/local/X1R5/include  \
+-    /usr/local/include/X11R5  \
+-    /usr/X11R5/include        \
+-    /usr/include/X11R5        \
+-                              \
+-    /usr/local/X11R4/include  \
+-    /usr/local/include/X11R4  \
+-    /usr/X11R4/include        \
+-    /usr/include/X11R4        \
+-                              \
+-    /usr/openwin/share/include"
++SEARCH_INCLUDE="@@PREFIX@@/include"
+ 
+ echo "$as_me:$LINENO: checking for libraries directory" >&5
+ echo $ECHO_N "checking for libraries directory... $ECHO_C" >&6
+@@ -28916,7 +28879,7 @@ rm -f conftest.err conftest.$ac_objext \
+                                         wx_cv_lib_gtk=none
+                 else
+                                                             wx_cv_cflags_gtk=$GTK_CFLAGS
+-                    wx_cv_libs_gtk=`echo $GTK_LIBS | sed -e 's/ -l[^ ]*cairo[^ ]*//g'`
++                    wx_cv_libs_gtk="$GTK_LIBS"
+                 fi
+ 
+ 
+@@ -33190,7 +33153,7 @@ echo "$as_me: WARNING: wxGLCanvas not implemented for this port, library will be
+         OPENGL_LIBS="-framework OpenGL -framework AGL"
+     elif test "$wxUSE_MSW" = 1; then
+         OPENGL_LIBS="-lopengl32 -lglu32"
+-    elif test "$USE_DARWIN" = 1; then
++    elif test "$wxUSE_MAC" = 1; then
+         OPENGL_LIBS=""
+     else
+                         echo "$as_me:$LINENO: checking for OpenGL headers" >&5
+@@ -33801,22 +33764,6 @@ rm -f conftest.err conftest.$ac_objext \
+       ;;
+ 
+       *-*-darwin* )
+-        install_name_tool=`which install_name_tool`
+-        if test "$install_name_tool" -a -x "$install_name_tool"; then
+-            SAMPLES_RPATH_POSTLINK="\$(wx_top_builddir)/change-install-names \$(LIBDIRNAME) \$(prefix) \$@"
+-            cat <<EOF >change-install-names
+-#!/bin/sh
+-libnames=\`cd \${1} ; ls -1 | grep '\.[0-9][0-9]*\.dylib\$'\`
+-inst_cmd="install_name_tool "
+-for i in \${libnames} ; do
+-    inst_cmd="\${inst_cmd} -change \${2}/lib/\${i} \${1}/\${i}"
+-done
+-\${inst_cmd} \${3}
+-EOF
+-            chmod +x change-install-names
+-
+-            HEADER_PAD_OPTION="-headerpad_max_install_names"
+-        fi
+       ;;
+ 
+       *-*-cygwin* | *-*-mingw32* )
+--- setup.h.in.orig
++++ setup.h.in
+@@ -552,7 +552,7 @@
+ #define wxUSE_RICHEDIT2 0
+ #endif
+ 
+-#if !defined(__WIN32__) && !defined(__APPLE__)
++#if !defined(__WIN32__) && !defined(__WXMAC__)
+ #define wxUSE_CAIRO 1
+ #else
+ #define wxUSE_CAIRO 0
+--- src/generic/graphicc.cpp.orig
++++ src/generic/graphicc.cpp
+@@ -1474,10 +1474,10 @@ wxGraphicsContext * wxCairoRenderer::CreateContext( const wxMemoryDC& dc)
+ 
+ wxGraphicsContext * wxCairoRenderer::CreateContextFromNativeContext( void * context )
+ {
+-#if __WXMSW__
++#ifdef __WXMSW__
+     return new wxCairoContext(this,(HDC)context);
+ #endif
+-#if __WXGTK__
++#ifdef __WXGTK__
+     return new wxCairoContext(this,(cairo_t*)context);
+ #endif
+ }

Added: trunk/dports/graphics/wxWidgets-2.8/files/patch-sdl.diff
===================================================================
--- trunk/dports/graphics/wxWidgets-2.8/files/patch-sdl.diff	                        (rev 0)
+++ trunk/dports/graphics/wxWidgets-2.8/files/patch-sdl.diff	2013-08-29 05:52:39 UTC (rev 110234)
@@ -0,0 +1,48 @@
+This patch is needed to make --with-sdl work
+http://trac.wxwidgets.org/ticket/15453
+--- Makefile.in.orig
++++ Makefile.in
+@@ -5033,8 +5033,8 @@ COND_TOOLKIT_WINCE___MEDIA_PLATFORM_SRC_OBJECTS =  \
+ @COND_PLATFORM_MACOSX_1 at __HTML_SRC_PLATFORM_OBJECTS = monodll_chm.o
+ @COND_PLATFORM_UNIX_1 at __HTML_SRC_PLATFORM_OBJECTS = monodll_chm.o
+ @COND_TOOLKIT_MSW at __HTML_SRC_PLATFORM_OBJECTS = monodll_helpbest.o
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS \
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@	= monodll_sound_sdl.o
++ at COND_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS \
++ at COND_USE_PLUGINS_0@	= monodll_sound_sdl.o
+ COND_MONOLITHIC_1_SHARED_0___monolib___depname = \
+ 	$(LIBDIRNAME)/$(LIBPREFIX)wx_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)$(LIBEXT)
+ @COND_MONOLITHIC_1_SHARED_0 at __monolib___depname = $(COND_MONOLITHIC_1_SHARED_0___monolib___depname)
+@@ -6830,8 +6830,8 @@ COND_TOOLKIT_WINCE___MEDIA_PLATFORM_SRC_OBJECTS_1 =  \
+ @COND_PLATFORM_MACOSX_1 at __HTML_SRC_PLATFORM_OBJECTS_1 = monolib_chm.o
+ @COND_PLATFORM_UNIX_1 at __HTML_SRC_PLATFORM_OBJECTS_1 = monolib_chm.o
+ @COND_TOOLKIT_MSW at __HTML_SRC_PLATFORM_OBJECTS_1 = monolib_helpbest.o
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS_1 \
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@	= monolib_sound_sdl.o
++ at COND_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS_1 \
++ at COND_USE_PLUGINS_0@	= monolib_sound_sdl.o
+ COND_MONOLITHIC_0_SHARED_1___basedll___depname = \
+ 	$(LIBDIRNAME)/$(DLLPREFIX)$(WXDLLNAMEPREFIX)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)$(WXCOMPILER)$(VENDORTAG)$(WXDLLVERSIONTAG)$(dll___targetsuf3)
+ @COND_MONOLITHIC_0_SHARED_1 at __basedll___depname = $(COND_MONOLITHIC_0_SHARED_1___basedll___depname)
+@@ -10405,8 +10405,8 @@ COND_WXUNIV_1___ADVANCED_SRC_OBJECTS_2 =  \
+ @COND_TOOLKIT_MSW@	= advdll_datectrl.o
+ @COND_TOOLKIT_WINCE at __ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 \
+ @COND_TOOLKIT_WINCE@	= advdll_datectrl.o
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS_2 \
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@	= advdll_sound_sdl.o
++ at COND_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS_2 \
++ at COND_USE_PLUGINS_0@	= advdll_sound_sdl.o
+ COND_MONOLITHIC_0_SHARED_0_USE_GUI_1___advlib___depname = \
+ 	$(LIBDIRNAME)/$(LIBPREFIX)wx_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv-$(WX_RELEASE)$(HOST_SUFFIX)$(LIBEXT)
+ @COND_MONOLITHIC_0_SHARED_0_USE_GUI_1 at __advlib___depname = $(COND_MONOLITHIC_0_SHARED_0_USE_GUI_1___advlib___depname)
+@@ -10470,8 +10470,8 @@ COND_WXUNIV_1___ADVANCED_SRC_OBJECTS_3 =  \
+ @COND_TOOLKIT_MSW@	= advlib_datectrl.o
+ @COND_TOOLKIT_WINCE at __ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 \
+ @COND_TOOLKIT_WINCE@	= advlib_datectrl.o
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS_3 \
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@	= advlib_sound_sdl.o
++ at USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS_3 \
++ at USE_PLUGINS_0@	= advlib_sound_sdl.o
+ COND_MONOLITHIC_0_SHARED_1_USE_GUI_1_USE_MEDIA_1___mediadll___depname = \
+ 	$(LIBDIRNAME)/$(DLLPREFIX)$(WXDLLNAMEPREFIXGUI)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_media$(WXCOMPILER)$(VENDORTAG)$(WXDLLVERSIONTAG)$(dll___targetsuf3)
+ @COND_MONOLITHIC_0_SHARED_1_USE_GUI_1_USE_MEDIA_1 at __mediadll___depname = $(COND_MONOLITHIC_0_SHARED_1_USE_GUI_1_USE_MEDIA_1___mediadll___depname)

Added: trunk/dports/graphics/wxWidgets-2.8/files/patch-src-gtk-app.cpp.diff
===================================================================
--- trunk/dports/graphics/wxWidgets-2.8/files/patch-src-gtk-app.cpp.diff	                        (rev 0)
+++ trunk/dports/graphics/wxWidgets-2.8/files/patch-src-gtk-app.cpp.diff	2013-08-29 05:52:39 UTC (rev 110234)
@@ -0,0 +1,27 @@
+allows also the GTK-based wxWidgets apps to be bundled
+(even though they still bounce off the Dock)
+http://trac.wxwidgets.org/changeset/74703
+--- src/gtk/app.cpp.orig
++++ src/gtk/app.cpp
+@@ -415,6 +415,21 @@ bool wxApp::Initialize(int& argc, wxChar **argv)
+ {
+     bool init_result;
+ 
++    // Mac OS X passes a process serial number command line argument when
++    // the application is launched from the Finder. This argument must be
++    // removed from the command line arguments before being handled by the
++    // application (otherwise applications would need to handle it)
++    if ( argc > 1 )
++    {
++        static const wxChar *ARG_PSN = _T("-psn_");
++        if ( wxStrncmp(argv[1], ARG_PSN, wxStrlen(ARG_PSN)) == 0 )
++        {
++            // remove this argument
++            --argc;
++            memmove(argv + 1, argv + 2, argc * sizeof(char *));
++        }
++    }
++
+ #if wxUSE_THREADS
+     if (!g_thread_supported())
+         g_thread_init(NULL);

Added: trunk/dports/graphics/wxWidgets-2.8/files/wxWidgets-2.8
===================================================================
--- trunk/dports/graphics/wxWidgets-2.8/files/wxWidgets-2.8	                        (rev 0)
+++ trunk/dports/graphics/wxWidgets-2.8/files/wxWidgets-2.8	2013-08-29 05:52:39 UTC (rev 110234)
@@ -0,0 +1,8 @@
+${frameworks_dir}/wxWidgets.framework/Versions/wxWidgets/2.8/bin/wx-config
+${frameworks_dir}/wxWidgets.framework/Versions/wxWidgets/2.8/bin/wxrc-2.8
+${frameworks_dir}/wxWidgets.framework/Versions/wxWidgets/2.8/share/aclocal/wxwin.m4
+${frameworks_dir}/wxWidgets.framework/Versions/wxWidgets/2.8/share/bakefile/presets/wx.bkl
+-
+${frameworks_dir}/wxWidgets.framework/Versions/wxWidgets/2.8/share/bakefile/presets/wx_unix.bkl
+${frameworks_dir}/wxWidgets.framework/Versions/wxWidgets/2.8/share/bakefile/presets/wx_win32.bkl
+-

Added: trunk/dports/graphics/wxWidgets-2.8/files/wxgtk-2.8
===================================================================
--- trunk/dports/graphics/wxWidgets-2.8/files/wxgtk-2.8	                        (rev 0)
+++ trunk/dports/graphics/wxWidgets-2.8/files/wxgtk-2.8	2013-08-29 05:52:39 UTC (rev 110234)
@@ -0,0 +1,8 @@
+${frameworks_dir}/wxWidgets.framework/Versions/wxGTK/2.8/bin/wx-config
+${frameworks_dir}/wxWidgets.framework/Versions/wxGTK/2.8/bin/wxrc-2.8
+${frameworks_dir}/wxWidgets.framework/Versions/wxGTK/2.8/share/aclocal/wxwin.m4
+${frameworks_dir}/wxWidgets.framework/Versions/wxGTK/2.8/share/bakefile/presets/wx.bkl
+-
+${frameworks_dir}/wxWidgets.framework/Versions/wxGTK/2.8/share/bakefile/presets/wx_unix.bkl
+${frameworks_dir}/wxWidgets.framework/Versions/wxGTK/2.8/share/bakefile/presets/wx_win32.bkl
+-

Modified: trunk/dports/graphics/wxWidgets-3.0/Portfile
===================================================================
--- trunk/dports/graphics/wxWidgets-devel/Portfile	2013-08-28 16:37:22 UTC (rev 110213)
+++ trunk/dports/graphics/wxWidgets-3.0/Portfile	2013-08-29 05:52:39 UTC (rev 110234)
@@ -2,30 +2,50 @@
 # $Id$
 
 PortSystem          1.0
-PortGroup           archcheck 1.0
+PortGroup           active_variants 1.1
+PortGroup           select          1.0
+PortGroup           wxWidgets       1.0
 
-name                wxWidgets-devel
-conflicts           wxgtk wxWidgets
+name                wxWidgets-3.0
+subport             wxPython-3.0 {}
+subport             wxgtk-3.0 {}
 version             2.9.5
-epoch               20130804
-revision            2
 
-license             wxwidgets-3.1
+set installname     wxWidgets
+set wxtype          osx_cocoa
+
+if {$subport == $name} {
+    wxWidgets.use   wxWidgets-3.0
+} elseif {$subport == "wxPython-3.0"} {
+    wxWidgets.use   wxPython-3.0
+    version         2.9.4
+    set wxpythonsubset wxPython-2.9.4.0-MacPorts-subset
+} elseif {$subport == "wxgtk-3.0"} {
+    # with satisfactory Cocoa support there is no real need for GTK-based wxWidgets any more
+    # wxgtk-3.0 is here mainly for testing purposes
+    # it might be useful to report GTK-related bugs upstream
+    # and play with quartz-based GTK
+    # (and maybe backport changes to 2.8)
+    wxWidgets.use   wxGTK-3.0
+    set installname wxGTK
+    set wxtype      gtk3
+}
+set branch          [join [lrange [split ${version} .] 0 1] .]
+
 categories          graphics devel
 platforms           darwin
+license             wxwidgets-3.1
 maintainers         jwa mojca
-description         mature cross-platform C++ GUI framework
-long_description    wxWidgets is a mature open-source cross-platform C++ \
-                    GUI framework for Mac OS, Unix, Linux, Windows. It can \
-                    make use of a variety of native widget sets as well as \
-                    its own widget set: Mac OS, GTK+, Motif, WIN32. \
-                    wxWidgets will even run on embedded systems using \
-                    Linux and X11.
 
+description         C++ framework for cross-platform GUI development
+long_description    wxWidgets ${branch} is an open-source cross-platform C++ \
+                    GUI framework for Mac OS, Unix, Linux, Windows.
+
 homepage            http://www.wxwidgets.org/
 distname            wxWidgets
 master_sites        sourceforge:project/wxwindows/${version} \
-                    http://biolpc22.york.ac.uk/pub/${version}/
+                    http://biolpc22.york.ac.uk/pub/${version}/ \
+                    http://trac.macports.org/raw-attachment/ticket/19190/:trac
 
 use_bzip2           yes
 
@@ -42,31 +62,25 @@
                     port:libiconv \
                     port:expat
 
-archcheck.files     lib/libjpeg.dylib \
-                    lib/libtiff.dylib \
-                    lib/libpng.dylib \
-                    lib/libz.dylib \
-                    lib/libiconv.dylib \
-                    lib/libexpat.dylib
+depends_run         port:wxWidgets_select
 
-if {${os.major} < 9} {
-   pre-fetch {
-       ui_error "${name} requires Mac OS X 10.5 or later."
-       return -code error "incompatible Mac OS X version"
-   }
-}
+select.group        wxWidgets
+select.file         ${filespath}/${subport}
 
-set worksrcdir      ${distname}-${version}/build
+worksrcdir          ${distname}-${version}/build
 
-extract.only        ${distname}-${version}${extract.suffix}
-
 patch.dir           ${worksrcpath}/..
-patchfiles          patch-configure-change_install_names.diff
 
+# without (the second part of) this patch wxrc-2.9 ends up linking to libraries in workdir
+# http://trac.wxwidgets.org/ticket/15452
+patchfiles          patch-configure.diff
+
+post-patch {
+    reinplace "s|@@PREFIX@@|${prefix}|g" ${patch.dir}/configure
+}
+
 configure.cmd       ../configure
-configure.ldflags   -L${build.dir}/lib -L${prefix}/lib
-
-configure.args      --mandir=${prefix}/share/man \
+configure.args      --prefix=${wxWidgets.prefix} \
                     --with-libiconv-prefix=${prefix} \
                     --with-libjpeg \
                     --with-libtiff \
@@ -79,27 +93,104 @@
                     --enable-unicode \
                     --enable-display \
                     --enable-xrc \
+                    --enable-graphics_ctx \
                     --with-macosx-sdk=no \
                     --with-macosx-version-min=no
 
-build.target
+if {$subport == "wxPython-3.0"} {
+    distfiles-append        ${wxpythonsubset}${extract.suffix}:trac
 
-use_parallel_build  yes
+    # patch-src-osx-cocoa-window.mm.diff: http://trac.wxwidgets.org/changeset/72195 (only needed for 2.9.4)
+    patchfiles-append       patch-src-osx-cocoa-window.mm.diff
 
-variant universal {
-    set archs [join ${configure.universal_archs} ,]
-    configure.args-append   --enable-universal_binary=${archs}
+    description             wxWidgets ${branch} for the wxPython distribution
+    long_description        The port installs wxWidgets ${branch} for wxPython \
+                            to guarantee compatibility even when the upstream versions \
+                            of wxWidgets and wxPython differ.
+
+    checksums               ${distname}-${version}${extract.suffix} \
+                            rmd160  62301f8ce39a8aa96e65318f9d1e947c9dc09c50 \
+                            sha256  6c530c35f40c3b1a5f9a4577c3ee8a9982e745081f23e3fbb9951d6d17514d12 \
+                            ${wxpythonsubset}${extract.suffix} \
+                            rmd160  7831cee8185c521d8b565b56555b3005dee1d53d \
+                            sha256  971b644768d4010b38acf7232deb8cf3c91921ca8b09dec82c1616b93c751f4c
+
+    post-destroot {
+        # copy a subset of wxPython to wxWidgets to prevent a conflict
+        # between py2X-wxpython-3.0 and py2Y-wxpython-3.0
+        copy ${workpath}/wxPython ${destroot}${wxWidgets.prefix}/include/wx-${branch}/wx/
+    }
+
+    livecheck.type          none
+} elseif {$subport == "wxgtk-3.0"} {
+    # both patches could be added to wxWidgets-3.0, but they are not needed for Cocoa
+    # and might need changes for wxWidgets 2.9.4
+    #
+    # patch-sdl.diff: the patch allows using --wxth-sdl
+    # patch-upstream-psn.diff: http://trac.wxwidgets.org/changeset/74703
+    patchfiles-append       patch-sdl.diff \
+                            patch-upstream-psn.diff
+    
+    depends_lib-append      port:cairo \
+                            path:lib/pkgconfig/sdl.pc:libsdl \
+                            port:libsdl_mixer
+
+    configure.args-delete   --with-cocoa \
+                            --without-sdl
+    configure.args-append   --with-sdl
+
+    #variant gtk2 conflicts gtk3 description {} {
+    #    depends_lib-append      port:gtk2
+    #    configure.args-append   --with-gtk=2
+    #    set wxtype              gtk2
+    #}
+    #variant gtk3 conflicts gtk2 description {} {
+        depends_lib-append      port:gtk3
+        configure.args-append   --with-gtk=3
+    #}
+    #variant quartz conflicts x11 {
+    #    require_active_variants cairo quartz
+    #    require_active_variants gtk3 quartz
+    #}
+    #variant x11 conflicts quartz {
+        depends_lib-append  port:mesa
+        require_active_variants cairo x11
+        require_active_variants gtk3  x11
+    #}
+    #if{![variant_isset gtk2] && ![variant_isset gtk3]} {
+    #    default_variants-append +gtk3
+    #}
+    #if{![variant_isset quartz] && ![variant_isset x11]} {
+    #    default_variants-append +quartz
+    #}
+    #if{[variant_isset gtk2]} {
+    #    if{[variant_isset quartz]} {
+    #        require_active_variants gtk2 quartz
+    #    } else {
+    #        require_active_variants gtk2 x11
+    #    }
+    #} else {
+    #    if{[variant_isset quartz]} {
+    #        require_active_variants gtk3 quartz
+    #    } else {
+    #        require_active_variants gtk3 x11
+    #    }
+    #}
 }
 
-configure.ccache    no
+# post-destroot {
+#     set confscript ${wxWidgets.prefix}/lib/wx/config/${wxtype}-unicode-${branch}
+#     ln -sf ${confscript} ${destroot}${wxWidgets.prefix}/bin/wx-config
+# }
 
-post-destroot {
-    set confscript ${prefix}/lib/wx/config/osx_cocoa-unicode-2.9
-    ln -sf ${confscript} ${destroot}${prefix}/bin/wx-config
+variant universal {
+    set archs [join ${configure.universal_archs} ,]
+    # --disable-precomp-headers is automatically selected with cocoa, but not with gtk
+    # http://trac.wxwidgets.org/ticket/15454
+    configure.args-append   --enable-universal_binary=${archs} \
+                            --disable-precomp-headers
 }
 
-default_variants    +sdl
-
 variant monolithic description {build only one library} {
     configure.args-append   --enable-monolithic
 }
@@ -108,19 +199,12 @@
     configure.args-append   --enable-debug
 }
 
-variant sdl description {Use SDL for audio on Unix} {
-    depends_lib-append      path:lib/pkgconfig/sdl.pc:libsdl
-    depends_lib-append      port:libsdl_mixer
-    configure.args-delete   --without-sdl
-    configure.args-append   --with-sdl
-}
-
 variant stdlib description {add support for various standard library features} {
     configure.args-append   --enable-stl \
-    --enable-std_containers \
-    --enable-std_iostreams \
-    --enable-std_string \
-    --enable-std_string_conv_in_wxstring
+                            --enable-std_containers \
+                            --enable-std_iostreams \
+                            --enable-std_string \
+                            --enable-std_string_conv_in_wxstring
 }
 
 variant aui description {add support for AUI docking library} {
@@ -129,4 +213,4 @@
 
 livecheck.type      regex
 livecheck.url       ${homepage}/downloads/
-livecheck.regex     Latest Development Release.*(2\\.\[0-9\]\\.\[0-9\]+)
+livecheck.regex     Release.*(\[23\]\\.\[0-9\]\\.\[0-9\]+)

Added: trunk/dports/graphics/wxWidgets-3.0/files/patch-configure.diff
===================================================================
--- trunk/dports/graphics/wxWidgets-3.0/files/patch-configure.diff	                        (rev 0)
+++ trunk/dports/graphics/wxWidgets-3.0/files/patch-configure.diff	2013-08-29 05:52:39 UTC (rev 110234)
@@ -0,0 +1,79 @@
+The first part is for GTK and makes sure that the port finds the right OpenGL library
+The second part makes sure that install_name_tool doesn't break library names and links (http://trac.wxwidgets.org/ticket/15452)
+--- configure.orig
++++ configure
+@@ -22038,48 +22038,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ 
+ 
+ 
+-SEARCH_INCLUDE="\
+-    /usr/local/include        \
+-    /usr/local/X11/include    \
+-    /usr/local/include/X11    \
+-    /usr/local/X11R7/include  \
+-    /usr/local/X11R6/include  \
+-    /usr/local/include/X11R7  \
+-    /usr/local/include/X11R6  \
+-                              \
+-    /usr/Motif-2.1/include    \
+-    /usr/Motif-1.2/include    \
+-    /usr/include/Motif1.2     \
+-                              \
+-    /usr/dt/include           \
+-    /usr/openwin/include      \
+-                              \
+-    /usr/include/Xm           \
+-                              \
+-    /usr/X11R7/include        \
+-    /usr/X11R6/include        \
+-    /usr/X11R6.4/include      \
+-                              \
+-    /usr/include/X11R7        \
+-    /usr/include/X11R6        \
+-                              \
+-    /usr/X11/include          \
+-    /usr/include/X11          \
+-                              \
+-    /usr/XFree86/include/X11  \
+-    /usr/pkg/include          \
+-                              \
+-    /usr/local/X1R5/include  \
+-    /usr/local/include/X11R5  \
+-    /usr/X11R5/include        \
+-    /usr/include/X11R5        \
+-                              \
+-    /usr/local/X11R4/include  \
+-    /usr/local/include/X11R4  \
+-    /usr/X11R4/include        \
+-    /usr/include/X11R4        \
+-                              \
+-    /usr/openwin/share/include"
++SEARCH_INCLUDE="@@PREFIX@@/include"
+ 
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libraries directories" >&5
+ $as_echo_n "checking for libraries directories... " >&6; }
+@@ -29402,24 +29361,6 @@ rm -f core conftest.err conftest.$ac_objext \
+       ;;
+ 
+       *-*-darwin* )
+-        install_name_tool=`which ${HOST_PREFIX}install_name_tool`
+-        if test "$install_name_tool" -a -x "$install_name_tool"; then
+-            DYLIB_RPATH_POSTLINK="${HOST_PREFIX}install_name_tool -id \$@ \$@"
+-            cat <<EOF >change-install-names
+-#!/bin/sh
+-libnames=\`cd \${2} ; ls -1 | grep '\.[0-9][0-9]*\.dylib\$'\`
+-for i in \${libnames} ; do
+-    ${HOST_PREFIX}install_name_tool -id \${3}/\${i} \${1}/\${i}
+-    for dep in \${libnames} ; do
+-        ${HOST_PREFIX}install_name_tool -change \${2}/\${dep} \${3}/\${dep} \${1}/\${i}
+-    done
+-done
+-EOF
+-            chmod +x change-install-names
+-            DYLIB_RPATH_INSTALL="\$(wx_top_builddir)/change-install-names \${DESTDIR}\${libdir} \$(wx_top_builddir)/lib \${libdir}"
+-        fi
+-
+-                                        HEADER_PAD_OPTION="-headerpad_max_install_names"
+       ;;
+ 
+       *-*-cygwin* | *-*-mingw32* )

Added: trunk/dports/graphics/wxWidgets-3.0/files/patch-sdl.diff
===================================================================
--- trunk/dports/graphics/wxWidgets-3.0/files/patch-sdl.diff	                        (rev 0)
+++ trunk/dports/graphics/wxWidgets-3.0/files/patch-sdl.diff	2013-08-29 05:52:39 UTC (rev 110234)
@@ -0,0 +1,48 @@
+This patch is needed to make --with-sdl work
+http://trac.wxwidgets.org/ticket/15453
+--- Makefile.in.orig
++++ Makefile.in
+@@ -6719,8 +6719,8 @@ COND_TOOLKIT_X11___ADVANCED_PLATFORM_SRC_OBJECTS_1 =  \
+ @COND_TOOLKIT_MSW at __WEBVIEW_SRC_PLATFORM_OBJECTS = monodll_webview_ie.o
+ @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2 at __AUI_GTK_SRC_OBJECTS \
+ @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@	= monodll_tabartgtk.o
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS \
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@	= monodll_sound_sdl.o
++ at COND_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS \
++ at COND_USE_PLUGINS_0@	= monodll_sound_sdl.o
+ @COND_PLATFORM_WIN32_1 at __monodll___win32rc = monodll_version_rc.o
+ @COND_USE_STC_1 at __wxscintilla_library_link_DEP = $(__wxscintilla___depname)
+ @COND_USE_STC_1 at __wxscintilla_library_link_LIBR = -L$(LIBDIRNAME)
+@@ -8970,8 +8970,8 @@ COND_TOOLKIT_X11___ADVANCED_PLATFORM_SRC_OBJECTS_3 =  \
+ @COND_TOOLKIT_MSW at __WEBVIEW_SRC_PLATFORM_OBJECTS_1 = monolib_webview_ie.o
+ @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2 at __AUI_GTK_SRC_OBJECTS_1 \
+ @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@	= monolib_tabartgtk.o
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS_1 \
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@	= monolib_sound_sdl.o
++ at COND_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS_1 \
++ at COND_USE_PLUGINS_0@	= monolib_sound_sdl.o
+ COND_MONOLITHIC_0_SHARED_1___basedll___depname = \
+ 	$(LIBDIRNAME)/$(DLLPREFIX)$(WXDLLNAMEPREFIX)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)$(WXCOMPILER)$(VENDORTAG)$(WXDLLVERSIONTAG)$(dll___targetsuf3)
+ @COND_MONOLITHIC_0_SHARED_1 at __basedll___depname = $(COND_MONOLITHIC_0_SHARED_1___basedll___depname)
+@@ -13111,8 +13111,8 @@ COND_TOOLKIT_X11___ADVANCED_PLATFORM_SRC_OBJECTS_5 =  \
+ @COND_TOOLKIT_MSW at __ADVANCED_UNIV_SRC_OBJECTS_2 = advdll_animateg.o
+ @COND_TOOLKIT_WINCE at __ADVANCED_UNIV_SRC_OBJECTS_2 = advdll_animateg.o
+ @COND_TOOLKIT_X11 at __ADVANCED_UNIV_SRC_OBJECTS_2 = advdll_animateg.o
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS_2 \
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@	= advdll_sound_sdl.o
++ at COND_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS_2 \
++ at COND_USE_PLUGINS_0@	= advdll_sound_sdl.o
+ COND_MONOLITHIC_0_SHARED_0_USE_GUI_1___advlib___depname = \
+ 	$(LIBDIRNAME)/$(LIBPREFIX)wx_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_adv-$(WX_RELEASE)$(HOST_SUFFIX)$(LIBEXT)
+ @COND_MONOLITHIC_0_SHARED_0_USE_GUI_1 at __advlib___depname = $(COND_MONOLITHIC_0_SHARED_0_USE_GUI_1___advlib___depname)
+@@ -13424,8 +13424,8 @@ COND_TOOLKIT_X11___ADVANCED_PLATFORM_SRC_OBJECTS_7 =  \
+ @COND_TOOLKIT_MSW at __ADVANCED_UNIV_SRC_OBJECTS_3 = advlib_animateg.o
+ @COND_TOOLKIT_WINCE at __ADVANCED_UNIV_SRC_OBJECTS_3 = advlib_animateg.o
+ @COND_TOOLKIT_X11 at __ADVANCED_UNIV_SRC_OBJECTS_3 = advlib_animateg.o
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS_3 \
+- at COND_PLATFORM_UNIX_1_USE_PLUGINS_0@	= advlib_sound_sdl.o
++ at USE_PLUGINS_0@__PLUGIN_ADV_SRC_OBJECTS_3 \
++ at USE_PLUGINS_0@	= advlib_sound_sdl.o
+ @COND_SHARED_1 at ____wxadv_namedll_DEP = $(__advdll___depname)
+ @COND_SHARED_0 at ____wxadv_namelib_DEP = $(__advlib___depname)
+ COND_MONOLITHIC_0_SHARED_1_USE_GUI_1_USE_MEDIA_1___mediadll___depname = \

Copied: trunk/dports/graphics/wxWidgets-3.0/files/patch-src-osx-cocoa-window.mm.diff (from rev 97060, trunk/dports/graphics/wxWidgets-devel/files/patch-src-osx-cocoa-window.mm.diff)
===================================================================
--- trunk/dports/graphics/wxWidgets-3.0/files/patch-src-osx-cocoa-window.mm.diff	                        (rev 0)
+++ trunk/dports/graphics/wxWidgets-3.0/files/patch-src-osx-cocoa-window.mm.diff	2013-08-29 05:52:39 UTC (rev 110234)
@@ -0,0 +1,64 @@
+Upstream: http://trac.wxwidgets.org/changeset/72195
+--- src/osx/cocoa/window.mm (revision 72169)
++++ src/osx/cocoa/window.mm (revision 72195)
+@@ -456,4 +456,9 @@
+ - (CGFloat)deviceDeltaX;
+ - (CGFloat)deviceDeltaY;
++
++// 10.7+
++- (BOOL)hasPreciseScrollingDeltas;
++- (CGFloat)scrollingDeltaX;
++- (CGFloat)scrollingDeltaY;
+ @end
+ 
+@@ -610,21 +615,37 @@
+             wxevent.SetEventType( wxEVT_MOUSEWHEEL ) ;
+ 
+-            // see http://developer.apple.com/qa/qa2005/qa1453.html
+-            // for more details on why we have to look for the exact type
+-            
+-            const EventRef cEvent = (EventRef) [nsEvent eventRef];
+-            bool isMouseScrollEvent = false;
+-            if ( cEvent )
+-                isMouseScrollEvent = ::GetEventKind(cEvent) == kEventMouseScroll;
+-                
+-            if ( isMouseScrollEvent )
++            if ( UMAGetSystemVersion() >= 0x1070 )
+             {
+-                deltaX = [nsEvent deviceDeltaX];
+-                deltaY = [nsEvent deviceDeltaY];
++                if ( [nsEvent hasPreciseScrollingDeltas] )
++                {
++                    deltaX = [nsEvent scrollingDeltaX];
++                    deltaY = [nsEvent scrollingDeltaY];
++                }
++                else
++                {
++                    deltaX = [nsEvent scrollingDeltaX] * 10;
++                    deltaY = [nsEvent scrollingDeltaY] * 10;
++                }
+             }
+             else
+             {
+-                deltaX = ([nsEvent deltaX] * 10);
+-                deltaY = ([nsEvent deltaY] * 10);
++                const EventRef cEvent = (EventRef) [nsEvent eventRef];
++                // see http://developer.apple.com/qa/qa2005/qa1453.html
++                // for more details on why we have to look for the exact type
++
++                bool isMouseScrollEvent = false;
++                if ( cEvent )
++                    isMouseScrollEvent = ::GetEventKind(cEvent) == kEventMouseScroll;
++
++                if ( isMouseScrollEvent )
++                {
++                    deltaX = [nsEvent deviceDeltaX];
++                    deltaY = [nsEvent deviceDeltaY];
++                }
++                else
++                {
++                    deltaX = ([nsEvent deltaX] * 10);
++                    deltaY = ([nsEvent deltaY] * 10);
++                }
+             }
+             


Property changes on: trunk/dports/graphics/wxWidgets-3.0/files/patch-src-osx-cocoa-window.mm.diff
___________________________________________________________________
Added: svn:mergeinfo
   + /branches/mld-qt-481/dports/graphics/wxWidgets-devel/files/patch-src-osx-cocoa-window.mm.diff:92720,92813,92891,92963,93522,93556,93699,93743,93771-93773,93806,93817-93818,93856

Added: trunk/dports/graphics/wxWidgets-3.0/files/patch-upstream-psn.diff
===================================================================
--- trunk/dports/graphics/wxWidgets-3.0/files/patch-upstream-psn.diff	                        (rev 0)
+++ trunk/dports/graphics/wxWidgets-3.0/files/patch-upstream-psn.diff	2013-08-29 05:52:39 UTC (rev 110234)
@@ -0,0 +1,55 @@
+Upstream: http://trac.wxwidgets.org/changeset/74703
+--- src/common/appcmn.cpp.orig
++++ src/common/appcmn.cpp
+@@ -84,6 +84,27 @@ wxAppBase::wxAppBase()
+ 
+ bool wxAppBase::Initialize(int& argcOrig, wxChar **argvOrig)
+ {
++#ifdef __WXOSX__
++    // Mac OS X passes a process serial number command line argument when
++    // the application is launched from the Finder. This argument must be
++    // removed from the command line arguments before being handled by the
++    // application (otherwise applications would need to handle it)
++    //
++    // Notice that this has to be done for all ports that can be used under OS
++    // X (e.g. wxGTK) and not just wxOSX itself, hence this code is here and
++    // not in a port-specific file.
++    if ( argcOrig > 1 )
++    {
++        static const wxChar *ARG_PSN = wxT("-psn_");
++        if ( wxStrncmp(argvOrig[1], ARG_PSN, wxStrlen(ARG_PSN)) == 0 )
++        {
++            // remove this argument
++            --argcOrig;
++            memmove(argvOrig + 1, argvOrig + 2, argcOrig * sizeof(wxChar*));
++        }
++    }
++#endif // __WXOSX__
++
+     if ( !wxAppConsole::Initialize(argcOrig, argvOrig) )
+         return false;
+ 
+--- src/osx/carbon/app.cpp.orig
++++ src/osx/carbon/app.cpp
+@@ -795,21 +795,6 @@ bool wxApp::Initialize(int& argc, wxChar **argv)
+     InstallDebugAssertOutputHandler( NewDebugAssertOutputHandlerUPP( wxMacAssertOutputHandler ) );
+ #endif
+ 
+-    // Mac OS X passes a process serial number command line argument when
+-    // the application is launched from the Finder. This argument must be
+-    // removed from the command line arguments before being handled by the
+-    // application (otherwise applications would need to handle it)
+-    if ( argc > 1 )
+-    {
+-        static const wxChar *ARG_PSN = wxT("-psn_");
+-        if ( wxStrncmp(argv[1], ARG_PSN, wxStrlen(ARG_PSN)) == 0 )
+-        {
+-            // remove this argument
+-            --argc;
+-            memmove(argv + 1, argv + 2, argc * sizeof(wxChar*));
+-        }
+-    }
+-
+     /*
+      Cocoa supports -Key value options which set the user defaults key "Key"
+      to the value "value"  Some of them are very handy for debugging like

Added: trunk/dports/graphics/wxWidgets-3.0/files/wxPython-3.0
===================================================================
--- trunk/dports/graphics/wxWidgets-3.0/files/wxPython-3.0	                        (rev 0)
+++ trunk/dports/graphics/wxWidgets-3.0/files/wxPython-3.0	2013-08-29 05:52:39 UTC (rev 110234)
@@ -0,0 +1,8 @@
+${frameworks_dir}/wxWidgets.framework/Versions/wxPython/2.9/bin/wx-config
+${frameworks_dir}/wxWidgets.framework/Versions/wxPython/2.9/bin/wxrc-2.9
+${frameworks_dir}/wxWidgets.framework/Versions/wxPython/2.9/share/aclocal/wxwin.m4
+${frameworks_dir}/wxWidgets.framework/Versions/wxPython/2.9/share/bakefile/presets/wx.bkl
+${frameworks_dir}/wxWidgets.framework/Versions/wxPython/2.9/share/bakefile/presets/wx_presets.py
+${frameworks_dir}/wxWidgets.framework/Versions/wxPython/2.9/share/bakefile/presets/wx_unix.bkl
+${frameworks_dir}/wxWidgets.framework/Versions/wxPython/2.9/share/bakefile/presets/wx_win32.bkl
+${frameworks_dir}/wxWidgets.framework/Versions/wxPython/2.9/share/bakefile/presets/wx_xrc.bkl

Added: trunk/dports/graphics/wxWidgets-3.0/files/wxWidgets-3.0
===================================================================
--- trunk/dports/graphics/wxWidgets-3.0/files/wxWidgets-3.0	                        (rev 0)
+++ trunk/dports/graphics/wxWidgets-3.0/files/wxWidgets-3.0	2013-08-29 05:52:39 UTC (rev 110234)
@@ -0,0 +1,8 @@
+${frameworks_dir}/wxWidgets.framework/Versions/wxWidgets/2.9/bin/wx-config
+${frameworks_dir}/wxWidgets.framework/Versions/wxWidgets/2.9/bin/wxrc-2.9
+${frameworks_dir}/wxWidgets.framework/Versions/wxWidgets/2.9/share/aclocal/wxwin.m4
+${frameworks_dir}/wxWidgets.framework/Versions/wxWidgets/2.9/share/bakefile/presets/wx.bkl
+${frameworks_dir}/wxWidgets.framework/Versions/wxWidgets/2.9/share/bakefile/presets/wx_presets.py
+${frameworks_dir}/wxWidgets.framework/Versions/wxWidgets/2.9/share/bakefile/presets/wx_unix.bkl
+${frameworks_dir}/wxWidgets.framework/Versions/wxWidgets/2.9/share/bakefile/presets/wx_win32.bkl
+${frameworks_dir}/wxWidgets.framework/Versions/wxWidgets/2.9/share/bakefile/presets/wx_xrc.bkl

Added: trunk/dports/graphics/wxWidgets-3.0/files/wxgtk-3.0
===================================================================
--- trunk/dports/graphics/wxWidgets-3.0/files/wxgtk-3.0	                        (rev 0)
+++ trunk/dports/graphics/wxWidgets-3.0/files/wxgtk-3.0	2013-08-29 05:52:39 UTC (rev 110234)
@@ -0,0 +1,8 @@
+${frameworks_dir}/wxWidgets.framework/Versions/wxGTK/2.9/bin/wx-config
+${frameworks_dir}/wxWidgets.framework/Versions/wxGTK/2.9/bin/wxrc-2.9
+${frameworks_dir}/wxWidgets.framework/Versions/wxGTK/2.9/share/aclocal/wxwin.m4
+${frameworks_dir}/wxWidgets.framework/Versions/wxGTK/2.9/share/bakefile/presets/wx.bkl
+${frameworks_dir}/wxWidgets.framework/Versions/wxGTK/2.9/share/bakefile/presets/wx_presets.py
+${frameworks_dir}/wxWidgets.framework/Versions/wxGTK/2.9/share/bakefile/presets/wx_unix.bkl
+${frameworks_dir}/wxWidgets.framework/Versions/wxGTK/2.9/share/bakefile/presets/wx_win32.bkl
+${frameworks_dir}/wxWidgets.framework/Versions/wxGTK/2.9/share/bakefile/presets/wx_xrc.bkl
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20130828/b0484dbb/attachment-0001.html>


More information about the macports-changes mailing list