From 1f27ee62197c9bca9dc2dd6721b5feaa0fd908b3 Mon Sep 17 00:00:00 2001 From: Ell Date: Mon, 25 Dec 2017 06:40:10 -0500 Subject: [PATCH] build, configure.ac: misc Windows installer translations build improvements In configure.ac, add --enable-windows-installer option (off by default), which should be set to generate the necessary files for the installer translations during the build. Using this option is only supported when building from git, since the installer files are not included in source tarballs. Rename setup.isl.desktop.in to setup.isl.in, and instruct intltool to treat it as an .ini file explicitly. Delete generated message files during make clean. --- build/windows/Makefile.am | 6 ++++- build/windows/installer/lang/Makefile.am | 15 ++++++++++--- .../{setup.isl.desktop.in => setup.isl.in} | 3 ++- configure.ac | 22 +++++++++++++++++++ po-libgimp/POTFILES.skip | 2 +- po-plug-ins/POTFILES.skip | 2 +- po-python/POTFILES.skip | 2 +- po-script-fu/POTFILES.skip | 2 +- po-tags/POTFILES.skip | 2 +- po-tips/POTFILES.skip | 2 +- po-windows-installer/POTFILES.in | 2 +- po/POTFILES.skip | 2 +- 12 files changed, 49 insertions(+), 13 deletions(-) rename build/windows/installer/lang/{setup.isl.desktop.in => setup.isl.in} (98%) diff --git a/build/windows/Makefile.am b/build/windows/Makefile.am index 7520e04fd8..2cc31f2252 100644 --- a/build/windows/Makefile.am +++ b/build/windows/Makefile.am @@ -1,5 +1,9 @@ +if BUILD_WINDOWS_INSTALLER +installer = installer +endif + SUBDIRS = \ - installer + $(installer) EXTRA_DIST = \ gimprc.rule \ diff --git a/build/windows/installer/lang/Makefile.am b/build/windows/installer/lang/Makefile.am index ec9fe92175..a4e7090fc4 100644 --- a/build/windows/installer/lang/Makefile.am +++ b/build/windows/installer/lang/Makefile.am @@ -1,6 +1,6 @@ isl_in_files = \ - setup.isl.desktop.in -isl_files = $(isl_in_files:.isl.desktop.in=.isl) + setup.isl.in +isl_files = $(isl_in_files:.isl.in=.isl) stamp_files = \ stamp-isl @@ -35,7 +35,16 @@ stamp-isl: setup.isl Makefile.am done && \ echo timestamp > stamp-isl -setup.isl: setup.isl.desktop.in $(wildcard $(top_srcdir)/po-windows-installer/*.po) Makefile.am +setup.isl: setup.isl.in $(wildcard $(top_srcdir)/po-windows-installer/*.po) Makefile.am $(AM_V_GEN) $(INTLTOOL_MERGE) $(top_srcdir)/po-windows-installer $< $(@) -d -u -c $(top_builddir)/po-windows-installer/.intltool-merge-cache all-local: $(stamp_files) + +clean-local: + @ \ + for lang in $(languages); do \ + code=`echo $$lang | cut -d: -f1`; \ + isl="$(srcdir)/$$code.setup.isl"; \ + echo " RM $$isl"; \ + rm -f "$$isl"; \ + done diff --git a/build/windows/installer/lang/setup.isl.desktop.in b/build/windows/installer/lang/setup.isl.in similarity index 98% rename from build/windows/installer/lang/setup.isl.desktop.in rename to build/windows/installer/lang/setup.isl.in index 22872d3460..bc25517800 100644 --- a/build/windows/installer/lang/setup.isl.desktop.in +++ b/build/windows/installer/lang/setup.isl.in @@ -1,4 +1,5 @@ -; run make to generate the language-specific .setup.isl files +; to generate the language-specific .setup.isl files, +; configure with --enable-windows-installer, and run make. [Messages] ;InfoBefore page is used instead of license page because the GPL only concerns distribution, not use, and as such doesn't have to be accepted diff --git a/configure.ac b/configure.ac index 77565bf7a6..e4c4d38a03 100644 --- a/configure.ac +++ b/configure.ac @@ -2270,6 +2270,28 @@ AC_ARG_ENABLE(gtk-doc-app, [ --enable-gtk-doc-app build developer documentat AM_CONDITIONAL(ENABLE_GTK_DOC_APP, test "x$enable_gtk_doc_app" = xyes) +############################# +# Check for Windows installer +############################# + +AC_MSG_CHECKING([if building the Windows installer]) +AC_ARG_ENABLE(windows-installer, + [ --enable-windows-installer + generate files needed for the Windows installer + (default=no)],, + enable_windows_installer=no) + +if test "x$enable_windows_installer" != xno; then + if test ! -e "$srcdir/build/windows/installer/lang/setup.isl.in"; then + AC_MSG_RESULT([no (not building from git)]) + AC_MSG_ERROR([Building the Windows installer is only supported when building from git.]) + fi +fi + +AC_MSG_RESULT([$enable_windows_installer]) +AM_CONDITIONAL(BUILD_WINDOWS_INSTALLER, test "x$enable_windows_installer" != xno) + + ######################################### # Allow to configure the GIMP environment ######################################### diff --git a/po-libgimp/POTFILES.skip b/po-libgimp/POTFILES.skip index 504b815ec1..5682bc0eea 100644 --- a/po-libgimp/POTFILES.skip +++ b/po-libgimp/POTFILES.skip @@ -1,5 +1,5 @@ app -build/windows/installer/lang/setup.isl.desktop.in +build/windows/installer/lang/setup.isl.in data/tags data/tips desktop diff --git a/po-plug-ins/POTFILES.skip b/po-plug-ins/POTFILES.skip index a8a84e864f..21a8815942 100644 --- a/po-plug-ins/POTFILES.skip +++ b/po-plug-ins/POTFILES.skip @@ -1,5 +1,5 @@ app -build/windows/installer/lang/setup.isl.desktop.in +build/windows/installer/lang/setup.isl.in data/tags data/tips desktop diff --git a/po-python/POTFILES.skip b/po-python/POTFILES.skip index 3f4dc74164..4f0a2c7943 100644 --- a/po-python/POTFILES.skip +++ b/po-python/POTFILES.skip @@ -1,5 +1,5 @@ app -build/windows/installer/lang/setup.isl.desktop.in +build/windows/installer/lang/setup.isl.in data/tags data/tips desktop diff --git a/po-script-fu/POTFILES.skip b/po-script-fu/POTFILES.skip index 45c298865f..743238368c 100644 --- a/po-script-fu/POTFILES.skip +++ b/po-script-fu/POTFILES.skip @@ -1,5 +1,5 @@ app -build/windows/installer/lang/setup.isl.desktop.in +build/windows/installer/lang/setup.isl.in data/tags data/tips desktop diff --git a/po-tags/POTFILES.skip b/po-tags/POTFILES.skip index bf6dced2e4..e051e26954 100644 --- a/po-tags/POTFILES.skip +++ b/po-tags/POTFILES.skip @@ -1,5 +1,5 @@ app -build/windows/installer/lang/setup.isl.desktop.in +build/windows/installer/lang/setup.isl.in data/tips desktop desktop/gimp.desktop.in diff --git a/po-tips/POTFILES.skip b/po-tips/POTFILES.skip index 371d1c369d..5404848399 100644 --- a/po-tips/POTFILES.skip +++ b/po-tips/POTFILES.skip @@ -1,5 +1,5 @@ app -build/windows/installer/lang/setup.isl.desktop.in +build/windows/installer/lang/setup.isl.in data/tags desktop desktop/gimp.desktop.in diff --git a/po-windows-installer/POTFILES.in b/po-windows-installer/POTFILES.in index a90474ad0b..eb416b25ef 100644 --- a/po-windows-installer/POTFILES.in +++ b/po-windows-installer/POTFILES.in @@ -3,4 +3,4 @@ [encoding: UTF-8] -build/windows/installer/lang/setup.isl.desktop.in +[type: gettext/ini] build/windows/installer/lang/setup.isl.in diff --git a/po/POTFILES.skip b/po/POTFILES.skip index bf44af9b38..1d04d21e2b 100644 --- a/po/POTFILES.skip +++ b/po/POTFILES.skip @@ -1,5 +1,5 @@ app/widgets/gtkscalebutton.c -build/windows/installer/lang/setup.isl.desktop.in +build/windows/installer/lang/setup.isl.in data/tags/gimp-tags-default.xml.in data/tips/gimp-tips.xml.in desktop/gimp.desktop.in