diff options
author | Boris Nagaev <bnagaev@gmail.com> | 2016-01-05 18:20:43 (GMT) |
---|---|---|
committer | Boris Nagaev <bnagaev@gmail.com> | 2016-01-08 12:39:41 (GMT) |
commit | efc287a8d99f35176daf79af6ccd174eed8acd36 (patch) | |
tree | 72226e316daed57e245695db546e287e4af66de1 /Makefile | |
parent | adb07e2153696a9ef4c9b4a8cc931054e0788fdf (diff) | |
download | mxe-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-- | Makefile | 85 |
1 files changed, 1 insertions, 84 deletions
@@ -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 |