]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#10516 slapd: force make to check dynamic backends 889/head
authorHoward Chu <hyc@openldap.org>
Mon, 1 Jun 2026 17:55:39 +0000 (18:55 +0100)
committerQuanah Gibson-Mount <quanah@openldap.org>
Thu, 4 Jun 2026 20:21:44 +0000 (20:21 +0000)
Also streamline build of static backends.

15 files changed:
build/mod.mk
servers/slapd/Makefile.in
servers/slapd/back-asyncmeta/Makefile.in
servers/slapd/back-dnssrv/Makefile.in
servers/slapd/back-ldap/Makefile.in
servers/slapd/back-ldif/Makefile.in
servers/slapd/back-mdb/Makefile.in
servers/slapd/back-meta/Makefile.in
servers/slapd/back-monitor/Makefile.in
servers/slapd/back-null/Makefile.in
servers/slapd/back-passwd/Makefile.in
servers/slapd/back-relay/Makefile.in
servers/slapd/back-sock/Makefile.in
servers/slapd/back-sql/Makefile.in
servers/slapd/back-wt/Makefile.in

index a50918a1848d2d69ad460f32ed627e1c78b45971..f616f3f1928671b730811fdeba6e7f895834d12e 100644 (file)
@@ -17,7 +17,7 @@
 #
 
 LIBRARY = $(LIBBASE).la
-LIBSTAT = lib$(LIBBASE).a
+LIBSTAT = libobj.a
 
 MKDEPFLAG = -l
 
index ffd0aba86142fffd3e4438639ad856646213d740..d21ff84309bb91b671bf083fb10e12b0b66ce5a2 100644 (file)
@@ -15,7 +15,7 @@
 
 SLAPTOOLS=slapadd slapcat slapdn slapindex slapmodify slappasswd slaptest slapauth slapacl slapschema
 PROGRAMS=slapd $(SLAPTOOLS)
-XPROGRAMS=sslapd libbackends.a .backend liboverlays.a
+XPROGRAMS=sslapd libbackends.a liboverlays.a
 XSRCS=version.c
 
 SUBDIRS=back-* slapi overlays pwmods
@@ -66,6 +66,7 @@ SLAP_DIR=
 SLAPD_STATIC_DEPENDS=@SLAPD_NO_STATIC@ libbackends.a liboverlays.a
 SLAPD_STATIC_BACKENDS=@SLAPD_STATIC_BACKENDS@
 SLAPD_DYNAMIC_BACKENDS=@SLAPD_DYNAMIC_BACKENDS@
+SLAPD_STATIC_TARGETS:=$(SLAPD_STATIC_BACKENDS:%=%/libobj.a)
 
 SLAPI_LIBS=@LIBSLAPI@ @SLAPI_LIBS@
 
@@ -273,9 +274,11 @@ slapd: $(SLAPD_DEPENDS) @LIBSLAPI@
 sslapd: version.o
        $(LTLINK) -static -o $@ $(OBJS) version.o $(LIBS) $(WRAP_LIBS)
 
-dummy $(SLAPD_DYNAMIC_BACKENDS): slapd
+dummy $(SLAPD_DYNAMIC_BACKENDS): slapd FORCE
        cd $@ && $(MAKE) $(MFLAGS) all
-       @touch $@
+
+$(SLAPD_STATIC_TARGETS): FORCE
+       cd $(@D) && $(MAKE) $(MFLAGS) all
 
 dynamic_overlays: slapd
        cd overlays && $(MAKE) $(MFLAGS) dynamic
@@ -287,23 +290,10 @@ dynamic_pwmods: slapd
 # In Windows, dynamic backends have to be built after slapd. For this
 # reason, we only build static backends now and dynamic backends later.
 #
-.backend: FORCE
-       @if test -n "$(SLAPD_STATIC_BACKENDS)"; then \
-           echo "building static backends..."; \
-           for i in XX $(SLAPD_STATIC_BACKENDS); do \
-               if test $$i != XX; then \
-                   echo " "; echo "  cd $$i && $(MAKE) $(MFLAGS) all"; \
-                   ( cd $$i && $(MAKE) $(MFLAGS) all ); \
-                   if test $$? != 0; then exit 1; fi; \
-               fi; \
-           done; \
-           echo " "; \
-       fi
-
-libbackends.a: .backend
+libbackends.a: $(SLAPD_STATIC_TARGETS)
        @$(RM) -r tmp
        @$(MKDIR) tmp
-       @-for i in back-*/*.a; do \
+       @-for i in $?; do \
                ( \
                  cd tmp; \
                  $(AR) x ../$$i; \
@@ -311,13 +301,12 @@ libbackends.a: .backend
                  for j in *.o; do \
                        mv $$j $${pre}$$j; \
                  done; \
-                 $(AR) ruv libbackends.a *.o 2>&1 | grep -v truncated; \
+                 $(AR) ruv ../libbackends.a *.o 2>&1 | grep -v truncated; \
                  $(RM) *.o __.SYMDEF  ________64ELEL_ ; \
                  echo "added backend library $$i"; \
                  echo ""; \
                ); \
        done
-       @mv -f tmp/libbackends.a ./libbackends.a
        @$(RM) -r tmp
        @if test ! -z "$(RANLIB)" ; then \
                $(RANLIB) libbackends.a; \
index ee35d4611b6f350e370afc3b034a3643621e6abe..7c8ae3e56da6cf268fe28355b209dbbfa9e06841 100644 (file)
@@ -44,7 +44,5 @@ LIBBASE = back_asyncmeta
 XINCPATH = -I.. -I$(srcdir)/..
 XDEFS = $(MODULES_CPPFLAGS)
 
-all-local-lib: ../.backend
+all-local-lib: libobj.a
 
-../.backend: lib$(LIBBASE).a
-       @touch $@
index 0e2211ceb82d031c726950d0ab93f3cec3c91b41..1dfd9c8ea1c7577e9a3b445038721589e3ff9eff 100644 (file)
@@ -39,8 +39,5 @@ LIBBASE = back_dnssrv
 XINCPATH = -I.. -I$(srcdir)/..
 XDEFS = $(MODULES_CPPFLAGS)
 
-all-local-lib: ../.backend
-
-../.backend: lib$(LIBBASE).a
-       @touch $@
+all-local-lib: libobj.a
 
index 1c2cc98fec624ef12ca37c1d6d17b07dfa5abb6b..d0a1915155764096ab2a93eaf94f30dc599fb910 100644 (file)
@@ -38,8 +38,5 @@ LIBBASE = back_ldap
 XINCPATH = -I.. -I$(srcdir)/..
 XDEFS = $(MODULES_CPPFLAGS)
 
-all-local-lib: ../.backend
-
-../.backend: lib$(LIBBASE).a
-       @touch $@
+all-local-lib: libobj.a
 
index 8879c2b40cbc7b29b35e491792b15a4c8e3b8a7a..aa952cdf6808f5d820e093496a82d79fa60e4fe0 100644 (file)
@@ -34,8 +34,5 @@ LIBBASE = back_ldif
 XINCPATH = -I.. -I$(srcdir)/..
 XDEFS = $(MODULES_CPPFLAGS)
 
-all-local-lib: ../.backend
-
-../.backend: lib$(LIBBASE).a
-       @touch $@
+all-local-lib: libobj.a
 
index 8bece419e7092b9a7a2589fea94be58245588786..a1193c98447abdbcdc94bb505b00006ccac5fcae 100644 (file)
@@ -47,10 +47,7 @@ LIBBASE = back_mdb
 XINCPATH = -I.. -I$(srcdir)/.. -I$(MDB_SUBDIR)
 XDEFS = $(MODULES_CPPFLAGS)
 
-all-local-lib: ../.backend
-
-../.backend: lib$(LIBBASE).a
-       @touch $@
+all-local-lib: libobj.a
 
 mdb.lo:        $(MDB_SUBDIR)/mdb.c
        $(LTCOMPILE_MOD) $(MDB_SUBDIR)/mdb.c
index 5c68d6ed8698e383a7f504686fb929d019fde793..6894c06c13610e756be9e6220e7cff7ea15817a0 100644 (file)
@@ -38,8 +38,5 @@ LIBBASE = back_meta
 XINCPATH = -I.. -I$(srcdir)/..
 XDEFS = $(MODULES_CPPFLAGS)
 
-all-local-lib: ../.backend
-
-../.backend: lib$(LIBBASE).a
-       @touch $@
+all-local-lib: libobj.a
 
index 8d2d4f6ae23cedcdc0b49ad5df90d11652e93454..cfdcf22fd974f916cd85f5fca8ef69a269099b49 100644 (file)
@@ -42,8 +42,5 @@ LIBBASE = back_monitor
 XINCPATH = -I.. -I$(srcdir)/.. -I$(srcdir)/../slapi
 XDEFS = $(MODULES_CPPFLAGS)
 
-all-local-lib: ../.backend
-
-../.backend: lib$(LIBBASE).a
-       @touch $@
+all-local-lib: libobj.a
 
index da73a42946abff2c4d4adcfe066e40559a180cca..d048efa1432aaf0303e154d9ee430b691ea462f3 100644 (file)
@@ -34,8 +34,5 @@ LIBBASE = back_null
 XINCPATH = -I.. -I$(srcdir)/..
 XDEFS = $(MODULES_CPPFLAGS)
 
-all-local-lib: ../.backend
-
-../.backend: lib$(LIBBASE).a
-       @touch $@
+all-local-lib: libobj.a
 
index 0c61ef8819f9ffaa87a82ed159e054ccaa0cc22c..e3d66a505778e9c6201a3a8003a7c984cc070af6 100644 (file)
@@ -34,8 +34,5 @@ LIBBASE = back_passwd
 XINCPATH = -I.. -I$(srcdir)/..
 XDEFS = $(MODULES_CPPFLAGS)
 
-all-local-lib: ../.backend
-
-../.backend: lib$(LIBBASE).a
-       @touch $@
+all-local-lib: libobj.a
 
index 0bb40b91e27de8e92dd36a5792268d990c26dfd3..29a19437b4feb0cd654058d0e66b0e66c4c5d569 100644 (file)
@@ -34,8 +34,5 @@ LIBBASE = back_relay
 XINCPATH = -I.. -I$(srcdir)/..
 XDEFS = $(MODULES_CPPFLAGS)
 
-all-local-lib: ../.backend
-
-../.backend: lib$(LIBBASE).a
-       @touch $@
+all-local-lib: libobj.a
 
index 1b74639e1892e3e0acc0015c946d591e68de87ed..0ab413aac89c0a1b06107c4879407029c051f1b9 100644 (file)
@@ -40,8 +40,5 @@ LIBBASE = back_sock
 XINCPATH = -I.. -I$(srcdir)/..
 XDEFS = $(MODULES_CPPFLAGS)
 
-all-local-lib: ../.backend
-
-../.backend: lib$(LIBBASE).a
-       @touch $@
+all-local-lib: libobj.a
 
index 930ba2cca17bcbcd67dff369e7cdc4947a960b1b..fdd3cb68d8b9b01f2d3b1b692c6d4e68bca91177 100644 (file)
@@ -38,8 +38,5 @@ LIBBASE = back_sql
 XINCPATH = -I.. -I$(srcdir)/.. $(SLAPD_SQL_INCLUDES)
 XDEFS = $(MODULES_CPPFLAGS)
 
-all-local-lib: ../.backend
-
-../.backend: lib$(LIBBASE).a
-       @touch $@
+all-local-lib: libobj.a
 
index b0d02ebb1e33ea75bd7c5e9b53da8004c9d4bd8f..b88e15e06432a852e5792a729239aa67a6a4c58c 100644 (file)
@@ -47,8 +47,5 @@ LIBBASE = back_wt
 XINCPATH = -I.. -I$(srcdir)/..
 XDEFS = $(MODULES_CPPFLAGS)
 
-all-local-lib: ../.backend
-
-../.backend: lib$(LIBBASE).a
-       @touch $@
+all-local-lib: libobj.a