[145862] trunk/dports/graphics/ipe

khindenburg at macports.org khindenburg at macports.org
Fri Feb 19 07:20:55 PST 2016


Revision: 145862
          https://trac.macports.org/changeset/145862
Author:   khindenburg at macports.org
Date:     2016-02-19 07:20:55 -0800 (Fri, 19 Feb 2016)
Log Message:
-----------
ipe: update to 7.2.2; use cxx11; add qt4/5 variants; fix livecheck #50666

Modified Paths:
--------------
    trunk/dports/graphics/ipe/Portfile

Added Paths:
-----------
    trunk/dports/graphics/ipe/files/ipe.in
    trunk/dports/graphics/ipe/files/patch-ipe-mainmenu.xib.diff

Removed Paths:
-------------
    trunk/dports/graphics/ipe/files/patch-common.mak.diff
    trunk/dports/graphics/ipe/files/patch-ipelets-lua-Makefile.diff
    trunk/dports/graphics/ipe/files/patch-ipelib-ipebitmap_unix.cpp.diff

Modified: trunk/dports/graphics/ipe/Portfile
===================================================================
--- trunk/dports/graphics/ipe/Portfile	2016-02-19 14:47:08 UTC (rev 145861)
+++ trunk/dports/graphics/ipe/Portfile	2016-02-19 15:20:55 UTC (rev 145862)
@@ -2,10 +2,10 @@
 # $Id$
 
 PortSystem 1.0
-PortGroup               qt4 1.0
+PortGroup               cxx11 1.0
 
 name                    ipe
-version                 7.1.10
+version                 7.2.2
 set branch              [join [lrange [split ${version} .] 0 1] .]
 categories              graphics
 maintainers             gmail.com:m7.thon openmaintainer
@@ -18,32 +18,40 @@
                         Acrobat Reader.
 license                 GPL-3+
 homepage                http://ipe.otfried.org
-platforms               darwin
+platforms               macosx
 master_sites            https://dl.bintray.com/otfried/generic/ipe/${branch}
 distname                ${name}-${version}-src
 worksrcdir              ${name}-${version}/src
 
-checksums               sha1    1fec414df0ce63fe7da2694a56ab808224c37288 \
-                        rmd160  6a2c3404a3673d901728f09f902601b9a3ba6947
+checksums               sha1    a0934e9c01487219ae4726ab1cac42cc6fd27e96 \
+                        rmd160  12fdc48bf37a477b5f6dddd2f18cbdafa1dd8ca0
 
+depends_build-append    path:bin/pkg-config:pkgconfig
+
 depends_lib-append      port:freetype \
                         path:lib/pkgconfig/cairo.pc:cairo \
                         port:lua \
-                        path:lib/libjpeg.dylib:jpeg \
                         port:libpng \
                         port:zlib
 
-patchfiles              patch-ipelib-ipebitmap_unix.cpp.diff \
-                        patch-common.mak.diff \
-                        patch-ipelets-lua-Makefile.diff
+patchfiles              patch-ipe-mainmenu.xib.diff
 
 use_configure           no
+universal_variant       no
 
-variant universal {}
+variant qt4 conflicts qt5 description {Build using Qt4 based gui} {
+    PortGroup           qt4 1.0
+    build.args-append   QT_CFLAGS="`pkg-config --cflags QtGui QtCore`" \
+                        QT_LIBS="`pkg-config --libs QtGui QtCore`"
+}
 
+variant qt5 conflicts qt4 description {Build using Qt5 based gui} {
+    PortGroup           qt5 1.0
+}
+
 variant qvoronoi description {Add qvoronoi ipelet} {
     depends_lib-append  port:qhull
-    build.post_args     IPEQVORONOI=1 QHULL_CFLAGS=-I${prefix}/include/qhull
+    build.args-append   IPEQVORONOI=1 QHULL_CFLAGS=-I${prefix}/include/qhull
     destroot.post_args  IPEQVORONOI=1
 }
 
@@ -51,43 +59,52 @@
 
 pre-build {
     build.env           CXXFLAGS="[get_canonical_archflags cxx]" \
-                        LDFLAGS="[get_canonical_archflags ld]" \
-                        PKG_CONFIG_PATH=\$PKG_CONFIG_PATH:${qt_pkg_config_dir}
-
-    build.args          IPEPREFIX=${prefix} \
-                        ZLIB_CFLAGS="`pkg-config --cflags zlib`" \
-                        ZLIB_LIBS="`pkg-config --libs zlib`" \
-                        JPEG_LIBS="-ljpeg" \
-                        PNG_CFLAGS="`pkg-config --cflags libpng`" \
-                        PNG_LIBS="`pkg-config --libs libpng`" \
-                        FREETYPE_CFLAGS="`pkg-config --cflags freetype2`" \
-                        FREETYPE_LIBS="`pkg-config --libs freetype2`" \
-                        CAIRO_CFLAGS="`pkg-config --cflags cairo`" \
-                        CAIRO_LIBS="`pkg-config --libs cairo`" \
-                        LUA_CFLAGS="`pkg-config --cflags lua`" \
-                        LUA_LIBS="`pkg-config --libs lua`" \
-                        QT_CFLAGS="`pkg-config --cflags QtGui QtCore`" \
-                        QT_LIBS="`pkg-config --libs QtGui QtCore`" \
-                        MOC=${qt_moc_cmd} \
-                        CXX=${configure.cxx}
+                        LDFLAGS="[get_canonical_archflags ld]"
+    build.args-append   IPEPREFIX=${prefix} \
+                        CXX=${configure.cxx} \
+                        LUA_PACKAGE="lua" \
+                        JPEG_LIBS="-framework ApplicationServices" \
+                        IPECONFIGMAK="config.mak"
+    if {[variant_isset qt4] || [variant_isset qt5]} {
+        build.env-append    PKG_CONFIG_PATH=\$PKG_CONFIG_PATH:${qt_pkg_config_dir}
+        build.args-append   IPEUI="QT" \
+                            MOC=${qt_moc_cmd}
+    } else {
+        build.args-append   IPEBUNDLE=1
+    }
 }
 
-destroot.args-append    IPEPREFIX=${prefix}
-
 use_parallel_build      no
 
+destroot.args-append    IPEPREFIX=${prefix} \
+                        IPECONFIGMAK="config.mak"
+if {[variant_isset qt4] || [variant_isset qt5]} {
+    destroot.args-append    IPEUI="QT"
+} else {
+    destroot.args-append    IPEBUNDLE=1
+    destroot.target         app
+}
+
 platform macosx {
-    depends_build-append port:makeicns
     post-destroot {
-        set app Ipe
-        xinstall -d ${destroot}${applications_dir}/${app}.app/Contents/MacOS \
-            ${destroot}${applications_dir}/${app}.app/Contents/Resources
-        xinstall -m 644 ${filespath}/Info.plist.in ${destroot}${applications_dir}/${app}.app/Contents/Info.plist
-        reinplace "s|@VERSION@|${version}|g" ${destroot}${applications_dir}/${app}.app/Contents/Info.plist
-        reinplace "s|@PREFIX@|${prefix}|g" ${destroot}${applications_dir}/${app}.app/Contents/Info.plist
-        ln -s ${prefix}/bin/ipe ${destroot}${applications_dir}/${app}.app/Contents/MacOS/${app}
-        system "${prefix}/bin/makeicns -in ${worksrcpath}/ipe/icons/ipe.png -out ${destroot}${applications_dir}/${app}.app/Contents/Resources/${name}.icns"
+        if {[variant_isset qt4] || [variant_isset qt5]} {
+            set app Ipe
+            xinstall -d ${destroot}${applications_dir}/${app}.app/Contents/MacOS \
+                ${destroot}${applications_dir}/${app}.app/Contents/Resources
+            xinstall -m 644 ${filespath}/Info.plist.in ${destroot}${applications_dir}/${app}.app/Contents/Info.plist
+            reinplace "s|@VERSION@|${version}|g" ${destroot}${applications_dir}/${app}.app/Contents/Info.plist
+            reinplace "s|@PREFIX@|${prefix}|g" ${destroot}${applications_dir}/${app}.app/Contents/Info.plist
+            ln -s ${prefix}/bin/ipe ${destroot}${applications_dir}/${app}.app/Contents/MacOS/${app}
+            xinstall -m 644 ${worksrcpath}/ipe/ipe.icns ${destroot}${applications_dir}/${app}.app/Contents/Resources/ipe.icns
+        } else {
+            copy ${worksrcpath}/../build/Ipe.app ${destroot}${applications_dir}/Ipe.app
+            reinplace "s|/usr/local/bin|/usr/local/bin:${prefix}/bin|g" ${destroot}${applications_dir}/Ipe.app/Contents/Info.plist
+            xinstall -m 755 ${filespath}/ipe.in ${destroot}${prefix}/bin/ipe
+            reinplace "s|@APPLICATIONSDIR@|${applications_dir}|g" ${destroot}${prefix}/bin/ipe
+        }
     }
 }
 
-livecheck.regex         "/${name}-(\\d+(?:\\.\\d+)*)-src"
+livecheck.type          regex
+livecheck.url           ${homepage}
+livecheck.regex         "${name}-(\\d+(?:\\.\\d+)*)-src"

Added: trunk/dports/graphics/ipe/files/ipe.in
===================================================================
--- trunk/dports/graphics/ipe/files/ipe.in	                        (rev 0)
+++ trunk/dports/graphics/ipe/files/ipe.in	2016-02-19 15:20:55 UTC (rev 145862)
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec @APPLICATIONSDIR@/Ipe.app/Contents/MacOS/ipe "$@"

Deleted: trunk/dports/graphics/ipe/files/patch-common.mak.diff
===================================================================
--- trunk/dports/graphics/ipe/files/patch-common.mak.diff	2016-02-19 14:47:08 UTC (rev 145861)
+++ trunk/dports/graphics/ipe/files/patch-common.mak.diff	2016-02-19 15:20:55 UTC (rev 145862)
@@ -1,14 +0,0 @@
---- common.mak.orig	2015-12-23 04:16:35.000000000 +0100
-+++ common.mak	2015-12-23 04:20:02.000000000 +0100
-@@ -38,11 +38,7 @@
- # Read configuration options (not used on Win32)
- 
- ifndef WIN32
--ifdef MACOS
--  include $(IPESRCDIR)/macos.mak
--else
-   include $(IPESRCDIR)/config.mak
--endif
-   BUILDDIR = $(IPESRCDIR)/../build
- ifdef IPECXX
-   CXX = $(IPECXX)

Added: trunk/dports/graphics/ipe/files/patch-ipe-mainmenu.xib.diff
===================================================================
--- trunk/dports/graphics/ipe/files/patch-ipe-mainmenu.xib.diff	                        (rev 0)
+++ trunk/dports/graphics/ipe/files/patch-ipe-mainmenu.xib.diff	2016-02-19 15:20:55 UTC (rev 145862)
@@ -0,0 +1,176 @@
+--- /dev/null	2016-02-18 23:10:00.000000000 +0100
++++ ipe/mainmenu.xib	2016-02-18 23:07:52.000000000 +0100
+@@ -0,0 +1,173 @@
++<?xml version="1.0" encoding="UTF-8" standalone="no"?>
++<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0"
++	  toolsVersion="9060" systemVersion="15B42"
++	  targetRuntime="MacOSX.Cocoa" propertyAccessControl="none"
++	  useAutolayout="YES" customObjectInstantitationMethod="direct">
++    <dependencies>
++      <deployment identifier="macosx"/>
++      <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin"
++	      version="9060"/>
++    </dependencies>
++    <objects>
++      <customObject id="-2" userLabel="File's Owner" 
++		    customClass="NSApplication">
++        <connections>
++          <outlet property="delegate" destination="appdel" id="appdel-outlet"/>
++        </connections>
++      </customObject>
++      <customObject id="-1" userLabel="First Responder"
++		    customClass="FirstResponder"/>
++      <customObject id="-3" userLabel="Application" customClass="NSObject"/>
++      <customObject id="appdel" customClass="AppDelegate"/>
++      <menu title="Main Menu" systemMenu="main" id="main-menu">
++        <items>
++          <menuItem title="Ipe" id="apple-menu">
++            <modifierMask key="keyEquivalentModifierMask"/>
++            <menu key="submenu" title="Ipe" systemMenu="apple">
++              <items>
++                <menuItem title="About Ipe" id="about">
++                  <modifierMask key="keyEquivalentModifierMask"/>
++                  <connections>
++                    <action selector="aboutIpe:" target="-1" id="about-action"/>
++                  </connections>
++                </menuItem>
++                <menuItem isSeparatorItem="YES"/>
++                <menuItem title="Preferences…" keyEquivalent=","
++			  id="preferences"/>
++                <menuItem isSeparatorItem="YES"/>
++                <menuItem title="Services" id="services">
++                  <modifierMask key="keyEquivalentModifierMask"/>
++                  <menu key="submenu" title="Services"
++			systemMenu="services" id="services-submenu"/>
++                </menuItem>
++                <menuItem isSeparatorItem="YES"/>
++                <menuItem title="Hide Ipe" keyEquivalent="h" id="hide">
++                  <connections>
++                    <action selector="hide:" target="-1" id="hide-action"/>
++                  </connections>
++                </menuItem>
++                <menuItem title="Hide Others" keyEquivalent="h" 
++			  id="hide-others">
++                  <modifierMask key="keyEquivalentModifierMask"
++				option="YES" command="YES"/>
++                  <connections>
++                    <action selector="hideOtherApplications:"
++			    target="-1" id="hide-others-action"/>
++                  </connections>
++                </menuItem>
++                <menuItem title="Show All" id="show-all">
++                  <modifierMask key="keyEquivalentModifierMask"/>
++                  <connections>
++                    <action selector="unhideAllApplications:"
++			    target="-1" id="show-all-action"/>
++                  </connections>
++                </menuItem>
++              </items>
++            </menu>
++          </menuItem>
++          <menuItem title="File" id="file-menu">
++            <modifierMask key="keyEquivalentModifierMask"/>
++            <menu key="submenu" title="File">
++              <items>
++              </items>
++            </menu>
++          </menuItem>
++          <menuItem title="Edit" id="edit-menu">
++            <modifierMask key="keyEquivalentModifierMask"/>
++            <menu key="submenu" title="Edit">
++              <items>
++              </items>
++            </menu>
++          </menuItem>
++          <menuItem title="Properties" id="properties-menu">
++            <modifierMask key="keyEquivalentModifierMask"/>
++            <menu key="submenu" title="Properties">
++              <items>
++              </items>
++            </menu>
++          </menuItem>
++          <menuItem title="Snap" id="snap-menu">
++            <modifierMask key="keyEquivalentModifierMask"/>
++            <menu key="submenu" title="Snap">
++              <items>
++              </items>
++            </menu>
++          </menuItem>
++          <menuItem title="Mode" id="mode-menu">
++            <modifierMask key="keyEquivalentModifierMask"/>
++            <menu key="submenu" title="Mode">
++              <items>
++              </items>
++            </menu>
++          </menuItem>
++          <menuItem title="Zoom" id="zoom-menu">
++            <modifierMask key="keyEquivalentModifierMask"/>
++            <menu key="submenu" title="Zoom">
++              <items>
++                <menuItem title="Show Toolbar" keyEquivalent="t"
++			  id="show-toolbar">
++                  <modifierMask key="keyEquivalentModifierMask"
++				option="YES" command="YES"/>
++                  <connections>
++                    <action selector="toggleToolbarShown:" target="-1"
++			    id="show-toolbar-action"/>
++                  </connections>
++                </menuItem>
++                <menuItem title="Show Snap Toolbar" keyEquivalent="s"
++			  id="show-snapbar">
++                  <modifierMask key="keyEquivalentModifierMask"
++				option="YES" command="YES"/>
++                  <connections>
++                    <action selector="toggleSnapbarShown:" target="-1"
++			    id="show-snapbar-action"/>
++                  </connections>
++                </menuItem>
++                <menuItem title="Customize Toolbar…" id="customize-toolbar">
++                  <connections>
++                    <action selector="runToolbarCustomizationPalette:"
++			    target="-1" id="customize-toolbar-action"/>
++                  </connections>
++                </menuItem>
++              </items>
++            </menu>
++          </menuItem>
++          <menuItem title="Layers" id="layers-menu">
++            <modifierMask key="keyEquivalentModifierMask"/>
++            <menu key="submenu" title="Layers">
++              <items>
++              </items>
++            </menu>
++          </menuItem>
++          <menuItem title="Views" id="views-menu">
++            <modifierMask key="keyEquivalentModifierMask"/>
++            <menu key="submenu" title="Views">
++              <items>
++              </items>
++            </menu>
++          </menuItem>
++          <menuItem title="Pages" id="pages-menu">
++            <modifierMask key="keyEquivalentModifierMask"/>
++            <menu key="submenu" title="Pages">
++              <items>
++              </items>
++            </menu>
++          </menuItem>
++          <menuItem title="Ipelets" id="ipelets-menu">
++            <modifierMask key="keyEquivalentModifierMask"/>
++            <menu key="submenu" title="Ipelets">
++              <items>
++              </items>
++            </menu>
++          </menuItem>
++          <menuItem title="Help" id="help-menu">
++            <modifierMask key="keyEquivalentModifierMask"/>
++            <menu key="submenu" title="Help">
++              <items>
++              </items>
++            </menu>
++          </menuItem>
++        </items>
++      </menu>
++    </objects>
++  </document>
++  

Deleted: trunk/dports/graphics/ipe/files/patch-ipelets-lua-Makefile.diff
===================================================================
--- trunk/dports/graphics/ipe/files/patch-ipelets-lua-Makefile.diff	2016-02-19 14:47:08 UTC (rev 145861)
+++ trunk/dports/graphics/ipe/files/patch-ipelets-lua-Makefile.diff	2016-02-19 15:20:55 UTC (rev 145862)
@@ -1,17 +0,0 @@
---- ipelets/lua/Makefile.orig	2015-12-23 04:46:41.000000000 +0100
-+++ ipelets/lua/Makefile	2015-12-23 04:46:52.000000000 +0100
-@@ -14,14 +14,5 @@
- 	$(INSTALL_DIR) $(INSTALL_ROOT)$(IPELETDIR)
- 	$(INSTALL_FILES) $(LUASCRIPTS) $(INSTALL_ROOT)$(IPELETDIR)
- 
--ifdef MACOS
--
--IPELETDIR = $(BUILDDIR)/Ipe.app/Contents/Resources/ipelets
--
--app:
--	$(INSTALL_DIR) $(IPELETDIR)
--	$(INSTALL_FILES) $(LUASCRIPTS) $(IPELETDIR)
--
--endif
- 
- # --------------------------------------------------------------------

Deleted: trunk/dports/graphics/ipe/files/patch-ipelib-ipebitmap_unix.cpp.diff
===================================================================
--- trunk/dports/graphics/ipe/files/patch-ipelib-ipebitmap_unix.cpp.diff	2016-02-19 14:47:08 UTC (rev 145861)
+++ trunk/dports/graphics/ipe/files/patch-ipelib-ipebitmap_unix.cpp.diff	2016-02-19 15:20:55 UTC (rev 145862)
@@ -1,75 +0,0 @@
---- ipelib/ipebitmap_unix.cpp.orig	2015-12-23 04:02:26.000000000 +0100
-+++ ipelib/ipebitmap_unix.cpp	2015-12-23 04:03:35.000000000 +0100
-@@ -32,64 +32,13 @@
- 
- #include <png.h>
- 
--#ifdef __APPLE__
--#include <CoreGraphics.h>
--#else
- #include <csetjmp>
- #include <jpeglib.h>
--#endif
- 
- using namespace ipe;
- 
- // --------------------------------------------------------------------
- 
--#ifdef __APPLE__
--
--bool dctDecode(Buffer dctData, Buffer pixelData, int components)
--{
--  CGDataProviderRef source =
--    CGDataProviderCreateWithData(NULL, dctData.data(),
--				 dctData.size(), NULL);
--  CGImageRef bitmap =
--    CGImageCreateWithJPEGDataProvider(source, NULL, false,
--				      kCGRenderingIntentDefault);
--
--  if (CGImageGetBitsPerComponent(bitmap) != 8)
--    return false;
--
--  int w = CGImageGetWidth(bitmap);
--  int h = CGImageGetHeight(bitmap);
--  int bytes = CGImageGetBitsPerPixel(bitmap) / 8;
--  int stride = CGImageGetBytesPerRow(bitmap);
--
--  CGBitmapInfo info = CGImageGetBitmapInfo(bitmap);
--  // TODO: check for alpha channel, float pixel values, and byte order?
--  ipeDebug("dctDecode: %d x %d x %d, stride %d, info %x",
--	   w, h, bytes, stride, info);
--
--  // TODO: Is it necessary to copy the data?
--  CFDataRef pixels = CGDataProviderCopyData(CGImageGetDataProvider(bitmap));
--  const uchar *inRow = CFDataGetBytePtr(pixels);
--
--  uchar *q = (uchar *) pixelData.data();
--  for (int y = 0; y < h; ++y) {
--    const uchar *p = inRow;
--    for (int x = 0; x < w; ++x) {
--      *q++ = p[0];
--      *q++ = p[1];
--      *q++ = p[2];
--      p += bytes;
--    }
--    inRow += stride;
--  }
--  CFRelease(pixels);
--  CGImageRelease(bitmap);
--  CGDataProviderRelease(source);
--  return true;
--}
--
--#else
--
- // Decode jpeg image using libjpeg API with error handling
- // Code contributed by Michael Thon, 2015.
- 
-@@ -139,7 +88,6 @@
-   jpeg_destroy_decompress(&cinfo);
-   return true;
- }
--#endif
- 
- // --------------------------------------------------------------------
- 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20160219/ffe74671/attachment-0001.html>


More information about the macports-changes mailing list