5 kx #
5 kx # Download: http://www.gnu.org/prep/ftp.html
5 kx #
5 kx # You can use the generic url http://ftpmirror.gnu.org
5 kx # to automatically choose a nearby and up-to-date mirror.
5 kx #
5 kx # original url: http://ftp.gnu.org/gnu/binutils
5 kx #
5 kx
5 kx COMPONENT_TARGETS = $(TOOLCHAIN_NOARCH)
5 kx
5 kx
5 kx include ../../../build-system/config.mk
5 kx
5 kx
5 kx url = $(DOWNLOAD_SERVER)/sources/GNU/binutils
5 kx
9 kx versions = 2.40
5 kx
5 kx tarballs = $(addsuffix .tar.xz, $(addprefix binutils-, $(versions)))
5 kx sha1s = $(addsuffix .sha1sum, $(tarballs))
5 kx
9 kx patches = $(CURDIR)/patches/binutils-2.40-aarch64-ifunc.patch
9 kx patches += $(CURDIR)/patches/binutils-2.40-not-link-static-libstdc++.patch
9 kx patches += $(CURDIR)/patches/binutils-2.40-fname-in-error-messages.patch
9 kx patches += $(CURDIR)/patches/binutils-2.40-gold-i386-gnu-property-notes.patch
9 kx patches += $(CURDIR)/patches/binutils-2.40-gold-mismatched-section-flags.patch
9 kx patches += $(CURDIR)/patches/binutils-2.40-gold-warn-unsupported.patch
9 kx patches += $(CURDIR)/patches/binutils-2.40-readelf-other-sym-info.patch
9 kx patches += $(CURDIR)/patches/binutils-2.40-special-sections-in-groups.patch
9 kx patches += $(CURDIR)/patches/binutils-2.40-testsuite-failures.patch
5 kx
9 kx patches += $(CURDIR)/patches/binutils-2.40-cleansweep.patch
9 kx patches += $(CURDIR)/patches/binutils-2.40-copy-osabi.patch
9 kx patches += $(CURDIR)/patches/binutils-2.40-export-demangle.patch
9 kx patches += $(CURDIR)/patches/binutils-2.40-ldforcele.patch
9 kx patches += $(CURDIR)/patches/binutils-2.40-libtool-lib64.patch
9 kx patches += $(CURDIR)/patches/binutils-2.40-no-config-check.patch
9 kx patches += $(CURDIR)/patches/binutils-2.40-sec-merge-emit.patch
5 kx
5 kx .NOTPARALLEL: $(patches)
5 kx
5 kx
5 kx BUILD_TARGETS = $(tarballs) $(sha1s) $(patches)
5 kx
5 kx
5 kx include ../../../build-system/core.mk
5 kx
5 kx
5 kx .PHONY: download_clean
5 kx
5 kx
5 kx $(tarballs):
5 kx @echo -e "\n======= Downloading source tarballs =======" ; \
5 kx for tarball in $(tarballs) ; do \
5 kx echo "$(url)/$$tarball" | xargs -n 1 -P 100 wget $(WGET_OPTIONS) - & \
5 kx done ; wait
5 kx
5 kx $(sha1s): $(tarballs)
5 kx @for sha in $@ ; do \
5 kx echo -e "\n======= Downloading '$$sha' signature =======\n" ; \
5 kx echo "$(url)/$$sha" | xargs -n 1 -P 100 wget $(WGET_OPTIONS) - & wait %1 ; \
5 kx touch $$sha ; \
5 kx echo -e "\n======= Check the '$$sha' sha1sum =======\n" ; \
5 kx sha1sum --check $$sha ; ret="$$?" ; \
5 kx if [ "$$ret" == "1" ]; then \
5 kx echo -e "\n======= ERROR: Bad '$$sha' sha1sum =======\n" ; \
5 kx exit 1 ; \
5 kx fi ; \
5 kx done
5 kx
5 kx $(patches): $(sha1s)
5 kx @echo -e "\n======= Create Patches =======\n" ; \
9 kx ( cd create-2.40-aarch64-ifunc-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-not-link-static-libstdc++-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-fname-in-error-messages-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-gold-i386-gnu-property-notes-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-gold-mismatched-section-flags-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-gold-warn-unsupported-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-readelf-other-sym-info-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-special-sections-in-groups-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-testsuite-failures-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-cleansweep-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-copy-osabi-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-export-demangle-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-ldforcele-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-libtool-lib64-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-no-config-check-patch ; ./create.patch.sh ) ; \
9 kx ( cd create-2.40-sec-merge-emit-patch ; ./create.patch.sh ) ; \
5 kx echo -e "\n"
5 kx
5 kx download_clean:
5 kx @rm -f $(tarballs) $(sha1s) $(patches)