Page Menu
Home
GnuPG
Search
Configure Global Search
Log In
Files
F40810785
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Size
31 KB
Subscribers
None
View Options
diff --git a/Makefile.am b/Makefile.am
index ea62e463..2e181387 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,96 +1,94 @@
# Makefile.am - Installer for GnuPG 4 Windows Makefile.
# Copyright (C) 2005, 2008, 2012 g10 Code GmbH
#
# This file is part of GPG4Win.
#
# GPG4Win is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# GPG4Win is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, see <http://www.gnu.org/licenses/>.
ACLOCAL_AMFLAGS = -I m4
AUTOMAKE_OPTIONS = dist-bzip2 no-dist-gzip
DISTCHECK_CONFIGURE_FLAGS = --host=i686-w64-mingw32
SUBDIRS = po packages doc src
# find patches -type f | sort | sed 's/$/ \\/' | sed 's/^/ /'
EXTRA_DIST = autogen.sh README.GIT ONEWS \
doc/license-page doc/GPLv3 \
build-aux/git-log-footer build-aux/git-log-fix \
patches/glib-2.41.5/01-socket.patch \
patches/glib-2.41.5/02-formatsec.patch \
patches/qtbase/relative-paths.patch \
patches/qtbase/qtbase-mingw-fixes.patch \
patches/qtbase/config-standardpaths.patch \
patches/qtbase/windowsxp-support.patch \
patches/qtbase/windowsxp-support-revert.patch \
patches/qtbase/windowsxp-support-revert-2.patch \
patches/qtwinextras/support-xp.patch \
patches/w32pth-2.0.5/workaround-broken-libtool.patch \
patches/qttools/disable-most-tools.patch \
patches/ki18n/no-tests.patch \
patches/kxmlgui/0002-Make-QDBus-dependency-optional.patch \
patches/kxmlgui/0003-Make-KTextWidgets-optional.patch \
patches/kxmlgui/0004-Cruedly-disable-KSendbugmail.patch \
patches/kconfigwidgets/0001-Make-QDbus-optional.patch \
patches/kconfigwidgets/0002-Crudely-remove-KF5Auth-depedency.patch \
patches/kiconthemes/0001-Make-DBus-optional.patch \
patches/extra-cmake-modules/0001-Add-convert-utility-support-for-Windows-icons.patch \
patches/kleopatra/0005-Hack-generated-conf-files-for-Crosscompiling.patch \
- patches/kleopatra/lower-kf5-required.patch \
patches/kleopatra/fix-qt5.6-build.patch \
patches/libgpg-error-1.21/0001-Add-FD_ISSET-replacement-for-Windows.patch \
patches/gpgex-1.0.4/0001-Prefer-kleowrapped-gpgwrapped-binaries.patch \
- patches/libkleo/lower-kf5-required.patch \
patches/gpgex-1.0.4/0002-Fix-loop-logic-error-in-new-server-name-detection.patch \
patches/extra-cmake-modules/0001-Use-BIN_INSTALL_DIR-data-for-DATAROOTDIR-on-Windows.patch \
patches/gpa-0.9.10/0001-w32-Make-location-of-locale-dir-more-flexible.patch
copy-news:
cp NEWS doc/website/NEWS.last
copy-release: gpg4win-$(VERSION).tar.bz2 installers/gpg4win-$(VERSION).exe \
installers/gpg4win-light-$(VERSION).exe \
installers/gpg4win-vanilla-$(VERSION).exe
@echo Copying $(VERSION) to $(RELEASEHOST) >&2
@set -e;\
if ssh "$$(echo $(RELEASEHOST)|cut -d: -f -1)" \
test -f "$$(echo $(RELEASEHOST)/gpg4win-$(VERSION).exe|cut -d: -f2-)";\
then echo "This release has already been copied to the server" >&2 ;\
else scp gpg4win-$(VERSION).tar.bz2 \
installers/gpg4win-$(VERSION).exe \
installers/gpg4win-light-$(VERSION).exe \
installers/gpg4win-vanilla-$(VERSION).exe \
installers/gpg4win-src-$(VERSION).exe $(RELEASEHOST)/ ;\
for f in en de ; do \
scp src/README.$$f.txt \
$(RELEASEHOST)/README-$(VERSION).$$f.txt; \
done;\
fi
dist-hook: gen-ChangeLog
gen_start_date = 2012-03-26T00:00:00
.PHONY: gen-ChangeLog
gen-ChangeLog:
set -e; \
if test -d $(top_srcdir)/.git; then \
(cd $(top_srcdir) && \
$(GITLOG_TO_CHANGELOG) --append-dot --tear-off \
--amend=build-aux/git-log-fix \
--since=$(gen_start_date) ) > $(distdir)/cl-t; \
cat $(top_srcdir)/build-aux/git-log-footer >> $(distdir)/cl-t;\
rm -f $(distdir)/ChangeLog; \
mv $(distdir)/cl-t $(distdir)/ChangeLog; \
fi
diff --git a/patches/kleopatra/lower-kf5-required.patch b/patches/kleopatra/lower-kf5-required.patch
deleted file mode 100755
index b9a3f0d0..00000000
--- a/patches/kleopatra/lower-kf5-required.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-#! /bin/sh
-patch -p1 -l -f $* < $0
-exit $?
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 855a4aff..8d2767b8 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -6,10 +6,10 @@ option(FORCE_DISABLE_KCMUTILS "Force building Kleopatra without KCMUtils. Doing
- option(DISABLE_KWATCHGNUPG "Don't build the kwatchgnupg tool [default=OFF]" OFF)
-
- # Standalone build. Find / include everything necessary.
--set(KF5_VERSION "5.37.0")
--set(KMIME_VERSION "5.6.40")
--set(LIBKLEO_VERSION "5.6.40")
--set(QT_REQUIRED_VERSION "5.8.0")
-+set(KF5_VERSION "5.20.0")
-+set(KMIME_VERSION "5.2.40")
-+set(LIBKLEO_VERSION "5.4.40")
-+set(QT_REQUIRED_VERSION "5.7.0")
- set(GPGME_REQUIRED_VERSION "1.8.0")
-
- option(RUN_UNINSTALL "test run uninstalled apps (experimental)" FALSE)
diff --git a/patches/libkleo/lower-kf5-required.patch b/patches/libkleo/lower-kf5-required.patch
deleted file mode 100755
index bea30a7d..00000000
--- a/patches/libkleo/lower-kf5-required.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-#! /bin/sh
-patch -p1 -l -f $* < $0
-exit $?
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 7223ab9..754088c 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 2.8.12)
-
- project(libkleo)
-
--set(KF5_VERSION "5.35.0")
-+set(KF5_VERSION "5.25.0")
- find_package(ECM ${KF5_VERSION} CONFIG REQUIRED)
- set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
- set(LIBRARY_NAMELINK)
diff --git a/src/gpg4win.mk.in b/src/gpg4win.mk.in
index 2cd8c7e1..c8c71e74 100644
--- a/src/gpg4win.mk.in
+++ b/src/gpg4win.mk.in
@@ -1,757 +1,763 @@
# gpg4win.m4.in - Installer for GnuPG 4 Windows Makefile. -*- makefile -*-
# Copyright (C) 2005, 2009 g10 Code GmbH
#
# This file is part of GPG4Win.
#
# GPG4Win is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# GPG4Win is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
# No servicable parts below this line :)
# These paths must be absolute, as we switch directories pretty often.
root := $(shell pwd)/playground
bdir := $(root)/build
idir := $(root)/install
ipdir := $(root)/install/pkgs
tsdir := $(shell pwd)/${top_srcdir}
pdir := $(shell pwd)/${top_srcdir}/patches
ex_idir := $(root)/install-ex
ex_ipdir := $(root)/install-ex/pkgs
# We collect the names of all pkg files used.
pkg_files =
# The playground area is our scratch area, where we unpack, build and
# install the packages.
stamps/stamp-directories:
$(MKDIR) stamps
$(MKDIR) playground
$(MKDIR) -p installers
$(MKDIR) $(bdir)
$(MKDIR) $(idir)
$(MKDIR) $(ipdir)
$(if $GPGEX_ADD_HOST, $(MKDIR) $(ex_idir))
$(if $GPGEX_ADD_HOST, $(MKDIR) $(ex_ipdir))
touch $(bdir)/versioninfo.txt
touch stamps/stamp-directories
# Frob the name $1 by converting all '-' and '+' characters to '_'.
define FROB_macro
$(subst +,_,$(subst -,_,$(1)))
endef
# Get the variable $(1) (which may contain '-' and '+' characters).
define GETVAR
$($(call FROB_macro,$(1)))
endef
# Set a couple of common variables.
define SETVARS
set -e; \
pkg="$(call GETVAR,gpg4win_pkg_$(1))"; \
pkg_version="$(1)-$(call GETVAR,gpg4win_pkg_$(1)_version)"; \
pkgsdir="$(bdir)/$$$${pkg_version}"; \
pkgbdir="$(bdir)/$$$${pkg_version}-build"; \
pkgpdir="$(pdir)/$$$${pkg_version}"; \
pkgpbdir="$(pdir)/$(1)"; \
pkgidir="$(ipdir)/$$$${pkg_version}"; \
pkg_dev="$(call GETVAR,gpg4win_pkg_$(1)_dev)"; \
pkg_version_dev="$(1)-dev-$(call GETVAR,gpg4win_pkg_$(1)_version)"; \
pkgidir_dev="$(ipdir)/$$$${pkg_version_dev}"; \
pkgcfg="$(call GETVAR,gpg4win_pkg_$(1)_configure)"; \
pkgextracflags="$(call GETVAR,gpg4win_pkg_$(1)_extracflags)"; \
pkgmkargs="$(call GETVAR,gpg4win_pkg_$(1)_make_args)"; \
pkgmkargs_inst="$(call GETVAR,gpg4win_pkg_$(1)_make_args_inst)";\
pkgmkdir="$(call GETVAR,gpg4win_pkg_$(1)_make_dir)"; \
pkgmkdir_inst="$(call GETVAR,gpg4win_pkg_$(1)_make_dir)"; \
export PKG_CONFIG="$(tsdir)/src/pkg-config"; \
export PKG_CONFIG_PATH="$(idir)/lib/pkgconfig"; \
export PKG_CONFIG_LIBDIR=""; \
export PATH="$(idir)/bin:$${PATH}"; \
export SYSROOT="$(idir)"; \
export CONFIG_SITE="$(tsdir)/src/config.site"
endef
# Set variables for building in an additional architecture
define SETVARS_EX
set -e; \
pkg="$(call GETVAR,gpg4win_pkg_$(1))"; \
pkg_version="$(1)-$(call GETVAR,gpg4win_pkg_$(1)_version)"; \
pkgsdir="$(bdir)/$$$${pkg_version}"; \
pkgbdir="$(bdir)/$$$${pkg_version}-ex-build"; \
pkgpdir="$(pdir)/$$$${pkg_version}"; \
pkgpbdir="$(pdir)/$(1)"; \
pkgidir="$(ex_ipdir)/$$$${pkg_version}"; \
pkgidir_dev="$(ex_ipdir)/$$$${pkg_version_dev}"; \
pkgcfg="$(call GETVAR,gpg4win_pkg_$(1)_ex_configure)"; \
pkgextracflags="$(call GETVAR,gpg4win_pkg_$(1)_ex_extracflags)"; \
pkgmkargs="$(call GETVAR,gpg4win_pkg_$(1)_ex_make_args)"; \
pkgmkargs_inst="$(call GETVAR,gpg4win_pkg_$(1)_ex_make_args_inst)"; \
pkgmkdir="$(call GETVAR,gpg4win_pkg_$(1)_ex_make_dir)"; \
pkgmkdir_inst="$(call GETVAR,gpg4win_pkg_$(1)_ex_make_dir)"; \
export PKG_CONFIG="$(tsdir)/src/pkg-config"; \
export PKG_CONFIG_PATH="$(ex_idir)/lib/pkgconfig"; \
export PKG_CONFIG_LIBDIR=""; \
export PATH="$(ex_idir)/bin:$${PATH}"; \
export SYSROOT="$(ex_idir)"
endef
# Support macro. Unpack the archive $(1).
define DEFLATE_macro
rm -rf $$$${pkgsdir}; \
case "$(1)" in \
*/qtbase*.*.tar.xz) \
$(TAR) -xJ --transform='s,^qtbase-opensource-src,qtbase,' -f "$(1)" ;; \
*/qttools*.*.tar.xz) \
$(TAR) -xJ --transform='s,^qttools-opensource-src,qttools,' -f "$(1)" ;; \
*/qtwinextras*.*.tar.xz) \
$(TAR) -xJ --transform='s,^qtwinextras-opensource-src,qtwinextras,' -f "$(1)" ;; \
*/qtsvg*.*.tar.xz) \
$(TAR) -xJ --transform='s,^qtsvg-opensource-src,qtsvg,' -f "$(1)" ;; \
*/qttranslations*.*.tar.xz) \
$(TAR) -xJ --transform='s,^qttranslations-opensource-src,qttranslations,' -f "$(1)" ;; \
*/boost*.*.tar.bz2) \
$(TAR) -xj --transform='s,^boost_1_60_0,boost-1.60.0,' -f "$(1)" ;; \
*.tar.gz | *.tgz) \
$(TAR) xzf "$(1)" ;; \
*.tar.bz2 | *.tbz2 | *.tbz) \
$(TAR) xjf "$(1)" ;; \
*.tar.xz ) \
$(TAR) xJf "$(1)" ;; \
*.exe ) \
cp "$(1)" . ;; \
*.zip) \
$(UNZIP) -o "$(1)" ;; \
esac
endef
# Support macro. Strip all exe files below $(1).
define STRIP_macro
if test -z '$(DEBUG)'; then \
(cd $(1); \
for f in `find . -name \*.exe -o -name \*.dll`; do \
echo Calling $(STRIP) "$$$${pkg_version}/$$$${f}"; \
$(STRIP) "$$$${f}"; done); \
fi
endef
# Support macro. Strip all exe files below $(1) using STRIP_EX.
define STRIP_EX_macro
if test -z '$(DEBUG)'; then \
(cd $(1); \
for f in `find . -name \*.exe -o -name \*.dll`; do \
echo Calling $(STRIP_EX) "$$$${pkg_version}/$$$${f}"; \
$(STRIP_EX) "$$$${f}"; done); \
fi
endef
define GETDEPS
$(addprefix stamps/stamp-final-, $(call GETVAR,gpg4win_pkg_$(1)_deps))
endef
define GETDEPS_EX
$(addprefix stamps/stamp-final-ex-, $(call GETVAR,gpg4win_pkg_$(1)_deps))
endef
# Template for source packages to build for an additional host
define EXPKG_template_
pkg_files += $(call GETVAR,gpg4win_pkg_$(1))
stamps/stamp-$(1)-ex-00-unpack: stamps/stamp-$(1)-00-unpack
touch stamps/stamp-$(1)-ex-00-unpack
stamps/stamp-$(1)-ex-01-patch: stamps/stamp-$(1)-ex-00-unpack stamps/stamp-$(1)-01-patch
touch stamps/stamp-$(1)-ex-01-patch
stamps/stamp-$(1)-ex-02-configure: stamps/stamp-$(1)-ex-01-patch
($(call SETVARS_EX,$(1)); \
mkdir "$$$${pkgbdir}"; \
cd "$$$${pkgbdir}"; \
eval "../$$$${pkg_version}/configure" \
--prefix="$$$${pkgidir}" \
--host=$(GPGEX_ADD_HOST) \
--build=$(build) \
$$$${pkgcfg} CFLAGS=\"-mms-bitfields $$$${pkgextracflags}\";\
shopt -s nullglob; \
for pfile in "$$$${pkgpbdir}"/*.postcfg \
"$$$${pkgpdir}"/*.postcfg ; do \
(cd "$$$${pkgsdir}"; "$$$${pfile}") \
done; \
for pfile in "$$$${pkgpbdir}"/*.postcfg-build \
"$$$${pkgpdir}"/*.postcfg-build ; do \
(cd "$$$${pkgbdir}"; "$$$${pfile}") \
done)
touch stamps/stamp-$(1)-ex-02-configure
stamps/stamp-$(1)-ex-03-make: stamps/stamp-$(1)-ex-02-configure
($(call SETVARS_EX,$(1)); \
cd "$$$${pkgbdir}"; \
test -n "$$$${pkgmkdir}" && cd "$$$${pkgmkdir}"; \
$(MAKE) $(AM_MAKEFLAGS) $(GPG4WIN_PARALLEL) $$$${pkgmkargs} \
)
touch stamps/stamp-$(1)-ex-03-make
# Note that post_install must come last because it may be empty and
# "; ;" is a syntax error.
stamps/stamp-$(1)-ex-04-install: stamps/stamp-$(1)-ex-03-make
($(call SETVARS_EX,$(1)); \
cd "$$$${pkgbdir}"; \
$(MAKE) $(AM_MAKEFLAGS) $$$${pkgmkargs_inst} install; \
$(call STRIP_EX_macro,"$$$${pkgidir}"); \
rm -f "$$$${pkgidir}/share/info/dir"; \
$(call gpg4win_pkg_$(call FROB_macro,$(1))_ex_post_install))
touch stamps/stamp-$(1)-ex-04-install
stamps/stamp-$(1)-ex-05-stow: stamps/stamp-$(1)-ex-04-install
($(call SETVARS_EX,$(1)); \
cd $(ex_ipdir); \
$(STOW) -t `readlink -f $(ex_idir)` "$$$${pkg_version}")
touch stamps/stamp-$(1)-ex-05-stow
stamps/stamp-final-ex-$(1): stamps/stamp-$(1)-ex-05-stow
touch stamps/stamp-final-ex-$(1)
.PHONY : clean-ex-$(1)
clean-ex-$(1):
($(call SETVARS_EX,$(1)); \
(cd $(ex_ipdir) && \
($(STOW) -D "$$$${pkg_version}"; \
rm -fR "$$$${pkg_version}")); \
rm -fR "$$$${pkgsdir}" "$$$${pkgbdir}")
rm -f stamps/stamp-final-ex-$(1) stamps/stamp-$(1)-ex-*
endef
define EXPKG_template
$(if $(filter-out no, $(call GETVAR,gpg4win_pkg_$(1))),
$(call EXPKG_template_,$1))
endef
# Template for source packages.
define SPKG_template_
pkg_files += $(call GETVAR,gpg4win_pkg_$(1))
stamps/stamp-$(1)-00-unpack: stamps/stamp-directories $(call GETDEPS,$(1))
(cd $(bdir); \
$(call SETVARS,$(1)); \
$(call DEFLATE_macro,$$$${pkg}))
touch stamps/stamp-$(1)-00-unpack
stamps/stamp-$(1)-01-patch: stamps/stamp-$(1)-00-unpack
(shopt -s nullglob; \
$(call SETVARS,$(1)); \
for pfile in "$$$${pkgpbdir}"/*.patch "$$$${pkgpdir}"/*.patch ; do \
(cd "$$$${pkgsdir}"; "$$$${pfile}") \
done)
touch stamps/stamp-$(1)-01-patch
stamps/stamp-$(1)-02-configure: stamps/stamp-$(1)-01-patch
($(call SETVARS,$(1)); \
mkdir "$$$${pkgbdir}"; \
cd "$$$${pkgbdir}"; \
eval "../$$$${pkg_version}/configure" \
--prefix="$$$${pkgidir}" \
--host=$(host) \
--build=$(build) \
$$$${pkgcfg} CFLAGS=\"-mms-bitfields $$$${pkgextracflags}\";\
shopt -s nullglob; \
for pfile in "$$$${pkgpbdir}"/*.postcfg \
"$$$${pkgpdir}"/*.postcfg ; do \
(cd "$$$${pkgsdir}"; "$$$${pfile}") \
done; \
for pfile in "$$$${pkgpbdir}"/*.postcfg-build \
"$$$${pkgpdir}"/*.postcfg-build ; do \
(cd "$$$${pkgbdir}"; "$$$${pfile}") \
done;) && \
touch stamps/stamp-$(1)-02-configure
stamps/stamp-$(1)-03-make: stamps/stamp-$(1)-02-configure
($(call SETVARS,$(1)); \
cd "$$$${pkgbdir}"; \
test -n "$$$${pkgmkdir}" && cd "$$$${pkgmkdir}"; \
$(MAKE) $(AM_MAKEFLAGS) $(GPG4WIN_PARALLEL) $$$${pkgmkargs})
touch stamps/stamp-$(1)-03-make
# Note that post_install must come last because it may be empty and
# "; ;" is a syntax error.
stamps/stamp-$(1)-04-install: stamps/stamp-$(1)-03-make
($(call SETVARS,$(1)); \
cd "$$$${pkgbdir}"; \
cd "$$$${pkgmkdir_inst}"; \
$(MAKE) $(AM_MAKEFLAGS) $$$${pkgmkargs_inst} install; \
$(call STRIP_macro,"$$$${pkgidir}"); \
rm -f "$$$${pkgidir}/share/info/dir"; \
$(call gpg4win_pkg_$(call FROB_macro,$(1))_post_install))
touch stamps/stamp-$(1)-04-install
stamps/stamp-$(1)-05-stow: stamps/stamp-$(1)-04-install
($(call SETVARS,$(1)); \
cd $(ipdir); \
$(STOW) "$$$${pkg_version}")
touch stamps/stamp-$(1)-05-stow
stamps/stamp-final-$(1): stamps/stamp-$(1)-05-stow
touch stamps/stamp-final-$(1)
.PHONY : clean-$(1)
clean-$(1):
($(call SETVARS,$(1)); \
(cd $(ipdir) && \
($(STOW) -D "$$$${pkg_version}"; \
rm -fR "$$$${pkg_version}")); \
rm -fR "$$$${pkgsdir}" "$$$${pkgbdir}")
rm -f stamps/stamp-final-$(1) stamps/stamp-$(1)-*
endef
define SPKG_template
$(if $(filter-out no, $(call GETVAR,gpg4win_pkg_$(1))),
$(call SPKG_template_,$1))
endef
# Template for source packages using only make and no build
# directory.
define MPKG_template_
pkg_files += $(call GETVAR,gpg4win_pkg_$(1))
stamps/stamp-$(1)-00-unpack: stamps/stamp-directories $(call GETDEPS,$(1))
(cd $(bdir); \
$(call SETVARS,$(1)); \
$(call DEFLATE_macro,$$$${pkg}))
touch stamps/stamp-$(1)-00-unpack
stamps/stamp-$(1)-01-patch: stamps/stamp-$(1)-00-unpack
(shopt -s nullglob; \
$(call SETVARS,$(1)); \
for pfile in "$$$${pkgpbdir}"/*.patch "$$$${pkgpdir}"/*.patch ; do \
(cd "$$$${pkgsdir}"; "$$$${pfile}") \
done)
touch stamps/stamp-$(1)-01-patch
stamps/stamp-$(1)-03-make: stamps/stamp-$(1)-01-patch
($(call SETVARS,$(1)); \
cd "$$$${pkgsdir}"; \
test -n "$$$${pkgmkdir}" && cd "$$$${pkgmkdir}"; \
$(MAKE) $(AM_MAKEFLAGS) $$$${pkgmkargs})
touch stamps/stamp-$(1)-03-make
stamps/stamp-$(1)-04-install: stamps/stamp-$(1)-03-make
($(call SETVARS,$(1)); \
cd "$$$${pkgsdir}"; \
$(MAKE) $(AM_MAKEFLAGS) $$$${pkgmkargs_inst} install; \
$(call STRIP_macro,"$$$${pkgidir}"); \
$(call gpg4win_pkg_$(call FROB_macro,$(1))_post_install))
touch stamps/stamp-$(1)-04-install
stamps/stamp-$(1)-05-stow: stamps/stamp-$(1)-04-install
($(call SETVARS,$(1)); \
cd $(ipdir); \
$(STOW) "$$$${pkg_version}")
touch stamps/stamp-$(1)-05-stow
stamps/stamp-final-$(1): stamps/stamp-$(1)-05-stow
touch stamps/stamp-final-$(1)
.PHONY : clean-$(1)
clean-$(1):
($(call SETVARS,$(1)); \
(cd $(ipdir) && \
($(STOW) -D "$$$${pkg_version}"; \
rm -fR "$$$${pkg_version}")); \
rm -fR "$$$${pkgsdir}")
rm -f stamps/stamp-final-$(1) stamps/stamp-$(1)-*
endef
define MPKG_template
$(if $(filter-out no, $(call GETVAR,gpg4win_pkg_$(1))),
$(call MPKG_template_,$1))
endef
# Template for binary packages.
define BPKG_template_
pkg_files += $(call GETVAR,gpg4win_pkg_$(1))
pkg_files += $(call GETVAR,gpg4win_pkg_$(1)_dev)
stamps/stamp-$(1)-00-install: stamps/stamp-directories $(call GETDEPS,$(1))
($(call SETVARS,$(1)); \
$(MKDIR) "$$$${pkgidir}"; \
cd $$$${pkgidir}; \
$(call DEFLATE_macro,$$$${pkg}))
touch stamps/stamp-$(1)-00-install
# Note that post_install must come last because it may be empty and
# "; ;" is a syntax error.
stamps/stamp-$(1)-01-install-dev: stamps/stamp-$(1)-00-install
($(call SETVARS,$(1)); \
$(MKDIR) "$$$${pkgidir_dev}"; \
(cd $$$${pkgidir_dev}; \
$(call DEFLATE_macro,$$$${pkg_dev})); \
$(call gpg4win_pkg_$(call FROB_macro,$(1))_post_install))
touch stamps/stamp-$(1)-01-install-dev
stamps/stamp-$(1)-02-stow: stamps/stamp-$(1)-01-install-dev
($(call SETVARS,$(1)); \
cd $(ipdir); \
$(STOW) "$$$${pkg_version}")
touch stamps/stamp-$(1)-02-stow
stamps/stamp-$(1)-03-stow-dev: stamps/stamp-$(1)-02-stow
($(call SETVARS,$(1)); \
cd $(ipdir); \
$(STOW) "$$$${pkg_version_dev}")
touch stamps/stamp-$(1)-03-stow-dev
stamps/stamp-final-$(1): stamps/stamp-$(1)-03-stow-dev
touch stamps/stamp-final-$(1)
.PHONY : clean-$(1)
clean-$(1):
($(call SETVARS,$(1)); \
cd $(ipdir) && \
($(STOW) -D "$$$${pkg_version}"; \
$(STOW) -D "$$$${pkg_version_dev}"; \
rm -fR "$$$${pkg_version}" "$$$${pkg_version_dev}"))
rm -f stamps/stamp-final-$(1) stamps/stamp-$(1)-*
endef
define BPKG_template
$(if $(filter-out no, $(call GETVAR,gpg4win_pkg_$(1))),
$(call BPKG_template_,$1))
endef
# Template for qt packages.
define QTPKG_template_
pkg_files += $(call GETVAR,gpg4win_pkg_$(1))
stamps/stamp-$(1)-00-unpack: stamps/stamp-directories $(call GETDEPS,$(1))
(cd $(bdir); \
$(call SETVARS,$(1)); \
$(call DEFLATE_macro,$$$${pkg}))
touch stamps/stamp-$(1)-00-unpack
stamps/stamp-$(1)-01-patch: stamps/stamp-$(1)-00-unpack
(shopt -s nullglob; \
$(call SETVARS,$(1)); \
for pfile in "$$$${pkgpbdir}"/*.patch "$$$${pkgpdir}"/*.patch ; do \
(cd "$$$${pkgsdir}"; "$$$${pfile}") \
done)
touch stamps/stamp-$(1)-01-patch
stamps/stamp-$(1)-02-configure: stamps/stamp-$(1)-01-patch
($(call SETVARS,$(1)); \
mkdir "$$$${pkgbdir}"; \
cd "$$$${pkgbdir}"; \
$$$${pkgcfg}) && \
touch stamps/stamp-$(1)-02-configure
stamps/stamp-$(1)-03-make: stamps/stamp-$(1)-02-configure
($(call SETVARS,$(1)); \
cd "$$$${pkgbdir}"; \
test -n "$$$${pkgmkdir}" && cd "$$$${pkgmkdir}"; \
$(MAKE) $(AM_MAKEFLAGS) $(GPG4WIN_PARALLEL) $$$${pkgmkargs})
touch stamps/stamp-$(1)-03-make
# Note that post_install must come last because it may be empty and
# "; ;" is a syntax error.
stamps/stamp-$(1)-04-install: stamps/stamp-$(1)-03-make
($(call SETVARS,$(1)); \
$(call gpg4win_pkg_$(call FROB_macro,$(1))_post_install))
touch stamps/stamp-$(1)-04-install
stamps/stamp-$(1)-05-stow: stamps/stamp-$(1)-04-install
($(call SETVARS,$(1)); \
cd $(ipdir); \
$(STOW) "$$$${pkg_version}")
touch stamps/stamp-$(1)-05-stow
stamps/stamp-final-$(1): stamps/stamp-$(1)-05-stow
touch stamps/stamp-final-$(1)
.PHONY : clean-$(1)
clean-$(1):
($(call SETVARS,$(1)); \
(cd $(ipdir) && \
($(STOW) -D "$$$${pkg_version}"; \
rm -fR "$$$${pkg_version}")); \
rm -fR "$$$${pkgsdir}" "$$$${pkgbdir}")
rm -f stamps/stamp-final-$(1) stamps/stamp-$(1)-*
endef
define QTPKG_template
$(if $(filter-out no, $(call GETVAR,gpg4win_pkg_$(1))),
$(call QTPKG_template_,$1))
endef
# Template for internal packages.
define IPKG_template
stamps/stamp-final-$(1): stamps/stamp-directories $(call GETDEPS,$(1))
touch stamps/stamp-final-$(1)
endef
# Template for README files
# (The final awk command converts the file endings).
define README_template
README.$(1).txt : versioninfo.txt NEWS.tmp $(top_srcdir)/doc/README.$(1).txt \
COMPONENTS-list.tmp $(top_srcdir)/doc/beta-warning.txt
sed -e '/^;.*/d;/!VERSIONINFO!/{r versioninfo.txt' -e 'd;}' \
-e '/!NEWSFILE!/{r NEWS.tmp' -e 'd;}' \
-e '/!NEWSFILE!/{r NEWS.tmp' -e 'd;}' \
-e '/!COMPONENTS!/{r COMPONENTS-list.tmp' -e 'd;}' \
-e '/!PKG-COPYRIGHT!/{r $(top_srcdir)/doc/pkg-copyright.txt' -e 'd;}' \
-e 's,!VERSION!,$(VERSION),g' \
-e 's,!BUILD_ISODATE!,$(BUILD_ISODATE),g' \
< $(top_srcdir)/doc/README.$(1).txt \
| (if echo "$(VERSION)" | egrep 'svn|rc|beta|git' >/dev/null; then \
sed -e '/!BETA-WARNING!/{r $(top_srcdir)/doc/beta-warning.txt' \
-e 'd;}'; else sed -e 's,!BETA-WARNING!,,g'; fi) \
| awk '{printf "%s\r\n", $$$$0}' >README.$(1).txt
endef
define HOWTO_template
HOWTO-$(1).$(2).txt : $(top_srcdir)/doc/HOWTO-$(1).$(2).txt
sed -e '/^;.*/d' \
-e 's,!VERSION!,$(VERSION),g' \
-e 's,!BUILD_ISODATE!,$(BUILD_ISODATE),g' \
< $(top_srcdir)/doc/HOWTO-$(1).$(2).txt \
| awk '{printf "%s\r\n", $$$$0}' > HOWTO-$(1).$(2).txt
endef
# Special Template for boost.
define BOOST_template_
pkg_files += $(call GETVAR,gpg4win_pkg_$(1))
stamps/stamp-$(1)-00-unpack: stamps/stamp-directories $(call GETDEPS,$(1))
(cd $(bdir); \
$(call SETVARS,$(1)); \
$(call DEFLATE_macro,$$$${pkg}))
touch stamps/stamp-$(1)-00-unpack
stamps/stamp-$(1)-01-patch: stamps/stamp-$(1)-00-unpack
(shopt -s nullglob; \
$(call SETVARS,$(1)); \
for pfile in "$$$${pkgpbdir}"/*.patch "$$$${pkgpdir}"/*.patch ; do \
(cd "$$$${pkgsdir}"; "$$$${pfile}") \
done)
touch stamps/stamp-$(1)-01-patch
stamps/stamp-$(1)-02-build: stamps/stamp-$(1)-01-patch
($(call SETVARS,$(1)); \
cd $$$${pkgsdir}/tools/build/; \
./bootstrap.sh; \
cd $$$${pkgsdir}; \
echo "using gcc : mxe : $(host)-g++ : <rc>$(host)-windres <archiver>$(host)-ar <ranlib>$(host)-ranlib ;" > "user-config.jam"; \
./tools/build/b2 \
-a \
-q \
'$(GPG4WIN_PARALLEL)' \
--ignore-site-config \
--user-config=user-config.jam \
abi=ms \
address-model=32 \
architecture=x86 \
binary-format=pe \
link=shared \
target-os=windows \
threadapi=win32 \
threading=multi \
variant=release \
toolset=gcc-mxe \
cxxflags=-std=gnu++98 \
--layout=tagged \
--disable-icu \
--without-mpi \
--without-python \
--prefix=$$$${pkgidir} \
--exec-prefix=$$$${pkgidir}/bin \
--libdir=$$$${pkgidir}/lib \
--includedir=$$$${pkgidir}/include \
-sEXPAT_INCLUDE='$(idir)/include' \
-sEXPAT_LIBPATH='$(idir)/lib' \
-sBZIP2_INCLUDE='$(idir)/include' \
-sBZIP2_LIBPATH='$(idir)/lib' \
install) && \
touch stamps/stamp-$(1)-02-build
stamps/stamp-$(1)-03-stow: stamps/stamp-$(1)-02-build
($(call SETVARS,$(1)); \
cd $(ipdir); \
$(STOW) "$$$${pkg_version}")
touch stamps/stamp-$(1)-03-stow
stamps/stamp-final-$(1): stamps/stamp-$(1)-03-stow
touch stamps/stamp-final-$(1)
.PHONY : clean-$(1)
clean-$(1):
($(call SETVARS,$(1)); \
(cd $(ipdir) && \
($(STOW) -D "$$$${pkg_version}"; \
rm -fR "$$$${pkg_version}")); \
rm -fR "$$$${pkgsdir}" "$$$${pkgbdir}")
rm -f stamps/stamp-final-$(1) stamps/stamp-$(1)-*
endef
# Template for source packages of KDE software
define KDEPKG_template_
pkg_files += $(call GETVAR,gpg4win_pkg_$(1))
stamps/stamp-$(1)-00-unpack: stamps/stamp-directories $(call GETDEPS,$(1))
(cd $(bdir); \
$(call SETVARS,$(1)); \
$(call DEFLATE_macro,$$$${pkg}))
touch stamps/stamp-$(1)-00-unpack
stamps/stamp-$(1)-01-patch: stamps/stamp-$(1)-00-unpack
(shopt -s nullglob; \
$(call SETVARS,$(1)); \
+ cd "$$$${pkgsdir}"; \
+ sed -i 's/set(KF5_VERSION.*)/set(KF5_VERSION "5.30.0")/' CMakeLists.txt; \
+ sed -i 's/set(KMIME_VERSION.*)/set(KMIME_VERSION "5.2.40")/' CMakeLists.txt; \
+ sed -i 's/set(LIBKLEO_VERSION.*)/set(LIBKLEO_VERSION "5.4.40")/' CMakeLists.txt; \
+ sed -i 's/set(QT_REQUIRED_VERSION.*)/set(QT_REQUIRED_VERSION "5.7.0")/' CMakeLists.txt; \
+ sed -i 's/set(GPGME_REQUIRED_VERSION.*)/set(GPGME_REQUIRED_VERSION "1.8.0")/' CMakeLists.txt; \
for pfile in "$$$${pkgpbdir}"/*.patch "$$$${pkgpdir}"/*.patch ; do \
(cd "$$$${pkgsdir}"; "$$$${pfile}") \
done)
touch stamps/stamp-$(1)-01-patch
stamps/stamp-$(1)-02-configure: stamps/stamp-$(1)-01-patch
($(call SETVARS,$(1)); \
mkdir "$$$${pkgbdir}"; \
cd "$$$${pkgbdir}"; \
cmake \
-DCMAKE_INSTALL_PREFIX="$$$${pkgidir}" \
-DCMAKE_PREFIX_PATH="$$$${pkgidir}" \
-DCMAKE_TOOLCHAIN_FILE=$(abs_top_srcdir)/src/toolchain.cmake \
-DKDE_INSTALL_DATADIR="$$$${pkgidir}/share" \
-DBUILD_TESTING=False \
$$$${pkgcfg} $$$${pkgextracflags} "../$$$${pkg_version}") && \
touch stamps/stamp-$(1)-02-configure
stamps/stamp-$(1)-03-make: stamps/stamp-$(1)-02-configure
($(call SETVARS,$(1)); \
cd "$$$${pkgbdir}"; \
test -n "$$$${pkgmkdir}" && cd "$$$${pkgmkdir}"; \
$(MAKE) $(AM_MAKEFLAGS) $(GPG4WIN_PARALLEL) $$$${pkgmkargs})
touch stamps/stamp-$(1)-03-make
# Note that post_install must come last because it may be empty and
# "; ;" is a syntax error.
stamps/stamp-$(1)-04-install: stamps/stamp-$(1)-03-make
($(call SETVARS,$(1)); \
cd "$$$${pkgbdir}"; \
cd "$$$${pkgmkdir_inst}"; \
$(MAKE) $(AM_MAKEFLAGS) $$$${pkgmkargs_inst} install; \
$(call STRIP_macro,"$$$${pkgidir}"); \
$(call gpg4win_pkg_$(call FROB_macro,$(1))_post_install))
touch stamps/stamp-$(1)-04-install
stamps/stamp-$(1)-05-stow: stamps/stamp-$(1)-04-install
($(call SETVARS,$(1)); \
cd $(ipdir); \
$(STOW) "$$$${pkg_version}")
touch stamps/stamp-$(1)-05-stow
stamps/stamp-final-$(1): stamps/stamp-$(1)-05-stow
touch stamps/stamp-final-$(1)
.PHONY : clean-$(1)
clean-$(1):
($(call SETVARS,$(1)); \
(cd $(ipdir) && \
($(STOW) -D "$$$${pkg_version}"; \
rm -fR "$$$${pkg_version}")); \
rm -fR "$$$${pkgsdir}" "$$$${pkgbdir}")
rm -f stamps/stamp-final-$(1) stamps/stamp-$(1)-*
endef
define KDEPKG_template
$(if $(filter-out no, $(call GETVAR,gpg4win_pkg_$(1))),
$(call KDEPKG_template_,$1))
endef
# Insert the template for each source package.
$(foreach spkg, $(gpg4win_spkgs), $(eval $(call SPKG_template,$(spkg))))
# Insert the template for each gpgEx architecture package.
$(foreach expkg, $(gpg4win_expkgs), $(eval $(call EXPKG_template,$(expkg))))
# Insert the template for each make only source package.
$(foreach mpkg, $(gpg4win_mpkgs), $(eval $(call MPKG_template,$(mpkg))))
# Insert the template for each binary package.
$(foreach bpkg, $(gpg4win_bpkgs), $(eval $(call BPKG_template,$(bpkg))))
# Insert the template for each internal package.
$(foreach ipkg, $(gpg4win_ipkgs), $(eval $(call IPKG_template,$(ipkg))))
# Insert the template for the README and HOWTO files.
$(foreach rll, $(gpg4win_readme_ll), $(eval $(call README_template,$(rll))))
# Insert the template for KDE packages.
$(foreach kdepkg, $(gpg4win_kdepkgs), $(eval $(call KDEPKG_template,$(kdepkg))))
# Insert the template for qt packages.
$(foreach qtpkg, $(gpg4win_qtpkgs), $(eval $(call QTPKG_template,$(qtpkg))))
$(foreach rll, $(gpg4win_howto_smime_ll), \
$(eval $(call HOWTO_template,SMIME,$(rll))))
$(eval $(call BOOST_template_,boost))
stamps/stamp-final: stamps/stamp-directories
stamps/stamp-final: $(addprefix stamps/stamp-final-,$(gpg4win_build_list)) \
$(addprefix stamps/stamp-final-ex-,$(gpg4win_build_ex_list))
touch stamps/stamp-final
$(bdir)/versioninfo.txt: stamps/stamp-final
touch $(bdir)/versioninfo.txt
all-gpg4win: stamps/stamp-final
# Just to check if we catched all stamps.
clean-stamps:
$(RM) -fR $(stamps)
clean-gpg4win:
$(RM) -fR playground stamps
.PHONY : all-gpg4win clean-stamps clean-gpg4win
# @emacs_local_vars_begin@
# @emacs_local_vars_read_only@
# @emacs_local_vars_end@
File Metadata
Details
Attached
Mime Type
text/x-diff
Expires
Sat, Apr 25, 3:24 PM (6 h, 49 s)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
bc/ab/fc396dd452dbfab6346cfde06a2f
Attached To
rW Gpg4win
Event Timeline
Log In to Comment