summaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
authorBoris Nagaev <bnagaev@gmail.com>2016-01-05 18:20:43 (GMT)
committerBoris Nagaev <bnagaev@gmail.com>2016-01-08 12:39:41 (GMT)
commitefc287a8d99f35176daf79af6ccd174eed8acd36 (patch)
tree72226e316daed57e245695db546e287e4af66de1 /Makefile
parentadb07e2153696a9ef4c9b4a8cc931054e0788fdf (diff)
downloadmxe-efc287a8d99f35176daf79af6ccd174eed8acd36.zip
mxe-efc287a8d99f35176daf79af6ccd174eed8acd36.tar.gz
mxe-efc287a8d99f35176daf79af6ccd174eed8acd36.tar.bz2
move patching functions and targets to patch.mk
See https://github.com/mxe/mxe/pull/1134#issuecomment-168873410 See https://github.com/mxe/mxe/pull/1134#issuecomment-169867926
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile85
1 files changed, 1 insertions, 84 deletions
diff --git a/Makefile b/Makefile
index e91f216..d18e4c0 100644
--- a/Makefile
+++ b/Makefile
@@ -798,87 +798,4 @@ versions.json: $(foreach PKG,$(PKGS), $(TOP_DIR)/src/$(PKG).mk)
# for patch-tool-mxe
-GIT_DIR = $(if $(patsubst .,,$($(1)_SUBDIR)) \
- ,$(GITS_DIR)/$($(1)_SUBDIR),$(GITS_DIR)/$(1))
-
-GIT_CMD = git \
- --work-tree='$(call GIT_DIR,$(1))' \
- --git-dir='$(call GIT_DIR,$(1))'/.git
-
-define INIT_GIT
- # unpack to gits/tmp/pkg
- rm -rf '$(GITS_DIR)/tmp'
- mkdir -p '$(GITS_DIR)/tmp/$(1)'
- cd '$(GITS_DIR)/tmp/$(1)' && $(call UNPACK_PKG_ARCHIVE,$(1))
- # if PKG_SUBDIR is ".", the following will move gits/tmp/pkg
- mv '$(abspath $(GITS_DIR)/tmp/$(1)/$($(1)_SUBDIR))' '$(call GIT_DIR,$(1))'
- rm -rf '$(GITS_DIR)/tmp'
- # initialize git
- $(call GIT_CMD,$(1)) init
- $(call GIT_CMD,$(1)) add -A
- $(call GIT_CMD,$(1)) commit -m "init"
- $(call GIT_CMD,$(1)) tag dist
-endef
-
-init-git-%: download-only-%
- $(if $(call set_is_member,$*,$(PKGS)), \
- $(if $(wildcard $(call GIT_DIR,$*)), \
- $(error $(call GIT_DIR,$*) already exists), \
- $(call INIT_GIT,$*)), \
- $(error Package $* not found in index.html))
-
-PATCH_NAME = 1-fixes
-
-# can't use PKG_PATCHES here, because it returns existing patches
-# while export-patch creates new patch
-PATCH_BY_NAME = $(patsubst %.mk,%-$(2).patch,$(PKG_MAKEFILES))
-
-define IMPORT_PATCH
- cd '$(call GIT_DIR,$(1))' \
- && cat '$(2)' \
- | sed '/^From/,$$ !d' \
- | sed s/'^From: MXE'/"From: fix@me"/'g;' \
- | $(call GIT_CMD,$(1)) am --keep-cr ;
-endef
-
-import-patch-%:
- $(if $(call set_is_member,$*,$(PKGS)), \
- $(if $(wildcard $(call GIT_DIR,$*)), \
- $(call IMPORT_PATCH,$*,$(call PATCH_BY_NAME,$*,$(PATCH_NAME))), \
- $(error $(call GIT_DIR,$*) does not exist)), \
- $(error Package $* not found in index.html))
-
-import-all-patches-%:
- $(if $(call set_is_member,$*,$(PKGS)), \
- $(if $(wildcard $(call GIT_DIR,$*)), \
- $(foreach PKG_PATCH,$(call PKG_PATCHES,$*), \
- $(call IMPORT_PATCH,$*,$(PKG_PATCH))), \
- $(error $(call GIT_DIR,$*) does not exist)), \
- $(error Package $* not found in index.html))
-
-define EXPORT_PATCH
- cd '$(call GIT_DIR,$(1))' \
- && ( \
- echo 'This file is part of MXE.'; \
- echo 'See index.html for further information.'; \
- echo ''; \
- echo 'Contains ad hoc patches for cross building.'; \
- echo ''; \
- $(call GIT_CMD,$(1)) format-patch \
- --no-numbered \
- -p \
- --no-signature \
- --stdout \
- --text \
- dist..HEAD \
- | sed 's/^From [0-9a-f]\{40\} /From 0000000000000000000000000000000000000000 /' \
- | sed 's/^index .......\.\......../index 1111111..2222222/' \
- ) > '$(PATCH_BY_NAME)'
-endef
-
-export-patch-%:
- $(if $(call set_is_member,$*,$(PKGS)), \
- $(if $(wildcard $(call GIT_DIR,$*)), \
- $(call EXPORT_PATCH,$*,$(PATCH_NAME)), \
- $(error $(call GIT_DIR,$*) does not exist)), \
- $(error Package $* not found in index.html))
+include patch.mk