Add openldap ebuild with `use prefix`-protected group/user creation.
[wtk-prefix-overlay.git] / net-nds / openldap / files / openldap-2.3.43-r1-winnt.patch
diff --git a/net-nds/openldap/files/openldap-2.3.43-r1-winnt.patch b/net-nds/openldap/files/openldap-2.3.43-r1-winnt.patch
new file mode 100644 (file)
index 0000000..b3894d5
--- /dev/null
@@ -0,0 +1,643 @@
+diff -ru openldap-2.3.43.orig/build/openldap.m4 openldap-2.3.43/build/openldap.m4
+--- openldap-2.3.43.orig/build/openldap.m4     2008-10-30 13:52:53 +0100
++++ openldap-2.3.43/build/openldap.m4  2008-10-30 14:00:08 +0100
+@@ -79,8 +79,11 @@
+                               cat > conftest.c <<EOF
+  noCode;
+ EOF
++                              # don't search for conftest.o at the beginning of the
++                              # line, since it may be an absolute path with some
++                              # compilers (like parity on winnt)...
+                               if AC_TRY_COMMAND($OL_MKDEP $flag conftest.c) \
+-                                      | grep '^conftest\.'"${ac_objext}" >/dev/null 2>&1
++                                      | grep 'conftest\.'"${ac_objext}:" >/dev/null 2>&1
+                               then
+                                       if test ! -f conftest."${ac_object}" ; then
+                                               ol_cv_mkdep=$flag
+diff -ru openldap-2.3.43.orig/build/top.mk openldap-2.3.43/build/top.mk
+--- openldap-2.3.43.orig/build/top.mk  2008-10-30 13:52:53 +0100
++++ openldap-2.3.43/build/top.mk       2008-10-30 14:00:08 +0100
+@@ -90,6 +90,8 @@
+ NT_LTFLAGS_MOD = -no-undefined -avoid-version -rpath $(moduledir)
+ UNIX_LTFLAGS_LIB = $(LTVERSION) -rpath $(libdir)
+ UNIX_LTFLAGS_MOD = $(LTVERSION) -rpath $(moduledir)
++PARITY_LTFLAGS_LIB = $(UNIX_LTFLAGS_LIB)
++PARITY_LTFLAGS_MOD = $(UNIX_LTFLAGS_MOD)
+ # libtool flags
+ LTFLAGS     = $(@PLAT@_LTFLAGS)
+diff -ru openldap-2.3.43.orig/clients/tools/Makefile.in openldap-2.3.43/clients/tools/Makefile.in
+--- openldap-2.3.43.orig/clients/tools/Makefile.in     2008-10-30 13:52:53 +0100
++++ openldap-2.3.43/clients/tools/Makefile.in  2008-10-30 14:00:08 +0100
+@@ -27,29 +27,30 @@
+ XSRCS = ldsversion.c ldmversion.c lddversion.c ldrversion.c \
+       ldpversion.c ldwversion.c ldcversion.c
+-PROGRAMS = ldapsearch ldapmodify ldapdelete ldapmodrdn \
+-      ldappasswd ldapwhoami ldapcompare
++PROGRAMS = ldapsearch$(EXEEXT) ldapmodify$(EXEEXT) ldapdelete$(EXEEXT) \
++      ldapmodrdn$(EXEEXT) ldappasswd$(EXEEXT) ldapwhoami$(EXEEXT) \
++      ldapcompare$(EXEEXT)
+-ldapsearch:   ldsversion.o
++ldapsearch$(EXEEXT):  ldsversion.o
+       $(LTLINK) -o $@ ldapsearch.o common.o ldsversion.o $(LIBS)
+-ldapmodify:   ldmversion.o
++ldapmodify$(EXEEXT):  ldmversion.o
+       $(LTLINK) -o $@ ldapmodify.o common.o ldmversion.o $(LIBS)
+-ldapdelete:   lddversion.o
++ldapdelete$(EXEEXT):  lddversion.o
+       $(LTLINK) -o $@ ldapdelete.o common.o lddversion.o $(LIBS)
+-ldapmodrdn:   ldrversion.o
++ldapmodrdn$(EXEEXT):  ldrversion.o
+       $(LTLINK) -o $@ ldapmodrdn.o common.o ldrversion.o $(LIBS)
+-ldappasswd:   ldpversion.o
++ldappasswd$(EXEEXT):  ldpversion.o
+       $(LTLINK) -o $@ ldappasswd.o common.o ldpversion.o $(LIBS)
+-ldapwhoami:   ldwversion.o
++ldapwhoami$(EXEEXT):  ldwversion.o
+       $(LTLINK) -o $@ ldapwhoami.o common.o ldwversion.o $(LIBS)
+-ldapcompare: ldcversion.o
++ldapcompare$(EXEEXT): ldcversion.o
+       $(LTLINK) -o $@ ldapcompare.o common.o ldcversion.o $(LIBS)
+ ldsversion.c: Makefile
+@@ -98,7 +99,7 @@
+       -$(MKDIR) $(DESTDIR)$(bindir)
+       @(                                                              \
+           for prg in $(PROGRAMS); do                                  \
+-              $(LTINSTALL) $(INSTALLFLAGS) $(STRIP) -m 755 $$prg$(EXEEXT)     \
++              $(LTINSTALL) $(INSTALLFLAGS) $(STRIP) -m 755 $$prg      \
+                   $(DESTDIR)$(bindir);                                \
+           done                                                        \
+       )
+diff -ru openldap-2.3.43.orig/configure.in openldap-2.3.43/configure.in
+--- openldap-2.3.43.orig/configure.in  2008-10-30 13:52:53 +0100
++++ openldap-2.3.43/configure.in       2008-10-30 14:00:08 +0100
+@@ -765,6 +765,7 @@
+ dnl ----------------------------------------------------------------
+ dnl Checks for Windows NT
+ case $host_os in
++  *winnt* ) ac_cv_winnt=yes ;;
+   *mingw32* ) ac_cv_mingw32=yes ;;
+   *cygwin* ) ac_cv_cygwin=yes ;;
+ esac
+@@ -909,7 +910,7 @@
+ )
+ dnl Only check Winsock on MinGW
+-if test "$ac_cv_mingw32" = yes ; then
++if test "$ac_cv_mingw32" = yes || test "$ac_cv_winnt" = yes ; then
+       AC_CHECK_HEADERS( winsock.h winsock2.h )
+ fi
+@@ -1067,10 +1068,11 @@
+               UuidCreate(0);
+               UuidToStringA(0,0);
+               ]])],[need_rpcrt=yes],[need_rpcrt=no])
++      LIBS="$save_LIBS"
+       if test $need_rpcrt = yes; then
+               SLAPD_LIBS="$SLAPD_LIBS -lrpcrt4"
++              LIBS="$LIBS -lrpcrt4"
+       fi
+-      LIBS="$save_LIBS"
+       AC_MSG_RESULT($need_rpcrt)
+ fi
+@@ -2269,7 +2271,7 @@
+ dnl ----------------------------------------------------------------
+ dnl Check for entropy sources
+-if test $cross_compiling != yes && test "$ac_cv_mingw32" != yes ; then
++if test $cross_compiling != yes && test "$ac_cv_mingw32" != yes && test "$ac_cv_winnt" != yes ; then
+       dev=no
+       if test -r /dev/urandom ; then
+               dev="/dev/urandom";
+@@ -2528,15 +2530,17 @@
+       AC_DEFINE(snprintf, _snprintf, [define to snprintf routine])
+ ])
+-AC_CHECK_FUNC(_vsnprintf, [ac_cv_func_vsnprintf=yes
+-      AC_DEFINE(vsnprintf, _vsnprintf, [define to vsnprintf routine])
+-])
++AC_CHECK_FUNC(_vsnprintf)
+ AC_FUNC_VPRINTF
+ if test $ac_cv_func_vprintf = yes ; then
+       dnl check for vsnprintf
+       AC_CHECK_FUNCS(snprintf vsnprintf)
++
++      if test $ac_cv_func__vsnprintf = yes && test $ac_cv_func_vsnprintf != yes; then
++              AC_DEFINE(vsnprintf, _vsnprintf, [define to vsnprintf routine])
++      fi
+ fi
+ AC_CHECK_FUNCS(               \
+@@ -3086,6 +3090,10 @@
+ if test "$ac_cv_mingw32" = yes ; then
+       PLAT=NT
+       SLAPD_MODULES_LDFLAGS=
++elif test "$ac_cv_winnt" = yes; then
++      # slapd not even supported yet, so....
++      PLAT=PARITY
++      SLAPD_MODULES_LDFLAGS=
+ else
+       PLAT=UNIX
+ fi
+diff -ru openldap-2.3.43.orig/include/ac/socket.h openldap-2.3.43/include/ac/socket.h
+--- openldap-2.3.43.orig/include/ac/socket.h   2008-10-30 13:52:56 +0100
++++ openldap-2.3.43/include/ac/socket.h        2008-10-30 14:00:08 +0100
+@@ -36,7 +36,9 @@
+ #include <sys/select.h>
+ #endif
++#ifndef __PARITY__
+ #include <netinet/in.h>
++#endif
+ #ifdef HAVE_NETINET_TCP_H
+ #include <netinet/tcp.h>
+diff -ru openldap-2.3.43.orig/include/ldap_cdefs.h openldap-2.3.43/include/ldap_cdefs.h
+--- openldap-2.3.43.orig/include/ldap_cdefs.h  2008-10-30 13:52:56 +0100
++++ openldap-2.3.43/include/ldap_cdefs.h       2008-10-30 14:00:08 +0100
+@@ -130,7 +130,11 @@
+ #if defined(_WIN32) && \
+     ((defined(LDAP_LIBS_DYNAMIC) && !defined(LBER_LIBRARY)) || \
+      (!defined(LDAP_LIBS_DYNAMIC) && defined(SLAPD_IMPORT)))
++# ifndef __PARITY__
+ #     define LBER_F(type)             extern __declspec(dllimport) type
++# else
++#   define LBER_F(type)               extern type
++# endif
+ #     define LBER_V(type)             extern __declspec(dllimport) type
+ #else
+ #     define LBER_F(type)             extern type
+@@ -141,7 +145,11 @@
+ #if defined(_WIN32) && \
+     ((defined(LDAP_LIBS_DYNAMIC) && !defined(LDAP_LIBRARY)) || \
+      (!defined(LDAP_LIBS_DYNAMIC) && defined(SLAPD_IMPORT)))
++# ifndef __PARITY__
+ #     define LDAP_F(type)             extern __declspec(dllimport) type
++# else
++#   define LDAP_F(type)     extern type
++# endif
+ #     define LDAP_V(type)             extern __declspec(dllimport) type
+ #else
+ #     define LDAP_F(type)             extern type
+@@ -181,7 +189,7 @@
+ #endif
+ /* LUTIL library */
+-#if defined(_WIN32) && defined(SLAPD_IMPORT)
++#if defined(_WIN32) && defined(SLAPD_IMPORT) && !defined(__PARITY__)
+ #     define LDAP_LUTIL_F(type)       extern __declspec(dllimport) type
+ #     define LDAP_LUTIL_V(type)       extern __declspec(dllimport) type
+ #else
+diff -ru openldap-2.3.43.orig/libraries/liblber/Makefile.in openldap-2.3.43/libraries/liblber/Makefile.in
+--- openldap-2.3.43.orig/libraries/liblber/Makefile.in 2008-10-30 13:52:56 +0100
++++ openldap-2.3.43/libraries/liblber/Makefile.in      2008-10-30 14:00:08 +0100
+@@ -18,6 +18,9 @@
+ NT_SRCS = nt_err.c
+ NT_OBJS = nt_err.lo
++PARITY_SRCS = $(NT_SRCS)
++PARITY_OBJS = $(NT_OBJS)
++
+ UNIX_SRCS = stdio.c
+ UNIX_OBJS = stdio.lo
+@@ -37,6 +40,7 @@
+ XLIBS = $(LIBRARY) $(LDAP_LIBLUTIL_A)
+ XXLIBS = 
+ NT_LINK_LIBS = $(AC_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ dtest:    $(XLIBS) dtest.o
+       $(LTLINK) -o $@ dtest.o $(LIBS)
+diff -ru openldap-2.3.43.orig/libraries/liblber/options.c openldap-2.3.43/libraries/liblber/options.c
+--- openldap-2.3.43.orig/libraries/liblber/options.c   2008-10-30 13:52:56 +0100
++++ openldap-2.3.43/libraries/liblber/options.c        2008-10-30 14:00:08 +0100
+@@ -20,7 +20,8 @@
+ #include <ac/stdarg.h>
+ #include "lber-int.h"
+-char ber_pvt_opt_on;  /* used to get a non-NULL address for *_OPT_ON */
++/* needs to be initialized for winnt build... */
++char ber_pvt_opt_on = 0;      /* used to get a non-NULL address for *_OPT_ON */
+ struct lber_options ber_int_options = {
+       LBER_UNINITIALIZED, 0, 0 };
+diff -ru openldap-2.3.43.orig/libraries/libldap/Makefile.in openldap-2.3.43/libraries/libldap/Makefile.in
+--- openldap-2.3.43.orig/libraries/libldap/Makefile.in 2008-10-30 13:52:56 +0100
++++ openldap-2.3.43/libraries/libldap/Makefile.in      2008-10-30 14:00:08 +0100
+@@ -47,6 +47,7 @@
+ XLIBS = $(LIBRARY) $(LDAP_LIBLBER_LA) $(LDAP_LIBLUTIL_A)
+ XXLIBS = $(SECURITY_LIBS) $(LUTIL_LIBS)
+ NT_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS)
+ apitest:      $(XLIBS) apitest.o
+diff -ru openldap-2.3.43.orig/libraries/libldap_r/Makefile.in openldap-2.3.43/libraries/libldap_r/Makefile.in
+--- openldap-2.3.43.orig/libraries/libldap_r/Makefile.in       2008-10-30 13:52:57 +0100
++++ openldap-2.3.43/libraries/libldap_r/Makefile.in    2008-10-30 14:01:15 +0100
+@@ -56,6 +56,7 @@
+ XXLIBS = $(SECURITY_LIBS) $(LUTIL_LIBS)
+ XXXLIBS = $(LTHREAD_LIBS)
+ NT_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS) $(LTHREAD_LIBS)
+ .links : Makefile
+diff -ru openldap-2.3.43.orig/libraries/liblutil/Makefile.in openldap-2.3.43/libraries/liblutil/Makefile.in
+--- openldap-2.3.43.orig/libraries/liblutil/Makefile.in        2008-10-30 13:52:57 +0100
++++ openldap-2.3.43/libraries/liblutil/Makefile.in     2008-10-30 14:00:08 +0100
+@@ -22,6 +22,9 @@
+ NT_SRCS = ntservice.c
+ NT_OBJS = ntservice.o slapdmsg.res
++PARITY_SRCS = $(NT_SRCS)
++PARITY_OBJS = ntservice.o
++
+ UNIX_SRCS = detach.c
+ UNIX_OBJS = detach.o
+diff -ru openldap-2.3.43.orig/servers/slapd/Makefile.in openldap-2.3.43/servers/slapd/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/Makefile.in     2008-10-30 13:52:59 +0100
++++ openldap-2.3.43/servers/slapd/Makefile.in  2008-10-30 14:00:08 +0100
+@@ -13,9 +13,10 @@
+ ## top-level directory of the distribution or, alternatively, at
+ ## <http://www.OpenLDAP.org/license.html>.
+-SLAPTOOLS=slapadd slapcat slapdn slapindex slappasswd slaptest slapauth slapacl
+-PROGRAMS=slapd $(SLAPTOOLS)
+-XPROGRAMS=sslapd libbackends.a .backend liboverlays.a
++SLAPTOOLS=slapadd$(EXEEXT) slapcat$(EXEEXT) slapdn$(EXEEXT) slapindex$(EXEEXT) \
++      slappasswd$(EXEEXT) slaptest$(EXEEXT) slapauth$(EXEEXT) slapacl$(EXEEXT)
++PROGRAMS=slapd$(EXEEXT) $(SLAPTOOLS)
++XPROGRAMS=sslapd$(EXEEXT) libbackends.a .backend liboverlays.a
+ XSRCS=version.c
+ SUBDIRS=back-* shell-backends slapi overlays
+@@ -23,6 +24,9 @@
+ NT_SRCS = nt_svc.c
+ NT_OBJS = nt_svc.o ../../libraries/liblutil/slapdmsg.res
++PARITY_SRCS = $(NT_SRCS)
++PARITY_OBJS = nt_svc.o
++
+ SRCS  = main.c globals.c bconfig.c config.c daemon.c \
+               connection.c search.c filter.c add.c cr.c \
+               attr.c entry.c backend.c result.c operation.c \
+@@ -87,6 +91,9 @@
+ UNIX_SLAPD_DEPENDS = $(SLAPD_STATIC_DEPENDS) version.o $(SLAPD_L)
+ UNIX_SLAPD_OBJECTS = $(OBJS) version.o
++PARITY_SLAPD_DEPENDS = $(UNIX_SLAPD_DEPENDS)
++PARITY_SLAPD_OBJECTS = $(UNIX_SLAPD_OBJECTS)
++
+ SLAPD_DEPENDS = $(@PLAT@_SLAPD_DEPENDS)
+ SLAPD_OBJECTS = $(@PLAT@_SLAPD_OBJECTS)
+@@ -265,22 +272,22 @@
+ libslapi.a: slapi/.libs/libslapi.a
+       cp slapi/.libs/libslapi.a .
+-slapd: $(SLAPD_DEPENDS) @LIBSLAPI@
++slapd$(EXEEXT): $(SLAPD_DEPENDS) @LIBSLAPI@
+       $(LTLINK) -o $@ $(SLAPD_OBJECTS) $(LIBS) \
+               $(WRAP_LIBS)
+       $(RM) $(SLAPTOOLS)
+       for i in $(SLAPTOOLS); do \
+-              $(LN_S) slapd$(EXEEXT) $$i$(EXEEXT); done
++              $(LN_S) slapd$(EXEEXT) $$i; done
+-sslapd: version.o
++sslapd$(EXEEXT): version.o
+       $(LTLINK) -static -o $@ $(OBJS) version.o $(LIBS) $(WRAP_LIBS)
+-dummy $(SLAPD_DYNAMIC_BACKENDS): slapd
++dummy $(SLAPD_DYNAMIC_BACKENDS): slapd$(EXEEXT)
+       cd $@; $(MAKE) $(MFLAGS) all
+       @touch $@
+-dynamic_overlays: slapd
++dynamic_overlays: slapd$(EXEEXT)
+       cd overlays; $(MAKE) $(MFLAGS) dynamic
+ #
+@@ -385,7 +392,7 @@
+           fi; \
+       done
+-all-cffiles: slapd $(SLAPD_DYNAMIC_BACKENDS) dynamic_overlays
++all-cffiles: slapd$(EXEEXT) $(SLAPD_DYNAMIC_BACKENDS) dynamic_overlays
+       @if test $(PLAT) = NT; then \
+           sysconfdir=`cygpath -w $(sysconfdir) | \
+               $(SED) -e 's/\\\\/\\\\\\\\\\\\\\\\/g'`; \
+@@ -439,7 +446,7 @@
+ install-tools: FORCE
+       -$(MKDIR) $(DESTDIR)$(sbindir)
+       for i in $(SLAPTOOLS); do \
+-              $(RM) $(DESTDIR)$(sbindir)/$$i$(EXEEXT); \
+-              $(LN_S) -f $(DESTDIR)$(libexecdir)/slapd$(EXEEXT) $(DESTDIR)$(sbindir)/$$i$(EXEEXT); \
++              $(RM) $(DESTDIR)$(sbindir)/$$i; \
++              $(LN_S) -f $(DESTDIR)$(libexecdir)/slapd$(EXEEXT) $(DESTDIR)$(sbindir)/$$i; \
+       done
+diff -ru openldap-2.3.43.orig/servers/slapd/alock.c openldap-2.3.43/servers/slapd/alock.c
+--- openldap-2.3.43.orig/servers/slapd/alock.c 2008-10-30 13:52:57 +0100
++++ openldap-2.3.43/servers/slapd/alock.c      2008-10-30 14:00:08 +0100
+@@ -32,7 +32,11 @@
+ #include <ac/assert.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+-#include <sys/file.h>
++
++#ifdef HAVE_SYS_FILE_H
++# include <sys/file.h>
++#endif
++
+ #include <fcntl.h>
+ #ifdef _WIN32
+diff -ru openldap-2.3.43.orig/servers/slapd/back-bdb/Makefile.in openldap-2.3.43/servers/slapd/back-bdb/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/back-bdb/Makefile.in    2008-10-30 13:52:57 +0100
++++ openldap-2.3.43/servers/slapd/back-bdb/Makefile.in 2008-10-30 14:00:08 +0100
+@@ -39,6 +39,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
+ LIBBASE = back_bdb
+diff -ru openldap-2.3.43.orig/servers/slapd/back-dnssrv/Makefile.in openldap-2.3.43/servers/slapd/back-dnssrv/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/back-dnssrv/Makefile.in 2008-10-30 13:52:57 +0100
++++ openldap-2.3.43/servers/slapd/back-dnssrv/Makefile.in      2008-10-30 14:00:08 +0100
+@@ -32,6 +32,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
+ LIBBASE = back_dnssrv
+diff -ru openldap-2.3.43.orig/servers/slapd/back-hdb/Makefile.in openldap-2.3.43/servers/slapd/back-hdb/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/back-hdb/Makefile.in    2008-10-30 13:52:57 +0100
++++ openldap-2.3.43/servers/slapd/back-hdb/Makefile.in 2008-10-30 14:00:08 +0100
+@@ -41,6 +41,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
+ .links : Makefile
+diff -ru openldap-2.3.43.orig/servers/slapd/back-ldap/Makefile.in openldap-2.3.43/servers/slapd/back-ldap/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/back-ldap/Makefile.in   2008-10-30 13:52:58 +0100
++++ openldap-2.3.43/servers/slapd/back-ldap/Makefile.in        2008-10-30 14:00:08 +0100
+@@ -29,6 +29,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
+ LIBBASE = back_ldap
+diff -ru openldap-2.3.43.orig/servers/slapd/back-ldbm/Makefile.in openldap-2.3.43/servers/slapd/back-ldbm/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/back-ldbm/Makefile.in   2008-10-30 13:52:58 +0100
++++ openldap-2.3.43/servers/slapd/back-ldbm/Makefile.in        2008-10-30 14:00:08 +0100
+@@ -38,6 +38,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
+ LIBBASE = back_ldbm
+diff -ru openldap-2.3.43.orig/servers/slapd/back-ldif/Makefile.in openldap-2.3.43/servers/slapd/back-ldif/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/back-ldif/Makefile.in   2008-10-30 13:52:58 +0100
++++ openldap-2.3.43/servers/slapd/back-ldif/Makefile.in        2008-10-30 14:00:08 +0100
+@@ -27,6 +27,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
+ LIBBASE = back_ldif
+diff -ru openldap-2.3.43.orig/servers/slapd/back-meta/Makefile.in openldap-2.3.43/servers/slapd/back-meta/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/back-meta/Makefile.in   2008-10-30 13:52:58 +0100
++++ openldap-2.3.43/servers/slapd/back-meta/Makefile.in        2008-10-30 14:00:08 +0100
+@@ -31,6 +31,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
+ LIBBASE = back_meta
+diff -ru openldap-2.3.43.orig/servers/slapd/back-monitor/Makefile.in openldap-2.3.43/servers/slapd/back-monitor/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/back-monitor/Makefile.in        2008-10-30 13:52:58 +0100
++++ openldap-2.3.43/servers/slapd/back-monitor/Makefile.in     2008-10-30 14:00:08 +0100
+@@ -35,6 +35,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
+ LIBBASE = back_monitor
+diff -ru openldap-2.3.43.orig/servers/slapd/back-null/Makefile.in openldap-2.3.43/servers/slapd/back-null/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/back-null/Makefile.in   2008-10-30 13:52:58 +0100
++++ openldap-2.3.43/servers/slapd/back-null/Makefile.in        2008-10-30 14:00:08 +0100
+@@ -27,6 +27,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
+ LIBBASE = back_null
+diff -ru openldap-2.3.43.orig/servers/slapd/back-passwd/Makefile.in openldap-2.3.43/servers/slapd/back-passwd/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/back-passwd/Makefile.in 2008-10-30 13:52:58 +0100
++++ openldap-2.3.43/servers/slapd/back-passwd/Makefile.in      2008-10-30 14:00:08 +0100
+@@ -27,6 +27,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
+ LIBBASE = back_passwd
+diff -ru openldap-2.3.43.orig/servers/slapd/back-perl/Makefile.in openldap-2.3.43/servers/slapd/back-perl/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/back-perl/Makefile.in   2008-10-30 13:52:58 +0100
++++ openldap-2.3.43/servers/slapd/back-perl/Makefile.in        2008-10-30 14:00:08 +0100
+@@ -32,6 +32,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS) `perl -MExtUtils::Embed -e ldopts`
+ LIBBASE = back_perl
+diff -ru openldap-2.3.43.orig/servers/slapd/back-relay/Makefile.in openldap-2.3.43/servers/slapd/back-relay/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/back-relay/Makefile.in  2008-10-30 13:52:58 +0100
++++ openldap-2.3.43/servers/slapd/back-relay/Makefile.in       2008-10-30 14:00:08 +0100
+@@ -26,6 +26,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS) $(REWRITE)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS) $(REWRITE)
+ LIBBASE = back_relay
+diff -ru openldap-2.3.43.orig/servers/slapd/back-shell/Makefile.in openldap-2.3.43/servers/slapd/back-shell/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/back-shell/Makefile.in  2008-10-30 13:52:58 +0100
++++ openldap-2.3.43/servers/slapd/back-shell/Makefile.in       2008-10-30 14:00:08 +0100
+@@ -29,6 +29,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
+ LIBBASE = back_shell
+diff -ru openldap-2.3.43.orig/servers/slapd/back-sql/Makefile.in openldap-2.3.43/servers/slapd/back-sql/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/back-sql/Makefile.in    2008-10-30 13:52:59 +0100
++++ openldap-2.3.43/servers/slapd/back-sql/Makefile.in 2008-10-30 14:00:08 +0100
+@@ -31,6 +31,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS) $(SLAPD_SQL_LIBS)
+ LIBBASE = back_sql
+diff -ru openldap-2.3.43.orig/servers/slapd/overlays/Makefile.in openldap-2.3.43/servers/slapd/overlays/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/overlays/Makefile.in    2008-10-30 13:52:59 +0100
++++ openldap-2.3.43/servers/slapd/overlays/Makefile.in 2008-10-30 14:00:08 +0100
+@@ -45,6 +45,7 @@
+ shared_LDAP_LIBS = $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
+ NT_LINK_LIBS = -L.. -lslapd $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = $(@BUILD_LIBS_DYNAMIC@_LDAP_LIBS)
+ LIBRARY = ../liboverlays.a
+diff -ru openldap-2.3.43.orig/servers/slapd/slapi/Makefile.in openldap-2.3.43/servers/slapd/slapi/Makefile.in
+--- openldap-2.3.43.orig/servers/slapd/slapi/Makefile.in       2008-10-30 13:53:00 +0100
++++ openldap-2.3.43/servers/slapd/slapi/Makefile.in    2008-10-30 14:00:40 +0100
+@@ -37,6 +37,7 @@
+ XLIBS = $(LIBRARY)
+ XXLIBS = 
+ NT_LINK_LIBS = $(AC_LIBS)
++PARITY_LINK_LIBS = $(NT_LINK_LIBS)
+ UNIX_LINK_LIBS = ../../../libraries/libldap_r/libldap_r.la $(LTHREAD_LIBS)
+ XINCPATH = -I$(srcdir)/.. -I$(srcdir)
+diff -ru openldap-2.3.43.orig/servers/slapd/slapi/printmsg.c openldap-2.3.43/servers/slapd/slapi/printmsg.c
+--- openldap-2.3.43.orig/servers/slapd/slapi/printmsg.c        2008-10-30 13:53:00 +0100
++++ openldap-2.3.43/servers/slapd/slapi/printmsg.c     2008-10-30 14:00:08 +0100
+@@ -34,6 +34,10 @@
+ #include <ldap_pvt_thread.h>
++#ifdef _WIN32
++# include <sys/locking.h>
++#endif
++
+ /* Single threads access to routine */
+ ldap_pvt_thread_mutex_t slapi_printmessage_mutex; 
+ char                  *slapi_log_file = NULL;
+@@ -69,7 +73,11 @@
+               /*
+                * FIXME: could block
+                */
++#ifndef _WIN32
+               while ( lockf( fileno( fp ), F_LOCK, 0 ) != 0 ) {
++#else
++              while ( _locking( fileno ( fp ), _LK_LOCK, 0 ) != 0 ) {
++#endif
+                       /* DO NOTHING */ ;
+               }
+@@ -85,7 +93,11 @@
+               }
+               fflush( fp );
++#ifndef _WIN32
+               lockf( fileno( fp ), F_ULOCK, 0 );
++#else
++              _locking( fileno( fp ), _LK_UNLCK, 0 );
++#endif
+               fclose( fp );
+diff -ru openldap-2.3.43.orig/servers/slapd/slapi/slapi_utils.c openldap-2.3.43/servers/slapd/slapi/slapi_utils.c
+--- openldap-2.3.43.orig/servers/slapd/slapi/slapi_utils.c     2008-10-30 13:53:00 +0100
++++ openldap-2.3.43/servers/slapd/slapi/slapi_utils.c  2008-10-30 14:00:08 +0100
+@@ -1896,7 +1896,7 @@
+ slapi_timer_current_time( void ) 
+ {
+       static int      first_time = 1;
+-#if !defined (_WIN32)
++#if !defined (_WIN32) || defined(__PARITY__)
+       struct timeval  now;
+       unsigned long   ret;
+diff -ru openldap-2.3.43.orig/servers/slurpd/Makefile.in openldap-2.3.43/servers/slurpd/Makefile.in
+--- openldap-2.3.43.orig/servers/slurpd/Makefile.in    2008-10-30 13:53:00 +0100
++++ openldap-2.3.43/servers/slurpd/Makefile.in 2008-10-30 14:00:08 +0100
+@@ -13,14 +13,17 @@
+ ## top-level directory of the distribution or, alternatively, at
+ ## <http://www.OpenLDAP.org/license.html>.
+-PROGRAMS = slurpd
+-XPROGRAMS = sslurpd
++PROGRAMS = slurpd$(EXEEXT)
++XPROGRAMS = sslurpd$(EXEEXT)
+ XSRCS = version.c
+ NT_SRCS       = nt_svc.c
+ NT_OBJS = nt_svc.o ../../libraries/liblutil/slapdmsg.res
++PARITY_SRCS = $(NT_SRCS)
++PARITY_OBJS = nt_svc.o
++
+ SRCS  =       admin.c args.c ch_malloc.c config.c \
+               fm.c globals.c ldap_op.c lock.c main.c re.c \
+               reject.c replica.c replog.c ri.c rq.c sanity.c st.c \
+@@ -43,10 +46,10 @@
+ XXLIBS = $(SLURPD_LIBS) $(SECURITY_LIBS) $(LUTIL_LIBS)
+ XXXLIBS = $(LTHREAD_LIBS)
+-slurpd:       version.o
++slurpd$(EXEEXT):      version.o
+       $(LTLINK) -o $@ $(OBJS) version.o $(LIBS)
+-sslurpd:      version.o
++sslurpd$(EXEEXT):     version.o
+       $(LTLINK) -static -o $@ $(OBJS) version.o $(LIBS)
+ version.c: Makefile
+@@ -60,7 +63,7 @@
+       @-$(INSTALL) -m 700 -d $(DESTDIR)$(localstatedir)/openldap-slurp
+       @(                                                              \
+           for prg in $(PROGRAMS); do                                  \
+-              $(LTINSTALL) $(INSTALLFLAGS) $(STRIP) -m 755 $$prg$(EXEEXT)     \
++              $(LTINSTALL) $(INSTALLFLAGS) $(STRIP) -m 755 $$prg      \
+                   $(DESTDIR)$(libexecdir);                            \
+           done                                                        \
+       )