Difference between revisions of "Courier-Cygwin"

From YobiWiki
Jump to navigation Jump to search
Line 12: Line 12:
 
The package compilation fails, due to:
 
The package compilation fails, due to:
   
  +
# missing function (res_query) during configuration
  +
** See http://www.cygwin.com/ml/cygwin/2005-04/msg00926.html for details
 
# incorrect usage of EXEEXT in ''makedat/Makefile''
 
# incorrect usage of EXEEXT in ''makedat/Makefile''
 
# missing ''crypt'' library in main ''Makefile''
 
# missing ''crypt'' library in main ''Makefile''
   
To correct the first issue, apply the following [{{#file:courrier-authlib-0.61.0-cygwin.patch}} patch] before configuration.
+
To correct the first and the second issues, apply the following [{{#file:courrier-authlib-0.61.0-cygwin.patch}} patch] before configuration.
   
 
<source lang=diff>
 
<source lang=diff>
Line 46: Line 48:
 
--with-mailgroup=mkgroup-l-d --enable-shared=no
 
--with-mailgroup=mkgroup-l-d --enable-shared=no
   
Take a long pause... and when ready execute the following command. The ''LDFLAGS'' and ''LIBS'' variables are used to correct the 2nd issue.
+
Take a long pause... and when ready execute the following command. The ''LDFLAGS'' and ''LIBS'' variables are used to correct the 3rd issue.
   
 
$ make LDFLAGS=-lcrypt LIBS=-lcrypt
 
$ make LDFLAGS=-lcrypt LIBS=-lcrypt
 
During some test I also encounter a compilation error complaining about function res_query (See http://www.cygwin.com/ml/cygwin/2005-04/msg00926.html for details). You'll need to change the script ''configure'' to include <sys/types.h> before <netinet/in.h> in the section testing res_query. TODO: provide a patch.
 
   
 
=Maildir=
 
=Maildir=

Revision as of 17:29, 21 October 2008

Courier-IMAP

Download and untar package courier-imap in your favorite sandbox. Version used: 4.4.1.20080920

Courier-IMAP requires the installation of the Courier Authentication Library

Courier Authentication Library

Download and untar courier-authlib in your favorite sandbox. Version used: 0.61.0

The package compilation fails, due to:

  1. missing function (res_query) during configuration
  1. incorrect usage of EXEEXT in makedat/Makefile
  2. missing crypt library in main Makefile

To correct the first and the second issues, apply the following [{{#file:courrier-authlib-0.61.0-cygwin.patch}} patch] before configuration.

--- courier-authlib-0.61.0/makedat/Makefile.in  2008-05-24 16:21:09.000000000 +0200
+++ courier-authlib-0.61.0-cygwin/makedat/Makefile.in   2008-10-21 16:02:38.709166700 +0200
@@ -182,7 +182,7 @@
 libexecdir = @libexecdir@
 localedir = @localedir@
 localstatedir = @localstatedir@
-makedatprog_target = @makedatprog_target@
+makedatprog_target = @makedatprog_target@$(EXEEXT)
 makedatprogpath = @makedatprogpath@
 mandir = @mandir@
 mkdir_p = @mkdir_p@
@@ -198,7 +198,7 @@
 target_alias = @target_alias@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-noinst_PROGRAMS = @makedatprog_target@
+noinst_PROGRAMS = @makedatprog_target@$(EXEEXT)
 makedatprog_SOURCES = makedatprog.c
 makedatprog_DEPENDENCIES = @dblibrary@
 makedatprog_LDADD = @dblibrary@

Configure the package without most authentication modules keeping only userdb. Replace mailuser by an existing user name (in you /etc/passwd file). Note: I used my own username.

$ ./configure --disable-root-check --with-waitfunc=wait --without-authpam --without-authldap --without-authpwd \
--without-authshadow --without-custom --without-authpipe --without-authmysql --without-authpgsql --with-mailuser=mailuser \
--with-mailgroup=mkgroup-l-d --enable-shared=no

Take a long pause... and when ready execute the following command. The LDFLAGS and LIBS variables are used to correct the 3rd issue.

$ make LDFLAGS=-lcrypt LIBS=-lcrypt

Maildir

maildirmake is part of the courier-imap package