The root cause is an error in the build process, more specifically the debian/rules Makefile.
First, the ldap flavour of the binary is built and moved to isc-dhcp-server-ldap/dhcpd. This works as expected, the resulting binary contains ldap symbols as expected.
Then, the normal flavour is built. The binary is left in server/dhcpd (like in a vanilla build).
Then, both of these steps are repeated again, and this is the actual problem. First, it's a useless step, second, it leads to the broken ldap binary as no make (dist)clean is invoked inbetween which makes "make" think that server/dhcpd is already the correct ldap binary (which it is not; it is a left-over from the first normal build); afterwards, the build process (debian/rules) overwrites the correct ldap binary in isc-dhcp-server-ldap/dhcpd with a vanilla binary. The normal flavour is "built" again as well, but this does not break anything.
The problem is complex and the patch is trivial, but I don't know if it is correct. Works for me, but YMMV. The patch fixes this problem and probably reduces build time, as the process runs only twice instead of 4 times.
The actual problem is that the "clean" target is invoked between builds, which also calls dh_clean, which in fact removes all the *stamp files, which usually avoid accidental duplicate builds. I've modified the build target to call "buildclean", which does the same thing as before, just without the dh_clean.
I would also consider this bug report really severe, as it renders the given package completely unusuable and breaks existing setups.
I stumbled upon this problem as well.
The root cause is an error in the build process, more specifically the debian/rules Makefile.
First, the ldap flavour of the binary is built and moved to isc-dhcp- server- ldap/dhcpd. This works as expected, the resulting binary contains ldap symbols as expected.
Then, the normal flavour is built. The binary is left in server/dhcpd (like in a vanilla build).
Then, both of these steps are repeated again, and this is the actual problem. First, it's a useless step, second, it leads to the broken ldap binary as no make (dist)clean is invoked inbetween which makes "make" think that server/dhcpd is already the correct ldap binary (which it is not; it is a left-over from the first normal build); afterwards, the build process (debian/rules) overwrites the correct ldap binary in isc-dhcp- server- ldap/dhcpd with a vanilla binary. The normal flavour is "built" again as well, but this does not break anything.
The problem is complex and the patch is trivial, but I don't know if it is correct. Works for me, but YMMV. The patch fixes this problem and probably reduces build time, as the process runs only twice instead of 4 times.
The actual problem is that the "clean" target is invoked between builds, which also calls dh_clean, which in fact removes all the *stamp files, which usually avoid accidental duplicate builds. I've modified the build target to call "buildclean", which does the same thing as before, just without the dh_clean.
I would also consider this bug report really severe, as it renders the given package completely unusuable and breaks existing setups.