diff options
author | Alejandro Colomar <alx@kernel.org> | 2024-02-08 19:13:03 +0100 |
---|---|---|
committer | Alejandro Colomar <alx@kernel.org> | 2024-02-08 19:13:11 +0100 |
commit | 55c891d30184a673a173f42d1e3e81110972a633 (patch) | |
tree | e5916a426d75892c255098a7e84ff5aada6521d9 | |
parent | ffe0b61f01bb3c99dcb870c6ad0561691a420d5f (diff) | |
download | liba2i-55c891d30184a673a173f42d1e3e81110972a633.tar.gz |
share/mk/: build-lib-static: Rename target and move to separate *.mk
For consistency with 'install-lib-static'.
Signed-off-by: Alejandro Colomar <alx@kernel.org>
-rw-r--r-- | GNUmakefile | 4 | ||||
-rw-r--r-- | share/mk/build-dev.mk | 34 | ||||
-rw-r--r-- | share/mk/build-lib-static.mk | 44 | ||||
-rw-r--r-- | share/mk/build-lib.mk | 6 | ||||
-rw-r--r-- | share/mk/check.mk | 2 | ||||
-rw-r--r-- | share/mk/install-lib.mk | 1 |
6 files changed, 53 insertions, 38 deletions
diff --git a/GNUmakefile b/GNUmakefile index 0ddd424..dd05db0 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -37,10 +37,10 @@ help: $(info ) $(info build-deps Build the .d files) $(info build-dev Wrapper for build-dev-* targets) - $(info build-dev-ar Build the static library) $(info build-dev-pc Build the pc(5) file) - $(info build-lib Alias for "build-lib-ld") + $(info build-lib Wrapper for build-lib-* targets) $(info build-lib-ld Build the shared library) + $(info build-lib-static Build the static library) $(info build-obj Alias for "build-obj-as") $(info build-obj-pch Precompile headers) $(info build-obj-cpp Preprocess source TUs) diff --git a/share/mk/build-dev.mk b/share/mk/build-dev.mk index df1f003..f586eeb 100644 --- a/share/mk/build-dev.mk +++ b/share/mk/build-dev.mk @@ -6,40 +6,16 @@ ifndef MAKEFILE_BUILD_DEV_INCLUDED MAKEFILE_BUILD_DEV_INCLUDED := 1 -include $(MAKEFILEDIR)/build.mk -include $(MAKEFILEDIR)/build-dev.mk -include $(MAKEFILEDIR)/build-obj.mk +include $(MAKEFILEDIR)/build-deps.mk include $(MAKEFILEDIR)/cmd.mk +include $(MAKEFILEDIR)/install.mk include $(MAKEFILEDIR)/src.mk include $(MAKEFILEDIR)/version.mk -DEFAULT_ARFLAGS := qcsDP -EXTRA_ARFLAGS := -ARFLAGS := $(DEFAULT_ARFLAGS) $(EXTRA_ARFLAGS) - - -AR := gcc-ar - - -_LIB_a := $(builddir)/$(libname).a _LIB_pc := $(builddir)/$(libname).pc -$(_LIB_a): %.a: $(_TU_o) $(MK) | $$(@D)/ - $(info AR $@) - $(CD) $(dir $@) && \ - for opt in g 0 1 2 s 3 fast; do \ - $(RM) $(notdir $*.O$$opt.a) 2>/dev/null ||:; \ - $(ECHO) $(patsubst $(builddir)/%,%,$(_TU_o)) \ - | $(SED) "s,.o\>,.O$$opt.o," \ - | $(XARGS) $(AR) $(ARFLAGS) $(notdir $*).O$$opt.a; \ - done - $(RM) $@ 2>/dev/null ||: - $(CD) $(dir $@)/ && \ - $(ECHO) $(patsubst $(builddir)/%,%,$(_TU_o)) \ - | $(XARGS) $(AR) $(ARFLAGS) $(notdir $@) - $(_LIB_pc_u): $(LIB_pc_u) $(MK) | $$(@D)/ $(CP) -T $< $@ @@ -55,17 +31,13 @@ ifneq ($(filter libdir=%,$(MAKEOVERRIDES)),) endif -.PHONY: build-dev-ar -build-dev-ar: $(_LIB_a) - @: - .PHONY: build-dev-pc build-dev-pc: $(_LIB_pc) @: .PHONY: build-dev -build-dev: build-dev-ar build-dev-pc +build-dev: build-dev-pc @: diff --git a/share/mk/build-lib-static.mk b/share/mk/build-lib-static.mk new file mode 100644 index 0000000..c6e683f --- /dev/null +++ b/share/mk/build-lib-static.mk @@ -0,0 +1,44 @@ +# Copyright 2022-2024 Alejandro Colomar <alx@kernel.org> +# SPDX-License-Identifier: LGPL-3.0-only WITH LGPL-3.0-linking-exception + + +ifndef MAKEFILE_BUILD_LIB_STATIC_INCLUDED +MAKEFILE_BUILD_LIB_STATIC_INCLUDED := 1 + + +include $(MAKEFILEDIR)/build.mk +include $(MAKEFILEDIR)/build-obj.mk +include $(MAKEFILEDIR)/cmd.mk +include $(MAKEFILEDIR)/version.mk + + +DEFAULT_ARFLAGS := qcsDP +EXTRA_ARFLAGS := +ARFLAGS := $(DEFAULT_ARFLAGS) $(EXTRA_ARFLAGS) +AR := gcc-ar + + +_LIB_a := $(builddir)/$(libname).a + + +$(_LIB_a): %.a: $(_TU_o) $(MK) | $$(@D)/ + $(info AR $@) + $(CD) $(dir $@) && \ + for opt in g 0 1 2 s 3 fast; do \ + $(RM) $(notdir $*.O$$opt.a) 2>/dev/null ||:; \ + $(ECHO) $(patsubst $(builddir)/%,%,$(_TU_o)) \ + | $(SED) "s,.o\>,.O$$opt.o," \ + | $(XARGS) $(AR) $(ARFLAGS) $(notdir $*).O$$opt.a; \ + done + $(RM) $@ 2>/dev/null ||: + $(CD) $(dir $@)/ && \ + $(ECHO) $(patsubst $(builddir)/%,%,$(_TU_o)) \ + | $(XARGS) $(AR) $(ARFLAGS) $(notdir $@) + + +.PHONY: build-lib-static +build-lib-static: $(_LIB_a) + @: + + +endif # include guard diff --git a/share/mk/build-lib.mk b/share/mk/build-lib.mk index 6a6dcf5..f935a92 100644 --- a/share/mk/build-lib.mk +++ b/share/mk/build-lib.mk @@ -26,6 +26,7 @@ DEFAULT_LDFLAGS += $(shell $(PKGCONF_CMD) --libs-only-L $(pc_reqs) $(HIDE_ERR)) DEFAULT_LDFLAGS += $(shell $(PKGCONF_CMD) --libs-only-other $(pc_reqs) $(HIDE_ERR)) EXTRA_LDFLAGS := LDFLAGS := $(DEFAULT_LDFLAGS) $(EXTRA_LDFLAGS) +LD := $(CC) $(CFLAGS) DEFAULT_LDLIBS := $(filter-out -la2i,$(shell $(PKGCONF_CMD) --libs-only-l $(pc_reqs) $(HIDE_ERR))) DEFAULT_LDLIBS += $(shell $(SED) -n '/^Libs.private: /s///p' $(LIB_pc_u)) @@ -33,9 +34,6 @@ EXTRA_LDLIBS := LDLIBS := $(DEFAULT_LDLIBS) $(EXTRA_LDLIBS) -LD := $(CC) $(CFLAGS) - - _LIB_so_v := $(builddir)/$(libname).so.$(DISTVERSION) @@ -54,7 +52,7 @@ build-lib-ld: $(_LIB_so_v) .PHONY: build-lib -build-lib: build-lib-ld +build-lib: build-lib-ld build-lib-static @: diff --git a/share/mk/check.mk b/share/mk/check.mk index 2433853..9c4aadd 100644 --- a/share/mk/check.mk +++ b/share/mk/check.mk @@ -6,7 +6,7 @@ ifndef MAKEFILE_CHECK_INCLUDED MAKEFILE_CHECK_INCLUDED := 1 -include $(MAKEFILEDIR)/build-dev.mk +include $(MAKEFILEDIR)/build-lib-static.mk include $(MAKEFILEDIR)/install-dev.mk include $(MAKEFILEDIR)/install-lib.mk include $(MAKEFILEDIR)/src.mk diff --git a/share/mk/install-lib.mk b/share/mk/install-lib.mk index 8d4e4fb..6c360c2 100644 --- a/share/mk/install-lib.mk +++ b/share/mk/install-lib.mk @@ -8,6 +8,7 @@ MAKEFILE_INSTALL_LIB_INCLUDED := 1 include $(MAKEFILEDIR)/build.mk include $(MAKEFILEDIR)/build-lib.mk +include $(MAKEFILEDIR)/build-lib-static.mk include $(MAKEFILEDIR)/cmd.mk include $(MAKEFILEDIR)/install.mk include $(MAKEFILEDIR)/src.mk |