Index: Mk/bsd.mate.mk =================================================================== --- Mk/bsd.mate.mk (revision 0) +++ Mk/bsd.mate.mk (working copy) @@ -0,0 +1,301 @@ +#-*- tab-width: 4; -*- +# ex:ts=4 +# +# $FreeBSD$ +# $NetBSD$ +# $MCom: ports-experimental/Mk/bsd.mate.mk,v 1.13 2012/09/03 17:02:31 mezz Exp $ +# +# Please view me with 4 column tabs! + +####################################################### +# +# *** WARNING: Disable MARCUSCOM before merge in FreeBSD! +# Please also remove this section before merging into FreeBSD. +# +#MARCUSCOM_CVS=yes + +# ======================= USERS ================================= +# +# There are no significant user-definable settings in here. +# This file is a framework to make it easier to create MATE ports. +# +# ======================= /USERS ================================ + +.if !defined(_POSTMKINCLUDED) && !defined(Mate_Pre_Include) + +# Please make sure all changes to this file are passed through the maintainer. +# Do not commit them yourself (unless of course you're the Port's Wraith ;). +Mate_Include_MAINTAINER= gnome@FreeBSD.org +Mate_Pre_Include= bsd.mate.mk + +# This section defines possible names of MATE components and all information +# necessary for ports to use those components. + +# Ports can use this as follows: +# +# USE_MATE= caja common desktop +# +# .include +# +# As a result proper LIB_DEPENDS/RUN_DEPENDS will be added and CONFIGURE_ENV +# and MAKE_ENV defined. +# + +# non-version specific components. Do not use :build/:run on those. +_USE_MATE_ALL= autogen intlhack intltool ltasneededhack lthack ltverhack +# These *hack* tools are the same as in bsd.gnome.mk but are run in +# pre-configure because pre-patch is when we run autogen.sh. + +# MATE components, you can use the :build or :run if need. Without the :build +# and :run, it will be added in both build and run dependency. It will check +# for the library dependency first. If not exists then do the build/run on +# the *.pc file instead. +_USE_MATE_ALL+= caja common controlcenter desktop dialogs docutils icontheme \ + keyring libmatekbd libmatekeyring libmateweather libmatewnck \ + marco menus mucharmap notificationdaemon panel polkit pluma \ + settingsdaemon + +SCROLLKEEPER_DIR= /var/db/rarian + +lthack_PRE_PATCH= ${FIND} ${WRKSRC} -name "configure" -type f | ${XARGS} ${REINPLACE_CMD} -e \ + '/^LIBTOOL_DEPS="$$ac_aux_dir\/ltmain.sh"$$/s|$$|; $$ac_aux_dir/ltconfig $$LIBTOOL_DEPS;|' + +caja_DETECT= ${LOCALBASE}/libdata/pkgconfig/libcaja-extension.pc +caja_BUILD_DEPENDS= ${caja_DETECT}:${PORTSDIR}/x11-fm/mate-file-manager +caja_LIB_DEPENDS= libcaja-extension.so:${PORTSDIR}/x11-fm/mate-file-manager +caja_RUN_DEPENDS= ${caja_DETECT}:${PORTSDIR}/x11-fm/mate-file-manager + +mucharmap_DETECT= ${LOCALBASE}/libdata/pkgconfig/mucharmap-2.pc +mucharmap_BUILD_DEPENDS=${mucharmap_DETECT}:${PORTSDIR}/deskutils/mate-character-map +mucharmap_LIB_DEPENDS= libmucharmap.so:${PORTSDIR}/deskutils/mate-character-map +mucharmap_RUN_DEPENDS= ${mucharmap_DETECT}:${PORTSDIR}/deskutils/mate-character-map + +common_DETECT= ${LOCALBASE}/bin/mate-autogen +common_BUILD_DEPENDS= ${common_DETECT}:${PORTSDIR}/devel/mate-common +common_RUN_DEPENDS= ${common_DETECT}:${PORTSDIR}/devel/mate-common + +controlcenter_DETECT= ${LOCALBASE}/libdata/pkgconfig/mate-window-settings-2.0.pc +controlcenter_BUILD_DEPENDS= ${controlcenter_DETECT}:${PORTSDIR}/sysutils/mate-control-center +controlcenter_LIB_DEPENDS= libmate-window-settings.so:${PORTSDIR}/sysutils/mate-control-center +controlcenter_RUN_DEPENDS= ${controlcenter_DETECT}:${PORTSDIR}/sysutils/mate-control-center + +desktop_DETECT= ${LOCALBASE}/libdata/pkgconfig/mate-desktop-2.0.pc +desktop_BUILD_DEPENDS= ${desktop_DETECT}:${PORTSDIR}/x11/mate-desktop +desktop_LIB_DEPENDS= libmate-desktop-2.so:${PORTSDIR}/x11/mate-desktop +desktop_RUN_DEPENDS= ${desktop_DETECT}:${PORTSDIR}/x11/mate-desktop + +dialogs_DETECT= ${LOCALBASE}/bin/matedialog +dialogs_BUILD_DEPENDS= ${dialogs_DETECT}:${PORTSDIR}/x11/mate-dialogs +dialogs_RUN_DEPENDS= ${dialogs_DETECT}:${PORTSDIR}/x11/mate-dialogs + +docutils_DETECT= ${LOCALBASE}/libdata/pkgconfig/mate-doc-utils.pc +docutils_BUILD_DEPENDS= ${docutils_DETECT}:${PORTSDIR}/textproc/mate-doc-utils +docutils_RUN_DEPENDS= ${docutils_DETECT}:${PORTSDIR}/textproc/mate-doc-utils + +icontheme_DETECT= ${LOCALBASE}/libdata/pkgconfig/mate-icon-theme.pc +icontheme_BUILD_DEPENDS=${icontheme_DETECT}:${PORTSDIR}/x11-themes/mate-icon-theme +icontheme_RUN_DEPENDS= ${icontheme_DETECT}:${PORTSDIR}/x11-themes/mate-icon-theme + +intltool_DETECT= ${LOCALBASE}/bin/intltool-extract +intltool_BUILD_DEPENDS= ${intltool_DETECT}:${PORTSDIR}/textproc/intltool + +intlhack_PRE_PATCH= ${FIND} ${WRKSRC} -name "intltool-merge.in" | ${XARGS} ${REINPLACE_CMD} -e \ + 's|mkdir $$lang or|mkdir $$lang, 0777 or| ; \ + s|^push @INC, "/.*|push @INC, "${LOCALBASE}/share/intltool";| ; \ + s|/usr/bin/iconv|${LOCALBASE}/bin/iconv|g ; \ + s|unpack *[(]'"'"'U\*'"'"'|unpack ('"'"'C*'"'"'|' +.if ${USE_MATE:Mintlhack}!="" +USE_MATE+= intltool +.endif + +keyring_DETECT= ${LOCALBASE}/libdata/pkgconfig/mate-gcr-0.pc +keyring_BUILD_DEPENDS= ${keyring_DETECT}:${PORTSDIR}/security/mate-keyring +keyring_LIB_DEPENDS= libmategcr.so:${PORTSDIR}/security/mate-keyring +keyring_RUN_DEPENDS= ${keyring_DETECT}:${PORTSDIR}/security/mate-keyring + +libmatekbd_DETECT= ${LOCALBASE}/libdata/pkgconfig/libmatekbd.pc +libmatekbd_BUILD_DEPENDS= ${libmatekbd_DETECT}:${PORTSDIR}/x11/libmatekbd +libmatekbd_LIB_DEPENDS= libmatekbd.so:${PORTSDIR}/x11/libmatekbd +libmatekbd_RUN_DEPENDS= ${libmatekbd_DETECT}:${PORTSDIR}/x11/libmatekbd + +libmatekeyring_DETECT= ${LOCALBASE}/libdata/pkgconfig/mate-keyring-1.pc +libmatekeyring_BUILD_DEPENDS= ${libmatekeyring_DETECT}:${PORTSDIR}/security/libmatekeyring +libmatekeyring_LIB_DEPENDS= libmate-keyring.so:${PORTSDIR}/security/libmatekeyring +libmatekeyring_RUN_DEPENDS= ${libmatekeyring_DETECT}:${PORTSDIR}/security/libmatekeyring + +libmateweather_DETECT= ${LOCALBASE}/libdata/pkgconfig/mateweather.pc +libmateweather_BUILD_DEPENDS= ${libmateweather_DETECT}:${PORTSDIR}/net/libmateweather +libmateweather_LIB_DEPENDS= libmateweather.so:${PORTSDIR}/net/libmateweather +libmateweather_RUN_DEPENDS= ${libmateweather_DETECT}:${PORTSDIR}/net/libmateweather + +libmatewnck_DETECT= ${LOCALBASE}/libdata/pkgconfig/libmatewnck.pc +libmatewnck_BUILD_DEPENDS= ${libmatewnck_DETECT}:${PORTSDIR}/x11-toolkits/libmatewnck +libmatewnck_LIB_DEPENDS= libmatewnck.so:${PORTSDIR}/x11-toolkits/libmatewnck +libmatewnck_RUN_DEPENDS= ${libmatewnck_DETECT}:${PORTSDIR}/x11-toolkits/libmatewnck + +marco_DETECT= ${LOCALBASE}/libdata/pkgconfig/libmarco-private.pc +marco_BUILD_DEPENDS= ${marco_DETECT}:${PORTSDIR}/x11-wm/mate-window-manager +marco_LIB_DEPENDS= libmarco-private.so:${PORTSDIR}/x11-wm/mate-window-manager +marco_RUN_DEPENDS= ${marco_DETECT}:${PORTSDIR}/x11-wm/mate-window-manager + +menus_DETECT= ${LOCALBASE}/libdata/pkgconfig/libmate-menu.pc +menus_BUILD_DEPENDS= ${menus_DETECT}:${PORTSDIR}/x11/mate-menus +menus_LIB_DEPENDS= libmate-menu.so:${PORTSDIR}/x11/mate-menus +menus_RUN_DEPENDS= ${menus_DETECT}:${PORTSDIR}/x11/mate-menus + +notificationdaemon_DETECT= ${LOCALBASE}/libexec/mate-notification-daemon +notificationdaemon_BUILD_DEPENDS= ${notificationdaemon_DETECT}:${PORTSDIR}/deskutils/mate-notification-daemon +notificationdaemon_RUN_DEPENDS= ${notificationdaemon_DETECT}:${PORTSDIR}/deskutils/mate-notification-daemon + +panel_DETECT= ${LOCALBASE}/libdata/pkgconfig/libmatepanelapplet-4.0.pc +panel_BUILD_DEPENDS= ${panel_DETECT}:${PORTSDIR}/x11/mate-panel +panel_LIB_DEPENDS= libmate-panel-applet-4.so:${PORTSDIR}/x11/mate-panel +panel_RUN_DEPENDS= ${panel_DETECT}:${PORTSDIR}/x11/mate-panel + +polkit_DETECT= ${LOCALBASE}/libdata/pkgconfig/polkit-gtk-mate-1.pc +polkit_BUILD_DEPENDS= ${polkit_DETECT}:${PORTSDIR}/sysutils/mate-polkit +polkit_LIB_DEPENDS= libpolkit-gtk-mate-1.so:${PORTSDIR}/sysutils/mate-polkit +polkit_RUN_DEPENDS= ${polkit_DETECT}:${PORTSDIR}/sysutils/mate-polkit + +pluma_DETECT= ${LOCALBASE}/libdata/pkgconfig/pluma.pc +pluma_BUILD_DEPENDS= ${pluma_DETECT}:${PORTSDIR}/editors/mate-text-editor +pluma_RUN_DEPENDS= ${pluma_DETECT}:${PORTSDIR}/editors/mate-text-editor + +settingsdaemon_DETECT= ${LOCALBASE}/libdata/pkgconfig/mate-settings-daemon.pc +settingsdaemon_BUILD_DEPENDS= ${settingsdaemon_DETECT}:${PORTSDIR}/sysutils/mate-settings-daemon +settingsdaemon_RUN_DEPENDS= ${settingsdaemon_DETECT}:${PORTSDIR}/sysutils/mate-settings-daemon + +# End component definition section + +.endif +# End of optional part. + +.if defined(_POSTMKINCLUDED) && !defined(Mate_Post_Include) + +Mate_Post_Include= bsd.mate.mk + +.if defined(USE_MATE) +# Then handle the ltverhack component (it has to be done here, because +# we rely on some bsd.autotools.mk variables, and bsd.autotools.mk is +# included in the post-makefile section). +.if defined(_AUTOTOOL_libtool) +lthacks_CONFIGURE_ENV= ac_cv_path_DOLT_BASH= +lthacks_PRE_PATCH= ${CP} -pf ${LTMAIN} ${WRKDIR}/mate-ltmain.sh && \ + ${CP} -pf ${LIBTOOL} ${WRKDIR}/mate-libtool && \ + for file in ${LIBTOOLFILES}; do \ + ${REINPLACE_CMD} -e \ + '/^ltmain=/!s|$$ac_aux_dir/ltmain\.sh|${LIBTOOLFLAGS} ${WRKDIR}/mate-ltmain.sh|g; \ + /^LIBTOOL=/s|$$(top_builddir)/libtool|${WRKDIR}/mate-libtool|g' \ + ${PATCH_WRKSRC}/$$file; \ + done; +.else +. if ${USE_MATE:Mltverhack*}!="" || ${USE_MATE:Mltasneededhack}!="" +IGNORE= cannot install: ${PORTNAME} uses the ltverhack and/or ltasneededhack MATE components but does not use libtool +. endif +.endif + +.if ${USE_MATE:Mltverhack\:*:C/^[^:]+:([^:]+).*/\1/}=="" +ltverhack_LIB_VERSION= major=.`expr $$current - $$age` +.else +ltverhack_LIB_VERSION= major=".${USE_MATE:Mltverhack\:*:C/^[^:]+:([^:]+).*/\1/}" +.endif +ltverhack_PATCH_DEPENDS=${LIBTOOL_DEPENDS} +ltverhack_PRE_PATCH= for file in mate-ltmain.sh mate-libtool; do \ + if [ -f ${WRKDIR}/$$file ]; then \ + ${REINPLACE_CMD} -e \ + '/freebsd-elf)/,/;;/ s|major="\.$$current"|${ltverhack_LIB_VERSION}|; \ + /freebsd-elf)/,/;;/ s|versuffix="\.$$current"|versuffix="$$major"|' \ + ${WRKDIR}/$$file; \ + fi; \ + done + +ltasneededhack_PATCH_DEPENDS=${LIBTOOL_DEPENDS} +ltasneededhack_PRE_PATCH= if [ -f ${WRKDIR}/mate-libtool ]; then \ + ${REINPLACE_CMD} -e \ + '/^archive_cmds=/s/-shared/-shared -Wl,--as-needed/ ; \ + /^archive_expsym_cmds=/s/-shared/-shared -Wl,--as-needed/' \ + ${WRKDIR}/mate-libtool; \ + fi + + +# Comparing between USE_MATE and _USE_MATE_ALL to make sure the component +# exists in _USE_MATE_ALL. If it does not exist then give an error about it. +#. for component in ${USE_MATE:O:u:C/^([^:]+).*/\1/} +. for component in ${USE_MATE:C/^([^:]+).*/\1/} +#. for component in ${USE_GNOME:C/^([^:]+).*/\1/} +. if ${_USE_MATE_ALL:M${component}}=="" +.error cannot install: Unknown component USE_MATE=${component} +. endif +. endfor + +. if ${USE_MATE:Mltverhack*}!= "" || ${USE_MATE:Mltasneededhack}!= "" +MATE_PRE_PATCH+= ${lthacks_PRE_PATCH} +CONFIGURE_ENV+= ${lthacks_CONFIGURE_ENV} +. endif + +. for component in ${USE_MATE:O:u:C/^([^:]+).*/\1/} +. if defined(${component}_PATCH_DEPENDS) +PATCH_DEPENDS+= ${${component}_PATCH_DEPENDS} +. endif + +. if defined(${component}_DETECT) +. if ${USE_MATE:M${component}\:build}!="" +BUILD_DEPENDS+= ${${component}_BUILD_DEPENDS} +. elif ${USE_MATE:M${component}\:run}!="" +RUN_DEPENDS+= ${${component}_RUN_DEPENDS} +. else +. if defined(${component}_LIB_DEPENDS) +LIB_DEPENDS+= ${${component}_LIB_DEPENDS} +. else +BUILD_DEPENDS+= ${${component}_BUILD_DEPENDS} +RUN_DEPENDS+= ${${component}_RUN_DEPENDS} +. endif +. endif +. endif + +. if defined(${component}_CONFIGURE_TARGET) +CONFIGURE_ARGS+=${${component}_CONFIGURE_ARGS} +. endif + +. if defined(${component}_CONFIGURE_ENV) +CONFIGURE_ENV+= ${${component}_CONFIGURE_ENV} +. endif + +. if defined(${component}_MAKE_ENV) +MAKE_ENV+= ${${component}_MAKE_ENV} +. endif + +. if !defined(CONFIGURE_TARGET) && defined(${component}_CONFIGURE_TARGET) +CONFIGURE_TARGET= ${${component}_CONFIGURE_TARGET} +. endif + +. if defined(${component}_PRE_PATCH) +MATE_PRE_PATCH+= ; ${${component}_PRE_PATCH} +. endif +. endfor +.endif # USE_MATE check + +.if ${USE_MATE:Mautogen}!="" + +CONFIGURE_ENV+= NOCONFIGURE=yes + +pre-configure: mate-pre-configure + +mate-pre-configure: + @(cd ${CONFIGURE_WRKSRC} ; ${SETENV} ${CONFIGURE_ENV} ./autogen.sh) +.endif + +.if defined(MATE_PRE_PATCH) + +pre-configure-script: mate-pre-configure-script + +mate-pre-configure-script: + @${MATE_PRE_PATCH:C/^;//1} +.endif + +.if ${MAINTAINER}=="gnome@FreeBSD.org" +CONFIGURE_FAIL_MESSAGE= "Please run the gnomelogalyzer, available from \"http://www.freebsd.org/gnome/gnomelogalyzer.sh\", which will diagnose the problem and suggest a solution. If - and only if - the gnomelogalyzer cannot solve the problem, report the build failure to the FreeBSD MATE team at ${MAINTAINER}, and attach (a) \"${CONFIGURE_WRKSRC}/${CONFIGURE_LOG}\", (b) the output of the failed make command, and (c) the gnomelogalyzer output. Also, it might be a good idea to provide an overview of all packages installed on your system (i.e. an \`ls ${PKG_DBDIR}\`). Put your attachment up on any website, copy-and-paste into http://freebsd-gnome.pastebin.com, or use send-pr(1) with the attachment. Try to avoid sending any attachments to the mailing list (${MAINTAINER}), because attachments sent to FreeBSD mailing lists are usually discarded by the mailing list software." +.endif + +.endif +# End of use part. Property changes on: Mk/bsd.mate.mk ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +FreeBSD=%H \ No newline at end of property Index: Mk/bsd.port.mk =================================================================== --- Mk/bsd.port.mk (revision 334656) +++ Mk/bsd.port.mk (working copy) @@ -442,6 +442,10 @@ # or http://www.FreeBSD.org/gnome/docs/porting.html # for more details. ## +# USE_MATE - A list of the MATE dependencies the port has. Implies +# that the port needs MATE. Implies inclusion of +# bsd.mate.mk. See bsd.mate.mk for more details. +## # USE_LUA - If set, this port uses the Lua library and related # components. See bsd.lua.mk for more details. ## @@ -1465,6 +1469,10 @@ .include "${PORTSDIR}/Mk/bsd.gnome.mk" .endif +.if defined(USE_MATE) +.include "${PORTSDIR}/Mk/bsd.mate.mk" +.endif + .if defined(WANT_LUA) || defined(USE_LUA) || defined(USE_LUA_NOT) .include "${PORTSDIR}/Mk/bsd.lua.mk" .endif @@ -2033,6 +2041,10 @@ .include "${PORTSDIR}/Mk/bsd.gnome.mk" .endif +.if defined(USE_MATE) +.include "${PORTSDIR}/Mk/bsd.mate.mk" +.endif + .if defined(USE_XFCE) .include "${PORTSDIR}/Mk/bsd.xfce.mk" .endif @@ -2840,7 +2852,7 @@ deskutils devel docs dns editors elisp emulators enlightenment finance french ftp \ games geography german gnome gnustep graphics hamradio haskell hebrew hungarian \ ipv6 irc japanese java kde kld korean lang linux lisp \ - mail math mbone misc multimedia net net-im net-mgmt net-p2p news \ + mail mate math mbone misc multimedia net net-im net-mgmt net-p2p news \ palm parallel pear perl5 plan9 polish portuguese ports-mgmt \ print python ruby rubygems russian \ scheme science security shells spanish sysutils \ @@ -6556,6 +6568,7 @@ lang) c="Development" ;; \ lisp) c="Development" ;; \ mail) c="Office Email" ;; \ + mate) c="MATE GTK" ;; \ math) c="Education Science Math" ;; \ mbone) c="Network AudioVideo" ;; \ multimedia) c="AudioVideo" ;; \ @@ -6616,7 +6629,7 @@ ParallelComputing Amusement Archiving Compression Electronics Emulator \ Engineering FileTools FileManager TerminalEmulator Filesystem Monitor \ Security Accessibility Calculator Clock TextEditor Documentation Adult \ - Core KDE GNOME XFCE GTK Qt Motif Java ConsoleOnly + Core KDE GNOME MATE XFCE GTK Qt Motif Java ConsoleOnly DESKTOP_CATEGORIES_RESERVED= Screensaver TrayIcon Applet Shell VALID_DESKTOP_CATEGORIES+= ${DESKTOP_CATEGORIES_MAIN} \ Index: Mk/bsd.sites.mk =================================================================== --- Mk/bsd.sites.mk (revision 334656) +++ Mk/bsd.sites.mk (working copy) @@ -729,6 +729,11 @@ ftp://ftp.logilab.fr/pub/%SUBDIR%/ .endif +.if !defined(IGNORE_MASTER_SITE_MATE) +MASTER_SITE_MATE+= \ + http://pub.mate-desktop.org/releases/%SUBDIR%/ +.endif + .if !defined(IGNORE_MASTER_SITE_MOZDEV) MASTER_SITE_MOZDEV+= \ http://ftp.scarlet.be/pub/mozdev/%SUBDIR%/ \ @@ -1473,6 +1478,7 @@ GNU:${PORTNAME} \ HORDE:${PORTNAME} \ LOGILAB:${PORTNAME} \ + MATE:${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/} \ MOZDEV:${PORTNAME:L} \ NETLIB:${PORTNAME} \ PERL_CPAN:${PORTNAME:C/-.*//} \