Fix uninstall of repackaged jars
[cc0/argeo-build.git] / common.mk
index 31177befd566a87b28d09d4f72d355e8135b502d..07f2e9da3cd6fca17d966140ce1a0cf6bac52c06 100644 (file)
--- a/common.mk
+++ b/common.mk
@@ -32,8 +32,26 @@ KNOWN_ARCHS ?= x86_64 aarch64
 TARGET_OS ?= linux
 TARGET_ARCH ?= $(shell uname -m)
 
-TARGET_OS_CATEGORY_PREFIX=lib/linux
+TARGET_OS_CATEGORY_PREFIX=lib/$(TARGET_OS)
 TARGET_ARCH_CATEGORY_PREFIX=$(TARGET_OS_CATEGORY_PREFIX)/$(TARGET_ARCH)
 PORTABLE_CATEGORIES=$(filter-out lib/%, $(CATEGORIES))
 ARCH_CATEGORIES=$(filter $(TARGET_ARCH_CATEGORY_PREFIX)/%, $(CATEGORIES))
 OS_CATEGORIES=$(filter-out $(foreach arch, $(KNOWN_ARCHS), $(TARGET_OS_CATEGORY_PREFIX)/$(arch)/%), $(filter $(TARGET_OS_CATEGORY_PREFIX)/%, $(CATEGORIES)))
+
+## Utilities
+# Install to a target directory without executable bit
+INSTALL=install -m644 -D --target-directory
+# Always try copy-on-write
+COPY=--reflink=auto
+# Recursively delete directories
+RMDIR=$(RM) -r
+
+# Make variables used to replace spaces by a separator, typically in order to generate classpaths
+# for example: CLASSPATH = $(subst $(space),$(pathsep),$(strip $(JARS)))
+null  :=
+space := $(null) #
+pathsep := :
+define LF
+
+$(null)
+endef