<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[108887] users/mojca/wxports</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="https://trac.macports.org/changeset/108887">108887</a></dd>
<dt>Author</dt> <dd>mojca@macports.org</dd>
<dt>Date</dt> <dd>2013-08-04 02:18:02 -0700 (Sun, 04 Aug 2013)</dd>
</dl>

<h3>Log Message</h3>
<pre>mojca/wx: first working PortGroup code (thanks to pixilla)</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#usersmojcawxports_resourcesport10groupwxwidgets10tcl">users/mojca/wxports/_resources/port1.0/group/wxwidgets-1.0.tcl</a></li>
<li><a href="#usersmojcawxportsmathgnuplotPortfile">users/mojca/wxports/math/gnuplot/Portfile</a></li>
</ul>

<h3>Property Changed</h3>
<ul>
<li><a href="#usersmojcawxports_resourcesport10groupwxwidgets10tcl">users/mojca/wxports/_resources/port1.0/group/wxwidgets-1.0.tcl</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="usersmojcawxports_resourcesport10groupwxwidgets10tcl"></a>
<div class="modfile"><h4>Modified: users/mojca/wxports/_resources/port1.0/group/wxwidgets-1.0.tcl (108886 => 108887)</h4>
<pre class="diff"><span>
<span class="info">--- users/mojca/wxports/_resources/port1.0/group/wxwidgets-1.0.tcl        2013-08-04 08:30:26 UTC (rev 108886)
+++ users/mojca/wxports/_resources/port1.0/group/wxwidgets-1.0.tcl        2013-08-04 09:18:02 UTC (rev 108887)
</span><span class="lines">@@ -1,23 +1,71 @@
</span><span class="cx"> # -*- 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
</span><del>-# $Id: $
</del><ins>+# $Id$
</ins><span class="cx"> 
</span><span class="cx"> options     wxWidgets.confpath
</span><span class="cx"> options     wxWidgets.confscript
</span><span class="cx"> 
</span><ins>+# Poedit also needs
+# build.env-append  GETTEXT_PREFIX=${prefix} WX_ROOT=${prefix}
+
+options     wxWidgets.supported_versions
+option_proc wxWidgets.supported_versions wxWidgets._set_supported_versions
+
</ins><span class="cx"> options     wxWidgets.use_version
</span><span class="cx"> option_proc wxWidgets.use_version wxWidgets._set_version
</span><span class="cx"> 
</span><ins>+# TODO
+# - parameters can be &quot;2.8&quot;, &quot;3.0&quot; or &quot;2.8 3.0&quot;
+#
+# This parameter should 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_version should only be needed in Portfile
+# in special cases (when a specific port wants to support multiple wxWidgets versions)
+# or in the PortGroup itself (but then we might need another name)
+proc wxWidgets._set_supported_versions {option action args} {
+}
+
</ins><span class="cx"> proc wxWidgets._set_version {option action args} {
</span><ins>+    global prefix
</ins><span class="cx">     if {&quot;set&quot; != ${action}} {
</span><span class="cx">         return
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     if {${args} == &quot;2.8&quot;} {
</span><del>-        wxWidgets.confpath   {${prefix}/libexec/wxWidgets/2.8}
</del><ins>+        wxWidgets.confpath   ${prefix}/libexec/wxWidgets/2.8
+        # wxWidgets is not universal and is 32-bit only
+        universal_variant    no
+        supported_archs      i386 ppc
+        # TODO
+        # - doesn't build on 10.8 (darwin 12) or later
+        # - probably doesn't built on 10.7 (darwin 11) with Xcode 4.4 or later
+        # - needs to use 10.6 SDK on 10.7 with earlier versions of Xcode
+        #   wxWidgets itself uses
+        #       --with-macosx-version-min=10.6
+        #       --with-macosx-sdk=${developer_dir}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.6.sdk
+        #       --with-macosx-sdk=${developer_dir}/SDKs/MacOSX10.6.sdk
+        #   some ports use
+        #       configure.cxxflags-append -isysroot ${developer_dir}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.6.sdk
+        #       configure.cxxflags-append -isysroot ${developer_dir}/SDKs/MacOSX10.6.sdk
+        # example from a port (needs a review/patch):
+        #
+        # platform darwin 11 {
+        #     if {[vercmp $xcodeversion 4.4] &gt;= 0} {
+        #         # doesn't work!!!
+        #     } elseif {[vercmp $xcodeversion 4.3] &gt;= 0} {
+        #         configure.cxxflags-append -isysroot ${developer_dir}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.6.sdk
+        #     } else {
+        #         configure.cxxflags-append -isysroot ${developer_dir}/SDKs/MacOSX10.6.sdk
+        #     }
+        # }
</ins><span class="cx">     } elseif {${args} == &quot;3.0&quot;} {
</span><del>-        wxWidgets.confpath   {${prefix}/libexec/wxWidgets/2.9}
</del><ins>+        wxWidgets.confpath   ${prefix}/libexec/wxWidgets/2.9
</ins><span class="cx">     } else {
</span><span class="cx">         # throw an error
</span><span class="cx">     }
</span><span class="cx">     wxWidgets.confscript {${wxWidgets.confpath}/wx-config}
</span><span class="cx"> }
</span><ins>+
+# default that can be overridden
+wxWidgets.use_version   3.0
</ins><span class="cx">Property changes on: users/mojca/wxports/_resources/port1.0/group/wxwidgets-1.0.tcl
</span><span class="cx">___________________________________________________________________
</span></span></pre></div>
<a id="svnkeywords"></a>
<div class="addfile"><h4>Added: svn:keywords</h4></div>
<a id="svneolstyle"></a>
<div class="addfile"><h4>Added: svn:eol-style</h4></div>
<a id="usersmojcawxportsmathgnuplotPortfile"></a>
<div class="modfile"><h4>Modified: users/mojca/wxports/math/gnuplot/Portfile (108886 => 108887)</h4>
<pre class="diff"><span>
<span class="info">--- users/mojca/wxports/math/gnuplot/Portfile        2013-08-04 08:30:26 UTC (rev 108886)
+++ users/mojca/wxports/math/gnuplot/Portfile        2013-08-04 09:18:02 UTC (rev 108887)
</span><span class="lines">@@ -78,6 +78,14 @@
</span><span class="cx"> 
</span><span class="cx"> configure.ccache            no
</span><span class="cx"> 
</span><ins>+# TODO: just temporary
+pre-fetch {
+    ui_info &quot;some debugging:&quot;
+    ui_info &quot;    wxWidgets.use_version: '${wxWidgets.use_version}'&quot;
+    ui_info &quot;    supported_archs:       '${supported_archs}'&quot;
+    ui_info &quot;    wxWidgets.confpath:    '${wxWidgets.confpath}'&quot;
+}
+
</ins><span class="cx"> variant aquaterm description &quot;Enable AquaTerm terminal&quot; {
</span><span class="cx">     depends_lib-append      port:aquaterm
</span><span class="cx">     configure.args-delete   --without-aquaterm
</span><span class="lines">@@ -115,25 +123,20 @@
</span><span class="cx"> # If it is acceptable to depend on wxWidgets-devel only,
</span><span class="cx"> # one could delete the variant that depends on wxWidgets 2.8.
</span><span class="cx"> variant wxwidgets conflicts wxwidgets30 description &quot;Enable wxt terminal (wxWidgets 2.8, 32-bit only)&quot; {
</span><ins>+    # port lint Warning: Dependency path:lib/pkgconfig/pango.pc:pango specified multiple times in depends_lib
+    # Does the wxwidgets variant depend on the pangocairo variant?
+    # depends_lib-delete      path:lib/pkgconfig/pango.pc:pango
</ins><span class="cx">     wxWidgets.use_version   2.8
</span><span class="cx">     depends_lib-append      port:wxWidgets-2.8 path:lib/pkgconfig/pango.pc:pango
</span><span class="cx">     configure.args-delete   --disable-wxwidgets
</span><del>-    configure.args-append   --with-wx-config=${prefix}/libexec/wxWidgets/2.8
-    #configure.args-append   --with-wx-config=${wxWidgets.confpath}
</del><ins>+    configure.args-append   --with-wx-config=${wxWidgets.confpath}
</ins><span class="cx"> }
</span><del>-if {[variant_isset wxwidgets]} {
-    # wxWidgets is not universal and is 32-bit only
-    universal_variant       no
-    supported_archs         i386 ppc
-}
</del><span class="cx"> 
</span><span class="cx"> variant wxwidgets30 conflicts wxwidgets description &quot;Enable wxt terminal (using wxWidgets 2.9, supports 64-bit)&quot; {
</span><span class="cx">     wxWidgets.use_version   3.0
</span><span class="cx">     depends_lib-append      port:wxWidgets-3.0 path:lib/pkgconfig/pango.pc:pango
</span><span class="cx">     configure.args-delete   --disable-wxwidgets
</span><del>-    configure.args-append   --with-wx-config=${prefix}/libexec/wxWidgets/2.9
-    ## doesn't work yet
-    #configure.args-append   --with-wx-config=${wxWidgets.confpath}
</del><ins>+    configure.args-append   --with-wx-config=${wxWidgets.confpath}
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> variant qt description &quot;Enable qt terminal&quot; {
</span></span></pre>
</div>
</div>

</body>
</html>