summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlejandro Colomar <alx@kernel.org>2024-02-08 19:13:03 +0100
committerAlejandro Colomar <alx@kernel.org>2024-02-08 19:13:11 +0100
commit55c891d30184a673a173f42d1e3e81110972a633 (patch)
treee5916a426d75892c255098a7e84ff5aada6521d9
parentffe0b61f01bb3c99dcb870c6ad0561691a420d5f (diff)
downloadliba2i-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--GNUmakefile4
-rw-r--r--share/mk/build-dev.mk34
-rw-r--r--share/mk/build-lib-static.mk44
-rw-r--r--share/mk/build-lib.mk6
-rw-r--r--share/mk/check.mk2
-rw-r--r--share/mk/install-lib.mk1
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