[Date Prev][Date Next] [Chronological] [Thread] [Top]

make depend fails if --enable-shell --with-shell-module=dynamic is used (ITS#1518)



Full_Name: Thomas Melzer
Version: 2.0.19
OS: Linux - 2.2.19
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (194.162.62.7)


1) run configure with 
./configure --enable-modules --enable-shell --with-shell-module=dynamic
--enable-shared --enable-static

2) run make depend

make breaks with the following error
....
  cd shell-backends; make -w depend
make[3]: Entering directory
`/usr/src/openldap-2.0.19/servers/slapd/shell-backends'
make[3]: *** No rule to make target `depend-mod', needed by `depend-common'. 
Stop.
make[3]: Leaving directory
`/usr/src/openldap-2.0.19/servers/slapd/shell-backends'
make[2]: *** [depend-local-srv] Error 1
make[2]: Leaving directory `/usr/src/openldap-2.0.19/servers/slapd'
make[1]: *** [depend-common] Error 1
make[1]: Leaving directory `/usr/src/openldap-2.0.19/servers'
make: *** [depend-common] Error 1

Analysis:
In ./servers/slapd/shell-backends/Makefile.in the variable BUILD_SRV is
initialized with @BUILD_SHELL@
During the configure run @BUILD_SHELL@ is substitued with 'mod' as the configure
options tell configure to enable dynamic modules and build shell backend as
shared 
module. 
As the files in shell-backends build a programm passwd-shell (has a main
function) there is reasonably no rule in the makefile to build as a shared
library (as it is none). 

Fix:

Apply the following patch to Makefile.in

--- Makefile.in Tue Jun 13 19:57:39 2000
+++ Makefile.fix        Wed Jan  9 15:10:24 2002
@@ -12,7 +12,7 @@
 LDAP_LIBDIR= ../../../libraries

 BUILD_OPT = "--enable-shell"
-BUILD_SRV = @BUILD_SHELL@
+BUILD_SRV = yes

 all-local-srv: $(PROGRAMS)