From 3c78eaff96d7ba286bb0404b9bdc1a2c6aca7ec0 Mon Sep 17 00:00:00 2001 From: "W. Michael Petullo" Date: Fri, 18 Jul 2014 15:05:59 -0400 Subject: [PATCH] Copy openldap package from old repository Signed-off-by: W. Michael Petullo --- libs/openldap/Makefile | 150 ++++++++ libs/openldap/files/ldap.init | 19 ++ .../patches/001-automake-compat.patch | 323 ++++++++++++++++++ libs/openldap/patches/020-autofs-schema.patch | 26 ++ libs/openldap/patches/750-no-strip.patch | 22 ++ 5 files changed, 540 insertions(+) create mode 100644 libs/openldap/Makefile create mode 100644 libs/openldap/files/ldap.init create mode 100644 libs/openldap/patches/001-automake-compat.patch create mode 100644 libs/openldap/patches/020-autofs-schema.patch create mode 100644 libs/openldap/patches/750-no-strip.patch diff --git a/libs/openldap/Makefile b/libs/openldap/Makefile new file mode 100644 index 000000000..5344080da --- /dev/null +++ b/libs/openldap/Makefile @@ -0,0 +1,150 @@ +# +# Copyright (C) 2006-2012 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=openldap +PKG_VERSION:=2.4.39 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tgz +PKG_SOURCE_URL:=ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/ \ + ftp://sunsite.cnlab-switch.ch/mirror/OpenLDAP/openldap-release/ \ + ftp://ftp.nl.uu.net/pub/unix/db/openldap/openldap-release/ \ + ftp://ftp.plig.org/pub/OpenLDAP/openldap-release/ +PKG_MD5SUM:=b0d5ee4b252c841dec6b332d679cf943 + +PKG_FIXUP:=autoreconf + +include $(INCLUDE_DIR)/package.mk + +define Package/openldap/Default + TITLE:=LDAP implementation + URL:=http://www.openldap.org/ + MAINTAINER:=W. Michael Petullo +endef + +define Package/openldap/Default/description + OpenLDAP Software is an open source implementation of the + Lightweight Directory Access Protocol (LDAP). +endef + +define Package/libopenldap + $(call Package/openldap/Default) + SECTION:=libs + CATEGORY:=Libraries + DEPENDS:=+libopenssl +libsasl2 +libpthread + TITLE+= (libraries) +endef + +define Package/libopenldap/description + $(call Package/openldap/Default/description) + This package contains the shared LDAP client libraries, needed by other programs. +endef + +define Package/libopenldap/conffiles +/etc/openldap/ldap.conf +endef + +define Package/openldap-utils + $(call Package/openldap/Default) + SECTION:=utils + CATEGORY:=Utilities + DEPENDS:=+libopenldap + TITLE+= (utilities) +endef + +define Package/openldap-utils/description + $(call Package/openldap/Default/description) + This package contains client programs required to access LDAP servers. +endef + +define Package/openldap-server + $(call Package/openldap/Default) + SECTION:=net + CATEGORY:=Network + DEPENDS:=+libopenldap +libuuid + TITLE+= (server) +endef + +define Package/openldap-server/description + $(call Package/openldap/Default/description) + This package contains server programs required to provide LDAP services. +endef + +define Package/openldap-server/conffiles +/etc/openldap/slapd.conf +endef + +TARGET_CFLAGS += $(FPIC) -lpthread + +CONFIGURE_ARGS += \ + --enable-shared \ + --enable-static \ + --disable-debug \ + --enable-dynamic \ + --enable-syslog \ + --disable-local \ + --disable-slurpd \ + --with-cyrus-sasl \ + --without-fetch \ + --with-threads \ + --with-tls \ + --with-yielding_select="yes" \ + --without-cyrus-sasl \ + --without-threads \ + --without-tls \ + --enable-null \ + --disable-bdb \ + --disable-hdb \ + --disable-monitor \ + --disable-relay + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + HOSTCC="$(HOSTCC)" \ + depend all install +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/{lber,ldap}*.h $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{lber,ldap}*.{a,so*} $(1)/usr/lib/ +endef + +define Package/libopenldap/install + $(INSTALL_DIR) $(1)/etc/openldap + $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/openldap/ldap.conf $(1)/etc/openldap/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{lber,ldap}*.so.* $(1)/usr/lib/ +endef + +define Package/openldap-utils/install + $(INSTALL_DIR) $(1)/usr/bin + $(CP) $(PKG_INSTALL_DIR)/usr/bin/ldap* $(1)/usr/bin/ +endef + +define Package/openldap-server/install + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/ldap.init $(1)/etc/init.d/ldap + $(INSTALL_DIR) $(1)/etc/openldap/schema + $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/openldap/schema/* $(1)/etc/openldap/schema/ + $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/openldap/slapd.conf $(1)/etc/openldap/ + $(INSTALL_DIR) $(1)/usr/sbin + # XXX: OpenLDAP installs slapd into libexecdir, not sbindir: + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/slapd $(1)/usr/sbin/ + # XXX: switch default backend to ldif, since bdb is disabled + $(SED) 's|^\(database\)\([ \t]\+\)bdb|\1\2ldif|g' \ + -e 's|^\(index\)|#\1|g' \ + $(1)/etc/openldap/slapd.conf +endef + +$(eval $(call BuildPackage,libopenldap)) +$(eval $(call BuildPackage,openldap-utils)) +$(eval $(call BuildPackage,openldap-server)) diff --git a/libs/openldap/files/ldap.init b/libs/openldap/files/ldap.init new file mode 100644 index 000000000..b30bbf195 --- /dev/null +++ b/libs/openldap/files/ldap.init @@ -0,0 +1,19 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2009-2011 OpenWrt.org + +START=60 + +SERVICE_USE_PID=1 + +start() { + mkdir -m 0755 -p /var/openldap-data + service_start /usr/sbin/slapd +} + +stop() { + service_stop /usr/sbin/slapd +} + +reload() { + service_reload /usr/sbin/slapd +} diff --git a/libs/openldap/patches/001-automake-compat.patch b/libs/openldap/patches/001-automake-compat.patch new file mode 100644 index 000000000..71cdebee7 --- /dev/null +++ b/libs/openldap/patches/001-automake-compat.patch @@ -0,0 +1,323 @@ +--- /dev/null ++++ b/Makefile.am +@@ -0,0 +1 @@ ++SUBDIRS = include libraries clients servers tests doc +--- a/libraries/Makefile.in ++++ b/libraries/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SUBDIRS= \ + liblutil \ + liblber \ +--- a/libraries/liblber/Makefile.in ++++ b/libraries/liblber/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + LIBRARY = liblber.la + + NT_SRCS = nt_err.c +--- a/libraries/libldap/Makefile.in ++++ b/libraries/libldap/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + LIBRARY = libldap.la + + PROGRAMS = apitest dntest ftest ltest urltest +--- a/libraries/libldap_r/Makefile.in ++++ b/libraries/libldap_r/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + LIBRARY = libldap_r.la + + PROGRAMS = apitest ltest +--- a/libraries/liblunicode/Makefile.in ++++ b/libraries/liblunicode/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + LIBRARY = liblunicode.a + + XXDIR = $(srcdir)/ucdata/ +--- a/libraries/liblutil/Makefile.in ++++ b/libraries/liblutil/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + LIBRARY = liblutil.a + PROGRAM = testavl + +--- a/libraries/librewrite/Makefile.in ++++ b/libraries/librewrite/Makefile.in +@@ -16,6 +16,8 @@ + ## Copyright 2000-2001 Pierangelo Masarati + ## + ++SHELL = @SHELL@ ++ + SRCS = config.c context.c info.c ldapmap.c map.c params.c rule.c \ + session.c subst.c var.c xmap.c \ + parse.c rewrite.c +--- a/clients/tools/Makefile.in ++++ b/clients/tools/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SRCS = ldapsearch.c ldapmodify.c ldapdelete.c ldapmodrdn.c \ + ldappasswd.c ldapwhoami.c ldapcompare.c \ + ldapexop.c ldapurl.c common.c +--- a/servers/slapd/Makefile.in ++++ b/servers/slapd/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SLAPTOOLS=slapadd slapcat slapdn slapindex slappasswd slaptest slapauth slapacl slapschema + PROGRAMS=slapd $(SLAPTOOLS) + XPROGRAMS=sslapd libbackends.a .backend liboverlays.a +--- a/servers/slapd/overlays/Makefile.in ++++ b/servers/slapd/overlays/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SRCS = overlays.c \ + accesslog.c \ + auditlog.c \ +--- a/tests/progs/Makefile.in ++++ b/tests/progs/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + PROGRAMS = slapd-tester slapd-search slapd-read slapd-addel slapd-modrdn \ + slapd-modify slapd-bind slapd-mtread ldif-filter + +--- a/servers/slapd/back-bdb/Makefile.in ++++ b/servers/slapd/back-bdb/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SRCS = init.c tools.c config.c \ + add.c bind.c compare.c delete.c modify.c modrdn.c search.c \ + extended.c referral.c operational.c \ +--- a/servers/slapd/back-dnssrv/Makefile.in ++++ b/servers/slapd/back-dnssrv/Makefile.in +@@ -18,6 +18,8 @@ + # The DNSSRV backend was written by Kurt D. Zeilenga. + # + ++SHELL = @SHELL@ ++ + SRCS = init.c bind.c search.c config.c referral.c + OBJS = init.lo bind.lo search.lo config.lo referral.lo + +--- a/servers/slapd/back-hdb/Makefile.in ++++ b/servers/slapd/back-hdb/Makefile.in +@@ -15,6 +15,8 @@ + # + ## Copyright 2003 Howard Chu @ Symas Corp. See master COPYRIGHT file for terms. + ++SHELL = @SHELL@ ++ + XXDIR = $(srcdir)/../back-bdb + + XXSRCS = init.c tools.c config.c \ +--- a/servers/slapd/back-ldap/Makefile.in ++++ b/servers/slapd/back-ldap/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SRCS = init.c config.c search.c bind.c unbind.c add.c compare.c \ + delete.c modify.c modrdn.c extended.c chain.c \ + distproc.c monitor.c pbind.c +--- a/servers/slapd/back-ldif/Makefile.in ++++ b/servers/slapd/back-ldif/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SRCS = ldif.c + OBJS = ldif.lo + +--- a/servers/slapd/back-mdb/Makefile.in ++++ b/servers/slapd/back-mdb/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SRCS = init.c tools.c config.c \ + add.c bind.c compare.c delete.c modify.c modrdn.c search.c \ + extended.c operational.c \ +--- a/servers/slapd/back-meta/Makefile.in ++++ b/servers/slapd/back-meta/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SRCS = init.c config.c search.c bind.c unbind.c add.c compare.c \ + delete.c modify.c modrdn.c suffixmassage.c map.c \ + conn.c candidates.c dncache.c +--- a/servers/slapd/back-monitor/Makefile.in ++++ b/servers/slapd/back-monitor/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SRCS = init.c search.c compare.c modify.c bind.c \ + operational.c \ + cache.c entry.c \ +--- a/servers/slapd/back-ndb/Makefile.in ++++ b/servers/slapd/back-ndb/Makefile.in +@@ -17,6 +17,8 @@ + ## This work was initially developed by Howard Chu for inclusion + ## in OpenLDAP Software. This work was sponsored by MySQL. + ++SHELL = @SHELL@ ++ + SRCS = init.cpp tools.cpp config.cpp ndbio.cpp \ + add.cpp bind.cpp compare.cpp delete.cpp modify.cpp modrdn.cpp search.cpp + +--- a/servers/slapd/back-null/Makefile.in ++++ b/servers/slapd/back-null/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SRCS = null.c + OBJS = null.lo + +--- a/servers/slapd/back-passwd/Makefile.in ++++ b/servers/slapd/back-passwd/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SRCS = search.c config.c init.c + OBJS = search.lo config.lo init.lo + +--- a/servers/slapd/back-perl/Makefile.in ++++ b/servers/slapd/back-perl/Makefile.in +@@ -14,6 +14,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SRCS = init.c search.c close.c config.c bind.c compare.c \ + modify.c add.c modrdn.c delete.c + OBJS = init.lo search.lo close.lo config.lo bind.lo compare.lo \ +--- a/servers/slapd/back-relay/Makefile.in ++++ b/servers/slapd/back-relay/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SRCS = init.c op.c + OBJS = init.lo op.lo + +--- a/servers/slapd/back-shell/Makefile.in ++++ b/servers/slapd/back-shell/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SRCS = init.c config.c fork.c search.c bind.c unbind.c add.c \ + delete.c modify.c modrdn.c compare.c result.c + OBJS = init.lo config.lo fork.lo search.lo bind.lo unbind.lo add.lo \ +--- a/servers/slapd/back-sock/Makefile.in ++++ b/servers/slapd/back-sock/Makefile.in +@@ -17,6 +17,8 @@ + ## This work was initially developed by Brian Candler for inclusion + ## in OpenLDAP Software. + ++SHELL = @SHELL@ ++ + SRCS = init.c config.c opensock.c search.c bind.c unbind.c add.c \ + delete.c modify.c modrdn.c compare.c result.c + OBJS = init.lo config.lo opensock.lo search.lo bind.lo unbind.lo add.lo \ +--- a/servers/slapd/back-sql/Makefile.in ++++ b/servers/slapd/back-sql/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + SRCS = init.c config.c search.c bind.c compare.c operational.c \ + entry-id.c schema-map.c sql-wrap.c modify.c util.c \ + add.c delete.c modrdn.c api.c +--- a/servers/slapd/shell-backends/Makefile.in ++++ b/servers/slapd/shell-backends/Makefile.in +@@ -13,6 +13,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + PROGRAMS = passwd-shell + + SRCS = passwd-shell.c shellutil.c +--- a/servers/slapd/slapi/Makefile.in ++++ b/servers/slapd/slapi/Makefile.in +@@ -14,6 +14,8 @@ + ## top-level directory of the distribution or, alternatively, at + ## . + ++SHELL = @SHELL@ ++ + LIBRARY = libslapi.la + + #all-common: $(LIBRARY) $(PROGRAMS) diff --git a/libs/openldap/patches/020-autofs-schema.patch b/libs/openldap/patches/020-autofs-schema.patch new file mode 100644 index 000000000..11c73f555 --- /dev/null +++ b/libs/openldap/patches/020-autofs-schema.patch @@ -0,0 +1,26 @@ +--- /dev/null ++++ b/servers/slapd/schema/autofs.schema +@@ -0,0 +1,23 @@ ++attributetype ( 1.3.6.1.1.1.1.31 NAME 'automountMapName' ++ DESC 'Automount map name' ++ EQUALITY caseExactMatch ++ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE ) ++ ++attributetype ( 1.3.6.1.1.1.1.32 NAME 'automountKey' ++ DESC 'Automount key value' ++ EQUALITY caseExactMatch ++ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE ) ++ ++attributetype ( 1.3.6.1.1.1.1.33 NAME 'automountInformation' ++ DESC 'Automount information' ++ EQUALITY caseExactMatch ++ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE ) ++ ++objectclass ( 1.3.6.1.1.1.2.16 NAME 'automountMap' SUP top STRUCTURAL ++ MUST ( automountMapName ) ++ MAY ( description ) ) ++ ++objectclass ( 1.3.6.1.1.1.2.17 NAME 'automount' SUP top STRUCTURAL ++ DESC 'Automount' ++ MUST ( automountKey $ automountInformation ) ++ MAY description ) diff --git a/libs/openldap/patches/750-no-strip.patch b/libs/openldap/patches/750-no-strip.patch new file mode 100644 index 000000000..a70aacc90 --- /dev/null +++ b/libs/openldap/patches/750-no-strip.patch @@ -0,0 +1,22 @@ +--- a/clients/tools/Makefile.in ++++ b/clients/tools/Makefile.in +@@ -122,7 +122,7 @@ install-local: FORCE + -$(MKDIR) $(DESTDIR)$(bindir) + @( \ + for prg in $(PROGRAMS); do \ +- $(LTINSTALL) $(INSTALLFLAGS) $(STRIP) -m 755 $$prg$(EXEEXT) \ ++ $(LTINSTALL) $(INSTALLFLAGS) -m 755 $$prg$(EXEEXT) \ + $(DESTDIR)$(bindir); \ + done \ + ) +--- a/servers/slapd/Makefile.in ++++ b/servers/slapd/Makefile.in +@@ -380,7 +380,7 @@ install-local-srv: install-slapd install + install-slapd: FORCE + -$(MKDIR) $(DESTDIR)$(libexecdir) + -$(MKDIR) $(DESTDIR)$(localstatedir)/run +- $(LTINSTALL) $(INSTALLFLAGS) $(STRIP) -m 755 \ ++ $(LTINSTALL) $(INSTALLFLAGS) -m 755 \ + slapd$(EXEEXT) $(DESTDIR)$(libexecdir) + @for i in $(SUBDIRS); do \ + if test -d $$i && test -f $$i/Makefile ; then \