diff --git a/.cvsignore b/.cvsignore index e4244d8..c13d542 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -ejabberd-1.1.4.tar.gz +ejabberd-2.0.0-rc1.tar.gz diff --git a/ejab-446.patch b/ejab-446.patch new file mode 100644 index 0000000..4d5ecda --- /dev/null +++ b/ejab-446.patch @@ -0,0 +1,13 @@ +diff -up ejabberd-2.0.0/src/ejabberd_s2s_in.erl.Er12b-build ejabberd-2.0.0/src/ejabberd_s2s_in.erl +--- ejabberd-2.0.0/src/ejabberd_s2s_in.erl.Er12b-build 2008-01-16 11:33:27.000000000 +0100 ++++ ejabberd-2.0.0/src/ejabberd_s2s_in.erl 2008-01-19 23:50:11.000000000 +0100 +@@ -51,8 +51,7 @@ + -ifdef(SSL39). + -include_lib("ssl/include/ssl_pkix.hrl"). + -else. +--include_lib("ssl/include/PKIX1Explicit88.hrl"). +--include_lib("ssl/include/PKIX1Implicit88.hrl"). ++-include_lib("ssl/include/OTP-PKIX.hrl"). + -endif. + -include("XmppAddr.hrl"). + diff --git a/ejabberd-build.patch b/ejabberd-build.patch new file mode 100644 index 0000000..bf64edc --- /dev/null +++ b/ejabberd-build.patch @@ -0,0 +1,12 @@ +diff -up ejabberd-2.0.0-beta1/src/Makefile.in.MC-build ejabberd-2.0.0-beta1/src/Makefile.in +--- ejabberd-2.0.0-beta1/src/Makefile.in.MC-build 2007-12-24 15:33:44.000000000 +0100 ++++ ejabberd-2.0.0-beta1/src/Makefile.in 2007-12-26 18:58:29.000000000 +0100 +@@ -55,7 +55,7 @@ SODIR = $(PRIVDIR)/lib + MSGSDIR = $(PRIVDIR)/msgs + LOGDIR = $(DESTDIR)@prefix@/var/log/ejabberd + ETCDIR = $(DESTDIR)@prefix@/etc/ejabberd +-SBINDIR = $(DESTDIR)@prefix@/sbin ++SBINDIR = $(DESTDIR)@prefix@/usr/sbin + + ifeq ($(shell uname),Darwin) + DYNAMIC_LIB_CFLAGS = -fPIC -bundle -flat_namespace -undefined suppress diff --git a/ejabberd-ssl.patch b/ejabberd-ssl.patch new file mode 100644 index 0000000..e3e05ef --- /dev/null +++ b/ejabberd-ssl.patch @@ -0,0 +1,131 @@ +diff -urN ejabberd-1.1.4.orig/src/aclocal.m4 ejabberd-1.1.4/src/aclocal.m4 +--- ejabberd-1.1.4.orig/src/aclocal.m4 2006-04-23 17:35:14.000000000 +0200 ++++ ejabberd-1.1.4/src/aclocal.m4 2008-01-23 10:15:01.000000000 +0100 +@@ -79,14 +79,21 @@ + -author('alexey@sevcom.net'). + + -export([[start/0]]). ++-include_lib("ssl/include/ssl_pkix.hrl"). + + start() -> + EIDirS = code:lib_dir("erl_interface") ++ "\n", + EILibS = libpath("erl_interface") ++ "\n", + RootDirS = code:root_dir() ++ "\n", +- file:write_file("conftest.out", list_to_binary(EIDirS ++ EILibS ++ RootDirS)), ++ file:write_file("conftest.out", list_to_binary(EIDirS ++ EILibS ++ ssldef() ++ RootDirS)), + halt(). + ++-ifdef('id-pkix'). ++ssldef() -> "-DSSL39\n". ++-else. ++ssldef() "\n". ++-endif. ++ + %% return physical architecture based on OS/Processor + archname() -> + ArchStr = erlang:system_info(system_architecture), +@@ -135,6 +142,8 @@ + # Second line + ERLANG_EI_LIB=`cat conftest.out | head -n 2 | tail -n 1` + # Third line ++ ERLANG_SSL39=`cat conftest.out | head -n 3 | tail -n 1` ++ # End line + ERLANG_DIR=`cat conftest.out | tail -n 1` + + ERLANG_CFLAGS="-I$ERLANG_EI_DIR/include -I$ERLANG_DIR/usr/include" +@@ -142,6 +151,7 @@ + + AC_SUBST(ERLANG_CFLAGS) + AC_SUBST(ERLANG_LIBS) ++ AC_SUBST(ERLANG_SSL39) + AC_SUBST(ERLC) + AC_SUBST(ERL) + ]) +diff -urN ejabberd-1.1.4.orig/src/configure ejabberd-1.1.4/src/configure +--- ejabberd-1.1.4.orig/src/configure 2006-09-03 17:15:46.000000000 +0200 ++++ ejabberd-1.1.4/src/configure 2008-01-23 10:15:01.000000000 +0100 +@@ -648,6 +648,7 @@ + ERLC + ERL + ERLANG_CFLAGS ++ERLANG_SSL39 + ERLANG_LIBS + LIBICONV + CPP +@@ -2865,14 +2866,21 @@ + -author('alexey@sevcom.net'). + + -export([start/0]). ++-include_lib("ssl/include/ssl_pkix.hrl"). + + start() -> + EIDirS = code:lib_dir("erl_interface") ++ "\n", + EILibS = libpath("erl_interface") ++ "\n", + RootDirS = code:root_dir() ++ "\n", +- file:write_file("conftest.out", list_to_binary(EIDirS ++ EILibS ++ RootDirS)), ++ file:write_file("conftest.out", list_to_binary(EIDirS ++ EILibS ++ ssldef() ++ RootDirS)), + halt(). + ++-ifdef('id-pkix'). ++ssldef() -> "-DSSL39\n". ++-else. ++ssldef() -> "\n". ++-endif. ++ + %% return physical architecture based on OS/Processor + archname() -> + ArchStr = erlang:system_info(system_architecture), +@@ -2927,6 +2935,8 @@ + # Second line + ERLANG_EI_LIB=`cat conftest.out | head -n 2 | tail -n 1` + # Third line ++ ERLANG_SSL39=`cat conftest.out | head -n 3 | tail -n 1` ++ # End line + ERLANG_DIR=`cat conftest.out | tail -n 1` + + ERLANG_CFLAGS="-I$ERLANG_EI_DIR/include -I$ERLANG_DIR/usr/include" +@@ -6205,6 +6215,7 @@ + ERL!$ERL$ac_delim + ERLANG_CFLAGS!$ERLANG_CFLAGS$ac_delim + ERLANG_LIBS!$ERLANG_LIBS$ac_delim ++ERLANG_SSL39!$ERLANG_SSL39$ac_delim + LIBICONV!$LIBICONV$ac_delim + CPP!$CPP$ac_delim + GREP!$GREP$ac_delim +@@ -6237,7 +6248,7 @@ + LTLIBOBJS!$LTLIBOBJS$ac_delim + _ACEOF + +- if test `grep -c "$ac_delim\$" conf$$subs.sed` = 79; then ++ if test `grep -c "$ac_delim\$" conf$$subs.sed` = 80; then + break + elif $ac_last_try; then + { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 +diff -urN ejabberd-1.1.4.orig/src/ejabberd_s2s_in.erl ejabberd-1.1.4/src/ejabberd_s2s_in.erl +--- ejabberd-1.1.4.orig/src/ejabberd_s2s_in.erl 2006-06-19 04:32:57.000000000 +0200 ++++ ejabberd-1.1.4/src/ejabberd_s2s_in.erl 2008-01-23 10:16:25.000000000 +0100 +@@ -30,8 +30,12 @@ + + -include("ejabberd.hrl"). + -include("jlib.hrl"). ++-ifdef(SSL39). ++-include_lib("ssl/include/ssl_pkix.hrl"). ++-else. + -include_lib("ssl/include/PKIX1Explicit88.hrl"). + -include_lib("ssl/include/PKIX1Implicit88.hrl"). ++-endif. + -include("XmppAddr.hrl"). + + -define(DICT, dict). +diff -urN ejabberd-1.1.4.orig/src/Makefile.in ejabberd-1.1.4/src/Makefile.in +--- ejabberd-1.1.4.orig/src/Makefile.in 2008-01-23 10:11:01.000000000 +0100 ++++ ejabberd-1.1.4/src/Makefile.in 2008-01-23 10:15:01.000000000 +0100 +@@ -12,6 +12,8 @@ + EXPAT_LIBS = @EXPAT_LIBS@ + ERLANG_LIBS = @ERLANG_LIBS@ + ++ERLC_FLAGS += @ERLANG_SSL39@ ++ + # make debug=true to compile Erlang module with debug informations. + ifdef debug + ERLC_FLAGS+=+debug_info diff --git a/ejabberd.init b/ejabberd.init index 2714538..02967a5 100644 --- a/ejabberd.init +++ b/ejabberd.init @@ -8,6 +8,7 @@ # pidfile: /var/run/ejabberd.pid ### BEGIN INIT INFO +# Provides: ejabberd # Required-Start: network # Required-Stop: network # Short-Description: Start and stop ejabberd diff --git a/ejabberd.spec b/ejabberd.spec index e6c76dd..693168d 100644 --- a/ejabberd.spec +++ b/ejabberd.spec @@ -1,15 +1,14 @@ Name: ejabberd -Version: 1.1.4 -Release: 1%{?dist} +Version: 2.0.0 +Release: 0.3.rc1%{?dist} Summary: A distributed, fault-tolerant Jabber/XMPP server Group: Applications/Internet License: GPLv2 URL: http://ejabberd.jabber.ru/ -Source0: http://www.process-one.net/en/projects/ejabberd/download/%{version}/ejabberd-%{version}.tar.gz +Source0: http://www.process-one.net/en/projects/ejabberd/download/2.0.0-rc1/ejabberd-2.0.0-rc1.tar.gz Source1: ejabberd.init Source2: ejabberd.logrotate -Source3: inetrc # http://ejabberd.jabber.ru/ejabberdctl-extra Source4: https://svn.process-one.net/ejabberd-modules/mod_ctlextra/trunk/src/mod_ctlextra.erl @@ -18,11 +17,21 @@ Source4: https://svn.process-one.net/ejabberd-modules/mod_ctlextra/trunk/ Source5: ejabberd_auth_ad.erl Source6: mod_shared_roster_ad.erl Source7: mod_vcard_ad.erl - -Source8: ejabberdctl +# +#Source8: ejabberdctl Source9: ejabberdctl.pam Source10: ejabberdctl.apps +# originally from +# https://support.process-one.net/secure/attachment/11788/ejab-446.patch +Patch0: ejab-446.patch + +# local stuff +Patch1: ejabberd-build.patch + +# R12B +Patch2: ejabberd-ssl.patch + BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: expat-devel @@ -75,7 +84,10 @@ if [ "$1" -ge "1" ]; then fi %prep -%setup -q +%setup -q -n %{name}-%{version} +%patch0 -p1 -b .Er12b-build +%patch1 -p1 -b .MC-build +#%patch2 -p1 -b .R12B %{__perl} -pi -e "s!/var/lib/ejabberd!%{_libdir}/ejabberd-%{version}!g" src/Makefile.in %{__perl} -pi -e "s!/etc!%{_sysconfdir}!g" src/Makefile.in @@ -88,7 +100,7 @@ cp %{S:7} src %build pushd src -%configure --enable-odbc +%configure --enable-odbc --enable-debug make %{?_smp_mflags} popd pushd doc @@ -111,7 +123,7 @@ mkdir -p %{buildroot}/var/lib/ejabberd/spool mkdir -p %{buildroot}%{_bindir} ln -s consolehelper %{buildroot}%{_bindir}/ejabberdctl -install -D -p -m 0755 %{S:8} %{buildroot}%{_sbindir}/ejabberdctl +#install -D -p -m 0755 %{S:8} %{buildroot}%{_sbindir}/ejabberdctl install -D -p -m 0644 %{S:9} %{buildroot}%{_sysconfdir}/pam.d/ejabberdctl install -D -p -m 0644 %{S:10} %{buildroot}%{_sysconfdir}/security/console.apps/ejabberdctl @@ -125,7 +137,8 @@ cp -p %{S:2} %{buildroot}%{_sysconfdir}/logrotate.d/ejabberd %{__perl} -pi -e 's!\@libdir\@!%{_libdir}!g' %{buildroot}%{_initrddir}/ejabberd %{buildroot}%{_sysconfdir}/logrotate.d/ejabberd %{buildroot}%{_sbindir}/ejabberdctl %{__perl} -pi -e 's!\@version\@!%{version}!g' %{buildroot}%{_initrddir}/ejabberd %{buildroot}%{_sysconfdir}/logrotate.d/ejabberd %{buildroot}%{_sbindir}/ejabberdctl -cp %{S:3} %{buildroot}%{_sysconfdir}/ejabberd/inetrc +#cp %{S:3} %{buildroot}%{_sysconfdir}/ejabberd/inetrc +#mv %{buildroot}%{_sysconfdir}/ejabberd/{ejabberd.,}inetrc %clean rm -rf %{buildroot} @@ -136,6 +149,7 @@ rm -rf %{buildroot} %attr(750,ejabberd,ejabberd) %dir %{_sysconfdir}/ejabberd %attr(640,ejabberd,ejabberd) %config(noreplace) %{_sysconfdir}/ejabberd/ejabberd.cfg +%attr(640,ejabberd,ejabberd) %config(noreplace) %{_sysconfdir}/ejabberd/ejabberdctl.cfg %attr(640,ejabberd,ejabberd) %config(noreplace) %{_sysconfdir}/ejabberd/inetrc %{_initrddir}/ejabberd @@ -166,9 +180,28 @@ rm -rf %{buildroot} %files doc %defattr(-,root,root,-) -%doc ChangeLog COPYING TODO doc/*.pdf doc/*.html doc/*.png doc/release_notes_* +%doc ChangeLog COPYING doc/*.pdf doc/*.html doc/*.png doc/release_notes_* %changelog + +* Wed Jan 23 2008 Peter Lemenkov 2.0.0-0.3.rc1 +- Really enabled some previously disabled modules + +* Wed Jan 23 2008 Peter Lemenkov 2.0.0-0.2.rc1 +- Enabled some previously disabled modules + +* Sat Jan 19 2008 Matej Cepl 2.0.0-0.1.rc1 +- Upgrade to the current upsteram version. +- Make ejabberd.init LSB compliant (missing Provides: tag) + +* Thu Dec 27 2007 Matej Cepl 2.0.0-0.beta1.mc.1 +- Experimental build from the upstream betaversion. + +* Tue Dec 11 2007 Matej Cepl 1.1.4-2.fc9 +- rebuild against new ssl library. +- rebuild against the newest erlang (see Patch +- fix %%changelog + * Wed Sep 5 2007 Jeffrey C. Ollie - 1.1.4-1 - Drop LDAP patch - Update mod_ctlextra @@ -229,8 +262,8 @@ rm -rf %{buildroot} * Thu Jun 22 2006 Jeffrey C. Ollie - 1.1.1-6 - Split documentation off to a subpackage. -- Own %{_libdir}/ejabberd-%{version} -- Mark %{_sysconfdir}/logrotate.d/ejabberd as %config +- Own %%{_libdir}/ejabberd-%{version} +- Mark %%{_sysconfdir}/logrotate.d/ejabberd as %%config * Thu Jun 8 2006 Jeffrey C. Ollie - 1.1.1-5 - Patch the makefile so that it adds a soname to shared libs. diff --git a/ejabberdctl b/ejabberdctl deleted file mode 100644 index 148fea3..0000000 --- a/ejabberdctl +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -exec /sbin/runuser -s /bin/bash - ejabberd -c "erl -pa @libdir@/ejabberd-@version@/ebin -noinput -sname ejabberdctl -s ejabberd_ctl -extra $*" diff --git a/inetrc b/inetrc deleted file mode 100644 index 2d2f635..0000000 --- a/inetrc +++ /dev/null @@ -1 +0,0 @@ -{file, resolv, "/etc/resolv.conf"}. diff --git a/sources b/sources index 448ac33..03240bb 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -65e9cd346f11a28afbacfe1d7be3a33b ejabberd-1.1.4.tar.gz +a94390f3dd8a56ff9b866f002be72229 ejabberd-2.0.0-rc1.tar.gz