diff --git a/.gitignore b/.gitignore index cd3bed6..bc51914 100644 --- a/.gitignore +++ b/.gitignore @@ -55,9 +55,6 @@ INSTALL config.rpath data/gnome-contacts-search-provider.ini data/gnome-contacts.desktop -data/gnome-contacts.desktop.in -data/org.gnome.Contacts.search-provider.ini -data/org.gnome.Contacts.search-provider.ini.in data/org.gnome.Contacts.SearchProvider.service data/gnome-contacts.appdata.xml po/Makevars.template @@ -69,6 +66,5 @@ po/insert-header.sin po/quot.sed po/remove-potcdate.sin data/org.gnome.Contacts.desktop -data/org.gnome.Contacts.desktop.in data/org.gnome.Contacts.service data/org.gnome.Contacts.appdata.xml diff --git a/Makefile.am b/Makefile.am index d3a82a5..2b60687 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,16 +1,13 @@ ACLOCAL_AMFLAGS = -I m4 -I libgd ${ACLOCAL_FLAGS} NULL= -SUBDIRS = libgd src vapi data po +SUBDIRS = libgd vapi src data po if BUILD_MAN_PAGES SUBDIRS += man endif -DIST_SUBDIRS = libgd src vapi data po man +DIST_SUBDIRS = libgd vapi src data po man EXTRA_DIST = \ autogen.sh \ - intltool-extract.in \ - intltool-merge.in \ - intltool-update.in \ $(NULL) ChangeLog: @@ -32,12 +29,6 @@ distclean-local: rm -f ChangeLog; \ fi - -DISTCLEANFILES = \ -intltool-extract \ -intltool-merge \ -intltool-update - MAINTAINERCLEANFILES = \ $(srcdir)/aclocal.m4 \ $(srcdir)/autoscan.log \ diff --git a/autogen.sh b/autogen.sh index 742fef4..f976de4 100755 --- a/autogen.sh +++ b/autogen.sh @@ -1,6 +1,39 @@ #!/bin/sh -mkdir -p m4 -autopoint --force +# Run this to generate all the initial makefiles, etc. +test -n "$srcdir" || srcdir=$(dirname "$0") +test -n "$srcdir" || srcdir=. + +olddir=$(pwd) + +cd $srcdir + +(test -f configure.ac) || { + echo "*** ERROR: Directory '$srcdir' does not look like the top-level project directory ***" + exit 1 +} + +# shellcheck disable=SC2016 +PKG_NAME=$(autoconf --trace 'AC_INIT:$1' configure.ac) + +if [ "$#" = 0 -a "x$NOCONFIGURE" = "x" ]; then + echo "*** WARNING: I am going to run 'configure' with no arguments." >&2 + echo "*** If you wish to pass any to it, please specify them on the" >&2 + echo "*** '$0' command line." >&2 + echo "" >&2 +fi + git submodule update --init --recursive -AUTOPOINT='intltoolize --automake --copy' autoreconf -fiv -Wall || exit -test -n "$NOCONFIGURE" || ./configure "$@" + +aclocal --install || exit 1 +autoreconf --verbose --force --install || exit 1 + +cd "$olddir" +if [ "$NOCONFIGURE" = "" ]; then + $srcdir/configure "$@" || exit 1 + + if [ "$1" = "--help" ]; then exit 0 else + echo "Now type 'make' to compile $PKG_NAME" || exit 1 + fi +else + echo "Skipping configure process." +fi diff --git a/configure.ac b/configure.ac index 6cd4173..6f2c039 100644 --- a/configure.ac +++ b/configure.ac @@ -3,39 +3,26 @@ AC_INIT([gnome-contacts],[3.22.1],[http://bugzilla.gnome.org/enter_bug.cgi?produ AC_CONFIG_SRCDIR([src/main.vala]) AC_CONFIG_HEADERS([config.h]) AC_CONFIG_MACRO_DIR([m4]) -AM_INIT_AUTOMAKE([tar-ustar dist-xz no-dist-gzip]) +AM_INIT_AUTOMAKE([tar-ustar dist-xz no-dist-gzip -Wno-portability]) # Enable silent rules is available AM_SILENT_RULES([yes]) -AC_CONFIG_FILES([Makefile - libgd/Makefile - vapi/Makefile - src/Makefile - man/Makefile - data/Makefile - data/org.gnome.Contacts.desktop.in - data/org.gnome.Contacts.search-provider.ini.in - po/Makefile.in - ]) - -LT_INIT -AC_PROG_CC -AM_PROG_VALAC([0.24.0]) -AC_PROG_INSTALL - -GLIB_GSETTINGS - -# i18n stuff -IT_PROG_INTLTOOL([0.40]) - -AM_GNU_GETTEXT([external]) -AM_GNU_GETTEXT_VERSION([0.17]) - GETTEXT_PACKAGE=gnome-contacts AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE], ["$GETTEXT_PACKAGE"], [Gettext Package]) AC_SUBST(GETTEXT_PACKAGE) +AM_GNU_GETTEXT_VERSION([0.19.7]) +AM_GNU_GETTEXT([external]) + +LT_INIT +AC_PROG_CC +AM_PROG_VALAC([0.24.0]) +AC_PROG_INSTALL +AC_PATH_PROG([GLIB_GENMARSHAL],[glib-genmarshal]) +AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums]) +AC_PATH_PROG([GLIB_COMPILE_RESOURCES],[glib-compile-resources]) +GLIB_GSETTINGS pkg_modules="gtk+-3.0 >= 3.20.0 glib-2.0 >= 2.37.6 @@ -112,6 +99,14 @@ AS_IF([test "x$enable_man_pages" != "xno"], AM_CONDITIONAL([BUILD_MAN_PAGES], [test "x$have_manutils" = "xyes"]) +AC_CONFIG_FILES([Makefile + libgd/Makefile + vapi/Makefile + src/Makefile + man/Makefile + data/Makefile + po/Makefile.in + ]) dnl libgd LIBGD_INIT([ diff --git a/data/Makefile.am b/data/Makefile.am index 60e4b6c..5e13654 100644 --- a/data/Makefile.am +++ b/data/Makefile.am @@ -1,21 +1,22 @@ -NULL= +NULL = +org.gnome.Contacts.desktop: org.gnome.Contacts.desktop.in + $(AM_V_GEN)$(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@ desktopdir = $(datadir)/applications -desktop_in_files = org.gnome.Contacts.desktop.in -desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) +desktop_DATA = org.gnome.Contacts.desktop + +org.gnome.Contacts.appdata.xml: org.gnome.Contacts.appdata.xml.in + $(AM_V_GEN)$(MSGFMT) --xml --template $< -d $(top_srcdir)/po -o $@ +appdatadir = $(datadir)/appdata +appdata_DATA = org.gnome.Contacts.appdata.xml searchproviderdir = $(datadir)/gnome-shell/search-providers searchprovider_DATA = org.gnome.Contacts.search-provider.ini -%.ini: %.ini.in - LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@ - -@INTLTOOL_DESKTOP_RULE@ - -service_in_files = org.gnome.Contacts.SearchProvider.service.in - servicedir = $(datadir)/dbus-1/services -service_DATA = $(service_in_files:.service.in=.service) org.gnome.Contacts.service +service_DATA = \ + org.gnome.Contacts.SearchProvider.service \ + org.gnome.Contacts.service %.service: %.service.in Makefile $(AM_V_GEN) [ -d $(@D) ] || $(mkdir_p) $(@D) ; \ @@ -27,29 +28,28 @@ org.gnome.Contacts.service: echo 'Exec=${bindir}/gnome-contacts --gapplication-service') > $@.tmp && \ mv $@.tmp $@ -@INTLTOOL_XML_RULE@ -appdatadir = $(datadir)/appdata -appdata_DATA = $(appdata_in_files:.xml.in=.xml) -appdata_in_files = org.gnome.Contacts.appdata.xml.in - EXTRA_DIST = \ - org.gnome.Contacts.desktop.in.in \ - org.gnome.Contacts.search-provider.ini.in.in \ + org.gnome.Contacts.desktop.in \ + org.gnome.Contacts.appdata.xml.in \ + org.gnome.Contacts.search-provider.ini \ + org.gnome.Contacts.SearchProvider.service.in \ contacts.gresource.xml \ ui/app-menu.ui \ ui/contacts-address-map.ui \ ui/contacts-window.ui \ ui/contacts-list-pane.ui \ ui/style.css \ - $(appdata_in_files) \ - $(service_in_files) \ $(NULL) -CLEANFILES = $(service_DATA) \ +CLEANFILES = \ + $(service_DATA) \ + org.gnome.Contacts.desktop \ + org.gnome.Contacts.appdata.xml \ + org.gnome.Contacts.SearchProvider.service \ $(appdata_DATA) DISTCLEANFILES = \ org.gnome.Contacts.desktop \ - org.gnome.Contacts.search-provider.ini \ - gnome-contacts.desktop \ - gnome-contacts.desktop.in + org.gnome.Contacts.appdata.xml \ + org.gnome.Contacts.SearchProvider.service + diff --git a/data/org.gnome.Contacts.appdata.xml.in b/data/org.gnome.Contacts.appdata.xml.in index b0ba07a..75f7422 100644 --- a/data/org.gnome.Contacts.appdata.xml.in +++ b/data/org.gnome.Contacts.appdata.xml.in @@ -3,19 +3,19 @@ org.gnome.Contacts.desktop CC0-1.0 GPL-2.0+ - <_name>GNOME Contacts - <_summary>A contacts manager for GNOME + GNOME Contacts + A contacts manager for GNOME - <_p> +

Contacts keeps and organize your contacts information. You can create, edit, delete and link together pieces of information about your contacts. Contacts aggregates the details from all your sources providing a centralized place for managing your contacts. - - <_p> +

+

Contacts will also integrate with online address books and automatically link contacts from different online sources. - +

diff --git a/data/org.gnome.Contacts.desktop.in.in b/data/org.gnome.Contacts.desktop.in similarity index 70% rename from data/org.gnome.Contacts.desktop.in.in rename to data/org.gnome.Contacts.desktop.in index 163ab14..0a9e4a8 100644 --- a/data/org.gnome.Contacts.desktop.in.in +++ b/data/org.gnome.Contacts.desktop.in @@ -1,7 +1,7 @@ [Desktop Entry] -_Name=Contacts -_Comment=A contacts manager for GNOME -_Keywords=friends;address book; +Name=Contacts +Comment=A contacts manager for GNOME +Keywords=friends;address book; Icon=x-office-address-book Exec=gnome-contacts Terminal=false diff --git a/data/org.gnome.Contacts.search-provider.ini.in.in b/data/org.gnome.Contacts.search-provider.ini similarity index 76% rename from data/org.gnome.Contacts.search-provider.ini.in.in rename to data/org.gnome.Contacts.search-provider.ini index 1f825e5..fc521d3 100644 --- a/data/org.gnome.Contacts.search-provider.ini.in.in +++ b/data/org.gnome.Contacts.search-provider.ini @@ -1,6 +1,4 @@ [Shell Search Provider] -_Title=GNOME Contacts -Icon=x-office-address-book DesktopId=org.gnome.Contacts.desktop BusName=org.gnome.Contacts.SearchProvider ObjectPath=/org/gnome/Contacts/SearchProvider diff --git a/po/Makevars b/po/Makevars new file mode 100644 index 0000000..8468342 --- /dev/null +++ b/po/Makevars @@ -0,0 +1,78 @@ +# Makefile variables for PO directory in any package using GNU gettext. + +# Usually the message domain is the same as the package name. +DOMAIN = $(PACKAGE) + +# These two variables depend on the location of this directory. +subdir = po +top_builddir = .. + +# These options get passed to xgettext. +XGETTEXT_OPTIONS = --from-code=UTF-8 --keyword=_ --keyword=N_ --keyword=C_:1c,2 --keyword=NC_:1c,2 --keyword=g_dngettext:2,3 --add-comments + +# This is the copyright holder that gets inserted into the header of the +# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding +# package. (Note that the msgstr strings, extracted from the package's +# sources, belong to the copyright holder of the package.) Translators are +# expected to transfer the copyright for their translations to this person +# or entity, or to disclaim their copyright. The empty string stands for +# the public domain; in this case the translators are expected to disclaim +# their copyright. +COPYRIGHT_HOLDER = Free Software Foundation, Inc. + +# This tells whether or not to prepend "GNU " prefix to the package +# name that gets inserted into the header of the $(DOMAIN).pot file. +# Possible values are "yes", "no", or empty. If it is empty, try to +# detect it automatically by scanning the files in $(top_srcdir) for +# "GNU packagename" string. +PACKAGE_GNU = + +# This is the email address or URL to which the translators shall report +# bugs in the untranslated strings: +# - Strings which are not entire sentences, see the maintainer guidelines +# in the GNU gettext documentation, section 'Preparing Strings'. +# - Strings which use unclear terms or require additional context to be +# understood. +# - Strings which make invalid assumptions about notation of date, time or +# money. +# - Pluralisation problems. +# - Incorrect English spelling. +# - Incorrect formatting. +# It can be your email address, or a mailing list address where translators +# can write to without being subscribed, or the URL of a web page through +# which the translators can contact you. +MSGID_BUGS_ADDRESS = + +# This is the list of locale categories, beyond LC_MESSAGES, for which the +# message catalogs shall be used. It is usually empty. +EXTRA_LOCALE_CATEGORIES = + +# This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt' +# context. Possible values are "yes" and "no". Set this to yes if the +# package uses functions taking also a message context, like pgettext(), or +# if in $(XGETTEXT_OPTIONS) you define keywords with a context argument. +USE_MSGCTXT = yes + +# These options get passed to msgmerge. +# Useful options are in particular: +# --previous to keep previous msgids of translated messages, +# --quiet to reduce the verbosity. +MSGMERGE_OPTIONS = + +# These options get passed to msginit. +# If you want to disable line wrapping when writing PO files, add +# --no-wrap to MSGMERGE_OPTIONS, XGETTEXT_OPTIONS, and +# MSGINIT_OPTIONS. +MSGINIT_OPTIONS = + +# This tells whether or not to regenerate a PO file when $(DOMAIN).pot +# has changed. Possible values are "yes" and "no". Set this to no if +# the POT file is checked in the repository and the version control +# program ignores timestamps. +PO_DEPENDS_ON_POT = no + +# This tells whether or not to forcibly update $(DOMAIN).pot and +# regenerate PO files on "make dist". Possible values are "yes" and +# "no". Set this to no if the POT file and PO files are maintained +# externally. +DIST_DEPENDS_ON_UPDATE_PO = no diff --git a/po/POTFILES.in b/po/POTFILES.in index ed1cea8..707ef34 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -1,6 +1,5 @@ data/org.gnome.Contacts.appdata.xml.in -data/org.gnome.Contacts.desktop.in.in -[type: gettext/ini]data/org.gnome.Contacts.search-provider.ini.in.in +data/org.gnome.Contacts.desktop src/contacts-accounts-list.vala src/contacts-address-map.vala src/contacts-app.vala @@ -15,8 +14,8 @@ src/contacts-linked-accounts-dialog.vala src/contacts-types.vala src/contacts-view.vala src/contacts-window.vala -[type: gettext/glade]data/ui/app-menu.ui -[type: gettext/glade]data/ui/contacts-list-pane.ui -[type: gettext/glade]data/ui/contacts-window.ui +data/ui/app-menu.ui +data/ui/contacts-list-pane.ui +data/ui/contacts-window.ui src/main.vala -src/org.gnome.Contacts.gschema.xml.in +src/org.gnome.Contacts.gschema.xml diff --git a/po/POTFILES.skip b/po/POTFILES.skip index 5cd900e..dc92937 100644 --- a/po/POTFILES.skip +++ b/po/POTFILES.skip @@ -1,7 +1,4 @@ data/org.gnome.Contacts.appdata.xml -data/org.gnome.Contacts.desktop.in -sub/data/org.gnome.Contacts.desktop.in -data/org.gnome.Contacts.search-provider.ini.in src/contacts-accounts-list.c src/contacts-address-map.c src/contacts-app.c @@ -16,4 +13,3 @@ src/contacts-types.c src/contacts-view.c src/contacts-window.c src/main.c -src/org.gnome.Contacts.gschema.xml diff --git a/src/.gitignore b/src/.gitignore index 9e26baa..b577860 100644 --- a/src/.gitignore +++ b/src/.gitignore @@ -34,4 +34,3 @@ gnome-contacts-search-provider memory-icon.c org.gnome.Contacts.enums.xml org.gnome.Contacts.gschema.valid -org.gnome.Contacts.gschema.xml diff --git a/src/Makefile.am b/src/Makefile.am index 87a4431..642977e 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -48,11 +48,7 @@ gsettings_ENUM_NAMESPACE = org.gnome.Contacts gsettings_ENUM_FILES = \ contacts-view.c -gsettingsschema_in_files = org.gnome.Contacts.gschema.xml.in -gsettings_SCHEMAS = $(gsettingsschema_in_files:.xml.in=.xml) -.PRECIOUS: $(gsettings_SCHEMAS) - -@INTLTOOL_XML_NOMERGE_RULE@ +gsettings_SCHEMAS = org.gnome.Contacts.gschema.xml @GSETTINGS_RULES@ @@ -91,12 +87,11 @@ gnome_contacts_search_provider_LDADD = $(CONTACTS_LIBS) CLEANFILES = \ $(vala_sources:.vala=.c) \ - $(gsettings_SCHEMAS) \ *.vapi *.stamp EXTRA_DIST = \ + org.gnome.Contacts.gschema.xml \ cheese-flash.h \ um-crop-area.h \ - $(gsettingsschema_in_files) \ contacts-esd-setup.h \ $(NULL) diff --git a/src/org.gnome.Contacts.gschema.xml.in b/src/org.gnome.Contacts.gschema.xml similarity index 58% rename from src/org.gnome.Contacts.gschema.xml.in rename to src/org.gnome.Contacts.gschema.xml index fbf5255..825fcae 100644 --- a/src/org.gnome.Contacts.gschema.xml.in +++ b/src/org.gnome.Contacts.gschema.xml @@ -2,14 +2,13 @@ false - <_summary>First-time setup done. - <_description>Set to true when the user ran the first-time setup wizard. + First-time setup done. + Set to true when the user ran the first-time setup wizard. 'main' - <_summary>View subset - <_description>View contacts subset + View subset + View contacts subset -