From 040669db801a6d291ad4c56080d0d1d4919c1f4f Mon Sep 17 00:00:00 2001 From: Ivan Tatarinov Date: Fri, 11 Jun 2021 14:00:49 +0300 Subject: [PATCH] sdk, software: moved `.downloads` sub-directories into the single one at the root of the project --- .gitignore | 2 ++ sdk/Makefile | 8 +++++++- sdk/common.mk | 3 +++ sdk/src/.gitignore | 1 - sdk/src/sdcc.inc.mk | 17 ++++++++++------- sdk/src/sjasmplus-z00m128.inc.mk | 15 +++++++-------- sdk/src/sjasmplus.inc.mk | 20 ++++++++++---------- sdk/src/z88dk.inc.mk | 12 ++++++------ software/esxdos/.gitignore | 1 - software/esxdos/Makefile | 11 +++++------ 10 files changed, 50 insertions(+), 40 deletions(-) diff --git a/.gitignore b/.gitignore index 527337e..2184607 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ +.downloads + cores/Oric/build/COREn.ZX1 cores/Oric/build/ORIC.lso cores/Oric/build/ORIC.ngc diff --git a/sdk/Makefile b/sdk/Makefile index 70a1a30..44c0f9f 100644 --- a/sdk/Makefile +++ b/sdk/Makefile @@ -54,7 +54,13 @@ export BUILD export FORCEBUILD export FORCECLEAN -TARGETS=sjasmplus z88dk lodepng zx7b tools +TARGETS=\ + sjasmplus\ + sdcc\ + z88dk\ + lodepng\ + zx7b\ + tools .PHONY: all all: install diff --git a/sdk/common.mk b/sdk/common.mk index 0c9c987..23e6723 100644 --- a/sdk/common.mk +++ b/sdk/common.mk @@ -96,6 +96,9 @@ endif # !ZXSDK -include $(ZXSDK)/conf.mk +# Shared directory for downloaded files +DOWNLOADS ?= $(shell realpath $(ZXSDK)/../.downloads) + # C compiler ifeq ($(BUILD),mingw32) CC = i686-w64-mingw32-gcc diff --git a/sdk/src/.gitignore b/sdk/src/.gitignore index 1b0fd50..4551e25 100644 --- a/sdk/src/.gitignore +++ b/sdk/src/.gitignore @@ -2,7 +2,6 @@ # # SPDX-License-Identifier: CC0-1.0 -.downloads sdcc sjasmplus sjasmplus-z00m128 diff --git a/sdk/src/sdcc.inc.mk b/sdk/src/sdcc.inc.mk index 0c48a45..d4ac109 100644 --- a/sdk/src/sdcc.inc.mk +++ b/sdk/src/sdcc.inc.mk @@ -6,19 +6,19 @@ # # SPDX-License-Identifier: GPL-3.0-or-later -.downloads/sdcc: +$(DOWNLOADS)/sdcc: mkdir -p $@ .PHONY: $(foreach t,build install uninstall clean distclean,$(t)-sdcc) ifeq ($(_DoBuild),1) -SDCC_ARCHIVE = .downloads/sdcc/sdcc-src-4.1.0.tar.bz2 +SDCC_ARCHIVE = $(DOWNLOADS)/sdcc/sdcc-src-4.1.0.tar.bz2 SDCC_ARCHIVE_SHA256 = 81edf776d5a2dc61a4b5c3408929db7b25874d69c46e4a71b116be1322fd533f SDCC_ARCHIVE_TYPE = .tar.bz2 SDCC_ARCHIVE_SUBDIR = sdcc -.downloads/sdcc/sdcc-src-4.1.0.tar.bz2: | .downloads/sdcc +$(DOWNLOADS)/sdcc/sdcc-src-4.1.0.tar.bz2: | $(DOWNLOADS)/sdcc wget -c https://sourceforge.net/projects/sdcc/files/sdcc/4.1.0/$(@F)/download -O $@ sdcc/.extracted: $(SDCC_ARCHIVE) @@ -45,6 +45,7 @@ clean-sdcc: | sdcc/.extracted sdcc.mk $(MAKE) -w -C sdcc -f ../sdcc.mk clean distclean-sdcc: + rm -rf $(DOWNLOADS)/sdcc rm -rf sdcc else # !_DoClean @@ -59,7 +60,7 @@ endif # _DoBuild ifeq ($(_UsePrecompiledOnWindows),1) -SDCC_ARCHIVE = .downloads/sdcc/sdcc-4.1.0-setup.exe +SDCC_ARCHIVE = $(DOWNLOADS)/sdcc/sdcc-4.1.0-setup.exe SDCC_ARCHIVE_SHA256 = cbf064c9f1a3f9a73db6d2c8ba3a43563fa3a2d2966f52cf5a571a3064222ed8 SDCC_ARCHIVE_TYPE = .7z SDCC_ARCHIVE_SUBDIR = . @@ -71,7 +72,7 @@ SDCC_SUBDIRS=\ lib\ non-free -.downloads/sdcc/sdcc-4.1.0-setup.exe: | .downloads/sdcc +$(DOWNLOADS)/sdcc/sdcc-4.1.0-setup.exe: | $(DOWNLOADS)/sdcc wget -c https://sourceforge.net/projects/sdcc/files/sdcc-win32/4.1.0/$(@F)/download -O $@ sdcc/.extracted: $(SDCC_ARCHIVE) @@ -112,10 +113,12 @@ install-sdcc: | sdcc/.extracted uninstall-sdcc: test '$(SDCCHOME)' = . || rm -rf $(SDCCHOME) -clean-sdcc\ -distclean-sdcc: +clean-sdcc: rm -rf sdcc +distclean-sdcc: clean-sdcc + rm -rf $(DOWNLOADS)/sdcc + else # !_DoClean uninstall-sdcc\ diff --git a/sdk/src/sjasmplus-z00m128.inc.mk b/sdk/src/sjasmplus-z00m128.inc.mk index b468b35..c164d6c 100644 --- a/sdk/src/sjasmplus-z00m128.inc.mk +++ b/sdk/src/sjasmplus-z00m128.inc.mk @@ -6,14 +6,14 @@ # # SPDX-License-Identifier: GPL-3.0-or-later -.downloads/sjasmplus-z00m128: +$(DOWNLOADS)/sjasmplus-z00m128: mkdir -p $@ .PHONY: $(foreach t,build install uninstall clean distclean,$(t)-sjasmplus) ifeq ($(_DoBuild),1) -SJASMPLUS_ARCHIVE = .downloads/sjasmplus-z00m128/v1.18.2.tar.gz +SJASMPLUS_ARCHIVE = $(DOWNLOADS)/sjasmplus-z00m128/v1.18.2.tar.gz SJASMPLUS_ARCHIVE_SHA256 = 114807bf53d3526b4d1ae7d40f3050b9ee98220df74931efc1e6d1fe5aba3d02 SJASMPLUS_ARCHIVE_TYPE = .tar.gz SJASMPLUS_ARCHIVE_SUBDIR = sjasmplus-1.18.2 @@ -30,7 +30,7 @@ sjasmplus-z00m128/.extracted: $(SJASMPLUS_ARCHIVE) --output $(@D) touch $@ -.downloads/sjasmplus-z00m128/v1.18.2.tar.gz: | .downloads/sjasmplus-z00m128 +$(DOWNLOADS)/sjasmplus-z00m128/v1.18.2.tar.gz: | $(DOWNLOADS)/sjasmplus-z00m128 wget -c https://github.com/z00m128/sjasmplus/archive/refs/tags/$(@F) -O $@ install-sjasmplus: | sjasmplus-z00m128/.extracted sjasmplus-z00m128.mk @@ -68,7 +68,7 @@ else $(warning Unsupported platform: "$(PROCESSOR_ARCHITECTURE)") endif -SJASMPLUS_ARCHIVE = .downloads/sjasmplus-z00m128/sjasmplus-1.18.2.win.zip +SJASMPLUS_ARCHIVE = $(DOWNLOADS)/sjasmplus-z00m128/sjasmplus-1.18.2.win.zip SJASMPLUS_ARCHIVE_SHA256 = 848bca2522d6febbf3e3c48c634731ecd61899166f5922ed15857e8063c3dc4b SJASMPLUS_ARCHIVE_TYPE = .zip SJASMPLUS_ARCHIVE_SUBDIR = sjasmplus-1.18.2.win @@ -82,7 +82,7 @@ sjasmplus-z00m128/.extracted: $(SJASMPLUS_ARCHIVE) --output $(@D) touch $@ -.downloads/sjasmplus-z00m128/sjasmplus-1.18.2.win.zip: | .downloads/sjasmplus-z00m128 +$(DOWNLOADS)/sjasmplus-z00m128/sjasmplus-1.18.2.win.zip: | $(DOWNLOADS)/sjasmplus-z00m128 wget -c https://github.com/z00m128/sjasmplus/releases/download/v1.18.2/$(@F) -O $@ install-sjasmplus: $(DESTDIR)$(bindir)/sjasmplus$(EXESUFFIX) @@ -108,9 +108,8 @@ endif # _UsePrecompiledOnWindows ifeq ($(_DoClean),1) distclean-sjasmplus: - rm -rf\ - .downloads/sjasmplus-z00m128\ - sjasmplus-z00m128 + rm -rf $(DOWNLOADS)/sjasmplus-z00m128 + rm -rf sjasmplus-z00m128 else # !_DoClean diff --git a/sdk/src/sjasmplus.inc.mk b/sdk/src/sjasmplus.inc.mk index e12279d..6ca992d 100644 --- a/sdk/src/sjasmplus.inc.mk +++ b/sdk/src/sjasmplus.inc.mk @@ -6,14 +6,14 @@ # # SPDX-License-Identifier: GPL-3.0-or-later -.downloads/sjasmplus: +$(DOWNLOADS)/sjasmplus: mkdir -p $@ .PHONY: $(foreach t,build install uninstall clean distclean,$(t)-sjasmplus) ifeq ($(_DoBuild),1) -SJASMPLUS_ARCHIVE = .downloads/sjasmplus/20190306.1.tar.gz +SJASMPLUS_ARCHIVE = $(DOWNLOADS)/sjasmplus/20190306.1.tar.gz SJASMPLUS_ARCHIVE_SHA256 = f3f6d28af19880ed2cb427b6b427e9bd42371929c7d263dac840fb71de1302d6 SJASMPLUS_ARCHIVE_TYPE = .tar.gz SJASMPLUS_ARCHIVE_SUBDIR = sjasmplus-20190306.1 @@ -30,7 +30,7 @@ sjasmplus/.extracted: $(SJASMPLUS_ARCHIVE) --output $(@D) touch $@ -.downloads/sjasmplus/20190306.1.tar.gz: | .downloads/sjasmplus +$(DOWNLOADS)/sjasmplus/20190306.1.tar.gz: | $(DOWNLOADS)/sjasmplus wget -c https://github.com/sjasmplus/sjasmplus/archive/refs/tags/$(@F) -O $@ install-sjasmplus: | sjasmplus/.extracted sjasmplus.mk @@ -62,23 +62,23 @@ build-sjasmplus: sjasmplus/sjasmplus$(EXESUFFIX) sjasmplus/sjasmplus$(EXESUFFIX): | sjasmplus/.extracted ifeq ($(PROCESSOR_ARCHITECTURE),X86) - SJASMPLUS_ARCHIVE = .downloads/sjasmplus/sjasmplus-win32-20190306.1.7z + SJASMPLUS_ARCHIVE = $(DOWNLOADS)/sjasmplus/sjasmplus-win32-20190306.1.7z SJASMPLUS_ARCHIVE_SHA256 = c84731640930afc4f4cc3c0f30f891916b9b77d63dc0e4cfdcd226682b8545b1 SJASMPLUS_ARCHIVE_TYPE = .7z SJASMPLUS_ARCHIVE_SUBDIR = . else ifeq ($(PROCESSOR_ARCHITECTURE),AMD64) - SJASMPLUS_ARCHIVE = .downloads/sjasmplus/sjasmplus-win64-20190306.1.7z + SJASMPLUS_ARCHIVE = $(DOWNLOADS)/sjasmplus/sjasmplus-win64-20190306.1.7z SJASMPLUS_ARCHIVE_SHA256 = ef352b50ce7c9e9971c6fc3143e378d3e9f4069f11eb0c33022195c6e9b34fcb SJASMPLUS_ARCHIVE_TYPE = .7z SJASMPLUS_ARCHIVE_SUBDIR = . else ifeq ($(PROCESSOR_ARCHITECTURE),EM64T) - SJASMPLUS_ARCHIVE = .downloads/sjasmplus/sjasmplus-win64-20190306.1.7z + SJASMPLUS_ARCHIVE = $(DOWNLOADS)/sjasmplus/sjasmplus-win64-20190306.1.7z SJASMPLUS_ARCHIVE_SHA256 = ef352b50ce7c9e9971c6fc3143e378d3e9f4069f11eb0c33022195c6e9b34fcb SJASMPLUS_ARCHIVE_TYPE = .7z SJASMPLUS_ARCHIVE_SUBDIR = . else $(warning Unsupported platform: "$(PROCESSOR_ARCHITECTURE)") - SJASMPLUS_ARCHIVE = .downloads/sjasmplus/sjasmplus-win32-20190306.1.7z + SJASMPLUS_ARCHIVE = $(DOWNLOADS)/sjasmplus/sjasmplus-win32-20190306.1.7z SJASMPLUS_ARCHIVE_SHA256 = c84731640930afc4f4cc3c0f30f891916b9b77d63dc0e4cfdcd226682b8545b1 SJASMPLUS_ARCHIVE_TYPE = .7z SJASMPLUS_ARCHIVE_SUBDIR = . @@ -93,10 +93,10 @@ sjasmplus/.extracted: $(SJASMPLUS_ARCHIVE) --output $(@D) touch $@ -.downloads/sjasmplus/sjasmplus-win32-20190306.1.7z: | .downloads/sjasmplus +$(DOWNLOADS)/sjasmplus/sjasmplus-win32-20190306.1.7z: | $(DOWNLOADS)/sjasmplus wget -c https://github.com/sjasmplus/sjasmplus/releases/download/20190306.1/$(@F) -O $@ -.downloads/sjasmplus/sjasmplus-win64-20190306.1.7z: | .downloads/sjasmplus +$(DOWNLOADS)/sjasmplus/sjasmplus-win64-20190306.1.7z: | $(DOWNLOADS)/sjasmplus wget -c https://github.com/sjasmplus/sjasmplus/releases/download/20190306.1/$(@F) -O $@ install-sjasmplus: $(DESTDIR)$(bindir)/sjasmplus$(EXESUFFIX) @@ -122,7 +122,7 @@ endif # _UsePrecompiledOnWindows ifeq ($(_DoClean),1) distclean-sjasmplus: clean-sjasmplus - rm -rf .downloads/sjasmplus + rm -rf $(DOWNLOADS)/sjasmplus else # !_DoClean diff --git a/sdk/src/z88dk.inc.mk b/sdk/src/z88dk.inc.mk index 9b769ca..098022a 100644 --- a/sdk/src/z88dk.inc.mk +++ b/sdk/src/z88dk.inc.mk @@ -6,7 +6,7 @@ # # SPDX-License-Identifier: GPL-3.0-or-later -.downloads/z88dk: +$(DOWNLOADS)/z88dk: mkdir -p $@ .PHONY: $(foreach t,build install uninstall clean distclean,$(t)-z88dk) @@ -37,7 +37,7 @@ build-z88dk install-z88dk: z88dk/.done ifeq ($(_DoBuild),1) -Z88DK_ARCHIVE = .downloads/z88dk/z88dk-src-2.1.tgz +Z88DK_ARCHIVE = $(DOWNLOADS)/z88dk/z88dk-src-2.1.tgz Z88DK_ARCHIVE_SHA256 = f3579ee59b4af552721173165af38223b115ccb67179e79d2f3c0ae64338dc7c Z88DK_ARCHIVE_TYPE = .tar.gz Z88DK_ARCHIVE_SUBDIR = z88dk @@ -62,7 +62,7 @@ z88dk/.extracted: $(Z88DK_ARCHIVE) | z88dk.patch patch -N -p0 -s <$| || true touch $@ -.downloads/z88dk/z88dk-src-2.1.tgz: | .downloads/z88dk +$(DOWNLOADS)/z88dk/z88dk-src-2.1.tgz: | $(DOWNLOADS)/z88dk wget -c https://github.com/z88dk/z88dk/releases/download/v2.1/$(@F) -O $@ uninstall-z88dk:; @@ -91,7 +91,7 @@ else $(warning Unsupported platform: "$(PROCESSOR_ARCHITECTURE)") endif -Z88DK_ARCHIVE = .downloads/z88dk/z88dk-win32-2.1.zip +Z88DK_ARCHIVE = $(DOWNLOADS)/z88dk/z88dk-win32-2.1.zip Z88DK_ARCHIVE_SHA256 = f4abedfae429ea159e388b5c76758ace4dcb86e9a00dbd928862b0a30f6874d6 Z88DK_ARCHIVE_TYPE = .zip Z88DK_ARCHIVE_SUBDIR = z88dk @@ -105,7 +105,7 @@ z88dk/.done: $(Z88DK_ARCHIVE) --output $(@D) touch $@ -.downloads/z88dk/z88dk-win32-2.1.zip: | .downloads/z88dk +$(DOWNLOADS)/z88dk/z88dk-win32-2.1.zip: | $(DOWNLOADS)/z88dk wget -c https://github.com/z88dk/z88dk/releases/download/v2.1/$(@F) -O $@ uninstall-z88dk:; @@ -125,7 +125,7 @@ endif # _UsePrecompiledOnWindows ifeq ($(_DoClean),1) distclean-z88dk: clean-z88dk - rm -rf .downloads/z88dk + rm -rf $(DOWNLOADS)/z88dk else # !_DoClean diff --git a/software/esxdos/.gitignore b/software/esxdos/.gitignore index 14ef5a1..82e29a6 100644 --- a/software/esxdos/.gitignore +++ b/software/esxdos/.gitignore @@ -2,5 +2,4 @@ # # SPDX-License-Identifier: CC0-1.0 -.downloads build diff --git a/software/esxdos/Makefile b/software/esxdos/Makefile index 410f7cf..98d5028 100644 --- a/software/esxdos/Makefile +++ b/software/esxdos/Makefile @@ -109,8 +109,7 @@ SYSCONF_FILES=\ .PHONY: all all: build/.extracted -.downloads\ -.downloads/esxdos\ +$(DOWNLOADS)/esxdos\ build\ $(DESTDIR)$(prefix)\ $(DESTDIR)$(bindir)\ @@ -120,7 +119,7 @@ $(DESTDIR)$(sysconfdir)\ $(DESTDIR)$(tmpdir): mkdir -p $@ -ESXDOS_ARCHIVE = .downloads/esxdos/esxdos089.zip +ESXDOS_ARCHIVE = $(DOWNLOADS)/esxdos/esxdos089.zip ESXDOS_ARCHIVE_SHA256 = d455888361cd13d455e362a4c841452b6f4568d30f9069443044affdd40de9a4 ESXDOS_ARCHIVE_TYPE = .zip ESXDOS_ARCHIVE_SUBDIR = . @@ -134,7 +133,7 @@ build/.extracted: $(ESXDOS_ARCHIVE) | build --output $(@D) touch $@ -.downloads/esxdos/esxdos089.zip: | .downloads/esxdos +$(DOWNLOADS)/esxdos/esxdos089.zip: | $(DOWNLOADS)/esxdos wget -c http://www.esxdos.org/files/$(@F) -O $@ define install_root_rule = @@ -196,5 +195,5 @@ clean: rm -rf build/* .PHONY: distclean -distclean: - rm -rf .downloads build +distclean: clean + rm -rf $(DOWNLOADS)/esxdos