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