diff options
author | Olliver Schinagl <oliver@schinagl.nl> | 2023-01-13 10:50:30 +0100 |
---|---|---|
committer | Olliver Schinagl <oliver@schinagl.nl> | 2023-01-17 21:01:54 +0100 |
commit | 62e150949fc01ae2327207fa98fae9c5cff6035c (patch) | |
tree | 0aa578f4e0c8ed504566474e763b28cdb04f58ed /tools | |
parent | 9a59bf35281a89e2a783127f16647d4fc07fcf7a (diff) | |
download | upstream-62e150949fc01ae2327207fa98fae9c5cff6035c.tar.gz upstream-62e150949fc01ae2327207fa98fae9c5cff6035c.tar.bz2 upstream-62e150949fc01ae2327207fa98fae9c5cff6035c.zip |
libdeflate: Avoid circular dependencies
CMake depends on (libdeflate-)gunzip, libdeflate depends on Cmake, so we
can't win.
Luckily libdeflate is _very_ easy to build, without any build system, so
lets just manually compile it and be done with it.
Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/Makefile | 3 | ||||
-rw-r--r-- | tools/libdeflate/Makefile | 17 |
2 files changed, 13 insertions, 7 deletions
diff --git a/tools/Makefile b/tools/Makefile index 7ca874aa91..7b3a8eb142 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -42,7 +42,6 @@ tools-y += findutils tools-y += firmware-utils tools-y += flex tools-y += gengetopt -tools-y += libdeflate tools-y += libressl tools-y += libtool tools-y += lzma @@ -98,7 +97,6 @@ $(curdir)/genext2fs/compile := $(curdir)/libtool/compile $(curdir)/gengetopt/compile := $(curdir)/libtool/compile $(curdir)/gmp/compile := $(curdir)/libtool/compile $(curdir)/isl/compile := $(curdir)/gmp/compile -$(curdir)/libdeflate/compile := $(curdir)/cmake/compile $(curdir)/liblzo/compile := $(curdir)/cmake/compile $(curdir)/libressl/compile := $(curdir)/pkgconf/compile $(curdir)/libtool/compile := $(curdir)/automake/compile $(curdir)/missing-macros/compile @@ -148,6 +146,7 @@ $(foreach tool, $(tools-y), $(if $(wildcard $(curdir)/$(tool)/patches),$(eval $( $(foreach tool, $(filter-out xz,$(tools-y)), $(eval $(curdir)/$(tool)/compile += $(curdir)/xz/compile)) # make any tool depend on the following to ensure that archives can be unpacked and patched properly +tools-core += libdeflate tools-core += patch tools-core += tar tools-core += xz diff --git a/tools/libdeflate/Makefile b/tools/libdeflate/Makefile index 53137e2dab..53a674440a 100644 --- a/tools/libdeflate/Makefile +++ b/tools/libdeflate/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libdeflate PKG_VERSION:=1.17 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=https://github.com/ebiggers/libdeflate.git PKG_SOURCE_PROTO:=git @@ -16,16 +16,23 @@ PKG_SOURCE_VERSION:=v$(PKG_VERSION) PKG_MIRROR_HASH:=ee5790cf3140aa6a2e0f0c400d4b32539f13cb270e9357135c51927ba3784dc7 include $(INCLUDE_DIR)/host-build.mk -include $(INCLUDE_DIR)/cmake.mk + +define Host/Compile + $(HOSTCC_NOCACHE) $(HOST_CFLAGS) $(HOST_LDFLAGS) \ + $(HOST_BUILD_DIR)/lib/*{,/*}.c \ + $(HOST_BUILD_DIR)/programs/{gzip,prog_util,tgetopt}.c \ + -o $(HOST_BUILD_DIR)/libdeflate-gzip +endef define Host/Install - $(INSTALL_BIN) $(HOST_BUILD_DIR)/programs/libdeflate-gzip $(STAGING_DIR_HOST)/bin/ + $(INSTALL_BIN) $(HOST_BUILD_DIR)/libdeflate-gzip $(STAGING_DIR_HOST)/bin/ $(LN) libdeflate-gzip $(STAGING_DIR_HOST)/bin/libdeflate-gunzip endef define Host/Uninstall - rm -f $(STAGING_DIR_HOST)/bin/libdeflate-gzip - rm -f $(STAGING_DIR_HOST)/bin/libdeflate-gunzip + $(RM) $(STAGING_DIR_HOST)/bin/libdeflate-gzip + $(RM) $(STAGING_DIR_HOST)/bin/libdeflate-gunzip + $(call Host/Uninstall/Default) endef $(eval $(call HostBuild)) |