# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4 # $Id$ PortSystem 1.0 PortGroup muniversal 1.0 name gtk2 version 2.16.5 set branch [join [lrange [split ${version} .] 0 1] .] categories x11 maintainers nox openmaintainer platforms darwin description Gimp ToolKit version 2 long_description \ This is GTK+ version 2.x. GTK+, which stands for Gimp \ ToolKit, is a library for creating GUIs for the X Windows \ System. homepage http://www.gtk.org/ distname gtk+-${version} use_bzip2 yes master_sites gnome:sources/gtk+/${branch}/ \ ftp://ftp.gtk.org/pub/gtk/${branch}/ \ http://ftp.gtk.org/pub/gtk/${branch}/ if {[variant_isset no_x11]} { default_variants +quartz } if {![variant_isset quartz]} { default_variants +x11 } pre-fetch { if {![variant_isset quartz] && ![variant_isset x11]} { error "Either +x11 or +quartz is required" } if {[rpm-vercomp ${os.version} 8.0] >= 0 && [file exists ${prefix}/bin/cups-config]} { ui_error "You are running Darwin 8.0, cups-headers should not be installed on your system. Please uninstall or deactivate it." error "Please uninstall or deactivate cups-headers." } if {[rpm-vercomp ${os.version} 9.0] >= 0} { set minimum_xcodeversion 3.1 set current_xcodeversion [exec defaults read /Developer/Applications/Xcode.app/Contents/Info CFBundleShortVersionString] if {[rpm-vercomp ${current_xcodeversion} ${minimum_xcodeversion}] < 0} { ui_error "You have Xcode ${current_xcodeversion}. Please update to at least Xcode ${minimum_xcodeversion}." error "Please update Xcode." } } if {[variant_isset quartz]} { if {![file exists ${prefix}/include/cairo/cairo-quartz.h]} { error "cairo must be built with the +quartz variant enabled." } } elseif {![file exists ${prefix}/include/cairo/cairo-xlib.h]} { error "cairo must be built without the +no_x11 variant." } } checksums md5 8d1ea0b9b0400224d25b0cc2750b438d \ sha1 4482e698730c8ea88239512a49306dc27a661145 \ rmd160 2e938a81a95b99275fd7738b1fc99f8f224d1e02 patchfiles patch-gtk-builder-convert.diff \ patch-modules-gail.diff \ patch-modules-printbackends.diff \ patch-which-gtkdoc-rebase.diff depends_build port:pkgconfig depends_lib path:lib/pkgconfig/cairo.pc:cairo \ port:fontconfig \ port:freetype \ path:lib/pkgconfig/glib-2.0.pc:glib2 \ port:jpeg \ port:tiff \ port:libiconv \ port:libpng \ port:jasper \ port:atk \ path:lib/pkgconfig/pango.pc:pango \ port:gettext \ port:zlib depends_run port:shared-mime-info configure.args --enable-static \ --disable-glibtest if { [variant_isset universal] } { if {[info exists universal_sysroot]} { configure.env-append CUPS_CONFIG="${universal_sysroot}/usr/bin/cups-config" } else { configure.env-append CUPS_CONFIG="/usr/bin/cups-config" } # cups is not 32/64-bit universal on Tiger. if {${os.major} == "8"} { set merger_configure_args(ppc64) --disable-cups set merger_configure_args(x86_64) --disable-cups } # Find architectures which will not run on build platform. if { ${os.arch}=="i386" } { if { ${os.major} >= 10 } { set cross_archs "ppc ppc64" } else { set cross_archs "ppc64" } set host_archs "ppc ppc64" } else { set cross_archs "i386 x86_64" set host_archs "i386 x86_64" } set run_arch [lindex ${universal_archs} 0] if { [lsearch ${cross_archs} ${run_arch}] >= 0 } { ui_msg "When building a universal binary of ${name}, make sure none of {${cross_archs}} is first in universal_archs in ${prefix}/etc/macports/macports.conf" error "incompatible universal_archs value" } foreach arch ${host_archs} { lappend merger_configure_env(${arch}) \ NM='/usr/bin/nm -p' } foreach arch ${cross_archs} { lappend merger_configure_env(${arch}) \ gio_can_sniff=yes \ GTK_UPDATE_ICON_CACHE=${worksrcpath}-${run_arch}/gtk/gtk-update-icon-cache \ GDK_PIXBUF_CSOURCE=${worksrcpath}-${run_arch}/gdk-pixbuf/gdk-pixbuf-csource lappend merger_build_env(${arch}) \ GDK_PIXBUF_MODULE_FILE=${worksrcpath}-${run_arch}/gdk-pixbuf/gdk-pixbuf.loaders } post-configure { # Let gtk_host in .pc files be the same on all architectures foreach arch ${host_archs} { if { [lsearch ${universal_archs_to_use} ${arch}] >= 0 } { foreach pc [glob -directory ${worksrcpath}-${arch} *.pc.in] { if { ${os.arch}=="i386" } { reinplace "s|gtk_host=@host@|gtk_host=i686-apple-darwin${os.version}|" ${pc} } else { reinplace "s|gtk_host=@host@|gtk_host=powerpc-apple-darwin${os.version}|" ${pc} } } } } } } configure.ccache no configure.cppflags-append -DX_LOCALE configure.cflags-append -fstrict-aliasing use_parallel_build yes test.run yes test.target check post-destroot { set docdir ${prefix}/share/doc/gtk+-${version} xinstall -d ${destroot}${docdir} xinstall -m 644 -W ${worksrcpath} AUTHORS COPYING HACKING NEWS README ${destroot}${docdir} ui_debug "Creating gtk.immodules..." system "DYLD_LIBRARY_PATH=${destroot}${prefix}/lib ${destroot}${prefix}/bin/gtk-query-immodules-2.0 \ ${destroot}${prefix}/lib/gtk-2.0/2.10.0/immodules/*.so >${destroot}${prefix}/etc/gtk-2.0/gtk.immodules" reinplace "s|${destroot}||" ${destroot}${prefix}/etc/gtk-2.0/gtk.immodules } post-activate { ui_debug "Updating gdk-pixbuf.loaders..." system "${prefix}/bin/gdk-pixbuf-query-loaders >${prefix}/etc/gtk-2.0/gdk-pixbuf.loaders" } platform darwin 7 { configure.args-append --disable-cups } platform darwin 8 { if {[variant_isset quartz] || [variant_isset no_x11]} { configure.ldflags-append -framework Cocoa -framework Carbon } } variant no_x11 { pre-fetch { if {[file exists ${prefix}/lib/libpangox-1.0.dylib]} { ui_error "Please uninstall or deactivate the pango port and reinstall it by running `port install pango +no_x11`." error "pango must be installed with the no_x11 variant enabled." } } } variant quartz requires no_x11 conflicts x11 description {Enable Quartz rendering} { patchfiles-append patch-gnome-bug-531599.diff configure.args-append --with-gdktarget=quartz } variant x11 conflicts quartz description {Enable rendering in X11 (default)} { depends_lib-append \ port:xorg-libXi \ port:xorg-libXrandr \ port:xorg-libXcursor \ port:xorg-libXinerama \ port:xorg-libXdamage \ port:xorg-libXcomposite \ port:xorg-libXfixes configure.args-append --with-xinput --enable-xinerama \ --x-include=${prefix}/include --x-lib=${prefix}/lib } livecheck.check regex livecheck.url ftp://ftp.gnome.org/pub/gnome/sources/gtk+/${branch}/ livecheck.regex {LATEST-IS-(\d+(?:\.\d+)*)}