{"id":366,"date":"2012-07-06T12:15:37","date_gmt":"2012-07-06T12:15:37","guid":{"rendered":""},"modified":"2016-01-11T12:52:48","modified_gmt":"2016-01-11T11:52:48","slug":"pigeonhole-compilation","status":"publish","type":"post","link":"https:\/\/drfugazi.eu.org\/en\/pigeonhole-compilation\/","title":{"rendered":"Pigeonhole &#8211; compilation and installation"},"content":{"rendered":"<p><a href=\"https:\/\/i0.wp.com\/drfugazi.eu.org\/wp-content\/uploads\/2012\/07\/dovecot.gif\" data-rel=\"lightbox-gallery-0\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"552\" data-permalink=\"https:\/\/drfugazi.eu.org\/en\/pigeonhole-compilation\/dovecot\/\" data-orig-file=\"https:\/\/i0.wp.com\/drfugazi.eu.org\/wp-content\/uploads\/2012\/07\/dovecot.gif?fit=125%2C60&amp;ssl=1\" data-orig-size=\"125,60\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"dovecot\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/drfugazi.eu.org\/wp-content\/uploads\/2012\/07\/dovecot.gif?fit=125%2C60&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/drfugazi.eu.org\/wp-content\/uploads\/2012\/07\/dovecot.gif?fit=125%2C60&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/drfugazi.eu.org\/wp-content\/uploads\/2012\/07\/dovecot.gif?resize=125%2C60\" alt=\"dovecot\" width=\"125\" height=\"60\" class=\"alignleft size-full wp-image-552\" data-recalc-dims=\"1\" \/><\/a>You can download Pigeonhole for Dovecot from http:\/\/pigeonhole.dovecot.org\/download.html<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\n% wget http:\/\/www.rename-it.nl\/dovecot\/2.1\/dovecot-2.1-pigeonhole-0.3.1.tar.gz\r\n% tar -xf dovecot-2.1-pigeonhole-0.3.1.tar.gz\r\n<\/pre>\n<p>This is my script to configure and compile Pigeonhole 0.3.1 for Dovecot 2.1:<br \/>\n<!--more--><\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\n#!\/bin\/sh\r\n#\r\n\r\n# for GCC:\r\n#CC=gcc\r\n#CFLAGS=&quot;-O2 -mcpu=v9&quot;\r\n#MAKE=gmake\r\n#\r\n# for Sun Studio\r\nCC=cc\r\nCXX=CC\r\nCFLAGS=&quot;-xtarget=native -xO3 -xautopar&quot;\r\nCXXFLAGS=$CFLAGS\r\nCPPFLAGS=&quot;-I\/usr\/local\/openldap\/include -I\/usr\/local\/ssl\/include -I\/usr\/local\/include&quot;\r\n#LDFLAGS=&quot;-L\/usr\/local\/lib -R\/usr\/local\/lib&quot;\r\nLDFLAGS=&quot;-L\/usr\/local\/openldap\/lib -R\/usr\/local\/openldap\/lib -L\/usr\/local\/ssl\/lib -R\/usr\/local\/ssl\/lib -L\/usr\/local\/lib -R\/usr\/local\/lib&quot;\r\nMAKE=dmake\r\n#DMAKE_MODE=serial\r\n\r\nexport CC CFLAGS CPPFLAGS MAKE DMAKE_MODE\r\nexport CXX CXXFLAGS LDFLAGS LIBS\r\n\r\n# $CC -v\r\n$CC -V\r\nset|grep PATH\r\nset|grep FLAGS\r\n\r\nDIR=&quot;dovecot-2.1-pigeonhole&quot;\r\nVER=&quot;0.3.1&quot;\r\nDOVECOT=&quot;dovecot-2.1.8&quot;\r\n\r\ncd $DIR-$VER\r\n\r\ntn=&quot;n&quot;\r\necho &quot;=============================================&quot;\r\necho &quot;$MAKE clean &#x5B;y|n] ?&quot;\r\nread tn\r\nif &#x5B; &quot;$tn&quot; = &quot;Y&quot; ] || &#x5B; &quot;$tn&quot; = &quot;y&quot; ]; then\r\n  $MAKE distclean || $MAKE realclean || $MAKE clean\r\n\r\n  rm -f config.status\r\n  rm -f config.log\r\nfi;\r\n\r\ntn=&quot;n&quot;\r\necho &quot;=============================================&quot;\r\necho &quot;configure &#x5B;y|n] ?&quot;\r\nread tn\r\nif &#x5B; &quot;$tn&quot; = &quot;Y&quot; ] || &#x5B; &quot;$tn&quot; = &quot;y&quot; ]; then\r\n\t.\/configure \\\r\n\t--prefix=\/usr\/local\/$DOVECOT \\\r\n\t--infodir=\/usr\/local\/info --mandir=\/usr\/local\/man \\\r\n\t--with-dovecot=&quot;..\/$DOVECOT&quot; \\\r\n\r\nfi;\r\n\r\ntn=&quot;n&quot;\r\necho &quot;=============================================&quot;\r\necho &quot;$MAKE &#x5B;y|n] ?&quot;\r\nread tn\r\nif &#x5B; &quot;$tn&quot; = &quot;Y&quot; ] || &#x5B; &quot;$tn&quot; = &quot;y&quot; ]; then\r\n  $MAKE &amp;&amp; echo &quot;Compillation successful&quot;\r\nfi;\r\n<\/pre>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\n% .\/drf_sieve-0.3.1_conf\r\ncc: Sun C 5.10 SunOS_sparc 2009\/06\/03\r\nusage: cc &#x5B; options] files.  Use 'cc -flags' for details\r\nMANPATH=\/usr\/local\/share\/man:\/usr\/local\/man:\/usr\/share\/man\r\nPATH=\/usr\/local\/bin:\/usr\/bin:\/usr\/ccs\/bin\r\nCFLAGS=-xtarget=native -xO3 -xautopar\r\nCPPFLAGS=-I\/usr\/local\/openldap\/include -I\/usr\/local\/ssl\/include -I\/usr\/local\/include\r\nCXXFLAGS=-xtarget=native -xO3 -xautopar\r\nLDFLAGS=-L\/usr\/local\/openldap\/lib -R\/usr\/local\/openldap\/lib -L\/usr\/local\/ssl\/lib -R\/usr\/local\/ssl\/lib -L\/usr\/local\/lib -R\/usr\/local\/lib\r\n=============================================\r\ndmake clean &#x5B;y|n] ?\r\nn\r\n=============================================\r\nconfigure &#x5B;y|n] ?\r\ny\r\nchecking for a BSD-compatible install... \/usr\/local\/bin\/install -c\r\nchecking whether build environment is sane... yes\r\nchecking for a thread-safe mkdir -p... \/usr\/local\/bin\/mkdir -p\r\nchecking for gawk... gawk\r\nchecking whether dmake sets $(MAKE)... yes\r\n...\r\nconfig.status: creating pigeonhole-config.h\r\nconfig.status: executing depfiles commands\r\nconfig.status: executing libtool commands\r\n=============================================\r\n<\/pre>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\ndmake &#x5B;y|n] ?\r\ny\r\ndmake  all-recursive\r\nMaking all in src\r\nMaking all in lib-sieve\r\nMaking all in plugins\r\nMaking all in vacation\r\nsource='cmd-vacation.c' object='cmd-vacation.lo' libtool=yes \\\r\nDEPDIR=.deps depmode=none \/bin\/bash ..\/..\/..\/..\/depcomp \\\r\n\/bin\/bash ..\/..\/..\/..\/libtool --tag=CC    --mode=compile cc -DHAVE_CONFIG_H -I. -I..\/..\/..\/..   -I.\/..\/..\/  -I\/home\/soft\/dovecot\/dovecot-2.1.8 -I\/home\/soft\/dovecot\/dovecot-2.1.8\/src\/lib -I\/home\/soft\/dovecot\/dovecot-2.1.8\/src\/lib-dict -I\/home\/soft\/dovecot\/dovecot-2.1.8\/src\/lib-dns -I\/home\/soft\/dovecot\/dovecot-2.1.8\/src\/lib-mail -I\/home\/soft\/dovecot\/dovecot-2.1.8\/src\/lib-imap -I\/home\/soft\/dovecot\/dovecot-2.1.8\/src\/lib-fs -I\/home\/soft\/dovecot\/dovecot-2.1.8\/src\/lib-charset -I\/home\/soft\/dovecot\/dovecot-2.1.8\/src\/lib-index -I\/home\/soft\/dovecot\/dovecot-2.1.8\/src\/lib-storage -I\/home\/soft\/dovecot\/dovecot-2.1.8\/src\/lib-storage\/index -I\/home\/soft\/dovecot\/dovecot-2.1.8\/src\/lib-storage\/index\/raw -I\/usr\/local\/openldap\/include -I\/usr\/local\/ssl\/include -I\/usr\/local\/include  -xO3 -xautopar -c -o cmd-vacation.lo cmd-vacation.c\r\n...\r\nMaking all in example-config\r\nMaking all in conf.d\r\nMaking all in rfc\r\ndmake: Fatal error in reader: Makefile, line 392: Unexpected end of line seen\r\n<\/pre>\n<p>If you see a message like above, change your <code>make<\/code> (here <code>dmake<\/code>) to GNU make (<code>gmake<\/code>) and run compilation again:<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\n% gsed -i &quot;s\/^MAKE=dmake\/MAKE=gmake\/&quot; drf_sieve-0.3.1_conf\r\n% .\/drf_sieve-0.3.1_conf\r\n<\/pre>\n<p>Installation after <code>su<\/code> (<code>sudo<\/code>).<\/p>","protected":false},"excerpt":{"rendered":"<p>You can download Pigeonhole for Dovecot from http:\/\/pigeonhole.dovecot.org\/download.html<\/p>\n<pre><code>\r\n% wget http:\/\/www.rename-it.nl\/dovecot\/2.1\/dovecot-2.1-pigeonhole-0.3.1.tar.gz\r\n% tar -xf dovecot-2.1-pigeonhole-0.3.1.tar.gz\r\n<\/code><\/pre>\n<p>This is my script to configure and compile Pigeonhole 0.3.1 for Dovecot 2.1<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_newsletter_tier_id":0,"footnotes":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[123,110],"tags":[12,22,20,11],"jetpack_publicize_connections":[],"acf":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p7M9Tz-5U","jetpack-related-posts":[{"id":217,"url":"https:\/\/drfugazi.eu.org\/en\/dovecot-20-sieve-020\/","url_meta":{"origin":366,"position":0},"title":"dovecot-2.0-sieve-0.2.0","author":"drfugazi","date":"Wednesday September 22nd, 2010","format":false,"excerpt":"Interpreter Pigeonhole Sieve Projekt Pigeonhole dostarcza Sieve jako plugina dla Dovecotowego agenta dostarczania poczty (LDA) jak r\u00f3wnie\u017c us\u0142ugi LMTP. Plugin implementuje interpreter j\u0119zyka Sieve, kt\u00f3ry pozwala na filtrowanie przychodz\u0105cych wiadomo\u015bci u\u017cywaj\u0105c skrypt\u00f3w zgodnych ze specyfikacj\u0105 j\u0119zyka Sieve (RFC 5228). Skrypty Sieve mog\u0105 by\u0107 modyfikowane przez u\u017cytkownik\u00f3w i dzi\u0119ki temu u\u017cytkownik\u2026","rel":"","context":"In \"Dovecot\"","block_context":{"text":"Dovecot","link":"https:\/\/drfugazi.eu.org\/en\/tag\/dovecot\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":207,"url":"https:\/\/drfugazi.eu.org\/en\/dovecot-12-sieve-0117\/","url_meta":{"origin":366,"position":1},"title":"dovecot-1.2-sieve-0.1.17","author":"drfugazi","date":"Friday August 13th, 2010","format":false,"excerpt":"Dovecot Sieve jest kompletnie przepisan\u0105 implementacj\u0105 Sieve dla Dovecota w wersji 1.2 i nowszych. G\u0142\u00f3wnym powodem przepisania silnika Sieve by\u0142o zapewnienie bardziej niezawodnego wykonywania skryptu oraz lepszych komunikat\u00f3w b\u0142\u0119d\u00f3w dla u\u017cytkownik\u00f3w i administrator\u00f3w systemu. Ta implementacja jest cz\u0119\u015bci\u0105 Projektu Pigeonhole. \u0179r\u00f3d\u0142o: http:\/\/wiki.dovecot.org\/LDA\/Sieve\/Dovecot \u015aci\u0105gni\u0119cie \u017ar\u00f3de\u0142, rozpakowanie i edycja skryptu do konfiguracji\u2026","rel":"","context":"In \"Dovecot\"","block_context":{"text":"Dovecot","link":"https:\/\/drfugazi.eu.org\/en\/tag\/dovecot\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":220,"url":"https:\/\/drfugazi.eu.org\/en\/dovecot-20-sieve-020\/","url_meta":{"origin":366,"position":2},"title":"dovecot-2.0-sieve-0.2.0","author":"drfugazi","date":"Wednesday October  6th, 2010","format":false,"excerpt":"Pigeonhole - Sieve Support for Dovecot Projekt Pigeonhole is the name of the project that adds support for the Sieve language (RFC 5228) and the ManageSieve protocol (RFC 5804) to the Dovecot Secure IMAP Server. In the literal sense, a pigeonhole is a a hole or recess inside a dovecot\u2026","rel":"","context":"In \"Mail system\"","block_context":{"text":"Mail system","link":"https:\/\/drfugazi.eu.org\/en\/tag\/mail_system\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":209,"url":"https:\/\/drfugazi.eu.org\/en\/dovecot-12-sieve-0117\/","url_meta":{"origin":366,"position":3},"title":"dovecot-1.2-sieve-0.1.17","author":"drfugazi","date":"Friday August 13th, 2010","format":false,"excerpt":"Dovecot Sieve is a fully rewritten Sieve implementation for Dovecot v1.2 and newer. The main reason for rewriting the Sieve engine was to provide more reliable script execution and to provide better error messages to users and system administrators. This implementation is part of the Pigeonhole project. Source: http:\/\/wiki.dovecot.org\/LDA\/Sieve\/Dovecot At\u2026","rel":"","context":"In \"Mail system\"","block_context":{"text":"Mail system","link":"https:\/\/drfugazi.eu.org\/en\/tag\/mail_system\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":206,"url":"https:\/\/drfugazi.eu.org\/en\/dovecot-1213\/","url_meta":{"origin":366,"position":4},"title":"dovecot-1.2.13","author":"drfugazi","date":"Friday August 13th, 2010","format":false,"excerpt":"Dovecot jest Open Sourceowym serwerem IMAP i POP3 dla system\u00f3w Linux\/UNIX, napisanym z naciskiem na bezpiecze\u0144stwo. Dovecot jest doskona\u0142ym wyborem zar\u00f3wno dla ma\u0142ych jak i wielkich instalacji. Jest szybki, \u0142atwy do ustawienia, nie wymaga specjalnej administracji i u\u017cywa niewiele pami\u0119ci. \u0179r\u00f3d\u0142o: http:\/\/dovecot.org\/ Poni\u017cej znajdziecie zapis sesji konfiguracji i kompilacji serwera\u2026","rel":"","context":"In \"Dovecot\"","block_context":{"text":"Dovecot","link":"https:\/\/drfugazi.eu.org\/en\/tag\/dovecot\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":369,"url":"https:\/\/drfugazi.eu.org\/en\/postfix-compilation\/","url_meta":{"origin":366,"position":5},"title":"Postfix &#8211; compilation","author":"drfugazi","date":"Wednesday July 11th, 2012","format":false,"excerpt":"Postfix does not have a configure script, so you need to add proper paths and libraries when you creating Makefiles (make makefiles). I must admit, that Postfix code is one of the least problematic code to compile on differents systems. To make my compilations reproducible, I wrote a script and\u2026","rel":"","context":"In &quot;Compilation&quot;","block_context":{"text":"Compilation","link":"https:\/\/drfugazi.eu.org\/en\/category\/compilation\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/drfugazi.eu.org\/en\/wp-json\/wp\/v2\/posts\/366"}],"collection":[{"href":"https:\/\/drfugazi.eu.org\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/drfugazi.eu.org\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/drfugazi.eu.org\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/drfugazi.eu.org\/en\/wp-json\/wp\/v2\/comments?post=366"}],"version-history":[{"count":6,"href":"https:\/\/drfugazi.eu.org\/en\/wp-json\/wp\/v2\/posts\/366\/revisions"}],"predecessor-version":[{"id":554,"href":"https:\/\/drfugazi.eu.org\/en\/wp-json\/wp\/v2\/posts\/366\/revisions\/554"}],"wp:attachment":[{"href":"https:\/\/drfugazi.eu.org\/en\/wp-json\/wp\/v2\/media?parent=366"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/drfugazi.eu.org\/en\/wp-json\/wp\/v2\/categories?post=366"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/drfugazi.eu.org\/en\/wp-json\/wp\/v2\/tags?post=366"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}